Merge master into haskell-updates
This commit is contained in:
commit
517fa0d808
@ -734,6 +734,63 @@ work in any of the formats supported by `buildPythonPackage` currently,
|
||||
with the exception of `other` (see `format` in
|
||||
[`buildPythonPackage` parameters](#buildpythonpackage-parameters) for more details).
|
||||
|
||||
### Using unittestCheckHook {#using-unittestcheckhook}
|
||||
|
||||
`unittestCheckHook` is a hook which will substitute the setuptools `test` command for a `checkPhase` which runs `python -m unittest discover`:
|
||||
|
||||
```
|
||||
checkInputs = [ unittestCheckHook ];
|
||||
|
||||
unittestFlags = [ "-s" "tests" "-v" ];
|
||||
```
|
||||
|
||||
##### Using sphinxHook {#using-sphinxhook}
|
||||
|
||||
The `sphinxHook` is a helpful tool to build documentation and manpages
|
||||
using the popular Sphinx documentation generator.
|
||||
It is setup to automatically find common documentation source paths and
|
||||
render them using the default `html` style.
|
||||
|
||||
```
|
||||
outputs = [
|
||||
"out"
|
||||
"doc"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
sphinxHook
|
||||
];
|
||||
```
|
||||
|
||||
The hook will automatically build and install the artifact into the
|
||||
`doc` output, if it exists. It also provides an automatic diversion
|
||||
for the artifacts of the `man` builder into the `man` target.
|
||||
|
||||
```
|
||||
outputs = [
|
||||
"out"
|
||||
"doc"
|
||||
"man"
|
||||
];
|
||||
|
||||
# Use multiple builders
|
||||
sphinxBuilders = [
|
||||
"singlehtml"
|
||||
"man"
|
||||
];
|
||||
```
|
||||
|
||||
Overwrite `sphinxRoot` when the hook is unable to find your
|
||||
documentation source root.
|
||||
|
||||
```
|
||||
# Configure sphinxRoot for uncommon paths
|
||||
sphinxRoot = "weird/docs/path";
|
||||
```
|
||||
|
||||
The hook is also available to packages outside the python ecosystem by
|
||||
referencing it using `python3.pkgs.sphinxHook`.
|
||||
|
||||
### Develop local package {#develop-local-package}
|
||||
|
||||
As a Python developer you're likely aware of [development mode](http://setuptools.readthedocs.io/en/latest/setuptools.html#development-mode)
|
||||
@ -1260,16 +1317,18 @@ are used in `buildPythonPackage`.
|
||||
- `pytestCheckHook` to run tests with `pytest`. See [example usage](#using-pytestcheckhook).
|
||||
- `pythonCatchConflictsHook` to check whether a Python package is not already existing.
|
||||
- `pythonImportsCheckHook` to check whether importing the listed modules works.
|
||||
- `pythonRelaxDepsHook` will relax Python dependencies restrictions for the package.
|
||||
See [example usage](#using-pythonrelaxdepshook).
|
||||
- `pythonRemoveBinBytecode` to remove bytecode from the `/bin` folder.
|
||||
- `setuptoolsBuildHook` to build a wheel using `setuptools`.
|
||||
- `setuptoolsCheckHook` to run tests with `python setup.py test`.
|
||||
- `sphinxHook` to build documentation and manpages using Sphinx.
|
||||
- `venvShellHook` to source a Python 3 `venv` at the `venvDir` location. A
|
||||
`venv` is created if it does not yet exist. `postVenvCreation` can be used to
|
||||
to run commands only after venv is first created.
|
||||
- `wheelUnpackHook` to move a wheel to the correct folder so it can be installed
|
||||
with the `pipInstallHook`.
|
||||
- `pythonRelaxDepsHook` will relax Python dependencies restrictions for the package.
|
||||
See [example usage](#using-pythonrelaxdepshook).
|
||||
- `unittestCheckHook` will run tests with `python -m unittest discover`. See [example usage](#using-unittestcheckhook).
|
||||
|
||||
### Development mode {#development-mode}
|
||||
|
||||
|
@ -148,6 +148,11 @@ in mkLicense lset) ({
|
||||
fullName = ''BSD 4-clause "Original" or "Old" License'';
|
||||
};
|
||||
|
||||
bsdOriginalShortened = {
|
||||
spdxId = "BSD-4-Clause-Shortened";
|
||||
fullName = "BSD 4 Clause Shortened";
|
||||
};
|
||||
|
||||
bsdOriginalUC = {
|
||||
spdxId = "BSD-4-Clause-UC";
|
||||
fullName = "BSD 4-Clause University of California-Specific";
|
||||
|
@ -1,2 +1,2 @@
|
||||
# Expose the minimum required version for evaluating Nixpkgs
|
||||
"2.2"
|
||||
"2.3"
|
||||
|
@ -65,11 +65,17 @@ rec {
|
||||
# is why we use the more obscure "bfd" and not "binutils" for this
|
||||
# choice.
|
||||
else "bfd";
|
||||
extensions = {
|
||||
extensions = rec {
|
||||
sharedLibrary =
|
||||
/**/ if final.isDarwin then ".dylib"
|
||||
else if final.isWindows then ".dll"
|
||||
else ".so";
|
||||
staticLibrary =
|
||||
/**/ if final.isWindows then ".lib"
|
||||
else ".a";
|
||||
library =
|
||||
/**/ if final.isStatic then staticLibrary
|
||||
else sharedLibrary;
|
||||
executable =
|
||||
/**/ if final.isWindows then ".exe"
|
||||
else "";
|
||||
|
@ -120,7 +120,6 @@ to set one. The recommended configuration for modern systems is:
|
||||
|
||||
```nix
|
||||
services.xserver.videoDrivers = [ "modesetting" ];
|
||||
services.xserver.useGlamor = true;
|
||||
```
|
||||
|
||||
If you experience screen tearing no matter what, this configuration was
|
||||
|
@ -133,7 +133,6 @@ services.xserver.displayManager.autoLogin.user = "alice";
|
||||
</para>
|
||||
<programlisting language="bash">
|
||||
services.xserver.videoDrivers = [ "modesetting" ];
|
||||
services.xserver.useGlamor = true;
|
||||
</programlisting>
|
||||
<para>
|
||||
If you experience screen tearing no matter what, this
|
||||
|
@ -255,6 +255,11 @@
|
||||
<section xml:id="sec-release-22.11-incompatibilities">
|
||||
<title>Backward Incompatibilities</title>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
Nixpkgs now requires Nix 2.3 or newer.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>isCompatible</literal> predicate checking CPU
|
||||
|
@ -94,6 +94,8 @@ Available as [services.patroni](options.html#opt-services.patroni.enable).
|
||||
|
||||
## Backward Incompatibilities {#sec-release-22.11-incompatibilities}
|
||||
|
||||
- Nixpkgs now requires Nix 2.3 or newer.
|
||||
|
||||
- The `isCompatible` predicate checking CPU compatibility is no longer exposed
|
||||
by the platform sets generated using `lib.systems.elaborate`. In most cases
|
||||
you will want to use the new `canExecute` predicate instead which also
|
||||
|
@ -14,6 +14,15 @@ let
|
||||
'';
|
||||
};
|
||||
|
||||
filter = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "*rpi*.dtb";
|
||||
description = lib.mdDoc ''
|
||||
Only apply to .dtb files matching glob expression.
|
||||
'';
|
||||
};
|
||||
|
||||
dtsFile = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
description = lib.mdDoc ''
|
||||
@ -150,6 +159,7 @@ in
|
||||
'';
|
||||
type = types.listOf (types.coercedTo types.path (path: {
|
||||
name = baseNameOf path;
|
||||
filter = null;
|
||||
dtboFile = path;
|
||||
}) overlayType);
|
||||
description = lib.mdDoc ''
|
||||
|
@ -130,8 +130,8 @@ in
|
||||
type = types.attrsOf (types.submodule ({ config, options, ... }: {
|
||||
freeformType = datasetSettingsType;
|
||||
options = commonOptions // datasetOptions;
|
||||
config.use_template = mkAliasDefinitions (mkDefault options.useTemplate or { });
|
||||
config.process_children_only = mkAliasDefinitions (mkDefault options.processChildrenOnly or { });
|
||||
config.use_template = modules.mkAliasAndWrapDefsWithPriority id (options.useTemplate or { });
|
||||
config.process_children_only = modules.mkAliasAndWrapDefsWithPriority id (options.processChildrenOnly or { });
|
||||
}));
|
||||
default = { };
|
||||
description = lib.mdDoc "Datasets to snapshot.";
|
||||
|
@ -267,6 +267,7 @@ in
|
||||
EnvironmentFile = [ "/var/lib/jitsi-meet/secrets-env" ];
|
||||
SupplementaryGroups = [ "jitsi-meet" ];
|
||||
};
|
||||
reloadIfChanged = true;
|
||||
};
|
||||
|
||||
users.groups.jitsi-meet = {};
|
||||
|
@ -151,8 +151,10 @@ in
|
||||
(mkRemovedOptionModule
|
||||
[ "services" "xserver" "startDbusSession" ]
|
||||
"The user D-Bus session is now always socket activated and this option can safely be removed.")
|
||||
(mkRemovedOptionModule ["services" "xserver" "useXFS" ]
|
||||
(mkRemovedOptionModule [ "services" "xserver" "useXFS" ]
|
||||
"Use services.xserver.fontPath instead of useXFS")
|
||||
(mkRemovedOptionModule [ "services" "xserver" "useGlamor" ]
|
||||
"Option services.xserver.useGlamor was removed because it is unnecessary. Drivers that uses Glamor will use it automatically.")
|
||||
];
|
||||
|
||||
|
||||
@ -555,15 +557,6 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
useGlamor = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Whether to use the Glamor module for 2D acceleration,
|
||||
if possible.
|
||||
'';
|
||||
};
|
||||
|
||||
enableCtrlAltBackspace = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
@ -794,13 +787,6 @@ in
|
||||
'')}
|
||||
EndSection
|
||||
|
||||
${if cfg.useGlamor then ''
|
||||
Section "Module"
|
||||
Load "dri2"
|
||||
Load "glamoregl"
|
||||
EndSection
|
||||
'' else ""}
|
||||
|
||||
# For each supported driver, add a "Device" and "Screen"
|
||||
# section.
|
||||
${flip concatMapStrings cfg.drivers (driver: ''
|
||||
@ -808,7 +794,6 @@ in
|
||||
Section "Device"
|
||||
Identifier "Device-${driver.name}[0]"
|
||||
Driver "${driver.driverName or driver.name}"
|
||||
${if cfg.useGlamor then ''Option "AccelMethod" "glamor"'' else ""}
|
||||
${indent cfg.deviceSection}
|
||||
${indent (driver.deviceSection or "")}
|
||||
${indent xrandrDeviceSection}
|
||||
|
@ -34,6 +34,7 @@ in {
|
||||
autosnap = true;
|
||||
};
|
||||
datasets."pool/sanoid".use_template = [ "test" ];
|
||||
datasets."pool/compat".useTemplate = [ "test" ];
|
||||
extraArgs = [ "--verbose" ];
|
||||
};
|
||||
|
||||
@ -51,6 +52,12 @@ in {
|
||||
|
||||
# Test pool without parent (regression test for https://github.com/NixOS/nixpkgs/pull/180111)
|
||||
"pool".target = "root@target:pool/full-pool";
|
||||
|
||||
# Test backward compatible options (regression test for https://github.com/NixOS/nixpkgs/issues/181561)
|
||||
"pool/compat" = {
|
||||
target = "root@target:pool/compat";
|
||||
extraArgs = [ "--no-sync-snap" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -70,6 +77,7 @@ in {
|
||||
"udevadm settle",
|
||||
"zpool create pool -R /mnt /dev/vdb1",
|
||||
"zfs create pool/sanoid",
|
||||
"zfs create pool/compat",
|
||||
"zfs create pool/syncoid",
|
||||
"udevadm settle",
|
||||
)
|
||||
@ -94,6 +102,7 @@ in {
|
||||
|
||||
# Take snapshot with sanoid
|
||||
source.succeed("touch /mnt/pool/sanoid/test.txt")
|
||||
source.succeed("touch /mnt/pool/compat/test.txt")
|
||||
source.systemctl("start --wait sanoid.service")
|
||||
|
||||
assert len(source.succeed("zfs allow pool")) == 0, "Pool shouldn't have delegated permissions set after snapshotting"
|
||||
@ -111,6 +120,9 @@ in {
|
||||
source.systemctl("start --wait syncoid-pool.service")
|
||||
target.succeed("[[ -d /mnt/pool/full-pool/syncoid ]]")
|
||||
|
||||
source.systemctl("start --wait syncoid-pool-compat.service")
|
||||
target.succeed("cat /mnt/pool/compat/test.txt")
|
||||
|
||||
assert len(source.succeed("zfs allow pool")) == 0, "Pool shouldn't have delegated permissions set after syncing snapshots"
|
||||
assert len(source.succeed("zfs allow pool/sanoid")) == 0, "Sanoid dataset shouldn't have delegated permissions set after syncing snapshots"
|
||||
assert len(source.succeed("zfs allow pool/syncoid")) == 0, "Syncoid dataset shouldn't have delegated permissions set after syncing snapshots"
|
||||
|
@ -102,13 +102,13 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cmus";
|
||||
version = "2.9.1";
|
||||
version = "2.10.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cmus";
|
||||
repo = "cmus";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-HEiEnEWf/MzhPO19VKTLYzhylpEvyzy1Jxs6EW2NU34=";
|
||||
sha256 = "sha256-Ha0bIh3SYMhA28YXQ//Loaz9J1lTJAzjTx8eK3AqUjM=";
|
||||
};
|
||||
|
||||
patches = [ ./option-debugging.patch ];
|
||||
|
@ -106,6 +106,8 @@ stdenv.mkDerivation rec {
|
||||
makeWrapper $out/opt/tidal-hifi/tidal-hifi $out/bin/tidal-hifi \
|
||||
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath buildInputs}" \
|
||||
"''${gappsWrapperArgs[@]}"
|
||||
substituteInPlace $out/share/applications/tidal-hifi.desktop --replace \
|
||||
"/opt/tidal-hifi/tidal-hifi" "tidal-hifi"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -37,6 +37,7 @@ in python3.pkgs.buildPythonApplication rec {
|
||||
nativeBuildInputs = with python3.pkgs; [
|
||||
setuptools-scm
|
||||
docutils
|
||||
setuptoolsCheckHook
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
@ -64,14 +65,12 @@ in python3.pkgs.buildPythonApplication rec {
|
||||
export SETUPTOOLS_SCM_PRETEND_VERSION="${version}"
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
preCheck = ''
|
||||
# disable tests that require internet access
|
||||
# https://github.com/JoeLametta/whipper/issues/291
|
||||
substituteInPlace whipper/test/test_common_accurip.py \
|
||||
--replace "test_AccurateRipResponse" "dont_test_AccurateRipResponse"
|
||||
HOME=$TMPDIR ${python3.interpreter} -m unittest discover
|
||||
runHook postCheck
|
||||
export HOME=$TMPDIR
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
|
@ -6,14 +6,14 @@
|
||||
|
||||
let chia = python3Packages.buildPythonApplication rec {
|
||||
pname = "chia";
|
||||
version = "1.5.0";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Chia-Network";
|
||||
repo = "chia-blockchain";
|
||||
rev = version;
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-OlaAnUy16QBff81XMoYQaZA0wKnsr+/3XEQLBP8IMug=";
|
||||
hash = "sha256-FzKdb6Z/ykKYjpjCr7QR5fxXPNnQbW3bBY97t7DxS90=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@ -55,7 +55,7 @@ let chia = python3Packages.buildPythonApplication rec {
|
||||
concurrent-log-handler
|
||||
cryptography
|
||||
dnslib
|
||||
dnspythonchia
|
||||
dnspython
|
||||
fasteners
|
||||
filelock
|
||||
keyrings-cryptfile
|
||||
|
@ -5,16 +5,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gophernotes";
|
||||
version = "0.7.4";
|
||||
version = "0.7.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gopherdata";
|
||||
repo = "gophernotes";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-ZyZ5VOZEgFn9QrFBC1bNHKA2g8msDUnd1c5plooO+b8=";
|
||||
sha256 = "sha256-cGlYgay/t6XIl0U9XvrHkqNxZ6BXtXi0TIANY1WdZ3Y=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-NH8Hz9SzmDksvGqCpggi6hG4kW+AoA1tctF6rGgy4H4=";
|
||||
vendorSha256 = "sha256-iIBqx52fD12R+7MSjQNihMYYtZ9vPAdJndOG4YJVhy4=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Go kernel for Jupyter notebooks";
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ lib, fetchFromGitHub }:
|
||||
rec {
|
||||
version = "9.0.0135";
|
||||
version = "9.0.0180";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vim";
|
||||
repo = "vim";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-xAIfGNJIPO9XoSbAQTRa36Tjln3y+oWQk0lADCnL25g=";
|
||||
hash = "sha256-38l97auTi6cue457bfRHme5fvsAmvk1MT2va1E/qguw=";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
@ -24,7 +24,7 @@ rec {
|
||||
description = "The most popular clone of the VI editor";
|
||||
homepage = "http://www.vim.org";
|
||||
license = licenses.vim;
|
||||
maintainers = with maintainers; [ lovek323 equirosa ];
|
||||
maintainers = with maintainers; [ das_j equirosa ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "clifm";
|
||||
version = "1.5.1";
|
||||
version = "1.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "leo-arch";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-JdVRi5xHKpYjP8h7df4WdizSU1dy+CtPfOiPEK+MEOE=";
|
||||
sha256 = "sha256-ak2tZTNNKsHGNpxobi8oqnimhsNvoaW75zMYBeskXZU=";
|
||||
};
|
||||
|
||||
buildInputs = [ libcap acl file readline ];
|
||||
|
@ -25,14 +25,14 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "foxotron";
|
||||
version = "2022-03-06";
|
||||
version = "2022-08-06";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Gargaj";
|
||||
repo = "Foxotron";
|
||||
rev = version;
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-w66wi+aMwQa9akfNA/1cS6UmDXPWC4OPK9BIa9Kt47A=";
|
||||
sha256 = "sha256-IGLoiUeHcTlQ+WJTot3o5/Q+jRJcY52I3xHDAT0zuIU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config makeWrapper ];
|
||||
|
@ -21,13 +21,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "imgbrd-grabber";
|
||||
version = "7.7.1";
|
||||
version = "7.9.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Bionus";
|
||||
repo = "imgbrd-grabber";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-3qE3mdtlIlReIkUf0oH2/qmunE8nvdB0EaD7EOqaEj0=";
|
||||
sha256 = "sha256-0CceSXH1GJbWKOnxZkjmbuyj7NBOQ6tpCYrCl7z4Vrw=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
@ -1,25 +1,30 @@
|
||||
{ lib, stdenv, fetchFromGitHub, cmake, qt4, fftw }:
|
||||
{ stdenv, lib, fetchFromGitHub, cmake, fftw
|
||||
, qtbase, qmake, wrapQtAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "smartdeblur";
|
||||
version = "unstable-2013-01-09";
|
||||
version = "unstable-2018-10-29";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Y-Vladimir";
|
||||
repo = "SmartDeblur";
|
||||
rev = "9895036d26cbb823a9ade28cdcb26fd0ac37258e";
|
||||
sha256 = "sha256-+EbqEpOG1fj2OKmlz8NRF/CGfT2OYGwY5/lwJHCHaMw=";
|
||||
rev = "5af573c7048ac49ef68e638f3405d3a571b96a8b";
|
||||
sha256 = "151vdd5ld0clw0vgp0fvp2gp2ybwpx9g43dad9fvbvwkg60izs87";
|
||||
};
|
||||
|
||||
preConfigure = ''
|
||||
cd src
|
||||
sourceRoot = "${src.name}/src";
|
||||
|
||||
nativeBuildInputs = [ qmake wrapQtAppsHook ];
|
||||
buildInputs = [ qtbase fftw ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dm755 ./SmartDeblur -t $out/bin
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ qt4 fftw ];
|
||||
|
||||
cmakeFlags = [ "-DUSE_SYSTEM_FFTW=ON" ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/Y-Vladimir/SmartDeblur";
|
||||
description = "Tool for restoring blurry and defocused images";
|
||||
|
@ -3,7 +3,7 @@
|
||||
extra-cmake-modules, kdoctools,
|
||||
shared-mime-info,
|
||||
akonadi, akonadi-calendar, akonadi-contacts, akonadi-mime, akonadi-notes,
|
||||
kholidays, kcalutils, kcontacts, kdav, kidentitymanagement,
|
||||
cyrus_sasl, kholidays, kcalutils, kcontacts, kdav, kidentitymanagement,
|
||||
kimap, kldap, kmailtransport, kmbox, kmime, knotifications, knotifyconfig,
|
||||
pimcommon, libkgapi, libsecret,
|
||||
qca-qt5, qtkeychain, qtnetworkauth, qtspeech, qtwebengine, qtxmlpatterns,
|
||||
@ -23,4 +23,7 @@ mkDerivation {
|
||||
pimcommon libkgapi libsecret
|
||||
qca-qt5 qtkeychain qtnetworkauth qtspeech qtxmlpatterns
|
||||
];
|
||||
qtWrapperArgs = [
|
||||
"--prefix SASL_PATH : ${lib.makeSearchPath "lib/sasl2" [ cyrus_sasl libkgapi ]}"
|
||||
];
|
||||
}
|
||||
|
@ -9,7 +9,7 @@ let
|
||||
version = "3.1.14";
|
||||
src = old.src.override {
|
||||
inherit version;
|
||||
sha256 = "72a4a5a136a214c39cf016ccdd6b69e2aa08c7479c66d93f3a9b5e4bb9d8a347";
|
||||
hash = "sha256-cqSloTaiFMOc8BbM3Wtp4qoIx0ecZtk/OpteS7nYo0c=";
|
||||
};
|
||||
meta = old.meta // {
|
||||
knownVulnerabilities = [
|
||||
|
49
pkgs/applications/misc/darkman/default.nix
Normal file
49
pkgs/applications/misc/darkman/default.nix
Normal file
@ -0,0 +1,49 @@
|
||||
{ lib, fetchFromGitLab, buildGoModule, scdoc, nix-update-script }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "darkman";
|
||||
version = "1.3.1";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "WhyNotHugo";
|
||||
repo = "darkman";
|
||||
rev = "v${version}";
|
||||
sha256 = "09iwc9cwwc88c6yrf6a552nbsnf1w8cnlra9axsar2p0k21v5yl1";
|
||||
};
|
||||
|
||||
vendorSha256 = "09rjqw6v1jaf0mhmycw9mcay9q0y1fya2azj8216gdgkl48ics08";
|
||||
|
||||
nativeBuildInputs = [ scdoc ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace darkman.service \
|
||||
--replace "/usr/bin/darkman" "$out/bin/darkman"
|
||||
substituteInPlace contrib/dbus/nl.whynothugo.darkman.service \
|
||||
--replace "/usr/bin/darkman" "$out/bin/darkman"
|
||||
substituteInPlace contrib/dbus/org.freedesktop.impl.portal.desktop.darkman.service \
|
||||
--replace "/usr/bin/darkman" "$out/bin/darkman"
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
make build
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
make PREFIX=$out install
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script {
|
||||
attrPath = pname;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Framework for dark-mode and light-mode transitions on Linux desktop";
|
||||
homepage = "https://gitlab.com/WhyNotHugo/darkman";
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.ajgrf ];
|
||||
};
|
||||
}
|
@ -4,6 +4,7 @@
|
||||
, libtiff
|
||||
, librsvg
|
||||
, libiconv
|
||||
, bash
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -17,13 +18,20 @@ stdenv.mkDerivation rec {
|
||||
|
||||
outputs = [ "bin" "dev" "out" ];
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
librsvg
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libjpeg
|
||||
libtiff
|
||||
librsvg
|
||||
libiconv
|
||||
bash
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "The big set of CLI tools to make/modify/optimize/show/export DJVU files";
|
||||
homepage = "http://djvu.sourceforge.net";
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fetchmail";
|
||||
version = "6.4.30";
|
||||
version = "6.4.32";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/fetchmail/fetchmail-${version}.tar.xz";
|
||||
sha256 = "sha256-NYJMIKodjZfj8WEf70m59/aDlvfLxNOoB/7SeunqRFo=";
|
||||
sha256 = "sha256-PudERmVgatBvtfexX5HjFzuEW8mLZGsaRRSkaqSLcig=";
|
||||
};
|
||||
|
||||
buildInputs = [ openssl ];
|
||||
|
@ -52,11 +52,9 @@ buildPythonApplication rec {
|
||||
# will fail without pre-seeded config files
|
||||
doCheck = false;
|
||||
|
||||
checkInputs = [ mock ];
|
||||
checkInputs = [ unittestCheckHook mock ];
|
||||
|
||||
checkPhase = ''
|
||||
${python.interpreter} -m unittest discover -s tests -v
|
||||
'';
|
||||
unittestFlagsArray = [ "-s" "tests" "-v" ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/donnemartin/haxor-news";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "heimer";
|
||||
version = "3.2.0";
|
||||
version = "3.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "juzzlin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-aAFhShsC3FLGgtF/8XJbWIMBEO3/gcGeDZei69Luz+s=";
|
||||
sha256 = "sha256-rxvfBgbMVKNiv+F2fyqcieGamTUwFKScEky918oU8lc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "iptsd";
|
||||
version = "0.5";
|
||||
version = "0.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linux-surface";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-A/0hA4gJwzrRPn57IKYvfcAnx1KXbQl0ZX2TE8mcQhc=";
|
||||
sha256 = "sha256-du5TC3I5+hWifjdnaeTj2QPJ6/oTXZqaOrZJkef/USU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja pkg-config ];
|
||||
|
@ -1,7 +1,8 @@
|
||||
{ lib, fetchurl, buildDotnetPackage, substituteAll, makeWrapper, makeDesktopItem,
|
||||
unzip, icoutils, gtk2, xorg, xdotool, xsel, coreutils, unixtools, glib, plugins ? [] }:
|
||||
|
||||
with builtins; buildDotnetPackage rec {
|
||||
let
|
||||
inherit (builtins) add length readFile replaceStrings unsafeDiscardStringContext toString map;
|
||||
in buildDotnetPackage rec {
|
||||
pname = "keepass";
|
||||
version = "2.49";
|
||||
|
||||
|
@ -15,9 +15,7 @@ in buildPythonApplication rec {
|
||||
nativeBuildInputs = [ setuptools-scm ];
|
||||
propagatedBuildInputs = [ pyyaml six jinja2 cerberus_1_1 ];
|
||||
|
||||
checkPhase = ''
|
||||
${python.interpreter} -m unittest discover
|
||||
'';
|
||||
checkInputs = [ unittestCheckHook ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://pythonhosted.org/pyditz/";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, python3Packages, fetchFromGitHub, glibcLocales }:
|
||||
{ lib, python3Packages, fetchFromGitHub, glibcLocales, unittestCheckHook }:
|
||||
|
||||
with python3Packages;
|
||||
|
||||
@ -22,16 +22,15 @@ buildPythonApplication rec {
|
||||
watchdog
|
||||
];
|
||||
|
||||
checkInputs = [ mock freezegun pylint ];
|
||||
checkInputs = [ unittestCheckHook mock freezegun pylint ];
|
||||
|
||||
# Skip test that has been reported multiple times upstream without result:
|
||||
# bram85/topydo#271, bram85/topydo#274.
|
||||
checkPhase = ''
|
||||
preCheck = ''
|
||||
substituteInPlace test/test_revert_command.py --replace 'test_revert_ls' 'dont_test_revert_ls'
|
||||
python -m unittest discover
|
||||
'';
|
||||
|
||||
LC_ALL="en_US.UTF-8";
|
||||
LC_ALL = "en_US.UTF-8";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A cli todo application compatible with the todo.txt format";
|
||||
|
@ -531,7 +531,6 @@ buildStdenv.mkDerivation ({
|
||||
header "separating debug info from $i (build ID $id)"
|
||||
mkdir -p "$dst/''${id:0:2}"
|
||||
$OBJCOPY --only-keep-debug "$i" "$dst/''${id:0:2}/''${id:2}.debug"
|
||||
$STRIP --strip-debug "$i"
|
||||
|
||||
# Also a create a symlink <original-name>.debug.
|
||||
ln -sfn ".build-id/''${id:0:2}/''${id:2}.debug" "$dst/../$(basename "$i")"
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "argocd-autopilot";
|
||||
version = "0.4.4";
|
||||
version = "0.4.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "argoproj-labs";
|
||||
repo = "argocd-autopilot";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-d7Jm4Ff7cXytbECt+/TzncCwDGDYxsV1xOC8GSPAgJY=";
|
||||
sha256 = "sha256-0UQpqQ0qvBuTGI6xG+y/f9JijA4CukdqvQbr0KFir1c=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-EpLU6rYzmtk/FCZiS8AJVGR4LUEkzNQE26CU9LzBwFM=";
|
||||
vendorSha256 = "sha256-ujDtfDL1VWe4XjTHD+pXMmMFp0AiuZcE+CKRkMsiv9Q=";
|
||||
|
||||
proxyVendor = true;
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubernetes-helm";
|
||||
version = "3.9.3";
|
||||
version = "3.9.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "helm";
|
||||
repo = "helm";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-fRlHI2g+pSexPzeEqUnow5WTPvNMGnQNWjnllzJ42fY=";
|
||||
sha256 = "sha256-KIqbugEzwjlDcQPiQQjN+i05rcMNIbYpGufVYZwQ/uQ=";
|
||||
};
|
||||
vendorSha256 = "sha256-ZOY25wgxCdVQafdhBW4Z3aQxOGTs7N3SvSDJ/Fu5psg=";
|
||||
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kube-router";
|
||||
version = "1.4.0";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cloudnativelabs";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-WBnJPCZHtJWckoFvE8e+eAa2EC/RA7yOMlW+Cemw53Q=";
|
||||
sha256 = "sha256-J/wQyrEEdBki8bq1Qesgu4Kqj2w33zzvEEOecFdiGak=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-5co+288KZf/dx/jZ7xIGh6kxuW3DdbpAsrZgYob3nWk=";
|
||||
vendorSha256 = "sha256-+3uTIaXuiwbU0fUgn2th4RNDQ5gCDi3ntPMu92S+mXc=";
|
||||
|
||||
CGO_ENABLED = 0;
|
||||
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubelogin";
|
||||
version = "0.0.11";
|
||||
version = "0.0.20";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Azure";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-+u+75Z2Efaq16g7kGNq1GHavXwtKvNO6dytniUr8mlE=";
|
||||
sha256 = "sha256-ZaAjXuECOmGIqye08/A41VQiO7avxqbaCOPFCPjaOjY=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-vJfTf9gD/qrsPAfJeMYLjGa90mYLOshgDehv2Fcl6xM=";
|
||||
vendorSha256 = "sha256-3TQm0xbgFDZ2XCie93g4fPXKCHDh/yw4vwpAEMBMQGI=";
|
||||
|
||||
ldflags = [
|
||||
"-X main.version=${version}"
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "roxctl";
|
||||
version = "3.70.1";
|
||||
version = "3.71.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "stackrox";
|
||||
repo = "stackrox";
|
||||
rev = version;
|
||||
sha256 = "sha256-T06VldyPBIpYWs8+N4OWmaCwXCcb37F7lLD4jHcm1uc=";
|
||||
sha256 = "sha256-svoSc9cT12nPYbyYz+Uv2edJAt/dJjcqe3E6cKII0KY=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-xh2bgLSWjQHOjHrgDpQri78LvCL4CDbMteQYARyGLgg=";
|
||||
vendorSha256 = "sha256-zz8v9HkJPnk4QDRa9eVgI5uvqQLhemq8vOZ0qc9u8es=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
@ -169,9 +169,9 @@ rec {
|
||||
mkTerraform = attrs: pluggable (generic attrs);
|
||||
|
||||
terraform_1 = mkTerraform {
|
||||
version = "1.2.7";
|
||||
sha256 = "sha256-0AGONBurlm0cSM4HyAmUxLt8GdnqNPh146A8ibyfe+k=";
|
||||
vendorSha256 = "sha256-Whe1prBGsE0q0QdNkzAKwvAP7EVlnD/985gjngh+VI4=";
|
||||
version = "1.2.8";
|
||||
sha256 = "sha256-FJHZtYQHzRPWlSlXYu8mdd0YddIrBy8eBzhsvAHwfZw=";
|
||||
vendorSha256 = "sha256-VKJ+aWZYD6N8HDJwUEtgWxoBMGOa27K9ze2RUJvuipc=";
|
||||
patches = [ ./provider-path-0_15.patch ];
|
||||
passthru = {
|
||||
inherit plugins;
|
||||
|
@ -11,16 +11,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "werf";
|
||||
version = "1.2.163";
|
||||
version = "1.2.164";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "werf";
|
||||
repo = "werf";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-TgXJ5l/vWHIlAEMmPWM50AOMHU9crsmjtxJdmGzPM+w=";
|
||||
sha256 = "sha256-qRw3cH0UNg1PyNZfiVSAX0WJsPw17KNsJ1TnBlySI94=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-XpSAFiweD2oUKleD6ztDp1+3PpfUWXfGaaE/9mzRrUQ=";
|
||||
vendorSha256 = "sha256-E5yDk48O7zze8QTeLQ999QmB8XLkpKNZ8JQ2wVRMGCU=";
|
||||
|
||||
proxyVendor = true;
|
||||
|
||||
|
@ -5,11 +5,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "alfaview";
|
||||
version = "8.49.1";
|
||||
version = "8.51.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://production-alfaview-assets.alfaview.com/stable/linux/${pname}_${version}.deb";
|
||||
sha256 = "sha256-A0kX6r5ubC764XJFinCq4/u9pA1AOP4fXUOFB4voeeE=";
|
||||
sha256 = "sha256-rnzYTQpAX1OSBnVfnFsamd9i9Zpab4mZwlxot0CakgY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, lib, fetchgit, wrapGAppsHook, autoreconfHook, bison, flex
|
||||
{ stdenv, lib, fetchgit, fetchurl, wrapGAppsHook, autoreconfHook, bison, flex
|
||||
, curl, gtk3, pkg-config, python3, shared-mime-info
|
||||
, glib-networking, gsettings-desktop-schemas
|
||||
|
||||
@ -110,6 +110,11 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
patches = [
|
||||
./mime.patch
|
||||
# fix build with perl 5.36+
|
||||
(fetchurl {
|
||||
url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/packages/claws-mail/trunk/20cope_with_fix_for_1009149.patch";
|
||||
hash = "sha256-/WBslmoFvja2v2GEBntxvNtG0I3xtkUUqXO5gl5pqqs=";
|
||||
})
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
|
@ -4,13 +4,13 @@ rec {
|
||||
thunderbird = thunderbird-102;
|
||||
thunderbird-91 = (buildMozillaMach rec {
|
||||
pname = "thunderbird";
|
||||
version = "91.12.0";
|
||||
version = "91.13.0";
|
||||
application = "comm/mail";
|
||||
applicationName = "Mozilla Thunderbird";
|
||||
binaryName = pname;
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
|
||||
sha512 = "1c0200a84ccc4124127d472713d72c4ff7ece8d61ad120d5c45c732a3ab4f86a2edfea23a8bf26e4739d24956654aec30e7bc59a28af17fbbf10f3d67466649a";
|
||||
sha512 = "e73d3db4333ad659ec1ab249bd261e8c28301c125d0c39b473c83f8fccace6d4916a2bfef14fc20c065055ff6bbd3ca618b5aab178241b53509543640dcd541a";
|
||||
};
|
||||
extraPatches = [
|
||||
# The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
|
||||
|
@ -19,6 +19,7 @@ let
|
||||
src = oldAttrs.src.override {
|
||||
inherit version;
|
||||
hash = "sha256-yKhbKNN3zHc35G4tnytPRO48Dh3qxr9G3e/HGH0weXo=";
|
||||
sha256 = "";
|
||||
};
|
||||
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION = version;
|
||||
|
@ -0,0 +1,95 @@
|
||||
From b9bf46966dd7931f9f33c30ed608a21d0e71e923 Mon Sep 17 00:00:00 2001
|
||||
From: rewine <lhongxu@outlook.com>
|
||||
Date: Tue, 19 Jul 2022 13:19:10 +0800
|
||||
Subject: [PATCH 1/2] remove dependency on vendored library
|
||||
|
||||
---
|
||||
CuteMarkEd.pro | 4 +---
|
||||
app-static/app-static.pro | 11 ++---------
|
||||
app/app.pro | 2 --
|
||||
app/cutemarkdownhighlighter.h | 2 +-
|
||||
4 files changed, 4 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/CuteMarkEd.pro b/CuteMarkEd.pro
|
||||
index 4ee92e3..0d247a4 100644
|
||||
--- a/CuteMarkEd.pro
|
||||
+++ b/CuteMarkEd.pro
|
||||
@@ -9,12 +9,10 @@ TEMPLATE = subdirs
|
||||
CONFIG += c++14
|
||||
|
||||
SUBDIRS = \
|
||||
- 3rdparty \
|
||||
libs \
|
||||
app-static \
|
||||
app \
|
||||
- fontawesomeicon \
|
||||
- test
|
||||
+ fontawesomeicon
|
||||
|
||||
# build order: 3rdparty -> libs -> app-static -> app & test
|
||||
#libs.depends = 3rdparty
|
||||
diff --git a/app-static/app-static.pro b/app-static/app-static.pro
|
||||
index cd3c292..560b4fc 100644
|
||||
--- a/app-static/app-static.pro
|
||||
+++ b/app-static/app-static.pro
|
||||
@@ -13,7 +13,6 @@ CONFIG += c++11
|
||||
|
||||
INCLUDEPATH += $$PWD
|
||||
# MD4C library
|
||||
-INCLUDEPATH += $$PWD/../3rdparty/md4c/src
|
||||
|
||||
SOURCES += \
|
||||
snippets/jsonsnippettranslator.cpp \
|
||||
@@ -34,10 +33,7 @@ SOURCES += \
|
||||
revealviewsynchronizer.cpp \
|
||||
htmlpreviewcontroller.cpp \
|
||||
htmlviewsynchronizer.cpp \
|
||||
- yamlheaderchecker.cpp \
|
||||
- $$PWD/../3rdparty/md4c/src/md4c.c \
|
||||
- $$PWD/../3rdparty/md4c/src/entity.c \
|
||||
- $$PWD/../3rdparty/md4c/src/md4c-html.c
|
||||
+ yamlheaderchecker.cpp
|
||||
|
||||
HEADERS += \
|
||||
snippets/snippet.h \
|
||||
@@ -64,10 +60,7 @@ HEADERS += \
|
||||
revealviewsynchronizer.h \
|
||||
htmlpreviewcontroller.h \
|
||||
htmlviewsynchronizer.h \
|
||||
- yamlheaderchecker.h \
|
||||
- $$PWD/../3rdparty/md4c/src/md4c.h \
|
||||
- $$PWD/../3rdparty/md4c/src/entity.h \
|
||||
- $$PWD/../3rdparty/md4c/src/md4c-html.h
|
||||
+ yamlheaderchecker.h
|
||||
|
||||
|
||||
#unix:!symbian {
|
||||
diff --git a/app/app.pro b/app/app.pro
|
||||
index 4827673..ab961cf 100644
|
||||
--- a/app/app.pro
|
||||
+++ b/app/app.pro
|
||||
@@ -40,8 +40,6 @@ macx {
|
||||
}
|
||||
|
||||
#qmarkdowntextedit
|
||||
-include(../3rdparty/qmarkdowntextedit/qmarkdowntextedit.pri)
|
||||
-include(../3rdparty/hunspell/hunspell.pri)
|
||||
INCLUDEPATH += $$PWD
|
||||
|
||||
SOURCES += \
|
||||
diff --git a/app/cutemarkdownhighlighter.h b/app/cutemarkdownhighlighter.h
|
||||
index c99ab56..78f2be6 100644
|
||||
--- a/app/cutemarkdownhighlighter.h
|
||||
+++ b/app/cutemarkdownhighlighter.h
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
#include <QSyntaxHighlighter>
|
||||
|
||||
-#include "../3rdparty/qmarkdowntextedit/markdownhighlighter.h"
|
||||
+#include <QMarkdownTextedit/markdownhighlighter.h>
|
||||
|
||||
namespace hunspell {
|
||||
class SpellChecker;
|
||||
--
|
||||
2.36.1
|
||||
|
@ -0,0 +1,25 @@
|
||||
From bdc66eace846edc8a7b435f7ca9f324427243ce4 Mon Sep 17 00:00:00 2001
|
||||
From: rewine <lhongxu@outlook.com>
|
||||
Date: Thu, 21 Jul 2022 17:30:22 +0800
|
||||
Subject: [PATCH 2/2] use pkgcofig to find libraries
|
||||
|
||||
---
|
||||
app/app.pro | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/app/app.pro b/app/app.pro
|
||||
index ab961cf..475487d 100644
|
||||
--- a/app/app.pro
|
||||
+++ b/app/app.pro
|
||||
@@ -13,6 +13,8 @@ win32: QT += winextras
|
||||
TARGET = cutemarked
|
||||
TEMPLATE = app
|
||||
CONFIG += c++11
|
||||
+CONFIG += link_pkgconfig
|
||||
+PKGCONFIG += QMarkdownTextedit hunspell md4c-html
|
||||
|
||||
unix:!macx {
|
||||
CONFIG += link_pkgconfig
|
||||
--
|
||||
2.36.1
|
||||
|
57
pkgs/applications/office/cutemarked-ng/default.nix
Normal file
57
pkgs/applications/office/cutemarked-ng/default.nix
Normal file
@ -0,0 +1,57 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, qmake
|
||||
, pkg-config
|
||||
, qttools
|
||||
, qtbase
|
||||
, qtwebengine
|
||||
, wrapQtAppsHook
|
||||
, qmarkdowntextedit
|
||||
, md4c
|
||||
, hunspell
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "CuteMarkEd-NG";
|
||||
version = "unstable-2021-07-29";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Waqar144";
|
||||
repo = pname;
|
||||
rev = "9431ac603cef23d6f29e51e18f1eeee156f5bfb3";
|
||||
sha256 = "sha256-w/D4C2ZYgI/7ZCDamTQlhrJ9vtvAMThgM/fopkdKWYc";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./0001-remove-dependency-on-vendored-library.patch
|
||||
./0002-use-pkgcofig-to-find-libraries.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace app/app.pro \
|
||||
--replace '$$[QT_INSTALL_BINS]/lrelease' "lrelease"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
qmake
|
||||
qttools
|
||||
pkg-config
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
md4c
|
||||
qtwebengine
|
||||
qmarkdowntextedit
|
||||
hunspell.dev
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A Qt-based, free and open source markdown editor";
|
||||
homepage = "https://github.com/Waqar144/CuteMarkEd-NG";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ rewine ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -205,6 +205,8 @@ in
|
||||
|
||||
# Fix build with poppler 22.04
|
||||
./poppler-22-04-0.patch
|
||||
|
||||
./gpgme-1.18.patch
|
||||
];
|
||||
|
||||
### QT/KDE
|
||||
|
10
pkgs/applications/office/libreoffice/gpgme-1.18.patch
Normal file
10
pkgs/applications/office/libreoffice/gpgme-1.18.patch
Normal file
@ -0,0 +1,10 @@
|
||||
The way this check mixes C and C++ started to cause issues since gpgme 1.18.0
|
||||
But we can confidently skip the function check anyway.
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -12302,4 +12302 @@
|
||||
- # progress_callback is the only func with plain C linkage
|
||||
- # checking for it also filters out older, KDE-dependent libgpgmepp versions
|
||||
- AC_CHECK_LIB(gpgmepp, progress_callback, [ GPGMEPP_LIBS=-lgpgmepp ],
|
||||
- [AC_MSG_ERROR(gpgmepp not found or not functional)], [])
|
||||
+ GPGMEPP_LIBS=-lgpgmepp
|
@ -16,6 +16,8 @@
|
||||
mkDerivation rec {
|
||||
pname = "audiotube";
|
||||
|
||||
postPatch = "sed '1i#include <iostream>' -i src/ytmusic.cpp";
|
||||
|
||||
nativeBuildInputs = [
|
||||
extra-cmake-modules
|
||||
gcc11 # doesn't build with GCC 9 from stdenv on aarch64
|
||||
|
@ -8,12 +8,12 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.4.5";
|
||||
version = "1.4.7";
|
||||
pname = "flrig";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-Zj/LkP1nSm1zLKLxuGfaKuVuP8jaVlvK/TzX504VKHk=";
|
||||
sha256 = "sha256-RzyeJf3T1vKTlyU/EMXFY+ObkqKq7wJyBB8ZeKMOO1M=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "angsd";
|
||||
version = "0.937";
|
||||
version = "0.938";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ANGSD";
|
||||
repo = "angsd";
|
||||
sha256 = "1020gh066dprqhfi90ywqzqqnq7awn49wrkkjnizmmab52v00kxs";
|
||||
sha256 = "sha256-hNELuPim2caJCzJ63fQ7kIB0ZZnXcC8JIbk4dFcCs2U=";
|
||||
rev = "${version}";
|
||||
};
|
||||
|
||||
|
@ -7,6 +7,13 @@
|
||||
let allVersions = with lib; flip map
|
||||
# N.B. Versions in this list should be ordered from newest to oldest.
|
||||
[
|
||||
{
|
||||
version = "13.1.0";
|
||||
lang = "en";
|
||||
language = "English";
|
||||
sha256 = "1659kyp38a8xknic95pynx9fsgn96i8jn9lnk89pc8n6vydw1460";
|
||||
installer = "WolframEngine_13.1.0_LINUX.sh";
|
||||
}
|
||||
{
|
||||
version = "13.0.1";
|
||||
lang = "en";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gh";
|
||||
version = "2.14.5";
|
||||
version = "2.14.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cli";
|
||||
repo = "cli";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-BkUSt4MTcAdAJjZv7MIhkhCUc/uuROrUkDhc+u1N67Y=";
|
||||
sha256 = "sha256-lortdE+qp+ejxu/QJKz+wNzaNqxcG83nHZi1txblr7E=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-ZgUU9G9BLjGSDvS15fmSpvGD0POKuX9mTF9+XxYciZI=";
|
||||
|
@ -28,7 +28,7 @@ assert sendEmailSupport -> perlSupport;
|
||||
assert svnSupport -> perlSupport;
|
||||
|
||||
let
|
||||
version = "2.37.1";
|
||||
version = "2.37.2";
|
||||
svn = subversionClient.override { perlBindings = perlSupport; };
|
||||
gitwebPerlLibs = with perlPackages; [ CGI HTMLParser CGIFast FCGI FCGIProcManager HTMLTagCloud ];
|
||||
in
|
||||
@ -41,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
|
||||
sha256 = "sha256-yBYsa4uPHF23BqsBtO4p4xBhGCE13CfEhgIkquwbNQA=";
|
||||
sha256 = "sha256-HD2cghxFOOem2sMKSvi9jc/k9lH5VHTFJrUvg0BtsAM=";
|
||||
};
|
||||
|
||||
outputs = [ "out" ] ++ lib.optional withManual "doc";
|
||||
|
@ -10,24 +10,24 @@ with lib;
|
||||
|
||||
let
|
||||
pname = "gitkraken";
|
||||
version = "8.6.0";
|
||||
version = "8.8.0";
|
||||
|
||||
throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
|
||||
|
||||
srcs = {
|
||||
x86_64-linux = fetchzip {
|
||||
url = "https://release.axocdn.com/linux/GitKraken-v${version}.tar.gz";
|
||||
sha256 = "sha256-BBhKenEm1D680wJ1hmIOM/AdXN1DxoipLf9K4eHESzs=";
|
||||
sha256 = "sha256-F/uqV6CL/zFERS6nKVD8kEqCZQ2O9AGGzU5uCJ94qwk=";
|
||||
};
|
||||
|
||||
x86_64-darwin = fetchzip {
|
||||
url = "https://release.axocdn.com/darwin/GitKraken-v${version}.zip";
|
||||
sha256 = "sha256-fyRhvaKDGYyKu6lAxHb5ve7Ix+7Tuu5JWXnqBF73ti4=";
|
||||
sha256 = "sha256-TWkwN39SxPRvUUjAPSBxv4octWasjRiA91FNCWRya44=";
|
||||
};
|
||||
|
||||
aarch64-darwin = fetchzip {
|
||||
url = "https://release.axocdn.com/darwin-arm64/GitKraken-v${version}.zip";
|
||||
sha256 = "sha256-qbu3gPTo5zY7OQyULY2iIUDQjwjlL4xZdkl68rE3VHA=";
|
||||
sha256 = "sha256-drAj0t8BRUETQ6mZPdHXgkuFAKeYsGLE8oLtf/imHk4=";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -57,10 +57,10 @@
|
||||
, libdvdcss
|
||||
, libbluray
|
||||
# Darwin-specific
|
||||
, AudioToolbox ? null
|
||||
, Foundation ? null
|
||||
, libobjc ? null
|
||||
, VideoToolbox ? null
|
||||
, AudioToolbox
|
||||
, Foundation
|
||||
, libobjc
|
||||
, VideoToolbox
|
||||
# GTK
|
||||
# NOTE: 2019-07-19: The gtk3 package has a transitive dependency on dbus,
|
||||
# which in turn depends on systemd. systemd is not supported on Darwin, so
|
||||
|
@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "jftui";
|
||||
version = "0.5.1";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Aanok";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-/QVSywS0O+HZpwY9W3le3RK3OhCkmdLYMCGTyyBdsFw=";
|
||||
sha256 = "sha256-UwR4IboLSjD/XXvSw1AhJubSxettvL/URhZ/Je6TWPQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "docker-compose";
|
||||
version = "2.10.0";
|
||||
version = "2.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "docker";
|
||||
repo = "compose";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-SXmYf1IvHXzNLP6w8MzFx6W2kX4yIICuACOJ8Yu/HWE=";
|
||||
sha256 = "sha256-SAq6sXhYySqebXbWHJ9X6q1wWnNJjgwKf8YLTXZpKuA=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-nqfCdvgK2JF4XNnA14KJNngP2M/OKThawdTo+iPjRNM=";
|
||||
vendorSha256 = "sha256-Yz2lea+ttgNbfP1mL+kwTKmo81Q6GGjJyvDANzeckpo=";
|
||||
|
||||
ldflags = [ "-X github.com/docker/compose/v2/internal.Version=${version}" "-s" "-w" ];
|
||||
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "nixpacks";
|
||||
version = "0.3.2";
|
||||
version = "0.3.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "railwayapp";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-WLT9dkaoPHusPBD6oZQSR1KGR1/Lt1jB4+BLhuAXo50=";
|
||||
sha256 = "sha256-CnRYMdqQvYvHzYNFa6QNh9yFyHeXrMJFPafEcYZ/sHE=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-aV0Cg4hbcGylQjx09rHvwHbre/OSALvekEifRYr89D8=";
|
||||
cargoSha256 = "sha256-OHG1XMSurmSxtMb/rizgLnyIHIo+SJSlM1Ggl8crHzM=";
|
||||
|
||||
# skip test due FHS dependency
|
||||
doCheck = false;
|
||||
|
@ -365,7 +365,7 @@ stdenv.mkDerivation {
|
||||
##
|
||||
+ extraBuildCommands;
|
||||
|
||||
inherit dynamicLinker expand-response-params;
|
||||
inherit dynamicLinker;
|
||||
|
||||
# for substitution in utils.bash
|
||||
expandResponseParams = "${expand-response-params}/bin/expand-response-params";
|
||||
|
@ -157,6 +157,8 @@ stdenv.mkDerivation {
|
||||
'(${concatStringsSep " " (map (pkg: "\"${pkg}\"") pkgs)}))
|
||||
'';
|
||||
|
||||
inherit expand-response-params;
|
||||
|
||||
inherit nixSupport;
|
||||
};
|
||||
|
||||
@ -540,7 +542,6 @@ stdenv.mkDerivation {
|
||||
(name: value: "echo ${toString value} >> $out/nix-support/${name}")
|
||||
nixSupport);
|
||||
|
||||
inherit expand-response-params;
|
||||
|
||||
# for substitution in utils.bash
|
||||
expandResponseParams = "${expand-response-params}/bin/expand-response-params";
|
||||
|
@ -4,12 +4,17 @@ let mirrors = import ./mirrors.nix; in
|
||||
|
||||
{ url ? builtins.head urls
|
||||
, urls ? []
|
||||
, sha256
|
||||
, sha256 ? ""
|
||||
, hash ? ""
|
||||
, name ? baseNameOf (toString url)
|
||||
}:
|
||||
|
||||
# assert exactly one hash is set
|
||||
assert hash != "" || sha256 != "";
|
||||
assert hash != "" -> sha256 == "";
|
||||
|
||||
import <nix/fetchurl.nix> {
|
||||
inherit system sha256 name;
|
||||
inherit system hash sha256 name;
|
||||
|
||||
url =
|
||||
# Handle mirror:// URIs. Since <nix/fetchurl.nix> currently
|
||||
|
@ -117,6 +117,9 @@ let
|
||||
else throw "fetchurl requires either `url` or `urls` to be set";
|
||||
|
||||
hash_ =
|
||||
# Many other combinations don't make sense, but this is the most common one:
|
||||
if hash != "" && sha256 != "" then throw "multiple hashes passed to fetchurl" else
|
||||
|
||||
if hash != "" then { outputHashAlgo = null; outputHash = hash; }
|
||||
else if md5 != "" then throw "fetchurl does not support md5 anymore, please use sha256 or sha512"
|
||||
else if (outputHash != "" && outputHashAlgo != "") then { inherit outputHashAlgo outputHash; }
|
||||
|
@ -75,11 +75,8 @@ in {
|
||||
${lib.optionalString (stdenv.buildPlatform.config != stdenv.hostPlatform.config) ''
|
||||
[target."${shortTarget}"]
|
||||
"linker" = "${ccForHost}"
|
||||
${# https://github.com/rust-lang/rust/issues/46651#issuecomment-433611633
|
||||
lib.optionalString (stdenv.hostPlatform.isMusl && stdenv.hostPlatform.isAarch64) ''
|
||||
"rustflags" = [ "-C", "target-feature=+crt-static", "-C", "link-arg=-lgcc" ]
|
||||
''}
|
||||
''}
|
||||
"rustflags" = [ "-C", "target-feature=${if stdenv.hostPlatform.isStatic then "+" else "-"}crt-static" ]
|
||||
'';
|
||||
};
|
||||
} ./cargo-setup-hook.sh) {};
|
||||
|
@ -2,7 +2,6 @@ export NIX_SET_BUILD_ID=1
|
||||
export NIX_LDFLAGS+=" --compress-debug-sections=zlib"
|
||||
export NIX_CFLAGS_COMPILE+=" -ggdb -Wa,--compress-debug-sections"
|
||||
export RUSTFLAGS+=" -g"
|
||||
dontStrip=1
|
||||
|
||||
fixupOutputHooks+=(_separateDebugInfo)
|
||||
|
||||
@ -35,7 +34,6 @@ _separateDebugInfo() {
|
||||
# firmware blobs in QEMU.)
|
||||
(
|
||||
$OBJCOPY --only-keep-debug "$i" "$dst/${id:0:2}/${id:2}.debug"
|
||||
$STRIP --strip-debug "$i"
|
||||
|
||||
# Also a create a symlink <original-name>.debug.
|
||||
ln -sfn ".build-id/${id:0:2}/${id:2}.debug" "$dst/../$(basename "$i")"
|
||||
|
@ -38,26 +38,27 @@ _doStrip() {
|
||||
stripDirs() {
|
||||
local cmd="$1"
|
||||
local ranlibCmd="$2"
|
||||
local dirs="$3"
|
||||
local paths="$3"
|
||||
local stripFlags="$4"
|
||||
local dirsNew=
|
||||
local pathsNew=
|
||||
|
||||
local d
|
||||
for d in ${dirs}; do
|
||||
if [ -d "$prefix/$d" ]; then
|
||||
dirsNew="${dirsNew} $prefix/$d "
|
||||
local p
|
||||
for p in ${paths}; do
|
||||
if [ -e "$prefix/$p" ]; then
|
||||
pathsNew="${pathsNew} $prefix/$p"
|
||||
fi
|
||||
done
|
||||
dirs=${dirsNew}
|
||||
paths=${pathsNew}
|
||||
|
||||
if [ -n "${dirs}" ]; then
|
||||
echo "stripping (with command $cmd and flags $stripFlags) in$dirs"
|
||||
find $dirs -type f -exec $cmd $stripFlags '{}' \; 2>/dev/null
|
||||
if [ -n "${paths}" ]; then
|
||||
echo "stripping (with command $cmd and flags $stripFlags) in $paths"
|
||||
# Do not strip lib/debug. This is a directory used by setup-hooks/separate-debug-info.sh.
|
||||
find $paths -type f -a '!' -wholename "$prefix/lib/debug/*" -exec $cmd $stripFlags '{}' \; 2>/dev/null
|
||||
# 'strip' does not normally preserve archive index in .a files.
|
||||
# This usually causes linking failures against static libs like:
|
||||
# ld: ...-i686-w64-mingw32-stage-final-gcc-13.0.0-lib/i686-w64-mingw32/lib/libstdc++.dll.a:
|
||||
# error adding symbols: archive has no index; run ranlib to add one
|
||||
# Restore the index by running 'ranlib'.
|
||||
find $dirs -name '*.a' -type f -exec $ranlibCmd '{}' \; 2>/dev/null
|
||||
find $paths -name '*.a' -type f -exec $ranlibCmd '{}' \; 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
34
pkgs/data/icons/hackneyed/default.nix
Normal file
34
pkgs/data/icons/hackneyed/default.nix
Normal file
@ -0,0 +1,34 @@
|
||||
{ lib, fetchzip, stdenvNoCC, fetchFromGitLab, xcursorgen, imagemagick6, inkscape }:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "hackneyed";
|
||||
version = "0.8.2";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "Enthymeme";
|
||||
repo = "hackneyed-x11-cursors";
|
||||
rev = version;
|
||||
sha256 = "sha256-Wtrw/EzxCj4cAyfdBp0OJE4+c6FouW7+b6nFTLxdXNY=";
|
||||
};
|
||||
|
||||
buildInputs = [ imagemagick6 inkscape xcursorgen ];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs *.sh
|
||||
substituteInPlace make-png.sh \
|
||||
--replace /usr/bin/inkscape ${inkscape}/bin/inkscape
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ];
|
||||
buildFlags = [ "theme" "theme.left" ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://gitlab.com/Enthymeme/hackneyed-x11-cursors";
|
||||
description = "A scalable cursor theme that resembles Windows 3.x/NT 3.x cursors";
|
||||
platforms = platforms.all;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ somasis ];
|
||||
};
|
||||
}
|
@ -2,18 +2,18 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tzdata";
|
||||
version = "2022a";
|
||||
version = "2022b";
|
||||
|
||||
srcs =
|
||||
[ (fetchurl {
|
||||
url = "https://data.iana.org/time-zones/releases/tzdata${version}.tar.gz";
|
||||
sha256 = "0r0nhwpk9nyxj5kkvjy58nr5d85568m04dcb69c4y3zmykczyzzg";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://data.iana.org/time-zones/releases/tzcode${version}.tar.gz";
|
||||
sha256 = "1iysv8fdkm79k8wh8jizmjmq075q4qjhk090vxjy57my6dz5wmzq";
|
||||
})
|
||||
];
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = "https://data.iana.org/time-zones/releases/tzdata${version}.tar.gz";
|
||||
hash = "sha256-9ZDq8Eo5UkVCbCvk+uccFDrqXOvBEIi3oKVwRGHfOX0=";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://data.iana.org/time-zones/releases/tzcode${version}.tar.gz";
|
||||
hash = "sha256-urINlD5ZoyGENfSNhopOVS8Y1tfz3RKGYMVmDIC4oF8=";
|
||||
})
|
||||
];
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
|
@ -88,6 +88,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
broken = true; # won't build with current meson; upstream is dead/archived
|
||||
homepage = "https://wiki.gnome.org/Apps/Books";
|
||||
description = "An e-book manager application for GNOME";
|
||||
maintainers = teams.gnome.members;
|
||||
|
@ -7,7 +7,7 @@ packages:
|
||||
# 3. Something else?
|
||||
let cli = builtins.head packages;
|
||||
in
|
||||
assert lib.assertMsg ((builtins.length packages) < 1)
|
||||
assert lib.assertMsg ((builtins.length packages) > 0)
|
||||
''You must include at least one package, e.g
|
||||
`with dotnetCorePackages; combinePackages [
|
||||
sdk_3_1 aspnetcore_5_0
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -188,7 +188,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -229,7 +229,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -268,8 +268,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableMultilib enableShared;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -74,8 +74,8 @@ let majorVersion = "11";
|
||||
++ optional (targetPlatform.libc == "musl" && targetPlatform.isPower) ../ppc-musl.patch
|
||||
|
||||
++ optional (stdenv.isDarwin && stdenv.isAarch64) (fetchpatch {
|
||||
url = "https://github.com/fxcoudert/gcc/compare/releases/gcc-11.1.0...gcc-11.1.0-arm-20210504.diff";
|
||||
sha256 = "sha256-JqCGJAfbOxSmkNyq49aFHteK/RFsCSLQrL9mzUCnaD0=";
|
||||
url = "https://github.com/fxcoudert/gcc/compare/releases/gcc-11.2.0...gcc-11.2.0-arm-20211201.diff";
|
||||
sha256 = "sha256-z62s/cXuH9Kgq/oD/OiiZ8LWnX1xl1D43sONnwaEW1w=";
|
||||
})
|
||||
|
||||
# Obtain latest patch with ../update-mcfgthread-patches.sh
|
||||
@ -196,7 +196,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -237,7 +237,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -276,8 +276,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableShared enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -191,7 +191,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -232,7 +232,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -271,8 +271,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableShared enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -195,7 +195,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform langJava langGo crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform langJava langGo crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -236,7 +236,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -291,8 +291,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableShared enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -215,7 +215,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform langJava langGo crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform langJava langGo crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -256,7 +256,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -310,8 +310,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableShared enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -227,7 +227,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform gnatboot langJava langAda langGo crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform gnatboot langJava langAda langGo crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -268,7 +268,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -322,8 +322,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableShared enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -194,7 +194,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform langGo crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform langGo crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -235,7 +235,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -276,8 +276,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableShared enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -177,7 +177,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform langGo crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform langGo crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -216,7 +216,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -255,8 +255,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableShared enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -190,7 +190,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
preConfigure = import ../common/pre-configure.nix {
|
||||
inherit lib;
|
||||
inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit crossStageStatic;
|
||||
inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit crossStageStatic enableMultilib;
|
||||
};
|
||||
|
||||
dontDisableStatic = true;
|
||||
@ -231,7 +231,7 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
inherit
|
||||
(import ../common/strip-attributes.nix { inherit stdenv; })
|
||||
(import ../common/strip-attributes.nix { inherit lib stdenv langJit; })
|
||||
stripDebugList
|
||||
stripDebugListTarget
|
||||
preFixup;
|
||||
@ -270,8 +270,6 @@ stdenv.mkDerivation ({
|
||||
enableParallelBuilding = true;
|
||||
inherit enableShared enableMultilib;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gcc.gnu.org/";
|
||||
license = lib.licenses.gpl3Plus; # runtime support libraries are typically LGPLv3+
|
||||
|
@ -193,10 +193,15 @@ preInstall() {
|
||||
mkdir -p "$out/${targetConfig}/lib"
|
||||
mkdir -p "${!outputLib}/${targetConfig}/lib"
|
||||
# Make ‘lib64’ symlinks to ‘lib’.
|
||||
if [ -n "$is64bit" -a -z "$enableMultilib" ]; then
|
||||
if [ -n "$linkLib64toLib" ]; then
|
||||
ln -s lib "$out/${targetConfig}/lib64"
|
||||
ln -s lib "${!outputLib}/${targetConfig}/lib64"
|
||||
fi
|
||||
# Make ‘lib32’ symlinks to ‘lib’.
|
||||
if [ -n "$linkLib32toLib" ]; then
|
||||
ln -s lib "$out/${targetConfig}/lib32"
|
||||
ln -s lib "${!outputLib}/${targetConfig}/lib32"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
|
@ -5,6 +5,7 @@
|
||||
, langJit ? false
|
||||
, langGo
|
||||
, crossStageStatic
|
||||
, enableMultilib
|
||||
}:
|
||||
|
||||
assert langJava -> lib.versionOlder version "7";
|
||||
@ -78,3 +79,17 @@ in lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
|
||||
+ lib.optionalString (targetPlatform != hostPlatform && crossStageStatic) ''
|
||||
export inhibit_libc=true
|
||||
''
|
||||
|
||||
+ lib.optionalString (!enableMultilib && hostPlatform.is64bit && !hostPlatform.isMips64n32) ''
|
||||
export linkLib64toLib=1
|
||||
''
|
||||
|
||||
# On mips platforms, gcc follows the IRIX naming convention:
|
||||
#
|
||||
# $PREFIX/lib = mips32
|
||||
# $PREFIX/lib32 = mips64n32
|
||||
# $PREFIX/lib64 = mips64
|
||||
#
|
||||
+ lib.optionalString (!enableMultilib && targetPlatform.isMips64n32) ''
|
||||
export linkLib32toLib=1
|
||||
''
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv }:
|
||||
{ lib, stdenv, langJit }:
|
||||
|
||||
{
|
||||
# Note [Cross-compiler stripping]
|
||||
@ -8,7 +8,9 @@
|
||||
# Example ARM breakage by x86_64 strip: https://bugs.gentoo.org/697428
|
||||
#
|
||||
# Let's recap the file layout for directories with object files for a
|
||||
# cross-compiler (host != target):
|
||||
# cross-compiler:
|
||||
#
|
||||
# $out (host != target)
|
||||
# `- bin: HOST
|
||||
# lib/*.{a,o}: HOST
|
||||
# `- gcc/<TARGET>/<VERSION>/*.{a,o}: TARGET
|
||||
@ -17,10 +19,16 @@
|
||||
# `- libexec/: HOST
|
||||
# `- <TARGET>/: TARGET
|
||||
#
|
||||
# (host == target) has identical directory layout.
|
||||
# $out (host == target) has identical directory layout.
|
||||
#
|
||||
# $lib (host != target):
|
||||
# `- <TARGET>/lib/*.{la,so}: TARGET
|
||||
#
|
||||
# $lib (host == target):
|
||||
# `- lib/*.{la,so}: HOST
|
||||
|
||||
# The rest of stripDebugList{Host,Target} will be populated in
|
||||
# postInstall.
|
||||
# postInstall to disambiguate lib/ object files.
|
||||
stripDebugList = [ "bin" "libexec" ];
|
||||
stripDebugListTarget = [ stdenv.targetPlatform.config ];
|
||||
|
||||
@ -32,21 +40,30 @@
|
||||
shopt -s nullglob
|
||||
|
||||
pushd $out
|
||||
|
||||
local -ar hostFiles=(
|
||||
lib{,32,64}/*.{a.o}
|
||||
local -ar outHostFiles=(
|
||||
lib{,32,64}/*.{a,o,so*}
|
||||
lib{,32,64}/gcc/${stdenv.targetPlatform.config}/*/plugin
|
||||
)
|
||||
local -ar targetFiles=(
|
||||
lib{,32,64}/gcc/${stdenv.targetPlatform.config}/*/*.{a.o}
|
||||
local -ar outTargetFiles=(
|
||||
lib{,32,64}/gcc/${stdenv.targetPlatform.config}/*/*.{a,o,so*}
|
||||
)
|
||||
popd
|
||||
'' + lib.optionalString (!langJit) ''
|
||||
${/*keep indentation*/ ""}
|
||||
pushd $lib
|
||||
local -ar libHostFiles=(
|
||||
lib{,32,64}/*.{a,o,so*}
|
||||
)
|
||||
local -ar libTargetFiles=(
|
||||
lib{,32,64}/${stdenv.targetPlatform.config}/*.{a,o,so*}
|
||||
)
|
||||
|
||||
stripDebugList="$stripDebugList ''${hostFiles[*]}"
|
||||
stripDebugListTarget="$stripDebugListTarget ''${targetFiles[*]}"
|
||||
|
||||
popd
|
||||
|
||||
'' + ''
|
||||
eval "$oldOpts"
|
||||
|
||||
stripDebugList="$stripDebugList ''${outHostFiles[*]} ''${libHostFiles[*]}"
|
||||
stripDebugListTarget="$stripDebugListTarget ''${outTargetFiles[*]} ''${libTargetFiles[*]}"
|
||||
}
|
||||
updateDebugListPaths
|
||||
'';
|
||||
|
@ -9,13 +9,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "glslang";
|
||||
version = "1.3.211.0";
|
||||
version = "1.3.216.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "glslang";
|
||||
rev = "sdk-${version}";
|
||||
sha256 = "sha256-YLn/Mxuk6mXPGtBBgfwky5Nl1TCAW6i2g+AZLzqVz+A=";
|
||||
hash = "sha256-sjidkiPtRADhyOEKDb2cHCBXnFjLwk2F5Lppv5/fwNQ=";
|
||||
};
|
||||
|
||||
# These get set at all-packages, keep onto them for child drvs
|
||||
|
@ -3,7 +3,6 @@
|
||||
, fetchurl
|
||||
, tzdata
|
||||
, iana-etc
|
||||
, runCommand
|
||||
, perl
|
||||
, which
|
||||
, pkg-config
|
||||
@ -21,15 +20,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
go_bootstrap = buildPackages.callPackage ./bootstrap116.nix { };
|
||||
|
||||
goBootstrap = runCommand "go-bootstrap" { } ''
|
||||
mkdir $out
|
||||
cp -rf ${go_bootstrap}/* $out/
|
||||
chmod -R u+w $out
|
||||
find $out -name "*.c" -delete
|
||||
cp -rf $out/bin/* $out/share/go/bin/
|
||||
'';
|
||||
goBootstrap = buildPackages.callPackage ./bootstrap116.nix { };
|
||||
|
||||
goarch = platform: {
|
||||
"aarch64" = "arm64";
|
||||
@ -277,6 +268,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
disallowedReferences = [ goBootstrap ];
|
||||
|
||||
passthru = {
|
||||
inherit goBootstrap;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "The Go Programming language";
|
||||
homepage = "https://go.dev/";
|
||||
|
@ -2,34 +2,24 @@
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, tzdata
|
||||
, substituteAll
|
||||
, iana-etc
|
||||
, runCommand
|
||||
, perl
|
||||
, which
|
||||
, pkg-config
|
||||
, procps
|
||||
, pcre
|
||||
, cacert
|
||||
, Security
|
||||
, Foundation
|
||||
, xcbuild
|
||||
, mailcap
|
||||
, runtimeShell
|
||||
, buildPackages
|
||||
, pkgsBuildTarget
|
||||
, threadsCross
|
||||
, testers
|
||||
, skopeo
|
||||
, buildGo118Module
|
||||
}:
|
||||
|
||||
let
|
||||
go_bootstrap = buildPackages.callPackage ./bootstrap116.nix { };
|
||||
goBootstrap = buildPackages.callPackage ./bootstrap116.nix { };
|
||||
|
||||
goBootstrap = runCommand "go-bootstrap" { } ''
|
||||
mkdir $out
|
||||
cp -rf ${go_bootstrap}/* $out/
|
||||
chmod -R u+w $out
|
||||
find $out -name "*.c" -delete
|
||||
cp -rf $out/bin/* $out/share/go/bin/
|
||||
'';
|
||||
skopeoTest = skopeo.override { buildGoModule = buildGo118Module; };
|
||||
|
||||
goarch = platform: {
|
||||
"aarch64" = "arm64";
|
||||
@ -63,126 +53,41 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
# perl is used for testing go vet
|
||||
nativeBuildInputs = [ perl which pkg-config procps ];
|
||||
buildInputs = [ cacert pcre ]
|
||||
buildInputs = [ ]
|
||||
++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
|
||||
++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
|
||||
|
||||
propagatedBuildInputs = lib.optionals stdenv.isDarwin [ xcbuild ];
|
||||
|
||||
depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ];
|
||||
depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Foundation Security xcbuild ];
|
||||
|
||||
depsBuildTarget = lib.optional isCross targetCC;
|
||||
|
||||
depsTargetTarget = lib.optional stdenv.targetPlatform.isWindows threadsCross;
|
||||
|
||||
hardeningDisable = [ "all" ];
|
||||
|
||||
prePatch = ''
|
||||
patchShebangs ./ # replace /bin/bash
|
||||
|
||||
# This source produces shell script at run time,
|
||||
# and thus it is not corrected by patchShebangs.
|
||||
substituteInPlace misc/cgo/testcarchive/carchive_test.go \
|
||||
--replace '#!/usr/bin/env bash' '#!${runtimeShell}'
|
||||
|
||||
# Patch the mimetype database location which is missing on NixOS.
|
||||
# but also allow static binaries built with NixOS to run outside nix
|
||||
sed -i 's,\"/etc/mime.types,"${mailcap}/etc/mime.types\"\,\n\t&,' src/mime/type_unix.go
|
||||
|
||||
# Disabling the 'os/http/net' tests (they want files not available in
|
||||
# chroot builds)
|
||||
rm src/net/{listen,parse}_test.go
|
||||
rm src/syscall/exec_linux_test.go
|
||||
|
||||
# !!! substituteInPlace does not seems to be effective.
|
||||
# The os test wants to read files in an existing path. Just don't let it be /usr/bin.
|
||||
sed -i 's,/usr/bin,'"`pwd`", src/os/os_test.go
|
||||
sed -i 's,/bin/pwd,'"`type -P pwd`", src/os/os_test.go
|
||||
# Fails on aarch64
|
||||
sed -i '/TestFallocate/aif true \{ return\; \}' src/cmd/link/internal/ld/fallocate_test.go
|
||||
# Skip this test since ssl patches mess it up.
|
||||
sed -i '/TestLoadSystemCertsLoadColonSeparatedDirs/aif true \{ return\; \}' src/crypto/x509/root_unix_test.go
|
||||
# Disable another PIE test which breaks.
|
||||
sed -i '/TestTrivialPIE/aif true \{ return\; \}' misc/cgo/testshared/shared_test.go
|
||||
# Disable the BuildModePie test
|
||||
sed -i '/TestBuildmodePIE/aif true \{ return\; \}' src/cmd/go/go_test.go
|
||||
# Disable the unix socket test
|
||||
sed -i '/TestShutdownUnix/aif true \{ return\; \}' src/net/net_test.go
|
||||
# Disable the hostname test
|
||||
sed -i '/TestHostname/aif true \{ return\; \}' src/os/os_test.go
|
||||
# ParseInLocation fails the test
|
||||
sed -i '/TestParseInSydney/aif true \{ return\; \}' src/time/format_test.go
|
||||
# Remove the api check as it never worked
|
||||
sed -i '/src\/cmd\/api\/run.go/ireturn nil' src/cmd/dist/test.go
|
||||
# Remove the coverage test as we have removed this utility
|
||||
sed -i '/TestCoverageWithCgo/aif true \{ return\; \}' src/cmd/go/go_test.go
|
||||
# Remove the timezone naming test
|
||||
sed -i '/TestLoadFixed/aif true \{ return\; \}' src/time/time_test.go
|
||||
# Remove disable setgid test
|
||||
sed -i '/TestRespectSetgidDir/aif true \{ return\; \}' src/cmd/go/internal/work/build_test.go
|
||||
# Remove cert tests that conflict with NixOS's cert resolution
|
||||
sed -i '/TestEnvVars/aif true \{ return\; \}' src/crypto/x509/root_unix_test.go
|
||||
# TestWritevError hangs sometimes
|
||||
sed -i '/TestWritevError/aif true \{ return\; \}' src/net/writev_test.go
|
||||
# TestVariousDeadlines fails sometimes
|
||||
sed -i '/TestVariousDeadlines/aif true \{ return\; \}' src/net/timeout_test.go
|
||||
|
||||
sed -i 's,/etc/protocols,${iana-etc}/etc/protocols,' src/net/lookup_unix.go
|
||||
sed -i 's,/etc/services,${iana-etc}/etc/services,' src/net/port_unix.go
|
||||
|
||||
# Disable cgo lookup tests not works, they depend on resolver
|
||||
rm src/net/cgo_unix_test.go
|
||||
|
||||
# prepend the nix path to the zoneinfo files but also leave the original value for static binaries
|
||||
# that run outside a nix server
|
||||
sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go
|
||||
|
||||
'' + lib.optionalString stdenv.isAarch32 ''
|
||||
echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash
|
||||
'' + lib.optionalString stdenv.isDarwin ''
|
||||
substituteInPlace src/race.bash --replace \
|
||||
"sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
|
||||
sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
|
||||
sed -i 's,"/etc","'"$TMPDIR"'",' src/os/os_test.go
|
||||
sed -i 's,/_go_os_test,'"$TMPDIR"'/_go_os_test,' src/os/path_test.go
|
||||
|
||||
sed -i '/TestChdirAndGetwd/aif true \{ return\; \}' src/os/os_test.go
|
||||
sed -i '/TestCredentialNoSetGroups/aif true \{ return\; \}' src/os/exec/exec_posix_test.go
|
||||
sed -i '/TestRead0/aif true \{ return\; \}' src/os/os_test.go
|
||||
sed -i '/TestSystemRoots/aif true \{ return\; \}' src/crypto/x509/root_darwin_test.go
|
||||
|
||||
sed -i '/TestGoInstallRebuildsStalePackagesInOtherGOPATH/aif true \{ return\; \}' src/cmd/go/go_test.go
|
||||
sed -i '/TestBuildDashIInstallsDependencies/aif true \{ return\; \}' src/cmd/go/go_test.go
|
||||
|
||||
sed -i '/TestDisasmExtld/aif true \{ return\; \}' src/cmd/objdump/objdump_test.go
|
||||
|
||||
sed -i 's/unrecognized/unknown/' src/cmd/link/internal/ld/lib.go
|
||||
|
||||
# TestCurrent fails because Current is not implemented on Darwin
|
||||
sed -i 's/TestCurrent/testCurrent/g' src/os/user/user_test.go
|
||||
sed -i 's/TestLookup/testLookup/g' src/os/user/user_test.go
|
||||
|
||||
touch $TMPDIR/group $TMPDIR/hosts $TMPDIR/passwd
|
||||
postPatch = ''
|
||||
patchShebangs .
|
||||
'';
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./iana-etc-1.17.patch;
|
||||
iana = iana-etc;
|
||||
})
|
||||
# Patch the mimetype database location which is missing on NixOS.
|
||||
# but also allow static binaries built with NixOS to run outside nix
|
||||
(substituteAll {
|
||||
src = ./mailcap-1.17.patch;
|
||||
inherit mailcap;
|
||||
})
|
||||
# prepend the nix path to the zoneinfo files but also leave the original value for static binaries
|
||||
# that run outside a nix server
|
||||
(substituteAll {
|
||||
src = ./tzdata-1.17.patch;
|
||||
inherit tzdata;
|
||||
})
|
||||
./remove-tools-1.11.patch
|
||||
./ssl-cert-file-1.16.patch
|
||||
./remove-test-pie-1.15.patch
|
||||
./creds-test.patch
|
||||
./skip-chown-tests-1.16.patch
|
||||
./skip-external-network-tests-1.16.patch
|
||||
./skip-nohup-tests.patch
|
||||
./skip-cgo-tests-1.15.patch
|
||||
./go_no_vendor_checks-1.16.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
find . -name '*.orig' -exec rm {} ';'
|
||||
'';
|
||||
|
||||
GOOS = stdenv.targetPlatform.parsed.kernel.name;
|
||||
GOARCH = goarch stdenv.targetPlatform;
|
||||
# GOHOSTOS/GOHOSTARCH must match the building system, not the host system.
|
||||
@ -207,16 +112,11 @@ stdenv.mkDerivation rec {
|
||||
GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
|
||||
GO386 = "softfloat"; # from Arch: don't assume sse2 on i686
|
||||
CGO_ENABLED = 1;
|
||||
# Hopefully avoids test timeouts on Hydra
|
||||
GO_TEST_TIMEOUT_SCALE = 3;
|
||||
|
||||
# Indicate that we are running on build infrastructure
|
||||
# Some tests assume things like home directories and users exists
|
||||
GO_BUILDER_NAME = "nix";
|
||||
|
||||
GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";
|
||||
|
||||
postConfigure = ''
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
export GOCACHE=$TMPDIR/go-cache
|
||||
# this is compiled into the binary
|
||||
export GOROOT_FINAL=$out/share/go
|
||||
@ -229,18 +129,11 @@ stdenv.mkDerivation rec {
|
||||
export CC=${buildPackages.stdenv.cc}/bin/cc
|
||||
''}
|
||||
ulimit -a
|
||||
'';
|
||||
|
||||
postBuild = ''
|
||||
(cd src && ./make.bash)
|
||||
'';
|
||||
|
||||
doCheck = stdenv.hostPlatform == stdenv.targetPlatform && !stdenv.isDarwin;
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
(cd src && HOME=$TMPDIR GOCACHE=$TMPDIR/go-cache ./run.bash --no-rebuild)
|
||||
runHook postCheck
|
||||
pushd src
|
||||
./make.bash
|
||||
popd
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
@ -271,6 +164,13 @@ stdenv.mkDerivation rec {
|
||||
|
||||
disallowedReferences = [ goBootstrap ];
|
||||
|
||||
passthru = {
|
||||
inherit goBootstrap skopeoTest;
|
||||
tests = {
|
||||
skopeo = testers.testVersion { package = skopeoTest; };
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "The Go Programming language";
|
||||
homepage = "https://go.dev/";
|
||||
|
@ -2,34 +2,24 @@
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, tzdata
|
||||
, substituteAll
|
||||
, iana-etc
|
||||
, runCommand
|
||||
, perl
|
||||
, which
|
||||
, pkg-config
|
||||
, procps
|
||||
, pcre
|
||||
, cacert
|
||||
, Security
|
||||
, Foundation
|
||||
, xcbuild
|
||||
, mailcap
|
||||
, runtimeShell
|
||||
, buildPackages
|
||||
, pkgsBuildTarget
|
||||
, threadsCross
|
||||
, testers
|
||||
, skopeo
|
||||
, buildGo119Module
|
||||
}:
|
||||
|
||||
let
|
||||
go_bootstrap = buildPackages.callPackage ./bootstrap116.nix { };
|
||||
goBootstrap = buildPackages.callPackage ./bootstrap116.nix { };
|
||||
|
||||
goBootstrap = runCommand "go-bootstrap" { } ''
|
||||
mkdir $out
|
||||
cp -rf ${go_bootstrap}/* $out/
|
||||
chmod -R u+w $out
|
||||
find $out -name "*.c" -delete
|
||||
cp -rf $out/bin/* $out/share/go/bin/
|
||||
'';
|
||||
skopeoTest = skopeo.override { buildGoModule = buildGo119Module; };
|
||||
|
||||
goarch = platform: {
|
||||
"aarch64" = "arm64";
|
||||
@ -63,125 +53,41 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
# perl is used for testing go vet
|
||||
nativeBuildInputs = [ perl which pkg-config procps ];
|
||||
buildInputs = [ cacert pcre ]
|
||||
buildInputs = [ ]
|
||||
++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
|
||||
++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
|
||||
|
||||
propagatedBuildInputs = lib.optionals stdenv.isDarwin [ xcbuild ];
|
||||
|
||||
depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Security Foundation ];
|
||||
depsTargetTargetPropagated = lib.optionals stdenv.isDarwin [ Foundation Security xcbuild ];
|
||||
|
||||
depsBuildTarget = lib.optional isCross targetCC;
|
||||
|
||||
depsTargetTarget = lib.optional stdenv.targetPlatform.isWindows threadsCross;
|
||||
|
||||
hardeningDisable = [ "all" ];
|
||||
|
||||
prePatch = ''
|
||||
patchShebangs ./ # replace /bin/bash
|
||||
|
||||
# This source produces shell script at run time,
|
||||
# and thus it is not corrected by patchShebangs.
|
||||
substituteInPlace misc/cgo/testcarchive/carchive_test.go \
|
||||
--replace '#!/usr/bin/env bash' '#!${runtimeShell}'
|
||||
|
||||
# Patch the mimetype database location which is missing on NixOS.
|
||||
# but also allow static binaries built with NixOS to run outside nix
|
||||
sed -i 's,\"/etc/mime.types,"${mailcap}/etc/mime.types\"\,\n\t&,' src/mime/type_unix.go
|
||||
|
||||
# Disabling the 'os/http/net' tests (they want files not available in
|
||||
# chroot builds)
|
||||
rm src/net/{listen,parse}_test.go
|
||||
rm src/syscall/exec_linux_test.go
|
||||
|
||||
# !!! substituteInPlace does not seems to be effective.
|
||||
# The os test wants to read files in an existing path. Just don't let it be /usr/bin.
|
||||
sed -i 's,/usr/bin,'"`pwd`", src/os/os_test.go
|
||||
sed -i 's,/bin/pwd,'"`type -P pwd`", src/os/os_test.go
|
||||
# Fails on aarch64
|
||||
sed -i '/TestFallocate/aif true \{ return\; \}' src/cmd/link/internal/ld/fallocate_test.go
|
||||
# Skip this test since ssl patches mess it up.
|
||||
sed -i '/TestLoadSystemCertsLoadColonSeparatedDirs/aif true \{ return\; \}' src/crypto/x509/root_unix_test.go
|
||||
# Disable another PIE test which breaks.
|
||||
sed -i '/TestTrivialPIE/aif true \{ return\; \}' misc/cgo/testshared/shared_test.go
|
||||
# Disable the BuildModePie test
|
||||
sed -i '/TestBuildmodePIE/aif true \{ return\; \}' src/cmd/go/go_test.go
|
||||
# Disable the unix socket test
|
||||
sed -i '/TestShutdownUnix/aif true \{ return\; \}' src/net/net_test.go
|
||||
# Disable the hostname test
|
||||
sed -i '/TestHostname/aif true \{ return\; \}' src/os/os_test.go
|
||||
# ParseInLocation fails the test
|
||||
sed -i '/TestParseInSydney/aif true \{ return\; \}' src/time/format_test.go
|
||||
# Remove the api check as it never worked
|
||||
sed -i '/src\/cmd\/api\/run.go/ireturn nil' src/cmd/dist/test.go
|
||||
# Remove the coverage test as we have removed this utility
|
||||
sed -i '/TestCoverageWithCgo/aif true \{ return\; \}' src/cmd/go/go_test.go
|
||||
# Remove the timezone naming test
|
||||
sed -i '/TestLoadFixed/aif true \{ return\; \}' src/time/time_test.go
|
||||
# Remove disable setgid test
|
||||
sed -i '/TestRespectSetgidDir/aif true \{ return\; \}' src/cmd/go/internal/work/build_test.go
|
||||
# Remove cert tests that conflict with NixOS's cert resolution
|
||||
sed -i '/TestEnvVars/aif true \{ return\; \}' src/crypto/x509/root_unix_test.go
|
||||
# TestWritevError hangs sometimes
|
||||
sed -i '/TestWritevError/aif true \{ return\; \}' src/net/writev_test.go
|
||||
# TestVariousDeadlines fails sometimes
|
||||
sed -i '/TestVariousDeadlines/aif true \{ return\; \}' src/net/timeout_test.go
|
||||
|
||||
sed -i 's,/etc/protocols,${iana-etc}/etc/protocols,' src/net/lookup_unix.go
|
||||
sed -i 's,/etc/services,${iana-etc}/etc/services,' src/net/port_unix.go
|
||||
|
||||
# Disable cgo lookup tests not works, they depend on resolver
|
||||
rm src/net/cgo_unix_test.go
|
||||
|
||||
# prepend the nix path to the zoneinfo files but also leave the original value for static binaries
|
||||
# that run outside a nix server
|
||||
sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go
|
||||
|
||||
'' + lib.optionalString stdenv.isAarch32 ''
|
||||
echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash
|
||||
'' + lib.optionalString stdenv.isDarwin ''
|
||||
substituteInPlace src/race.bash --replace \
|
||||
"sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
|
||||
sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
|
||||
sed -i 's,"/etc","'"$TMPDIR"'",' src/os/os_test.go
|
||||
sed -i 's,/_go_os_test,'"$TMPDIR"'/_go_os_test,' src/os/path_test.go
|
||||
|
||||
sed -i '/TestChdirAndGetwd/aif true \{ return\; \}' src/os/os_test.go
|
||||
sed -i '/TestCredentialNoSetGroups/aif true \{ return\; \}' src/os/exec/exec_posix_test.go
|
||||
sed -i '/TestRead0/aif true \{ return\; \}' src/os/os_test.go
|
||||
sed -i '/TestSystemRoots/aif true \{ return\; \}' src/crypto/x509/root_darwin_test.go
|
||||
|
||||
sed -i '/TestGoInstallRebuildsStalePackagesInOtherGOPATH/aif true \{ return\; \}' src/cmd/go/go_test.go
|
||||
sed -i '/TestBuildDashIInstallsDependencies/aif true \{ return\; \}' src/cmd/go/go_test.go
|
||||
|
||||
sed -i '/TestDisasmExtld/aif true \{ return\; \}' src/cmd/objdump/objdump_test.go
|
||||
|
||||
sed -i 's/unrecognized/unknown/' src/cmd/link/internal/ld/lib.go
|
||||
|
||||
# TestCurrent fails because Current is not implemented on Darwin
|
||||
sed -i 's/TestCurrent/testCurrent/g' src/os/user/user_test.go
|
||||
sed -i 's/TestLookup/testLookup/g' src/os/user/user_test.go
|
||||
|
||||
touch $TMPDIR/group $TMPDIR/hosts $TMPDIR/passwd
|
||||
postPatch = ''
|
||||
patchShebangs .
|
||||
'';
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./iana-etc-1.17.patch;
|
||||
iana = iana-etc;
|
||||
})
|
||||
# Patch the mimetype database location which is missing on NixOS.
|
||||
# but also allow static binaries built with NixOS to run outside nix
|
||||
(substituteAll {
|
||||
src = ./mailcap-1.17.patch;
|
||||
inherit mailcap;
|
||||
})
|
||||
# prepend the nix path to the zoneinfo files but also leave the original value for static binaries
|
||||
# that run outside a nix server
|
||||
(substituteAll {
|
||||
src = ./tzdata-1.19.patch;
|
||||
inherit tzdata;
|
||||
})
|
||||
./remove-tools-1.11.patch
|
||||
./ssl-cert-file-1.16.patch
|
||||
./remove-test-pie-1.15.patch
|
||||
./skip-chown-tests-1.16.patch
|
||||
./skip-external-network-tests-1.16.patch
|
||||
./skip-nohup-tests.patch
|
||||
./skip-cgo-tests-1.19.patch
|
||||
./go_no_vendor_checks-1.16.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
find . -name '*.orig' -exec rm {} ';'
|
||||
'';
|
||||
|
||||
GOOS = stdenv.targetPlatform.parsed.kernel.name;
|
||||
GOARCH = goarch stdenv.targetPlatform;
|
||||
# GOHOSTOS/GOHOSTARCH must match the building system, not the host system.
|
||||
@ -206,16 +112,11 @@ stdenv.mkDerivation rec {
|
||||
GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
|
||||
GO386 = "softfloat"; # from Arch: don't assume sse2 on i686
|
||||
CGO_ENABLED = 1;
|
||||
# Hopefully avoids test timeouts on Hydra
|
||||
GO_TEST_TIMEOUT_SCALE = 3;
|
||||
|
||||
# Indicate that we are running on build infrastructure
|
||||
# Some tests assume things like home directories and users exists
|
||||
GO_BUILDER_NAME = "nix";
|
||||
|
||||
GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";
|
||||
|
||||
postConfigure = ''
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
export GOCACHE=$TMPDIR/go-cache
|
||||
# this is compiled into the binary
|
||||
export GOROOT_FINAL=$out/share/go
|
||||
@ -228,18 +129,11 @@ stdenv.mkDerivation rec {
|
||||
export CC=${buildPackages.stdenv.cc}/bin/cc
|
||||
''}
|
||||
ulimit -a
|
||||
'';
|
||||
|
||||
postBuild = ''
|
||||
(cd src && ./make.bash)
|
||||
'';
|
||||
|
||||
doCheck = stdenv.hostPlatform == stdenv.targetPlatform && !stdenv.isDarwin;
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
(cd src && HOME=$TMPDIR GOCACHE=$TMPDIR/go-cache ./run.bash --no-rebuild)
|
||||
runHook postCheck
|
||||
pushd src
|
||||
./make.bash
|
||||
popd
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
@ -270,6 +164,13 @@ stdenv.mkDerivation rec {
|
||||
|
||||
disallowedReferences = [ goBootstrap ];
|
||||
|
||||
passthru = {
|
||||
inherit goBootstrap skopeoTest;
|
||||
tests = {
|
||||
skopeo = testers.testVersion { package = skopeoTest; };
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "The Go Programming language";
|
||||
homepage = "https://go.dev/";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchurl, version, hashes }:
|
||||
{ lib, stdenv, fetchurl, version, hashes, autoPatchelfHook }:
|
||||
let
|
||||
toGoKernel = platform:
|
||||
if platform.isDarwin then "darwin"
|
||||
@ -25,19 +25,16 @@ stdenv.mkDerivation rec {
|
||||
sha256 = hashes.${platform} or (throw "Missing Go bootstrap hash for platform ${platform}");
|
||||
};
|
||||
|
||||
nativeBuildInputs = lib.optionals stdenv.isLinux [ autoPatchelfHook ];
|
||||
|
||||
# We must preserve the signature on Darwin
|
||||
dontStrip = stdenv.hostPlatform.isDarwin;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/share/go $out/bin
|
||||
mv bin/* $out/bin
|
||||
cp -r . $out/share/go
|
||||
${lib.optionalString stdenv.isLinux (''
|
||||
patchelf \
|
||||
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
|
||||
$out/bin/go
|
||||
'')}
|
||||
ln -s $out/share/go/bin/go $out/bin/go
|
||||
runHook postInstall
|
||||
'';
|
||||
}
|
||||
|
26
pkgs/development/compilers/go/iana-etc-1.17.patch
Normal file
26
pkgs/development/compilers/go/iana-etc-1.17.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff --git a/src/net/lookup_unix.go b/src/net/lookup_unix.go
|
||||
index 8030e3d99e..5a7472d933 100644
|
||||
--- a/src/net/lookup_unix.go
|
||||
+++ b/src/net/lookup_unix.go
|
||||
@@ -21,7 +21,7 @@ var onceReadProtocols sync.Once
|
||||
// readProtocols loads contents of /etc/protocols into protocols map
|
||||
// for quick access.
|
||||
func readProtocols() {
|
||||
- file, err := open("/etc/protocols")
|
||||
+ file, err := open("@iana@/etc/protocols")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
diff --git a/src/net/port_unix.go b/src/net/port_unix.go
|
||||
index a9a96a2323..0df6efe9e5 100644
|
||||
--- a/src/net/port_unix.go
|
||||
+++ b/src/net/port_unix.go
|
||||
@@ -17,7 +17,7 @@ import (
|
||||
var onceReadServices sync.Once
|
||||
|
||||
func readServices() {
|
||||
- file, err := open("/etc/services")
|
||||
+ file, err := open("@iana@/etc/services")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
12
pkgs/development/compilers/go/mailcap-1.17.patch
Normal file
12
pkgs/development/compilers/go/mailcap-1.17.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff --git a/src/mime/type_unix.go b/src/mime/type_unix.go
|
||||
index f954bc8a1f..06d897bfbf 100644
|
||||
--- a/src/mime/type_unix.go
|
||||
+++ b/src/mime/type_unix.go
|
||||
@@ -26,6 +26,7 @@ var mimeGlobs = []string{
|
||||
|
||||
// Common locations for mime.types files on unix.
|
||||
var typeFiles = []string{
|
||||
+ "@mailcap@/etc/mime.types",
|
||||
"/etc/mime.types",
|
||||
"/etc/apache2/mime.types",
|
||||
"/etc/apache/mime.types",
|
@ -1,13 +0,0 @@
|
||||
diff --git a/src/cmd/dist/test.go b/src/cmd/dist/test.go
|
||||
index e1cd4965c3..0980d044df 100644
|
||||
--- a/src/cmd/dist/test.go
|
||||
+++ b/src/cmd/dist/test.go
|
||||
@@ -1136,7 +1136,7 @@ func (t *tester) cgoTest(dt *distTest) error {
|
||||
t.addCmd(dt, "misc/cgo/test", t.goTest(), "-buildmode=pie", "-ldflags=-linkmode=internal")
|
||||
}
|
||||
t.addCmd(dt, "misc/cgo/testtls", t.goTest(), "-buildmode=pie", ".")
|
||||
- t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-buildmode=pie", ".")
|
||||
+ //t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-buildmode=pie", ".")
|
||||
}
|
||||
}
|
||||
}
|
12
pkgs/development/compilers/go/tzdata-1.17.patch
Normal file
12
pkgs/development/compilers/go/tzdata-1.17.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff --git a/src/time/zoneinfo_unix.go b/src/time/zoneinfo_unix.go
|
||||
index 4ea029dbde..af94a4d90b 100644
|
||||
--- a/src/time/zoneinfo_unix.go
|
||||
+++ b/src/time/zoneinfo_unix.go
|
||||
@@ -20,6 +20,7 @@ import (
|
||||
// Many systems use /usr/share/zoneinfo, Solaris 2 has
|
||||
// /usr/share/lib/zoneinfo, IRIX 6 has /usr/lib/locale/TZ.
|
||||
var zoneSources = []string{
|
||||
+ "@tzdata@/share/zoneinfo/",
|
||||
"/usr/share/zoneinfo/",
|
||||
"/usr/share/lib/zoneinfo/",
|
||||
"/usr/lib/locale/TZ/",
|
12
pkgs/development/compilers/go/tzdata-1.19.patch
Normal file
12
pkgs/development/compilers/go/tzdata-1.19.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff --git a/src/time/zoneinfo_unix.go b/src/time/zoneinfo_unix.go
|
||||
index 67b8beb47b..5cd1fb1759 100644
|
||||
--- a/src/time/zoneinfo_unix.go
|
||||
+++ b/src/time/zoneinfo_unix.go
|
||||
@@ -18,6 +18,7 @@ import (
|
||||
// Many systems use /usr/share/zoneinfo, Solaris 2 has
|
||||
// /usr/share/lib/zoneinfo, IRIX 6 has /usr/lib/locale/TZ.
|
||||
var platformZoneSources = []string{
|
||||
+ "@tzdata@/share/zoneinfo/",
|
||||
"/usr/share/zoneinfo/",
|
||||
"/usr/share/lib/zoneinfo/",
|
||||
"/usr/lib/locale/TZ/",
|
@ -20,8 +20,8 @@
|
||||
} @ args:
|
||||
|
||||
import ./default.nix {
|
||||
rustcVersion = "1.62.1";
|
||||
rustcSha256 = "sha256-cqy+b/zZT1mDgqdDCw2F7o9nnm0LJ/P1Zu0cFsl4Ez8=";
|
||||
rustcVersion = "1.63.0";
|
||||
rustcSha256 = "1l4rrbzhxv88pnfq94nbyb9m6lfnjwixma3mwjkmvvs2aqlq158z";
|
||||
|
||||
llvmSharedForBuild = pkgsBuildBuild.llvmPackages_14.libllvm.override { enableSharedLibraries = true; };
|
||||
llvmSharedForHost = pkgsBuildHost.llvmPackages_14.libllvm.override { enableSharedLibraries = true; };
|
||||
@ -37,25 +37,25 @@ import ./default.nix {
|
||||
|
||||
# Note: the version MUST be one version prior to the version we're
|
||||
# building
|
||||
bootstrapVersion = "1.61.0";
|
||||
bootstrapVersion = "1.62.1";
|
||||
|
||||
# fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
|
||||
bootstrapHashes = {
|
||||
i686-unknown-linux-gnu = "b15eb0ad44b7253e0b5b1a8cd285feb10e9fb0402840dba9a13112c3349a4b39";
|
||||
x86_64-unknown-linux-gnu = "066b324239d30787ce64142d7e04912f2e1850c07db3b2354d8654e02ff8b23a";
|
||||
x86_64-unknown-linux-musl = "0904f6b769ae28c259e0e25a41e99290a4ae2a36bca63ae153790b2ebbc427bf";
|
||||
arm-unknown-linux-gnueabihf = "cc32705cd1b583aaac74e6663f71392131dc0355a0f484cb56f0378b71ea7ebc";
|
||||
armv7-unknown-linux-gnueabihf = "2782ec75ea4abb402513e2e57becc6c14e67b492d57228cddedef6db0853b165";
|
||||
aarch64-unknown-linux-gnu = "261cd47bc3c98c9f97b601d1ad2a7d9b33c9ea63c9a351119c2f6d4e82f5d436";
|
||||
aarch64-unknown-linux-musl = "feb79985cb161a10b252236852df8db3bf3593c78905b84c7e94cd4454327e47";
|
||||
x86_64-apple-darwin = "d851f1a473926a5d8f111ed08002047a5dc4ad944a5b7f8d5d2f1f266b51e66a";
|
||||
aarch64-apple-darwin = "2dbafd13d007543aada47179fa273f9a3865f27e0a07bd69be61801232a0819e";
|
||||
powerpc64le-unknown-linux-gnu = "6d5cd579b68a2adc20384406c69a92beaaf4941056e126ff0ed1ec2f3a4e721f";
|
||||
riscv64gc-unknown-linux-gnu = "3d0f3b1a8522e09fffdf920a061794ac3107410eb1fe8f5d62a7aae3c6dcb81e";
|
||||
mips64el-unknown-linux-gnuabi64 = "6ed5b6492e68f45488108abd06dbcd4b89c46cdbd4715331bb11e88f18500815";
|
||||
i686-unknown-linux-gnu = "1669163ffe01e252ffb62da7d84949378fc274931a65ac827d54059a5ffc542c";
|
||||
x86_64-unknown-linux-gnu = "dd7d82b8fa8eae59729e1c31fe59a9de6ee61d08ab40ce016185653beebe04d2";
|
||||
x86_64-unknown-linux-musl = "32bee487074b105e2582cddce35934a6019eec74bae3f9300fdc3edfcf5b66d4";
|
||||
arm-unknown-linux-gnueabihf = "5c735e8174d394936d7b499c2d147ddadf3c4d77e652d1e0b0a72d9d09f81ea4";
|
||||
armv7-unknown-linux-gnueabihf = "26fa731385f1a71211ba8e3c94f3bb3b1a82bde89f8d4dcf75b4b463b57b0f88";
|
||||
aarch64-unknown-linux-gnu = "1311fa8204f895d054c23a3481de3b158a5cd3b3a6338761fee9cdf4dbf075a5";
|
||||
aarch64-unknown-linux-musl = "73bbab4d8a9e3c416035d40406e656ab37e785df35fa069a33af52e931a24b12";
|
||||
x86_64-apple-darwin = "0a04dcf2b521239826f3eaa66d77169d91e68087ccc3107b54e8aba7c02c9adf";
|
||||
aarch64-apple-darwin = "6d1671ea31b05cab5e2587cc2b295b3e7232b0135f0977355618e2a01933ff0a";
|
||||
powerpc64le-unknown-linux-gnu = "1d3248e1a673cda87cf443cd4334ff5fb53e6f87c72d3587b07e5c0cb507f3ae";
|
||||
riscv64gc-unknown-linux-gnu = "fd378d0bf866689e8111aba0e2b020da87f32f70fb11d98a575d42dc05978c2a";
|
||||
mips64el-unknown-linux-gnuabi64 = "b7c47dd94728161aa96762fb7bc51b6ab0feba7c5215d06eaea5b78649815a96";
|
||||
};
|
||||
|
||||
selectRustPackage = pkgs: pkgs.rust_1_62;
|
||||
selectRustPackage = pkgs: pkgs.rust_1_63;
|
||||
|
||||
rustcPatches = [
|
||||
];
|
@ -1,4 +1,5 @@
|
||||
{ lib, stdenv, makeWrapper, bash, curl, darwin, zlib
|
||||
, autoPatchelfHook, gcc
|
||||
, version
|
||||
, src
|
||||
, platform
|
||||
@ -31,7 +32,9 @@ rec {
|
||||
license = [ licenses.mit licenses.asl20 ];
|
||||
};
|
||||
|
||||
nativeBuildInputs = lib.optional (!stdenv.isDarwin) autoPatchelfHook;
|
||||
buildInputs = [ bash ]
|
||||
++ lib.optionals (!stdenv.isDarwin) [ gcc.cc.lib zlib ]
|
||||
++ lib.optional stdenv.isDarwin Security;
|
||||
|
||||
postPatch = ''
|
||||
@ -42,24 +45,6 @@ rec {
|
||||
./install.sh --prefix=$out \
|
||||
--components=${installComponents}
|
||||
|
||||
${optionalString (stdenv.isLinux && bootstrapping) (''
|
||||
patchelf \
|
||||
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
|
||||
"$out/bin/rustc"
|
||||
'' + optionalString (lib.versionAtLeast version "1.46")
|
||||
# rustc bootstrap needs libz starting from 1.46
|
||||
''
|
||||
ln -s ${zlib}/lib/libz.so.1 $out/lib/libz.so.1
|
||||
ln -s ${zlib}/lib/libz.so $out/lib/libz.so
|
||||
'' + ''
|
||||
patchelf \
|
||||
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
|
||||
"$out/bin/rustdoc"
|
||||
patchelf \
|
||||
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
|
||||
"$out/bin/cargo"
|
||||
'')}
|
||||
|
||||
# Do NOT, I repeat, DO NOT use `wrapProgram` on $out/bin/rustc
|
||||
# (or similar) here. It causes strange effects where rustc loads
|
||||
# the wrong libraries in a bootstrap-build causing failures that
|
||||
@ -83,8 +68,11 @@ rec {
|
||||
license = [ licenses.mit licenses.asl20 ];
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ bash ] ++ lib.optional stdenv.isDarwin Security;
|
||||
nativeBuildInputs = [ makeWrapper ]
|
||||
++ lib.optional (!stdenv.isDarwin) autoPatchelfHook;
|
||||
buildInputs = [ bash ]
|
||||
++ lib.optional (!stdenv.isDarwin) gcc.cc.lib
|
||||
++ lib.optional stdenv.isDarwin Security;
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs .
|
||||
@ -95,12 +83,6 @@ rec {
|
||||
./install.sh --prefix=$out \
|
||||
--components=cargo
|
||||
|
||||
${optionalString (stdenv.isLinux && bootstrapping) ''
|
||||
patchelf \
|
||||
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
|
||||
"$out/bin/cargo"
|
||||
''}
|
||||
|
||||
wrapProgram "$out/bin/cargo" \
|
||||
--suffix PATH : "${rustc}/bin"
|
||||
'';
|
||||
|
@ -72,5 +72,7 @@ rustPlatform.buildRustPackage {
|
||||
maintainers = with maintainers; [ retrry ];
|
||||
license = [ licenses.mit licenses.asl20 ];
|
||||
platforms = platforms.unix;
|
||||
# weird segfault in a build script
|
||||
broken = stdenv.targetPlatform.isMusl && !stdenv.targetPlatform.isStatic;
|
||||
};
|
||||
}
|
||||
|
@ -87,6 +87,10 @@ in stdenv.mkDerivation rec {
|
||||
"${setBuild}.cxx=${cxxForBuild}"
|
||||
"${setHost}.cxx=${cxxForHost}"
|
||||
"${setTarget}.cxx=${cxxForTarget}"
|
||||
|
||||
"${setBuild}.crt-static=${lib.boolToString stdenv.buildPlatform.isStatic}"
|
||||
"${setHost}.crt-static=${lib.boolToString stdenv.hostPlatform.isStatic}"
|
||||
"${setTarget}.crt-static=${lib.boolToString stdenv.targetPlatform.isStatic}"
|
||||
] ++ optionals (!withBundledLLVM) [
|
||||
"--enable-llvm-link-shared"
|
||||
"${setBuild}.llvm-config=${llvmSharedForBuild.dev}/bin/llvm-config"
|
||||
@ -188,8 +192,5 @@ in stdenv.mkDerivation rec {
|
||||
maintainers = with maintainers; [ madjar cstrahan globin havvy ];
|
||||
license = [ licenses.mit licenses.asl20 ];
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
# rustc can't generate binaries for dynamically linked Musl.
|
||||
# https://github.com/NixOS/nixpkgs/issues/179242
|
||||
broken = stdenv.targetPlatform.isMusl && !stdenv.targetPlatform.isStatic;
|
||||
};
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user