lol

Merge staging-next into staging

authored by

github-actions[bot] and committed by
GitHub
85e9b4ac d183f01d

+2569 -422
+12
maintainers/maintainer-list.nix
··· 5054 5054 fingerprint = "8992 44FC D291 5CA2 0A97 802C 156C 88A5 B0A0 4B2A"; 5055 5055 }]; 5056 5056 }; 5057 + kiyengar = { 5058 + email = "hello@kiyengar.net"; 5059 + github = "karthikiyengar"; 5060 + githubId = 8260207; 5061 + name = "Karthik Iyengar"; 5062 + }; 5057 5063 kkallio = { 5058 5064 email = "tierpluspluslists@gmail.com"; 5059 5065 name = "Karn Kallio"; ··· 10391 10397 github = "wohanley"; 10392 10398 githubId = 1322287; 10393 10399 name = "William O'Hanley"; 10400 + }; 10401 + woky = { 10402 + email = "pampu.andrei@pm.me"; 10403 + github = "andreisergiu98"; 10404 + githubId = 11740700; 10405 + name = "Andrei Pampu"; 10394 10406 }; 10395 10407 wolfangaukang = { 10396 10408 email = "liquid.query960@4wrd.cc";
+1 -1
nixos/doc/manual/release-notes/rl-2105.xml
··· 244 244 </listitem> 245 245 <listitem> 246 246 <para> 247 - xfsprogs was update from 4.19 to 5.10. It now enables reflink support by default on filesystem creation. 247 + xfsprogs was update from 4.19 to 5.11. It now enables reflink support by default on filesystem creation. 248 248 Support for reflinks was added with an experimental status to kernel 4.9 and deemed stable in kernel 4.16. 249 249 If you want to be able to mount XFS filesystems created with this release of xfsprogs on kernel releases older than those, you need to format them 250 250 with <literal>mkfs.xfs -m reflink=0</literal>.
+1
nixos/modules/module-list.nix
··· 515 515 ./services/misc/nzbget.nix 516 516 ./services/misc/nzbhydra2.nix 517 517 ./services/misc/octoprint.nix 518 + ./services/misc/ombi.nix 518 519 ./services/misc/osrm.nix 519 520 ./services/misc/packagekit.nix 520 521 ./services/misc/paperless.nix
+80
nixos/modules/services/misc/ombi.nix
··· 1 + { config, pkgs, lib, ... }: 2 + 3 + with lib; 4 + 5 + let cfg = config.services.ombi; 6 + 7 + in { 8 + options = { 9 + services.ombi = { 10 + enable = mkEnableOption '' 11 + Ombi. 12 + Optionally see <link xlink:href="https://docs.ombi.app/info/reverse-proxy"/> 13 + on how to set up a reverse proxy 14 + ''; 15 + 16 + dataDir = mkOption { 17 + type = types.str; 18 + default = "/var/lib/ombi"; 19 + description = "The directory where Ombi stores its data files."; 20 + }; 21 + 22 + port = mkOption { 23 + type = types.port; 24 + default = 5000; 25 + description = "The port for the Ombi web interface."; 26 + }; 27 + 28 + openFirewall = mkOption { 29 + type = types.bool; 30 + default = false; 31 + description = "Open ports in the firewall for the Ombi web interface."; 32 + }; 33 + 34 + user = mkOption { 35 + type = types.str; 36 + default = "ombi"; 37 + description = "User account under which Ombi runs."; 38 + }; 39 + 40 + group = mkOption { 41 + type = types.str; 42 + default = "ombi"; 43 + description = "Group under which Ombi runs."; 44 + }; 45 + }; 46 + }; 47 + 48 + config = mkIf cfg.enable { 49 + systemd.tmpfiles.rules = [ 50 + "d '${cfg.dataDir}' 0700 ${cfg.user} ${cfg.group} - -" 51 + ]; 52 + 53 + systemd.services.ombi = { 54 + description = "Ombi"; 55 + after = [ "network.target" ]; 56 + wantedBy = [ "multi-user.target" ]; 57 + 58 + serviceConfig = { 59 + Type = "simple"; 60 + User = cfg.user; 61 + Group = cfg.group; 62 + ExecStart = "${pkgs.ombi}/bin/Ombi --storage '${cfg.dataDir}' --host 'http://*:${toString cfg.port}'"; 63 + Restart = "on-failure"; 64 + }; 65 + }; 66 + 67 + networking.firewall = mkIf cfg.openFirewall { 68 + allowedTCPPorts = [ cfg.port ]; 69 + }; 70 + 71 + users.users = mkIf (cfg.user == "ombi") { 72 + ombi = { 73 + group = cfg.group; 74 + home = cfg.dataDir; 75 + }; 76 + }; 77 + 78 + users.groups = mkIf (cfg.group == "ombi") { ombi = { }; }; 79 + }; 80 + }
+17 -2
nixos/modules/services/monitoring/netdata.nix
··· 123 123 "error log" = "syslog"; 124 124 }; 125 125 ''; 126 - }; 126 + }; 127 + 128 + enableAnalyticsReporting = mkOption { 129 + type = types.bool; 130 + default = false; 131 + description = '' 132 + Enable reporting of anonymous usage statistics to Netdata Inc. via either 133 + Google Analytics (in versions prior to 1.29.4), or Netdata Inc.'s 134 + self-hosted PostHog (in versions 1.29.4 and later). 135 + See: <link xlink:href="https://learn.netdata.cloud/docs/agent/anonymous-statistics"/> 136 + ''; 127 137 }; 128 138 }; 139 + }; 129 140 130 141 config = mkIf cfg.enable { 131 142 assertions = ··· 140 151 wantedBy = [ "multi-user.target" ]; 141 152 path = (with pkgs; [ curl gawk which ]) ++ lib.optional cfg.python.enable 142 153 (pkgs.python3.withPackages cfg.python.extraPackages); 154 + environment = { 155 + PYTHONPATH = "${cfg.package}/libexec/netdata/python.d/python_modules"; 156 + } // lib.optionalAttrs (!cfg.enableAnalyticsReporting) { 157 + DO_NOT_TRACK = "1"; 158 + }; 143 159 serviceConfig = { 144 - Environment="PYTHONPATH=${cfg.package}/libexec/netdata/python.d/python_modules"; 145 160 ExecStart = "${cfg.package}/bin/netdata -P /run/netdata/netdata.pid -D -c ${configFile}"; 146 161 ExecReload = "${pkgs.util-linux}/bin/kill -s HUP -s USR1 -s USR2 $MAINPID"; 147 162 TimeoutStopSec = 60;
+26 -1
nixos/modules/services/security/privacyidea.nix
··· 57 57 services.privacyidea = { 58 58 enable = mkEnableOption "PrivacyIDEA"; 59 59 60 + environmentFile = mkOption { 61 + type = types.nullOr types.path; 62 + default = null; 63 + example = "/root/privacyidea.env"; 64 + description = '' 65 + File to load as environment file. Environment variables 66 + from this file will be interpolated into the config file 67 + using <package>envsubst</package> which is helpful for specifying 68 + secrets: 69 + <programlisting> 70 + { <xref linkend="opt-services.privacyidea.secretKey" /> = "$SECRET"; } 71 + </programlisting> 72 + 73 + The environment-file can now specify the actual secret key: 74 + <programlisting> 75 + SECRET=veryverytopsecret 76 + </programlisting> 77 + ''; 78 + }; 79 + 60 80 stateDir = mkOption { 61 81 type = types.str; 62 82 default = "/var/lib/privacyidea"; ··· 206 226 wantedBy = [ "multi-user.target" ]; 207 227 after = [ "postgresql.service" ]; 208 228 path = with pkgs; [ openssl ]; 209 - environment.PRIVACYIDEA_CONFIGFILE = piCfgFile; 229 + environment.PRIVACYIDEA_CONFIGFILE = "${cfg.stateDir}/privacyidea.cfg"; 210 230 preStart = let 211 231 pi-manage = "${pkgs.sudo}/bin/sudo -u privacyidea -HE ${penv}/bin/pi-manage"; 212 232 pgsu = config.services.postgresql.superUser; ··· 214 234 in '' 215 235 mkdir -p ${cfg.stateDir} /run/privacyidea 216 236 chown ${cfg.user}:${cfg.group} -R ${cfg.stateDir} /run/privacyidea 237 + umask 077 238 + ${lib.getBin pkgs.envsubst}/bin/envsubst -o ${cfg.stateDir}/privacyidea.cfg \ 239 + -i "${piCfgFile}" 240 + chown ${cfg.user}:${cfg.group} ${cfg.stateDir}/privacyidea.cfg 217 241 if ! test -e "${cfg.stateDir}/db-created"; then 218 242 ${pkgs.sudo}/bin/sudo -u ${pgsu} ${psql}/bin/createuser --no-superuser --no-createdb --no-createrole ${cfg.user} 219 243 ${pkgs.sudo}/bin/sudo -u ${pgsu} ${psql}/bin/createdb --owner ${cfg.user} privacyidea ··· 231 255 Type = "notify"; 232 256 ExecStart = "${uwsgi}/bin/uwsgi --json ${piuwsgi}"; 233 257 ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; 258 + EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile; 234 259 ExecStop = "${pkgs.coreutils}/bin/kill -INT $MAINPID"; 235 260 NotifyAccess = "main"; 236 261 KillSignal = "SIGQUIT";
+1
nixos/tests/all-tests.nix
··· 290 290 nzbget = handleTest ./nzbget.nix {}; 291 291 nzbhydra2 = handleTest ./nzbhydra2.nix {}; 292 292 oh-my-zsh = handleTest ./oh-my-zsh.nix {}; 293 + ombi = handleTest ./ombi.nix {}; 293 294 openarena = handleTest ./openarena.nix {}; 294 295 openldap = handleTest ./openldap.nix {}; 295 296 opensmtpd = handleTest ./opensmtpd.nix {};
+18
nixos/tests/ombi.nix
··· 1 + import ./make-test-python.nix ({ lib, ... }: 2 + 3 + with lib; 4 + 5 + { 6 + name = "ombi"; 7 + meta.maintainers = with maintainers; [ woky ]; 8 + 9 + nodes.machine = 10 + { pkgs, ... }: 11 + { services.ombi.enable = true; }; 12 + 13 + testScript = '' 14 + machine.wait_for_unit("ombi.service") 15 + machine.wait_for_open_port("5000") 16 + machine.succeed("curl --fail http://localhost:5000/") 17 + ''; 18 + })
+10 -2
nixos/tests/privacyidea.nix
··· 12 12 13 13 services.privacyidea = { 14 14 enable = true; 15 - secretKey = "testing"; 16 - pepper = "testing"; 15 + secretKey = "$SECRET_KEY"; 16 + pepper = "$PEPPER"; 17 17 adminPasswordFile = pkgs.writeText "admin-password" "testing"; 18 18 adminEmail = "root@localhost"; 19 + 20 + # Don't try this at home! 21 + environmentFile = pkgs.writeText "pi-secrets.env" '' 22 + SECRET_KEY=testing 23 + PEPPER=testing 24 + ''; 19 25 }; 20 26 services.nginx = { 21 27 enable = true; ··· 29 35 machine.start() 30 36 machine.wait_for_unit("multi-user.target") 31 37 machine.succeed("curl --fail http://localhost | grep privacyIDEA") 38 + machine.succeed("grep \"SECRET_KEY = 'testing'\" /var/lib/privacyidea/privacyidea.cfg") 39 + machine.succeed("grep \"PI_PEPPER = 'testing'\" /var/lib/privacyidea/privacyidea.cfg") 32 40 machine.succeed( 33 41 "curl --fail http://localhost/auth -F username=admin -F password=testing | grep token" 34 42 )
+3 -3
pkgs/applications/audio/spotify/default.nix
··· 10 10 # If an update breaks things, one of those might have valuable info: 11 11 # https://aur.archlinux.org/packages/spotify/ 12 12 # https://community.spotify.com/t5/Desktop-Linux 13 - version = "1.1.55.494.gca75f788"; 13 + version = "1.1.55.498.gf9a83c60"; 14 14 # To get the latest stable revision: 15 15 # curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated' 16 16 # To get general information: 17 17 # curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.' 18 18 # More examples of api usage: 19 19 # https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py 20 - rev = "45"; 20 + rev = "46"; 21 21 22 22 deps = [ 23 23 alsaLib ··· 79 79 # https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334 80 80 src = fetchurl { 81 81 url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap"; 82 - sha512 = "5d61a2d5b26be651620ab5d18d3a204d8d7b09dcec8a733ddc176c44cb43e9176c4350933ebe4498b065ba219113f3226c13bea9659da738fe635f41d01db303"; 82 + sha512 = "dabb55d2ba41f977b6d3f03bfcf147d11785136dd1277efc62011c8371ef25cc04531266bd16608639b9b6a500c1a18a45f44ba7a43e17ab5ac139e36eff7149"; 83 83 }; 84 84 85 85 nativeBuildInputs = [ makeWrapper squashfsTools ];
+11 -4
pkgs/applications/display-managers/lightdm/gtk-greeter.nix
··· 9 9 , useGTK2 ? false 10 10 , gtk2 11 11 , gtk3 # gtk3 seems better supported 12 - , exo 12 + , xfce4-dev-tools 13 13 , at-spi2-core 14 14 , librsvg 15 15 , hicolor-icon-theme ··· 31 31 sha256 = "1g7wc3d3vqfa7mrdhx1w9ywydgjbffla6rbrxq9k3sc62br97qms"; 32 32 }; 33 33 34 - nativeBuildInputs = [ pkg-config intltool wrapGAppsHook ]; 35 - buildInputs = [ lightdm exo librsvg hicolor-icon-theme ] 34 + nativeBuildInputs = [ pkg-config intltool xfce4-dev-tools wrapGAppsHook ]; 35 + buildInputs = [ lightdm librsvg hicolor-icon-theme ] 36 36 ++ (if useGTK2 then [ gtk2 ] else [ gtk3 ]); 37 37 38 38 configureFlags = [ ··· 42 42 "--sbindir=${placeholder "out"}/bin" # for wrapGAppsHook to wrap automatically 43 43 ] ++ lib.optional useGTK2 "--with-gtk2"; 44 44 45 + postPatch = '' 46 + # exo-csource has been dropped from exo, and replaced by xdt-csource from xfce4-dev-tools 47 + for f in configure.ac src/Makefile.am; do 48 + substituteInPlace $f --replace exo-csource xdt-csource 49 + done 50 + ''; 51 + 45 52 preConfigure = '' 46 53 configureFlagsArray+=( --enable-at-spi-command="${at-spi2-core}/libexec/at-spi-bus-launcher --launch-immediately" ) 47 54 ''; ··· 66 73 meta = with lib; { 67 74 homepage = "https://launchpad.net/lightdm-gtk-greeter"; 68 75 platforms = platforms.linux; 69 - license = licenses.gpl3; 76 + license = licenses.gpl3Plus; 70 77 maintainers = with maintainers; [ ]; 71 78 }; 72 79 }
+31 -92
pkgs/applications/misc/kiwix/default.nix
··· 1 - { lib, stdenv, fetchurl, makeWrapper, pkg-config 2 - , zip, python, zlib, which, icu, libmicrohttpd, lzma, aria2, wget, bc 3 - , libuuid, libX11, libXext, libXt, libXrender, glib, dbus, dbus-glib 4 - , gtk2, gdk-pixbuf, pango, cairo, freetype, fontconfig, alsaLib, atk, cmake 5 - , xapian, ctpp2, zimlib 1 + { lib, mkDerivation, fetchFromGitHub 2 + , callPackage 3 + , pkg-config 4 + , makeWrapper 5 + , qmake 6 + , qtbase 7 + , qtwebengine 8 + , qtsvg 9 + , qtimageformats 10 + , aria2 6 11 }: 7 12 8 - with lib; 13 + mkDerivation rec { 14 + pname = "kiwix"; 15 + version = "2.0.5"; 9 16 10 - let 11 - xulrunner64_tar = fetchurl { 12 - url = "http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-x86_64.tar.bz2"; 13 - sha256 = "0i3m30gm5z7qmas14id6ypvbmnb2k7jhz8aby2wz5vvv49zqmx3s"; 14 - }; 15 - xulrunnersdk64_tar = fetchurl { 16 - url = "http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-x86_64.sdk.tar.bz2"; 17 - sha256 = "0z90v7c4mq15g5klmsj8vs2r10fbygj3qzynx4952hkv8ihw8n3a"; 18 - }; 19 - xulrunner32_tar = fetchurl { 20 - url = "http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-i686.tar.bz2"; 21 - sha256 = "0yln6pxz8f6b9wm9124sx049z8mgi17lgd63rcv2hnix825y8gjb"; 22 - }; 23 - xulrunnersdk32_tar = fetchurl { 24 - url = "http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-i686.sdk.tar.bz2"; 25 - sha256 = "1h9vcbvf8wgds6i2z20y7krpys0mqsqhv1ijyfljanp6vyll9fvi"; 17 + src = fetchFromGitHub { 18 + owner = pname; 19 + repo = "${pname}-desktop"; 20 + rev = version; 21 + sha256 = "12v43bcg4g8fcp02y2srsfdvcb7dpl4pxb9z7a235006s0kfv8yn"; 26 22 }; 27 23 28 - xulrunner = if stdenv.hostPlatform.system == "x86_64-linux" 29 - then { tar = xulrunner64_tar; sdk = xulrunnersdk64_tar; } 30 - else { tar = xulrunner32_tar; sdk = xulrunnersdk32_tar; }; 24 + nativeBuildInputs = [ 25 + qmake 26 + pkg-config 27 + ]; 31 28 32 - pugixml = stdenv.mkDerivation rec { 33 - version = "1.2"; 34 - pname = "pugixml"; 35 - 36 - src = fetchurl { 37 - url = "http://download.kiwix.org/dev/${pname}-${version}.tar.gz"; 38 - sha256 = "0sqk0vdwjq44jxbbkj1cy8qykrmafs1sickzldb2w2nshsnjshhg"; 39 - }; 40 - 41 - nativeBuildInputs = [ cmake ]; 42 - 43 - unpackPhase = '' 44 - # not a nice src archive: all the files are in the root :( 45 - mkdir ${pname}-${version} 46 - cd ${pname}-${version} 47 - tar -xf ${src} 48 - 49 - # and the build scripts are in there :'( 50 - cd scripts 51 - ''; 52 - }; 53 - 54 - in 55 - 56 - stdenv.mkDerivation rec { 57 - pname = "kiwix"; 58 - version = "0.9"; 59 - 60 - src = fetchurl { 61 - url = "http://download.kiwix.org/src/kiwix-${version}-src.tar.xz"; 62 - sha256 = "0577phhy2na59cpcqjgldvksp0jwczyg0l6c9ghnr19i375l7yqc"; 63 - }; 64 - 65 - nativeBuildInputs = [ pkg-config ]; 66 29 buildInputs = [ 67 - zip python zlib xapian which icu libmicrohttpd 68 - lzma zimlib ctpp2 aria2 wget bc libuuid makeWrapper pugixml 30 + qtbase 31 + qtwebengine 32 + qtsvg 33 + qtimageformats 34 + (callPackage ./lib.nix {}) 69 35 ]; 70 36 71 - postUnpack = '' 72 - cd kiwix* 73 - mkdir static 74 - cp Makefile.in static/ 75 - 76 - cd src/dependencies 77 - 78 - tar -xf ${xulrunner.tar} 79 - tar -xf ${xulrunner.sdk} 80 - 81 - cd ../../.. 82 - ''; 83 - 84 - configureFlags = [ 85 - "--disable-staticbins" 37 + qtWrapperArgs = [ 38 + "--prefix PATH : ${lib.makeBinPath [ aria2 ]}" 86 39 ]; 87 40 88 - postInstall = '' 89 - cp -r src/dependencies/xulrunner $out/lib/kiwix 90 - 91 - patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/lib/kiwix/xulrunner/xulrunner 92 - 93 - rm $out/bin/kiwix 94 - makeWrapper $out/lib/kiwix/kiwix-launcher $out/bin/kiwix \ 95 - --suffix LD_LIBRARY_PATH : ${makeLibraryPath [stdenv.cc.cc libX11 libXext libXt libXrender glib dbus dbus-glib gtk2 gdk-pixbuf pango cairo freetype fontconfig alsaLib atk]} \ 96 - --suffix PATH : ${aria2}/bin 97 - ''; 98 - 99 - meta = { 41 + meta = with lib; { 100 42 description = "An offline reader for Web content"; 101 43 homepage = "https://kiwix.org"; 102 44 license = licenses.gpl3; 103 45 platforms = platforms.linux; 104 - maintainers = with maintainers; [ robbinch ]; 105 - knownVulnerabilities = [ 106 - "CVE-2015-1032" 107 - ]; 46 + maintainers = with maintainers; [ ajs124 ]; 108 47 }; 109 48 }
+55
pkgs/applications/misc/kiwix/lib.nix
··· 1 + { stdenv, lib, fetchFromGitHub 2 + , meson, ninja, pkg-config 3 + , python3 4 + , curl 5 + , icu 6 + , pugixml 7 + , zimlib 8 + , zlib 9 + , libmicrohttpd 10 + , mustache-hpp 11 + , gtest 12 + }: 13 + 14 + 15 + stdenv.mkDerivation rec { 16 + pname = "kiwix-lib"; 17 + version = "9.4.1"; 18 + 19 + src = fetchFromGitHub { 20 + owner = "kiwix"; 21 + repo = pname; 22 + rev = version; 23 + sha256 = "034nk6l623v78clrs2d0k1vg69sbzrd8c0q79qiqmlkinck1nkxw"; 24 + }; 25 + 26 + nativeBuildInputs = [ 27 + meson 28 + ninja 29 + pkg-config 30 + python3 31 + ]; 32 + 33 + buildInputs = [ 34 + icu 35 + zlib 36 + mustache-hpp 37 + ]; 38 + 39 + propagatedBuildInputs = [ 40 + curl 41 + libmicrohttpd 42 + pugixml 43 + zimlib 44 + ]; 45 + 46 + checkInputs = [ 47 + gtest 48 + ]; 49 + 50 + doCheck = true; 51 + 52 + postPatch = '' 53 + patchShebangs scripts 54 + ''; 55 + }
+36
pkgs/applications/misc/unipicker/default.nix
··· 1 + { stdenv, fetchFromGitHub, lib, fzf, xclip }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "unipicker"; 5 + version = "unstable-2018-07-10"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "jeremija"; 9 + repo = pname; 10 + rev = "767571c87cdb1e654408d19fc4db98e5e6725c04"; 11 + sha256 = "1k4v53pm3xivwg9vq2kndpcmah0yn4679r5jzxvg38bbkfdk86c1"; 12 + }; 13 + 14 + buildInputs = [ 15 + fzf 16 + xclip 17 + ]; 18 + 19 + preInstall = '' 20 + substituteInPlace unipicker --replace "/etc/unipickerrc" "$out/etc/unipickerrc" 21 + substituteInPlace unipickerrc --replace "/usr/local" "$out" 22 + ''; 23 + 24 + makeFlags = [ 25 + "PREFIX=$(out)" 26 + "DESTDIR=$(out)" 27 + ]; 28 + 29 + meta = with lib; { 30 + description = "A CLI utility for searching unicode characters by description and optionally copying them to clipboard"; 31 + homepage = "https://github.com/jeremija/unipicker"; 32 + license = licenses.mit; 33 + maintainers = with maintainers; [ kiyengar ]; 34 + platforms = with platforms; unix; 35 + }; 36 + }
+3 -3
pkgs/applications/networking/browsers/chromium/upstream-info.json
··· 18 18 } 19 19 }, 20 20 "beta": { 21 - "version": "90.0.4430.40", 22 - "sha256": "0n7g4j981h3fn5wgpb3azpili9682nq0yikhd4z7dr7agvpnfr3k", 23 - "sha256bin64": "120rbh8bpcj3z5kqdaicqnsd2mh0xcr8y1411kl0zpwa6hfvgm3r", 21 + "version": "90.0.4430.51", 22 + "sha256": "1k87fw0pv0d2zlxm0il9b5p60gdz6l44jssmsns4zy2fmd9316wr", 23 + "sha256bin64": "0q5yx7bc266azs3nl29ksz4yafvy2nmzn09ifcgr69fjkvsr1qh7", 24 24 "deps": { 25 25 "gn": { 26 26 "version": "2021-02-09",
+24
pkgs/applications/networking/browsers/gmni/default.nix
··· 1 + { stdenv, lib, fetchFromSourcehut, pkg-config, bearssl, scdoc }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "gmni"; 5 + version = "unstable-2021-03-26"; 6 + 7 + src = fetchFromSourcehut { 8 + owner = "~sircmpwn"; 9 + repo = "gmni"; 10 + rev = "77b73efbcd3ea7ed9e3e4c0aa19d9247e21d3c87"; 11 + sha256 = "1wvnzyv7vyddcd39y6q5aflpnnsdl4k4y5aj5ssb7vgkld0h1b7r"; 12 + }; 13 + 14 + nativeBuildInputs = [ pkg-config ]; 15 + buildInputs = [ bearssl scdoc ]; 16 + 17 + meta = with lib; { 18 + description = "A Gemini client"; 19 + homepage = "https://git.sr.ht/~sircmpwn/gmni"; 20 + license = licenses.gpl3Only; 21 + maintainers = with maintainers; [ bsima jb55 ]; 22 + platforms = platforms.all; 23 + }; 24 + }
+2 -2
pkgs/applications/networking/cluster/tektoncd-cli/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "tektoncd-cli"; 5 - version = "0.17.0"; 5 + version = "0.17.1"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "tektoncd"; 9 9 repo = "cli"; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-IyYlmatgcVbUj1WCPAFVOIgn1iHM80P4ie6d1YD3ISM="; 11 + sha256 = "sha256-xwUTSJ0rlNzQqGQp6jL03L4SuHUvvD3aWXxa1Xp0UyM="; 12 12 }; 13 13 14 14 vendorSha256 = null;
+3 -3
pkgs/applications/version-management/git-and-tools/bit/default.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "bit"; 9 - version = "1.0.5"; 9 + version = "1.0.6"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "chriswalz"; 13 13 repo = pname; 14 14 rev = "v${version}"; 15 - sha256 = "0dv6ma2vwb21cbxkxzrpmj7cqlhwr7a86i4g728m3y1aclh411sn"; 15 + sha256 = "sha256-juQAFVqs0d4EtoX24EyrlKd2qRRseP+jKfM0ymkD39E="; 16 16 }; 17 17 18 - vendorSha256 = "1j6w7bll4zyp99579dhs2rza4y9kgfz3g8d5grfzgqck6cjj9mn8"; 18 + vendorSha256 = "sha256-3Y/B14xX5jaoL44rq9+Nn4niGViLPPXBa8WcJgTvYTA="; 19 19 20 20 propagatedBuildInputs = [ git ]; 21 21
+1 -1
pkgs/applications/window-managers/xmonad/log-applet/default.nix
··· 38 38 meta = with lib; { 39 39 homepage = "https://github.com/kalj/xmonad-log-applet"; 40 40 license = licenses.bsd3; 41 - broken = desktopSupport == "gnomeflashback"; 41 + broken = desktopSupport == "gnomeflashback" || desktopSupport == "xfce4"; 42 42 description = "An applet that will display XMonad log information (${desktopSupport} version)"; 43 43 platforms = platforms.linux; 44 44 maintainers = with maintainers; [ abbradar ];
+28
pkgs/data/fonts/kreative-square-fonts/default.nix
··· 1 + { lib, fetchFromGitHub }: 2 + 3 + let 4 + pname = "kreative-square-fonts"; 5 + version = "unstable-2021-01-29"; 6 + in 7 + fetchFromGitHub { 8 + name = "${pname}-${version}"; 9 + 10 + owner = "kreativekorp"; 11 + repo = "open-relay"; 12 + rev = "084f05af3602307499981651eca56851bec01fca"; 13 + 14 + postFetch = '' 15 + tar xf $downloadedFile --strip=1 16 + install -Dm444 -t $out/share/fonts/truetype/ KreativeSquare/KreativeSquare.ttf 17 + install -Dm444 -t $out/share/fonts/truetype/ KreativeSquare/KreativeSquareSM.ttf 18 + ''; 19 + sha256 = "15vvbbzv6b3jh7lxg77viycdd7yf3y8lxy54vs3rsrsxwncg0pak"; 20 + 21 + meta = with lib; { 22 + description = "Fullwidth scalable monospace font designed specifically to support pseudographics, semigraphics, and private use characters"; 23 + homepage = "https://www.kreativekorp.com/software/fonts/ksquare.shtml"; 24 + license = licenses.ofl; 25 + platforms = platforms.all; 26 + maintainers = [ maintainers.linus ]; 27 + }; 28 + }
+7 -2
pkgs/desktops/xfce/applications/gigolo/default.nix
··· 1 - { mkXfceDerivation, exo, gtk3, gvfs, glib }: 1 + { lib, mkXfceDerivation, gtk3, gvfs, glib }: 2 2 3 3 mkXfceDerivation { 4 4 category = "apps"; ··· 8 8 9 9 sha256 = "8UDb4H3zxRKx2y+MRsozQoR3es0fs5ooR/5wBIE11bY="; 10 10 11 - nativeBuildInputs = [ exo ]; 12 11 buildInputs = [ gtk3 glib gvfs ]; 13 12 13 + postPatch = '' 14 + # exo-csource has been dropped from exo 15 + substituteInPlace src/Makefile.am --replace exo-csource xdt-csource 16 + ''; 17 + 14 18 meta = { 15 19 description = "A frontend to easily manage connections to remote filesystems"; 20 + license = with lib.licenses; [ gpl2Only ]; 16 21 }; 17 22 }
+25
pkgs/desktops/xfce/applications/mousepad/allow-checking-parent-sources-when-looking-up-schema.patch
··· 1 + From 3b06d6129033ddaa8dc455a6a572077fd63a3816 Mon Sep 17 00:00:00 2001 2 + From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= <malaquias@gmail.com> 3 + Date: Mon, 1 Mar 2021 17:03:07 -0300 4 + Subject: [PATCH] Allow checking parent sources when looking up schema 5 + 6 + --- 7 + mousepad/mousepad-settings-store.c | 2 +- 8 + 1 file changed, 1 insertion(+), 1 deletion(-) 9 + 10 + diff --git a/mousepad/mousepad-settings-store.c b/mousepad/mousepad-settings-store.c 11 + index e5a848b..de989bd 100644 12 + --- a/mousepad/mousepad-settings-store.c 13 + +++ b/mousepad/mousepad-settings-store.c 14 + @@ -181,7 +181,7 @@ mousepad_settings_store_add_settings (MousepadSettingsStore *self, 15 + const gchar *prefix; 16 + 17 + /* loop through keys in schema and store mapping of their setting name to GSettings */ 18 + - schema = g_settings_schema_source_lookup (source, schema_id, FALSE); 19 + + schema = g_settings_schema_source_lookup (source, schema_id, TRUE); 20 + keys = g_settings_schema_list_keys (schema); 21 + prefix = schema_id + MOUSEPAD_ID_LEN + 1; 22 + for (key = keys; key && *key; key++) 23 + -- 24 + 2.30.0 25 +
+8 -8
pkgs/desktops/xfce/applications/mousepad/default.nix
··· 1 - { mkXfceDerivation, exo, glib, gtk3, gtksourceview3, xfconf }: 1 + { mkXfceDerivation, gobject-introspection, vala, gtk3, gtksourceview3, xfconf }: 2 2 3 3 mkXfceDerivation { 4 4 category = "apps"; 5 5 pname = "mousepad"; 6 - version = "0.4.2"; 6 + version = "0.5.3"; 7 7 odd-unstable = false; 8 8 9 - sha256 = "0a35vaq4l0d8vzw7hqpvbgkr3wj1sqr2zvj7bc5z4ikz2cppqj7p"; 9 + sha256 = "0ki5k5p24dpawkyq4k8am1fcq02njhnmhq5vf2ah1zqbc0iyl5yn"; 10 10 11 - nativeBuildInputs = [ exo ]; 12 - buildInputs = [ glib gtk3 gtksourceview3 xfconf ]; 11 + nativeBuildInputs = [ gobject-introspection vala ]; 13 12 14 - # See https://github.com/NixOS/nixpkgs/issues/36468 15 - NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0"; 13 + buildInputs = [ gtk3 gtksourceview3 xfconf ]; 14 + 15 + patches = [ ./allow-checking-parent-sources-when-looking-up-schema.patch ]; 16 16 17 17 meta = { 18 - description = "A simple text editor for Xfce"; 18 + description = "Simple text editor for Xfce"; 19 19 }; 20 20 }
+2 -2
pkgs/desktops/xfce/applications/parole/default.nix
··· 7 7 mkXfceDerivation { 8 8 category = "apps"; 9 9 pname = "parole"; 10 - version = "1.0.5"; 10 + version = "4.16.0"; 11 11 12 - sha256 = "0qgis2gnkcvg7xwp76cbi0ihqdjprvvw2d66hk7klhrafp7c0v13"; 12 + sha256 = "07hcnbcd56lq7z3gq1cnk71ppy98hwdvlfp5z3zlc55cqrry26zm"; 13 13 14 14 postPatch = '' 15 15 substituteInPlace src/plugins/mpris2/Makefile.am \
+6 -2
pkgs/desktops/xfce/applications/ristretto/default.nix
··· 1 - { mkXfceDerivation, automakeAddFlags, exo, gtk3, glib, libexif 1 + { mkXfceDerivation, gtk3, glib, libexif 2 2 , libxfce4ui, libxfce4util, xfconf }: 3 3 4 4 mkXfceDerivation { ··· 8 8 9 9 sha256 = "07h7wbq3xh2ac6q4kp2ai1incfn0zfxxngap7hzqx47a5xw2mrm8"; 10 10 11 - nativeBuildInputs = [ exo ]; 12 11 buildInputs = [ glib gtk3 libexif libxfce4ui libxfce4util xfconf ]; 12 + 13 + postPatch = '' 14 + # exo-csource has been dropped from exo 15 + substituteInPlace src/Makefile.am --replace exo-csource xdt-csource 16 + ''; 13 17 14 18 meta = { 15 19 description = "A fast and lightweight picture-viewer for the Xfce desktop environment";
+2 -2
pkgs/desktops/xfce/applications/xfce4-dict/default.nix
··· 3 3 mkXfceDerivation { 4 4 category = "apps"; 5 5 pname = "xfce4-dict"; 6 - version = "0.8.3"; 6 + version = "0.8.4"; 7 7 8 - sha256 = "0p7k2ffknr23hh3j17dhh5q8adn736p2piwx0sg8f5dvvhhc5whz"; 8 + sha256 = "0gm5gwqxhnv3qz9ggf8dj1sq5s72xcliidkyip9l91msx03hfjah"; 9 9 10 10 patches = [ ./configure-gio.patch ]; 11 11
+2 -2
pkgs/desktops/xfce/applications/xfce4-notifyd/default.nix
··· 4 4 mkXfceDerivation { 5 5 category = "apps"; 6 6 pname = "xfce4-notifyd"; 7 - version = "0.6.1"; 7 + version = "0.6.2"; 8 8 9 - sha256 = "18d2q5b54df8j2281lash8gm0826c6apn39q4igfz2zfcyqjh1if"; 9 + sha256 = "1q8n7dffyqbfyy6vpqlmnsfpavlc7iz6hhv1h27fkwzswy2rx28s"; 10 10 11 11 buildInputs = [ exo gtk3 glib libnotify libxfce4ui libxfce4util xfce4-panel xfconf ]; 12 12
+2 -2
pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix
··· 3 3 mkXfceDerivation { 4 4 category = "apps"; 5 5 pname = "xfce4-screenshooter"; 6 - version = "1.9.7"; 6 + version = "1.9.8"; 7 7 odd-unstable = false; 8 8 9 - sha256 = "14vbd7iigaw57hl47rnixk873c20q5clqynzkm9zzpqc568dxixd"; 9 + sha256 = "0pbzjcaxm8gk0s75s99kvzygmih4yghp7ngf2mxymjiywcxqr40d"; 10 10 11 11 buildInputs = [ exo gtk3 libsoup libxfce4ui libxfce4util xfce4-panel glib-networking ]; 12 12
+2 -2
pkgs/desktops/xfce/applications/xfce4-taskmanager/default.nix
··· 3 3 mkXfceDerivation { 4 4 category = "apps"; 5 5 pname = "xfce4-taskmanager"; 6 - version = "1.2.3"; 6 + version = "1.4.2"; 7 7 8 - sha256 = "0818chns7vkvjqakgz8z790adkygcq4jlw59dv6kyzk17hxq6cxv"; 8 + sha256 = "1l7k00y3d9j38g4hxjrcrh1y4s6s77sq4sjcadsbpzs6zdf05hld"; 9 9 10 10 nativeBuildInputs = [ exo ]; 11 11 buildInputs = [ gtk3 libwnck3 libXmu ];
+5 -3
pkgs/desktops/xfce/applications/xfce4-terminal/default.nix
··· 1 - { mkXfceDerivation, gtk3, libxfce4ui, vte, xfconf, pcre2 }: 1 + { mkXfceDerivation, gtk3, libxfce4ui, vte, xfconf, pcre2, libxslt, docbook_xml_dtd_45, docbook_xsl }: 2 2 3 3 mkXfceDerivation { 4 4 category = "apps"; 5 5 pname = "xfce4-terminal"; 6 - version = "0.8.9.2"; 6 + version = "0.8.10"; 7 7 8 - sha256 = "1vlpfsrdalqmsd86aj0kvvam5skzn6xngigjziwli6q6il6lb9fj"; 8 + sha256 = "0v58qcrdpqpd2nbwlc4ra7j9nkvfzfhb1zcp1kggbn627q86i0ql"; 9 + 10 + nativeBuildInputs = [ libxslt docbook_xml_dtd_45 docbook_xsl ]; 9 11 10 12 buildInputs = [ gtk3 libxfce4ui vte xfconf pcre2 ]; 11 13
+2 -2
pkgs/desktops/xfce/applications/xfdashboard/default.nix
··· 17 17 mkXfceDerivation { 18 18 category = "apps"; 19 19 pname = "xfdashboard"; 20 - version = "0.7.7"; 20 + version = "0.9.1"; 21 21 rev-prefix = ""; 22 22 odd-unstable = false; 23 23 24 - sha256 = "0b9pl3k8wl7svwhb9knhvr86gjg2904n788l8cbczwy046ql7pyc"; 24 + sha256 = "14k774wxbk3w0ci2mmm6bhq4i742qahd0j0dr40iwmld55473zgd"; 25 25 26 26 buildInputs = [ 27 27 clutter
+1 -1
pkgs/desktops/xfce/art/xfwm4-themes/default.nix
··· 22 22 meta = with lib; { 23 23 homepage = "https://www.xfce.org/"; 24 24 description = "Themes for Xfce"; 25 - license = licenses.gpl3; 25 + license = licenses.gpl3Only; 26 26 platforms = platforms.linux; 27 27 maintainers = [ maintainers.volth ]; 28 28 };
+3 -4
pkgs/desktops/xfce/core/exo/default.nix
··· 1 - { mkXfceDerivation, docbook_xsl, glib, libxslt, gtk2, gtk3 1 + { mkXfceDerivation, docbook_xsl, glib, libxslt, gtk3 2 2 , libxfce4ui, libxfce4util, perl }: 3 3 4 4 mkXfceDerivation { 5 5 category = "xfce"; 6 6 pname = "exo"; 7 - version = "0.12.11"; 7 + version = "4.16.1"; 8 8 9 - sha256 = "1db7w6jk3i501x4qw0hs0ydrm1fjdkxmahzbv5iag859wnnlg0pd"; 9 + sha256 = "1220mq8gs5s8l0d1p92j6icldzqj6zaisp27ss5jm7hwkkcnms9n"; 10 10 11 11 nativeBuildInputs = [ 12 12 libxslt ··· 14 14 ]; 15 15 16 16 buildInputs = [ 17 - gtk2 # some xfce plugins still uses gtk2 18 17 gtk3 19 18 glib 20 19 libxfce4ui
+6 -3
pkgs/desktops/xfce/core/garcon/default.nix
··· 1 - { mkXfceDerivation, gtk3, libxfce4ui, libxfce4util }: 1 + { lib, mkXfceDerivation, gobject-introspection, gtk3, libxfce4ui, libxfce4util }: 2 2 3 3 mkXfceDerivation { 4 4 category = "xfce"; 5 5 pname = "garcon"; 6 - version = "0.6.4"; 6 + version = "4.16.1"; 7 + 8 + sha256 = "134nm1754i12axl4si60fdwkbk2v6z108nrj9c0lb5in1zmqwa9a"; 7 9 8 - sha256 = "0pamhp1wffiw638s66nws2mpzmwkhvhb6iwccfy8b0kyr57wipjv"; 10 + nativeBuildInputs = [ gobject-introspection ]; 9 11 10 12 buildInputs = [ gtk3 libxfce4ui libxfce4util ]; 11 13 12 14 meta = { 13 15 description = "Xfce menu support library"; 16 + license = with lib.licenses; [ lgpl2Only fdl11Only ]; 14 17 }; 15 18 }
+7 -7
pkgs/desktops/xfce/core/libxfce4ui/default.nix
··· 1 - { lib, mkXfceDerivation, gobject-introspection, gtk2, gtk3, libICE, libSM 2 - , libstartup_notification, libxfce4util, xfconf }: 1 + { lib, mkXfceDerivation, gobject-introspection, vala, gtk3, libICE, libSM 2 + , libstartup_notification, libgtop, epoxy, libxfce4util, xfconf }: 3 3 4 4 mkXfceDerivation { 5 5 category = "xfce"; 6 6 pname = "libxfce4ui"; 7 - version = "4.14.1"; 7 + version = "4.16.0"; 8 8 9 - sha256 = "0fnncf30s51qhgixn57z4d021pjjhzgsg2x69w4dy68vff2347qy"; 9 + sha256 = "0a9wfdpsv83giwv6kcidvpd6c665aa7sv6f2l1q6qcq214vb0rk2"; 10 10 11 - nativeBuildInputs = [ gobject-introspection ]; 12 - buildInputs = [ gtk2 gtk3 libstartup_notification xfconf ]; 11 + nativeBuildInputs = [ gobject-introspection vala ]; 12 + buildInputs = [ gtk3 libstartup_notification libgtop epoxy xfconf ]; 13 13 propagatedBuildInputs = [ libxfce4util libICE libSM ]; 14 14 15 15 configureFlags = [ ··· 18 18 19 19 meta = with lib; { 20 20 description = "Widgets library for Xfce"; 21 - license = licenses.lgpl2Plus; 21 + license = with licenses; [ lgpl2Plus lgpl21Plus ]; 22 22 }; 23 23 }
+4 -4
pkgs/desktops/xfce/core/libxfce4util/default.nix
··· 1 - { lib, mkXfceDerivation, gobject-introspection }: 1 + { lib, mkXfceDerivation, gobject-introspection, vala }: 2 2 3 3 mkXfceDerivation { 4 4 category = "xfce"; 5 5 pname = "libxfce4util"; 6 - version = "4.14.0"; 6 + version = "4.16.0"; 7 7 8 - sha256 = "0vq16bzmnykiikg4dhiaj0qbyj76nkdd54j6k6n568h3dc9ix6q4"; 8 + sha256 = "1p0snipc81dhaq5glv7c1zfq5pcvgq7nikl4ikhfm2af9picfsxb"; 9 9 10 - nativeBuildInputs = [ gobject-introspection ]; 10 + nativeBuildInputs = [ gobject-introspection vala ]; 11 11 12 12 meta = with lib; { 13 13 description = "Extension library for Xfce";
+2 -2
pkgs/desktops/xfce/core/thunar-volman/default.nix
··· 3 3 mkXfceDerivation { 4 4 category = "xfce"; 5 5 pname = "thunar-volman"; 6 - version = "0.9.5"; 6 + version = "4.16.0"; 7 7 8 8 buildInputs = [ exo gtk3 libgudev libxfce4ui libxfce4util xfconf ]; 9 9 10 - sha256 = "1qrlpn0q5g9psd41l6y80r3bvbg8jaic92m6r400zzwcvivf95z0"; 10 + sha256 = "002nkxsvcq384dgpj7lv3bmb21ks64hsq13l67z1dcjbj51hzl03"; 11 11 12 12 odd-unstable = false; 13 13
+2 -2
pkgs/desktops/xfce/core/thunar/default.nix
··· 21 21 let unwrapped = mkXfceDerivation { 22 22 category = "xfce"; 23 23 pname = "thunar"; 24 - version = "1.8.15"; 24 + version = "4.16.6"; 25 25 26 - sha256 = "1y9d88i0kwl7ak4d65gy3qf4bpkiyaqxd4g6px3v1ykf274k8al8"; 26 + sha256 = "12zqwazsqdmghy4h2c4fwxha069l07d46i512395y22h7n6655rn"; 27 27 28 28 nativeBuildInputs = [ 29 29 docbook_xsl
+2 -3
pkgs/desktops/xfce/core/tumbler/default.nix
··· 5 5 , freetype 6 6 , libgsf 7 7 , poppler 8 - , libjpeg 9 8 , gst_all_1 10 9 }: 11 10 ··· 14 13 mkXfceDerivation { 15 14 category = "xfce"; 16 15 pname = "tumbler"; 17 - version = "0.2.9"; 16 + version = "4.16.0"; 18 17 19 - sha256 = "0b3mli40msv35qn67c1m9rn5bigj6ls10l08qk7fa3fwvzl49hmw"; 18 + sha256 = "1z4q858afj3yksim4lc96wylgvymv4cv6iw41qdxl5xd6ii2ddr4"; 20 19 21 20 buildInputs = [ 22 21 ffmpegthumbnailer
+2 -2
pkgs/desktops/xfce/core/xfce4-appfinder/default.nix
··· 3 3 mkXfceDerivation { 4 4 category = "xfce"; 5 5 pname = "xfce4-appfinder"; 6 - version = "4.14.0"; 6 + version = "4.16.1"; 7 7 8 - sha256 = "04h7jxfm3wkxnxfy8149dckay7i160vvk4p9lnq6xny22r4x20h8"; 8 + sha256 = "1r7sjdavqadrpgxqclrznds7a1c2i7mlvghx5mi6qqnh42425gsy"; 9 9 10 10 nativeBuildInputs = [ exo ]; 11 11 buildInputs = [ garcon gtk3 libxfce4ui libxfce4util xfconf ];
+18 -10
pkgs/desktops/xfce/core/xfce4-dev-tools/default.nix
··· 1 - { mkXfceDerivation, autoreconfHook, autoconf, automake 2 - , glib, gtk-doc, intltool, libtool }: 1 + { mkXfceDerivation 2 + , autoreconfHook 3 + , libxslt 4 + , docbook_xsl 5 + , autoconf 6 + , automake 7 + , glib 8 + , gtk-doc 9 + , intltool 10 + , libtool 11 + }: 3 12 4 13 mkXfceDerivation { 5 14 category = "xfce"; 6 15 pname = "xfce4-dev-tools"; 7 - version = "4.14.0"; 16 + version = "4.16.0"; 8 17 9 - sha256 = "10hcj88784faqrk08xb538355cla26vdk9ckx158hqdqv38sb42f"; 18 + sha256 = "0w47npi1np9vb7lhzjr680aa1xb8ch6kcbg0l0bqnpm0y0jmvgz6"; 10 19 11 - nativeBuildInputs = [ autoreconfHook ]; 20 + nativeBuildInputs = [ 21 + autoreconfHook 22 + libxslt 23 + docbook_xsl 24 + ]; 12 25 13 26 propagatedBuildInputs = [ 14 27 autoconf ··· 18 31 intltool 19 32 libtool 20 33 ]; 21 - 22 - preAutoreconf = '' 23 - substitute configure.ac.in configure.ac \ 24 - --subst-var-by REVISION UNKNOWN 25 - ''; 26 34 27 35 setupHook = ./setup-hook.sh; 28 36
+1 -1
pkgs/desktops/xfce/core/xfce4-dev-tools/setup-hook.sh
··· 1 1 xdtEnvHook() { 2 - addToSearchPath ACLOCAL_PATH $1/share/xfce4/dev-tools/m4macros 2 + addToSearchPath ACLOCAL_PATH $1/share/aclocal 3 3 } 4 4 5 5 envHooks+=(xdtEnvHook)
+40 -8
pkgs/desktops/xfce/core/xfce4-panel/default.nix
··· 1 - { mkXfceDerivation, tzdata, exo, garcon, gtk2, gtk3, glib, gettext, glib-networking, libxfce4ui, libxfce4util, libwnck3, xfconf, gobject-introspection }: 1 + { mkXfceDerivation 2 + , exo 3 + , garcon 4 + , gettext 5 + , glib 6 + , gobject-introspection 7 + , gtk3 8 + , libdbusmenu-gtk3 9 + , libwnck3 10 + , libxfce4ui 11 + , libxfce4util 12 + , tzdata 13 + , vala 14 + , xfconf 15 + }: 2 16 3 17 mkXfceDerivation { 4 18 category = "xfce"; 5 19 pname = "xfce4-panel"; 6 - version = "4.14.4"; 20 + version = "4.16.2"; 7 21 8 - sha256 = "1srzgb9vsvfrbhym74zkz9hdhxcrvbffxpfgv5vprhlwxw3vk3fq"; 22 + sha256 = "0wy66viwjnp1c0lgf90fp3vyqy0f1m1kbfdym8a0yrv2b6sn3958"; 9 23 10 - nativeBuildInputs = [ gobject-introspection ]; 11 - buildInputs = [ exo garcon gtk2 gtk3 glib glib-networking libxfce4ui libxfce4util libwnck3 xfconf ]; 24 + nativeBuildInputs = [ 25 + gobject-introspection 26 + vala 27 + ]; 28 + 29 + buildInputs = [ 30 + exo 31 + garcon 32 + libdbusmenu-gtk3 33 + libxfce4ui 34 + libwnck3 35 + xfconf 36 + tzdata 37 + ]; 38 + 39 + propagatedBuildInputs = [ 40 + glib 41 + gtk3 42 + libxfce4util 43 + ]; 12 44 13 45 patches = [ ./xfce4-panel-datadir.patch ]; 14 - patchFlags = [ "-p1" ]; 15 46 16 47 postPatch = '' 17 48 for f in $(find . -name \*.sh); do ··· 21 52 --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo" 22 53 ''; 23 54 24 - configureFlags = [ "--enable-gtk3" ]; 55 + # Workaround https://bugzilla.xfce.org/show_bug.cgi?id=15825 56 + NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0"; 25 57 26 - meta = { 58 + meta = { 27 59 description = "Xfce's panel"; 28 60 }; 29 61 }
+2 -2
pkgs/desktops/xfce/core/xfce4-power-manager/default.nix
··· 4 4 mkXfceDerivation { 5 5 category = "xfce"; 6 6 pname = "xfce4-power-manager"; 7 - version = "1.6.6"; 7 + version = "4.16.0"; 8 8 9 - sha256 = "0lyp3dp4ijbpf21vanrvgm6rmfp8v0zyqxibdj5gxnadmvcq38iy"; 9 + sha256 = "1rfw07xbv83rfb0mz3ayanlcvnaq7xpl2znsyya0hspysvavwks2"; 10 10 11 11 nativeBuildInputs = [ automakeAddFlags exo ]; 12 12 buildInputs = [ gtk3 libnotify libxfce4ui libxfce4util upower xfconf ];
+3 -3
pkgs/desktops/xfce/core/xfce4-session/default.nix
··· 1 - { mkXfceDerivation, polkit, exo, libxfce4util, libxfce4ui, xfconf, iceauth, gtk3, glib, libwnck3, xorg, xfce4-session }: 1 + { mkXfceDerivation, polkit, exo, libxfce4util, libxfce4ui, xfconf, iceauth, gtk3, glib, libwnck3, xfce4-session }: 2 2 3 3 mkXfceDerivation { 4 4 category = "xfce"; 5 5 pname = "xfce4-session"; 6 - version = "4.14.2"; 6 + version = "4.16.0"; 7 7 8 - sha256 = "1gr6j96l792v33lbh7rqpbdjmy8m68hy14bsndx6bykv10zvmgx2"; 8 + sha256 = "0b8vkcqn2arjp6qdwmzr0f84n8fjgy2kbf9h4gq03400ar1l111c"; 9 9 10 10 buildInputs = [ exo gtk3 glib libxfce4ui libxfce4util libwnck3 xfconf polkit iceauth ]; 11 11
+4 -4
pkgs/desktops/xfce/core/xfce4-settings/default.nix
··· 1 - { mkXfceDerivation, automakeAddFlags, exo, garcon, gtk3, glib 1 + { mkXfceDerivation, exo, garcon, gtk3, glib 2 2 , libnotify, libxfce4ui, libxfce4util, libxklavier 3 3 , upower, xfconf, xf86inputlibinput }: 4 4 5 5 mkXfceDerivation { 6 6 category = "xfce"; 7 7 pname = "xfce4-settings"; 8 - version = "4.14.3"; 8 + version = "4.16.0"; 9 9 10 - sha256 = "1zzngdj7mp2r6rcs8gvda1218zlz5gpnc6gsp20z32l69psp3yld"; 10 + sha256 = "0iha3jm7vmgk6hq7z4l2r7w9qm5jraka0z580i8i83704kfx9g0y"; 11 11 12 12 postPatch = '' 13 - for f in $(find . -name \*.c); do 13 + for f in xfsettingsd/pointers.c dialogs/mouse-settings/main.c; do 14 14 substituteInPlace $f --replace \"libinput-properties.h\" '<xorg/libinput-properties.h>' 15 15 done 16 16 '';
+5 -3
pkgs/desktops/xfce/core/xfconf/default.nix
··· 1 - { mkXfceDerivation, libxfce4util }: 1 + { mkXfceDerivation, libxfce4util, gobject-introspection, vala }: 2 2 3 3 mkXfceDerivation { 4 4 category = "xfce"; 5 5 pname = "xfconf"; 6 - version = "4.14.3"; 6 + version = "4.16.0"; 7 7 8 - sha256 = "0yxpdcyz81di7w9493jzps09bgrlgianjj5abnzahqmkpmpvb0rh"; 8 + sha256 = "00cp2cm1w5a6k7g0fjvqx7d2iwaqw196vii9jkx1aa7mb0f2gk63"; 9 + 10 + nativeBuildInputs = [ gobject-introspection vala ]; 9 11 10 12 buildInputs = [ libxfce4util ]; 11 13
+2 -2
pkgs/desktops/xfce/core/xfdesktop/default.nix
··· 3 3 mkXfceDerivation { 4 4 category = "xfce"; 5 5 pname = "xfdesktop"; 6 - version = "4.14.2"; 6 + version = "4.16.0"; 7 7 8 - sha256 = "04fhm1pf9290sy3ymrmnfnm2x6fq5ldzvj5bjd9kz6zkx0nsq1za"; 8 + sha256 = "1znbccr25wvizmzzgdcf719y3qc9gqdi1g4rasgrmi95427lvwn3"; 9 9 10 10 buildInputs = [ 11 11 exo
+2 -2
pkgs/desktops/xfce/core/xfwm4/default.nix
··· 5 5 mkXfceDerivation { 6 6 category = "xfce"; 7 7 pname = "xfwm4"; 8 - version = "4.14.6"; 8 + version = "4.16.1"; 9 9 10 - sha256 = "1ml5b4nn8laqhjihfqqsbjn66525abhin5d32bplh1k9yfxw4xi4"; 10 + sha256 = "1lhxm9ifkrnvn1vq3aak3kd695i1ishpryjnw617ifzawy9lj10b"; 11 11 12 12 nativeBuildInputs = [ exo librsvg ]; 13 13
+1 -1
pkgs/desktops/xfce/mkXfceDerivation.nix
··· 48 48 49 49 meta = with lib; { 50 50 homepage = "https://gitlab.xfce.org/${category}/${pname}/about"; 51 - license = licenses.gpl2; # some libraries are under LGPLv2+ 51 + license = licenses.gpl2Plus; # some libraries are under LGPLv2+ 52 52 platforms = platforms.linux; 53 53 }; 54 54 };
+7 -2
pkgs/desktops/xfce/panel-plugins/xfce4-clipman-plugin/default.nix
··· 1 - { mkXfceDerivation, gtk3, libXtst, libxfce4ui, libxfce4util, xfce4-panel, xfconf, exo }: 1 + { mkXfceDerivation, libXtst, libxfce4ui, xfce4-panel, xfconf }: 2 2 3 3 mkXfceDerivation { 4 4 category = "panel-plugins"; ··· 6 6 version = "1.6.1"; 7 7 sha256 = "03akijvry1n1fkziyvxwcksl4vy4lmnpgd5izjs8jai5sndhsszl"; 8 8 9 - buildInputs = [ exo gtk3 libXtst libxfce4ui libxfce4util xfce4-panel xfconf ]; 9 + buildInputs = [ libXtst libxfce4ui xfce4-panel xfconf ]; 10 + 11 + postPatch = '' 12 + # exo-csource has been dropped from exo 13 + substituteInPlace panel-plugin/Makefile.am --replace exo-csource xdt-csource 14 + ''; 10 15 11 16 meta = { 12 17 description = "Clipboard manager for Xfce panel";
+2 -2
pkgs/desktops/xfce/panel-plugins/xfce4-cpufreq-plugin/default.nix
··· 3 3 mkXfceDerivation { 4 4 category = "panel-plugins"; 5 5 pname = "xfce4-cpufreq-plugin"; 6 - version = "1.2.1"; 7 - sha256 = "1p7c4g3yfc19ksdckxpzq1q35jvplh5g55299cvv0afhdb5l8zhv"; 6 + version = "1.2.5"; 7 + sha256 = "1isqlfhz1ijl1h3hfvi0n4misdjsrhd7pc9h5rkaqm4vh543ggxg"; 8 8 9 9 buildInputs = [ gtk3 libxfce4ui libxfce4util xfce4-panel xfconf ]; 10 10
+2 -2
pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin/default.nix
··· 20 20 category = "panel-plugins"; 21 21 in stdenv.mkDerivation rec { 22 22 pname = "xfce4-cpugraph-plugin"; 23 - version = "1.2.1"; 23 + version = "1.2.3"; 24 24 25 25 src = fetchurl { 26 26 url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; 27 - sha256 = "YVrfmr2RQXpEMZ2OTa3GAS+iKjd48vN5cXUS3Lfvkko="; 27 + sha256 = "13302psv0fzg2dsgadr8j6mb06k1bsa4zw6hxmb644vqlvcwq37v"; 28 28 }; 29 29 30 30 nativeBuildInputs = [
+3 -5
pkgs/desktops/xfce/panel-plugins/xfce4-datetime-plugin/default.nix
··· 3 3 , intltool 4 4 , libxfce4ui 5 5 , xfce4-panel 6 - , gtk3 7 6 , gettext 8 7 }: 9 8 10 9 mkXfceDerivation { 11 10 category = "panel-plugins"; 12 11 pname = "xfce4-datetime-plugin"; 13 - version = "0.8.0"; 12 + version = "0.8.1"; 14 13 15 - rev-prefix = "datetime-"; 16 - sha256 = "12drh7y70d70r93lpv43fkj5cbyl0vciz4a41nxrknrfbhxrvyah"; 14 + rev-prefix = "xfce4-datetime-plugin-"; 15 + sha256 = "06h13bmh2sni4qbr3kfnqaa5dq5f48h4xkywrm9pa6h2nyvn4rma"; 17 16 18 17 nativeBuildInputs = [ 19 18 gettext ··· 21 20 ]; 22 21 23 22 buildInputs = [ 24 - gtk3 25 23 libxfce4ui 26 24 xfce4-panel 27 25 ];
+8 -8
pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin/default.nix
··· 1 - { lib, stdenv, pkg-config, fetchFromGitHub, python2, bash, vala_0_46 1 + { lib, stdenv, pkg-config, fetchFromGitHub, python3, bash, vala_0_48 2 2 , dockbarx, gtk2, xfce, pythonPackages, wafHook }: 3 3 4 4 stdenv.mkDerivation rec { 5 5 pname = "xfce4-dockbarx-plugin"; 6 6 version = "${ver}-${rev}"; 7 - ver = "0.5"; 8 - rev = "a2dcb66"; 7 + ver = "0.6"; 8 + rev = "5213876"; 9 9 10 10 src = fetchFromGitHub { 11 - owner = "TiZ-EX1"; 11 + owner = "xuzhen"; 12 12 repo = "xfce4-dockbarx-plugin"; 13 13 rev = rev; 14 - sha256 = "1f75iwlshnif60x0qqdqw5ffng2m4f4zp0ijkrbjz83wm73nsxfx"; 14 + sha256 = "0s8bljn4ga2hj480j0jwkc0npp8szbmirmcsys791gk32iq4dasn"; 15 15 }; 16 16 17 17 pythonPath = [ dockbarx ]; 18 18 19 19 nativeBuildInputs = [ pkg-config wafHook ]; 20 - buildInputs = [ python2 vala_0_46 gtk2 pythonPackages.wrapPython ] 20 + buildInputs = [ python3 vala_0_48 gtk2 pythonPackages.wrapPython ] 21 21 ++ (with xfce; [ libxfce4util xfce4-panel xfconf xfce4-dev-tools ]) 22 22 ++ pythonPath; 23 23 24 24 postPatch = '' 25 25 substituteInPlace wscript --replace /usr/share/ "\''${PREFIX}/share/" 26 26 substituteInPlace src/dockbarx.vala --replace /usr/share/ $out/share/ 27 - substituteInPlace src/dockbarx.vala --replace '/usr/bin/env python2' ${bash}/bin/bash 27 + substituteInPlace src/dockbarx.vala --replace '/usr/bin/env python3' ${bash}/bin/bash 28 28 ''; 29 29 30 30 postFixup = '' ··· 32 32 ''; 33 33 34 34 meta = with lib; { 35 - homepage = "https://github.com/TiZ-EX1/xfce4-dockbarx-plugin"; 35 + homepage = "https://github.com/xuzhen/xfce4-dockbarx-plugin"; 36 36 description = "A plugins to embed DockbarX into xfce4-panel"; 37 37 license = licenses.mit; 38 38 platforms = platforms.linux;
+1
pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin/default.nix
··· 44 44 description = "Embed arbitrary app windows on Xfce panel"; 45 45 license = licenses.gpl2Plus; 46 46 platforms = platforms.linux; 47 + broken = true; # unmaintained plugin; no longer compatible with xfce 4.16 47 48 maintainers = [ ]; 48 49 }; 49 50 }
+2 -1
pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin/default.nix
··· 33 33 meta = with lib; { 34 34 homepage = "https://goodies.xfce.org/projects/panel-plugins/xfce4-hardware-monitor-plugin"; 35 35 description = "Hardware monitor plugin for the XFCE4 panel"; 36 - license = licenses.gpl3; 36 + license = licenses.gpl3Only; 37 37 platforms = platforms.unix; 38 + broken = true; # unmaintained plugin; no longer compatible with xfce 4.16 38 39 maintainers = [ maintainers.romildo ]; 39 40 }; 40 41 }
+6 -8
pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin/default.nix
··· 1 - { lib, stdenv, fetchurl, pkg-config, intltool, libxfce4util, xfce4-panel, libxfce4ui, 2 - gtk2, exo, gnutls, libgcrypt, xfce }: 1 + { lib, stdenv, fetchurl, pkg-config, intltool, xfce4-panel, libxfce4ui, 2 + exo, gnutls, libgcrypt, xfce }: 3 3 4 4 let 5 5 category = "panel-plugins"; ··· 7 7 8 8 stdenv.mkDerivation rec { 9 9 pname = "xfce4-mailwatch-plugin"; 10 - version = "1.2.0"; 10 + version = "1.3.0"; 11 11 12 12 src = fetchurl { 13 13 url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; 14 - sha256 = "1bfw3smwivr9mzdyq768biqrl4aq94zqi3xjzq6kqnd8561cqjk2"; 14 + sha256 = "0bmykjhd3gs1737fl3zn5gg6f3vlncak2xqz89zv5018znz1xy90"; 15 15 }; 16 16 17 17 nativeBuildInputs = [ ··· 20 20 ]; 21 21 22 22 buildInputs = [ 23 - libxfce4util 24 23 libxfce4ui 25 24 xfce4-panel 26 - gtk2 27 - exo # needs exo with gtk2 support 25 + exo 28 26 gnutls 29 27 libgcrypt 30 28 ]; ··· 38 36 meta = with lib; { 39 37 homepage = "https://docs.xfce.org/panel-plugins/xfce4-mailwatch-plugin"; 40 38 description = "Mail watcher plugin for Xfce panel"; 41 - license = licenses.gpl2; 39 + license = licenses.gpl2Only; 42 40 platforms = platforms.linux; 43 41 maintainers = [ ]; 44 42 };
+2 -3
pkgs/desktops/xfce/panel-plugins/xfce4-namebar-plugin/default.nix
··· 16 16 buildInputs = [ gtk3 libwnck3 libxfce4util xfce4-panel ]; 17 17 18 18 postPatch = '' 19 - for f in src/preferences.vala src/namebar.vala; do 20 - substituteInPlace $f --replace 'var dirs = Environment.get_system_data_dirs()' "string[] dirs = { \"$out/share\" }" 21 - done 19 + substituteInPlace src/namebar.vala --replace 'var dirs = Environment.get_system_data_dirs()' "string[] dirs = { \"$out/share\" }" 20 + substituteInPlace src/preferences.vala --replace 'var dir_strings = Environment.get_system_data_dirs()' "string[] dir_strings = { \"$out/share\" }" 22 21 ''; 23 22 24 23 passthru.updateScript = xfce.updateScript {
-9
pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin/default.nix
··· 1 1 { lib 2 2 , stdenv 3 3 , fetchurl 4 - , fetchpatch 5 4 , pkg-config 6 5 , intltool 7 - , libxfce4util 8 6 , xfce4-panel 9 7 , libxfce4ui 10 8 , xfconf 11 - , gtk2 12 - , libunique 13 9 , xfce 14 10 }: 15 11 ··· 30 26 ]; 31 27 32 28 buildInputs = [ 33 - libxfce4util 34 29 libxfce4ui 35 30 xfce4-panel 36 31 xfconf 37 - gtk2 38 - libunique 39 32 ]; 40 - 41 - hardeningDisable = [ "format" ]; 42 33 43 34 passthru.updateScript = xfce.updateScript { 44 35 inherit pname version;
+3 -3
pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin/default.nix
··· 8 8 9 9 stdenv.mkDerivation rec { 10 10 pname = "xfce4-sensors-plugin"; 11 - version = "1.3.92"; 11 + version = "1.3.95"; 12 12 13 13 src = fetchurl { 14 14 url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; 15 - sha256 = "04jibw23ibi61f19gc9xy400yhcdiya4px6zp8c7fjq65hyn9iix"; 15 + sha256 = "0v44qwrwb95jrlsni1gdlc0zhymlm62w42zs3jbr5mcdc7j4mil3"; 16 16 }; 17 17 18 18 nativeBuildInputs = [ ··· 47 47 meta = with lib; { 48 48 homepage = "https://docs.xfce.org/panel-plugins/xfce4-sensors-plugin"; 49 49 description = "A panel plug-in for different sensors using acpi, lm_sensors and hddtemp"; 50 - license = licenses.gpl2; 50 + license = licenses.gpl2Plus; 51 51 platforms = platforms.unix; 52 52 maintainers = [ maintainers.romildo ]; 53 53 };
+4 -6
pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin/default.nix
··· 3 3 , fetchurl 4 4 , pkg-config 5 5 , intltool 6 - , libxfce4util 7 6 , xfce4-panel 8 7 , libxfce4ui 9 - , gtk3 8 + , xfconf 10 9 , xfce 11 10 }: 12 11 ··· 14 13 category = "panel-plugins"; 15 14 in stdenv.mkDerivation rec { 16 15 pname = "xfce4-systemload-plugin"; 17 - version = "1.2.4"; 16 + version = "1.3.1"; 18 17 19 18 src = fetchurl { 20 19 url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; 21 - sha256 = "BTG435I8ujvo0GTLi2OLlU33SRXlpEciiZlReEd4mDU="; 20 + sha256 = "0lknh5l30qs5c69wwjcblbyhczvdbxs59fqkb8mpqbfm05w01lan"; 22 21 }; 23 22 24 23 nativeBuildInputs = [ ··· 27 26 ]; 28 27 29 28 buildInputs = [ 30 - libxfce4util 31 29 libxfce4ui 32 30 xfce4-panel 33 - gtk3 31 + xfconf 34 32 ]; 35 33 36 34 passthru.updateScript = xfce.updateScript {
+1 -1
pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin/default.nix
··· 38 38 homepage = "https://docs.xfce.org/panel-plugins/xfce4-timer-plugin"; 39 39 description = "Simple countdown and alarm plugin for the Xfce panel"; 40 40 platforms = platforms.linux; 41 - license = licenses.gpl2; 41 + license = licenses.gpl2Plus; 42 42 maintainers = [ ]; 43 43 }; 44 44 }
-1
pkgs/desktops/xfce/panel-plugins/xfce4-verve-plugin/default.nix
··· 5 5 , pcre 6 6 , libxfce4util 7 7 , xfce4-panel 8 - , xfconf 9 8 }: 10 9 11 10 mkXfceDerivation {
+5 -6
pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin/default.nix
··· 1 - { lib, stdenv, fetchurl, pkg-config, intltool, gtk3, libxml2, libsoup, upower, 2 - libxfce4ui, libxfce4util, xfce4-panel, hicolor-icon-theme, xfce }: 1 + { lib, stdenv, fetchurl, pkg-config, intltool, libxml2, libsoup, upower, 2 + libxfce4ui, xfce4-panel, xfconf, hicolor-icon-theme, xfce }: 3 3 4 4 let 5 5 category = "panel-plugins"; ··· 7 7 8 8 stdenv.mkDerivation rec { 9 9 pname = "xfce4-weather-plugin"; 10 - version = "0.10.1"; 10 + version = "0.11.0"; 11 11 12 12 src = fetchurl { 13 13 url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; 14 - sha256 = "12bs2rfmmy021087i10vxibdbbvd5vld0vk3h5hymhpz7rgszcmg"; 14 + sha256 = "1z2k24d599mxf5gqa35i3xmc3gk2yvqs80hxxpyw06yma6ljw973"; 15 15 }; 16 16 17 17 nativeBuildInputs = [ ··· 20 20 ]; 21 21 22 22 buildInputs = [ 23 - gtk3 24 23 libxml2 25 24 libsoup 26 25 upower 27 26 libxfce4ui 28 - libxfce4util 29 27 xfce4-panel 28 + xfconf 30 29 hicolor-icon-theme 31 30 ]; 32 31
+2 -2
pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin/default.nix
··· 3 3 mkXfceDerivation { 4 4 category = "panel-plugins"; 5 5 pname = "xfce4-whiskermenu-plugin"; 6 - version = "2.4.6"; 6 + version = "2.5.3"; 7 7 rev-prefix = "v"; 8 8 odd-unstable = false; 9 - sha256 = "03asfaxqbhawzb3870az7qgid5y7cg3ip8h6r4z8kavcd0b7x4ii"; 9 + sha256 = "15kcph35pji3l1y81snrmpqzhhpdc9h4nk6cjsjyla51a1s2y3hz"; 10 10 11 11 nativeBuildInputs = [ cmake ]; 12 12
+5 -9
pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, pkg-config, intltool, python3, imagemagick, libwnck, gtk2 2 - , exo, libxfce4ui, libxfce4util, xfce4-panel, xfconf, xfce4-dev-tools, xfce }: 1 + { lib, stdenv, fetchFromGitHub, pkg-config, intltool, python3, imagemagick, libwnck3, libxfce4ui, xfce4-panel, xfconf, xfce4-dev-tools, xfce }: 3 2 4 3 stdenv.mkDerivation rec { 5 4 pname = "xfce4-windowck-plugin"; 6 - version = "0.4.6"; 5 + version = "0.4.10"; 7 6 8 7 src = fetchFromGitHub { 9 - owner = "cedl38"; 8 + owner = "invidian"; 10 9 repo = pname; 11 10 rev = "v${version}"; 12 - sha256 = "1gwrbjfv4cnlsqh05h42w41z3xs15yjj6j8y9gxvvvvlgzzp4p3g"; 11 + sha256 = "0l066a174v2c7ly125v9x1fgbg5bnpwdwnjh69v9kp4plp791q4n"; 13 12 }; 14 13 15 14 nativeBuildInputs = [ ··· 20 19 buildInputs = [ 21 20 python3 22 21 imagemagick 23 - libwnck 24 - gtk2 25 - exo 22 + libwnck3 26 23 libxfce4ui 27 - libxfce4util 28 24 xfce4-panel 29 25 xfconf 30 26 xfce4-dev-tools
+1 -1
pkgs/desktops/xfce/thunar-plugins/dropbox/default.nix
··· 39 39 meta = with lib; { 40 40 homepage = "https://github.com/Jeinzi/thunar-dropbox"; 41 41 description = "A plugin that adds context-menu items for Dropbox to Thunar"; 42 - license = licenses.gpl3; 42 + license = licenses.gpl3Only; 43 43 platforms = platforms.linux; 44 44 }; 45 45 }
+2 -2
pkgs/development/compilers/flutter/default.nix
··· 4 4 getPatches = dir: 5 5 let files = builtins.attrNames (builtins.readDir dir); 6 6 in map (f: dir + ("/" + f)) files; 7 - version = "1.22.4"; 7 + version = "2.0.3"; 8 8 channel = "stable"; 9 9 filename = "flutter_linux_${version}-${channel}.tar.xz"; 10 10 in ··· 15 15 pname = "flutter"; 16 16 src = fetchurl { 17 17 url = "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}"; 18 - sha256 = "0qalgav9drqddcj8lfvl9ddf3325n953pvkmgha47lslg9sa88zw"; 18 + sha256 = "14a63cpkp78rgymmlrppds69jsrdarg33dr43nb7s61r0xfh9icm"; 19 19 }; 20 20 patches = getPatches ./patches; 21 21 };
+1 -2
pkgs/development/compilers/flutter/flutter.nix
··· 41 41 42 42 buildInputs = [ git ]; 43 43 44 - inherit src patches; 44 + inherit src patches version; 45 45 46 46 postPatch = '' 47 47 patchShebangs --build ./bin/ 48 - find ./bin/ -executable -type f -exec patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) {} \; 49 48 ''; 50 49 51 50 buildPhase = ''
+11 -13
pkgs/development/compilers/flutter/patches/disable-auto-update.patch
··· 1 1 diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh 2 - index 8d613de739..a673466726 100644 2 + index c44f867746..c9eda34e26 100644 3 3 --- a/bin/internal/shared.sh 4 4 +++ b/bin/internal/shared.sh 5 - @@ -204,8 +204,6 @@ function shared::execute() { 5 + @@ -218,8 +218,6 @@ function shared::execute() { 6 6 # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS" 7 7 # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432" 8 8 ··· 12 12 case "$BIN_NAME" in 13 13 flutter*) 14 14 diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart 15 - index 8a1a1e29da..778f253358 100644 15 + index 3dc7929dd1..e65d70d55b 100644 16 16 --- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart 17 17 +++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart 18 - @@ -293,13 +293,6 @@ class FlutterCommandRunner extends CommandRunner<void> { 18 + @@ -246,11 +246,7 @@ class FlutterCommandRunner extends CommandRunner<void> { 19 19 globals.flutterUsage.suppressAnalytics = true; 20 20 } 21 21 22 - - try { 23 - - await globals.flutterVersion.ensureVersionFile(); 24 - - } on FileSystemException catch (e) { 25 - - globals.printError('Failed to write the version file to the artifact cache: "$e".'); 26 - - globals.printError('Please ensure you have permissions in the artifact cache directory.'); 27 - - throwToolExit('Failed to write the version file'); 28 - - } 22 + - globals.flutterVersion.ensureVersionFile(); 29 23 final bool machineFlag = topLevelResults['machine'] as bool; 30 - if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) { 31 - await globals.flutterVersion.checkFlutterVersionFreshness(); 24 + - if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) { 25 + - await globals.flutterVersion.checkFlutterVersionFreshness(); 26 + - } 27 + 28 + // See if the user specified a specific device. 29 + globals.deviceManager.specifiedDeviceId = topLevelResults['device-id'] as String;
+27 -32
pkgs/development/compilers/flutter/patches/move-cache.patch
··· 1 - diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart 2 - index d045c83f04..d51973020b 100644 3 - --- a/dev/devicelab/lib/framework/runner.dart 4 - +++ b/dev/devicelab/lib/framework/runner.dart 5 - @@ -136,7 +136,7 @@ Future<void> cleanupSystem() async { 6 - print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)'); 7 - final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew'; 8 - final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.'); 9 - - recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir); 10 - + recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir); 11 - copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper'))); 12 - if (!Platform.isWindows) { 13 - await exec( 14 1 diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart 15 - index 8da01315ae..bb8d61d7f2 100644 2 + index a6c59bae07..21f6c9812a 100644 16 3 --- a/packages/flutter_tools/lib/src/asset.dart 17 4 +++ b/packages/flutter_tools/lib/src/asset.dart 18 - @@ -8,6 +8,7 @@ import 'package:meta/meta.dart'; 5 + @@ -5,6 +5,7 @@ 6 + import 'package:meta/meta.dart'; 19 7 import 'package:package_config/package_config.dart'; 20 - import 'package:yaml/yaml.dart'; 21 8 22 9 +import 'base/common.dart'; 23 10 import 'base/context.dart'; 24 11 import 'base/file_system.dart'; 25 - import 'base/utils.dart'; 26 - @@ -399,7 +400,7 @@ List<_Asset> _getMaterialAssets(String fontSet) { 27 - for (final Map<dynamic, dynamic> font in (family['fonts'] as List<dynamic>).cast<Map<dynamic, dynamic>>()) { 28 - final Uri entryUri = globals.fs.path.toUri(font['asset'] as String); 29 - result.add(_Asset( 30 - - baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'), 31 - + baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'), 32 - relativeUri: Uri(path: entryUri.pathSegments.last), 33 - entryUri: entryUri, 34 - package: null, 12 + import 'base/logger.dart'; 13 + @@ -14,6 +15,7 @@ import 'cache.dart'; 14 + import 'convert.dart'; 15 + import 'dart/package_map.dart'; 16 + import 'devfs.dart'; 17 + +import 'globals.dart' as globals; 18 + import 'flutter_manifest.dart'; 19 + import 'license_collector.dart'; 20 + import 'project.dart'; 21 + @@ -377,7 +379,7 @@ class ManifestAssetBundle implements AssetBundle { 22 + for (final Map<String, Object> font in family['fonts'] as List<Map<String, Object>>) { 23 + final Uri entryUri = _fileSystem.path.toUri(font['asset'] as String); 24 + result.add(_Asset( 25 + - baseDir: _fileSystem.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'), 26 + + baseDir: _fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'), 27 + relativeUri: Uri(path: entryUri.pathSegments.last), 28 + entryUri: entryUri, 29 + package: null, 35 30 diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart 36 - index a35d8f87d0..a40027dc74 100644 31 + index 11e3bf3e11..39d6fae0d1 100644 37 32 --- a/packages/flutter_tools/lib/src/cache.dart 38 33 +++ b/packages/flutter_tools/lib/src/cache.dart 39 - @@ -215,8 +215,15 @@ class Cache { 34 + @@ -321,8 +321,15 @@ class Cache { 40 35 return; 41 36 } 42 37 assert(_lock == null); 43 38 + 44 - + final Directory dir = globals.fs.directory(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); 39 + + final Directory dir = _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter')); 45 40 + if (!dir.existsSync()) { 46 41 + dir.createSync(recursive: true); 47 42 + globals.os.chmod(dir, '755'); 48 43 + } 49 44 + 50 45 final File lockFile = 51 - - globals.fs.file(globals.fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile')); 52 - + globals.fs.file(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile')); 46 + - _fileSystem.file(_fileSystem.path.join(flutterRoot, 'bin', 'cache', 'lockfile')); 47 + + _fileSystem.file(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile')); 53 48 try { 54 49 _lock = lockFile.openSync(mode: FileMode.write); 55 50 } on FileSystemException catch (e) { 56 - @@ -319,7 +326,7 @@ class Cache { 51 + @@ -424,7 +431,7 @@ class Cache { 57 52 if (_rootOverride != null) { 58 53 return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache')); 59 54 } else {
+29
pkgs/development/compilers/llvm/12/bintools.nix
··· 1 + { runCommand, stdenv, llvm, lld, version }: 2 + 3 + let 4 + prefix = 5 + if stdenv.hostPlatform != stdenv.targetPlatform 6 + then "${stdenv.targetPlatform.config}-" 7 + else ""; 8 + in runCommand "llvm-binutils-${version}" { preferLocalBuild = true; } '' 9 + mkdir -p $out/bin 10 + for prog in ${lld}/bin/*; do 11 + ln -s $prog $out/bin/${prefix}$(basename $prog) 12 + done 13 + for prog in ${llvm}/bin/*; do 14 + ln -sf $prog $out/bin/${prefix}$(basename $prog) 15 + done 16 + 17 + ln -s ${llvm}/bin/llvm-ar $out/bin/${prefix}ar 18 + ln -s ${llvm}/bin/llvm-as $out/bin/${prefix}as 19 + ln -s ${llvm}/bin/llvm-dwp $out/bin/${prefix}dwp 20 + ln -s ${llvm}/bin/llvm-nm $out/bin/${prefix}nm 21 + ln -s ${llvm}/bin/llvm-objcopy $out/bin/${prefix}objcopy 22 + ln -s ${llvm}/bin/llvm-objdump $out/bin/${prefix}objdump 23 + ln -s ${llvm}/bin/llvm-ranlib $out/bin/${prefix}ranlib 24 + ln -s ${llvm}/bin/llvm-readelf $out/bin/${prefix}readelf 25 + ln -s ${llvm}/bin/llvm-size $out/bin/${prefix}size 26 + ln -s ${llvm}/bin/llvm-strip $out/bin/${prefix}strip 27 + 28 + ln -s ${lld}/bin/lld $out/bin/${prefix}ld 29 + ''
+110
pkgs/development/compilers/llvm/12/clang/default.nix
··· 1 + { lib, stdenv, fetch, cmake, libxml2, llvm, version, clang-tools-extra_src, python3, lld 2 + , fixDarwinDylibNames 3 + , enableManpages ? false 4 + }: 5 + 6 + let 7 + self = stdenv.mkDerivation ({ 8 + pname = "clang"; 9 + inherit version; 10 + 11 + src = fetch "clang" "1xg2wy86zdj1d4h33n9mmb4j0x8bp9a5pk4qnnx3imlh8n6vhrqj"; 12 + inherit clang-tools-extra_src; 13 + 14 + unpackPhase = '' 15 + unpackFile $src 16 + mv clang-* clang 17 + sourceRoot=$PWD/clang 18 + unpackFile ${clang-tools-extra_src} 19 + ''; 20 + 21 + nativeBuildInputs = [ cmake python3 lld ] 22 + ++ lib.optional enableManpages python3.pkgs.sphinx 23 + ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames; 24 + 25 + buildInputs = [ libxml2 llvm ]; 26 + 27 + cmakeFlags = [ 28 + "-DCMAKE_CXX_FLAGS=-std=c++14" 29 + "-DCLANGD_BUILD_XPC=OFF" 30 + ] ++ lib.optionals enableManpages [ 31 + "-DCLANG_INCLUDE_DOCS=ON" 32 + "-DLLVM_ENABLE_SPHINX=ON" 33 + "-DSPHINX_OUTPUT_MAN=ON" 34 + "-DSPHINX_OUTPUT_HTML=OFF" 35 + "-DSPHINX_WARNINGS_AS_ERRORS=OFF" 36 + ]; 37 + 38 + patches = [ 39 + ./purity.patch 40 + # https://reviews.llvm.org/D51899 41 + ]; 42 + 43 + postPatch = '' 44 + sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \ 45 + -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \ 46 + lib/Driver/ToolChains/*.cpp 47 + 48 + # Patch for standalone doc building 49 + sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt 50 + '' + lib.optionalString stdenv.hostPlatform.isMusl '' 51 + sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp 52 + ''; 53 + 54 + outputs = [ "out" "lib" "python" ]; 55 + 56 + # Clang expects to find LLVMgold in its own prefix 57 + postInstall = '' 58 + if [ -e ${llvm}/lib/LLVMgold.so ]; then 59 + ln -sv ${llvm}/lib/LLVMgold.so $out/lib 60 + fi 61 + 62 + ln -sv $out/bin/clang $out/bin/cpp 63 + 64 + # Move libclang to 'lib' output 65 + moveToOutput "lib/libclang.*" "$lib" 66 + moveToOutput "lib/libclang-cpp.*" "$lib" 67 + substituteInPlace $out/lib/cmake/clang/ClangTargets-release.cmake \ 68 + --replace "\''${_IMPORT_PREFIX}/lib/libclang." "$lib/lib/libclang." \ 69 + --replace "\''${_IMPORT_PREFIX}/lib/libclang-cpp." "$lib/lib/libclang-cpp." 70 + 71 + mkdir -p $python/bin $python/share/clang/ 72 + mv $out/bin/{git-clang-format,scan-view} $python/bin 73 + if [ -e $out/bin/set-xcode-analyzer ]; then 74 + mv $out/bin/set-xcode-analyzer $python/bin 75 + fi 76 + mv $out/share/clang/*.py $python/share/clang 77 + rm $out/bin/c-index-test 78 + ''; 79 + 80 + passthru = { 81 + isClang = true; 82 + inherit llvm; 83 + }; 84 + 85 + meta = { 86 + description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler"; 87 + homepage = "https://llvm.org/"; 88 + license = lib.licenses.ncsa; 89 + platforms = lib.platforms.all; 90 + }; 91 + } // lib.optionalAttrs enableManpages { 92 + pname = "clang-manpages"; 93 + 94 + buildPhase = '' 95 + make docs-clang-man 96 + ''; 97 + 98 + installPhase = '' 99 + mkdir -p $out/share/man/man1 100 + # Manually install clang manpage 101 + cp docs/man/*.1 $out/share/man/man1/ 102 + ''; 103 + 104 + outputs = [ "out" ]; 105 + 106 + doCheck = false; 107 + 108 + meta.description = "man page for Clang ${version}"; 109 + }); 110 + in self
+28
pkgs/development/compilers/llvm/12/clang/purity.patch
··· 1 + From 4add81bba40dcec62c4ea4481be8e35ac53e89d8 Mon Sep 17 00:00:00 2001 2 + From: Will Dietz <w@wdtz.org> 3 + Date: Thu, 18 May 2017 11:56:12 -0500 4 + Subject: [PATCH] "purity" patch for 5.0 5 + 6 + --- 7 + lib/Driver/ToolChains/Gnu.cpp | 7 ------- 8 + 1 file changed, 7 deletions(-) 9 + 10 + diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp 11 + index fe3c0191bb..c6a482bece 100644 12 + --- a/lib/Driver/ToolChains/Gnu.cpp 13 + +++ b/lib/Driver/ToolChains/Gnu.cpp 14 + @@ -487,12 +487,6 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA, 15 + if (!IsStatic) { 16 + if (Args.hasArg(options::OPT_rdynamic)) 17 + CmdArgs.push_back("-export-dynamic"); 18 + - 19 + - if (!Args.hasArg(options::OPT_shared) && !IsStaticPIE) { 20 + - CmdArgs.push_back("-dynamic-linker"); 21 + - CmdArgs.push_back(Args.MakeArgString(Twine(D.DyldPrefix) + 22 + - ToolChain.getDynamicLinker(Args))); 23 + - } 24 + } 25 + 26 + CmdArgs.push_back("-o"); 27 + -- 28 + 2.11.0
+23
pkgs/development/compilers/llvm/12/compiler-rt-X86-support-extension.patch
··· 1 + diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt 2 + index 3a66dd9c3fb..7efc85d9f9f 100644 3 + --- a/lib/builtins/CMakeLists.txt 4 + +++ b/lib/builtins/CMakeLists.txt 5 + @@ -301,6 +301,10 @@ if (NOT MSVC) 6 + i386/umoddi3.S 7 + ) 8 + 9 + + set(i486_SOURCES ${i386_SOURCES}) 10 + + set(i586_SOURCES ${i386_SOURCES}) 11 + + set(i686_SOURCES ${i386_SOURCES}) 12 + + 13 + if (WIN32) 14 + set(i386_SOURCES 15 + ${i386_SOURCES} 16 + @@ -608,6 +612,7 @@ else () 17 + endif() 18 + 19 + foreach (arch ${BUILTIN_SUPPORTED_ARCH}) 20 + + message("arch: ${arch}") 21 + if (CAN_TARGET_${arch}) 22 + # For ARM archs, exclude any VFP builtins if VFP is not supported 23 + if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
+32
pkgs/development/compilers/llvm/12/compiler-rt-armv7l.patch
··· 1 + diff -ur compiler-rt-10.0.0.src/cmake/builtin-config-ix.cmake compiler-rt-10.0.0.src-patched/cmake/builtin-config-ix.cmake 2 + --- compiler-rt-10.0.0.src/cmake/builtin-config-ix.cmake 2020-03-24 00:01:02.000000000 +0900 3 + +++ compiler-rt-10.0.0.src-patched/cmake/builtin-config-ix.cmake 2020-05-10 03:42:00.883450706 +0900 4 + @@ -24,7 +24,7 @@ 5 + 6 + 7 + set(ARM64 aarch64) 8 + -set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k) 9 + +set(ARM32 arm armhf armv6m armv7m armv7em armv7 armv7s armv7k armv7l) 10 + set(HEXAGON hexagon) 11 + set(X86 i386) 12 + set(X86_64 x86_64) 13 + diff -ur compiler-rt-10.0.0.src/lib/builtins/CMakeLists.txt compiler-rt-10.0.0.src-patched/lib/builtins/CMakeLists.txt 14 + --- compiler-rt-10.0.0.src/lib/builtins/CMakeLists.txt 2020-03-24 00:01:02.000000000 +0900 15 + +++ compiler-rt-10.0.0.src-patched/lib/builtins/CMakeLists.txt 2020-05-10 03:44:49.468579650 +0900 16 + @@ -474,6 +474,7 @@ 17 + set(armv7_SOURCES ${arm_SOURCES}) 18 + set(armv7s_SOURCES ${arm_SOURCES}) 19 + set(armv7k_SOURCES ${arm_SOURCES}) 20 + +set(armv7l_SOURCES ${arm_SOURCES}) 21 + set(arm64_SOURCES ${aarch64_SOURCES}) 22 + 23 + # macho_embedded archs 24 + @@ -595,7 +596,7 @@ 25 + foreach (arch ${BUILTIN_SUPPORTED_ARCH}) 26 + if (CAN_TARGET_${arch}) 27 + # For ARM archs, exclude any VFP builtins if VFP is not supported 28 + - if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$") 29 + + if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7l|armv7m|armv7em)$") 30 + string(REPLACE ";" " " _TARGET_${arch}_CFLAGS "${TARGET_${arch}_CFLAGS}") 31 + check_compile_definition(__VFP_FP__ "${CMAKE_C_FLAGS} ${_TARGET_${arch}_CFLAGS}" COMPILER_RT_HAS_${arch}_VFP) 32 + if(NOT COMPILER_RT_HAS_${arch}_VFP)
+33
pkgs/development/compilers/llvm/12/compiler-rt-codesign.patch
··· 1 + From 3dec5f3475a26aeb4678627795c4b67c6b7b4785 Mon Sep 17 00:00:00 2001 2 + From: Will Dietz <w@wdtz.org> 3 + Date: Tue, 19 Sep 2017 13:13:06 -0500 4 + Subject: [PATCH] remove codesign use on Apple, disable ios sim testing that 5 + needs it 6 + 7 + --- 8 + cmake/Modules/AddCompilerRT.cmake | 8 ------ 9 + test/asan/CMakeLists.txt | 52 --------------------------------------- 10 + test/tsan/CMakeLists.txt | 47 ----------------------------------- 11 + 3 files changed, 107 deletions(-) 12 + 13 + diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake 14 + index bc5fb9ff7..b64eb4246 100644 15 + --- a/cmake/Modules/AddCompilerRT.cmake 16 + +++ b/cmake/Modules/AddCompilerRT.cmake 17 + @@ -210,14 +210,6 @@ function(add_compiler_rt_runtime name type) 18 + set_target_properties(${libname} PROPERTIES IMPORT_PREFIX "") 19 + set_target_properties(${libname} PROPERTIES IMPORT_SUFFIX ".lib") 20 + endif() 21 + - if(APPLE) 22 + - # Ad-hoc sign the dylibs 23 + - add_custom_command(TARGET ${libname} 24 + - POST_BUILD 25 + - COMMAND codesign --sign - $<TARGET_FILE:${libname}> 26 + - WORKING_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR} 27 + - ) 28 + - endif() 29 + endif() 30 + install(TARGETS ${libname} 31 + ARCHIVE DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR} 32 + 2.14.1 33 +
+90
pkgs/development/compilers/llvm/12/compiler-rt.nix
··· 1 + { lib, stdenv, version, fetch, cmake, python3, llvm, libcxxabi }: 2 + 3 + let 4 + 5 + useLLVM = stdenv.hostPlatform.useLLVM or false; 6 + bareMetal = stdenv.hostPlatform.parsed.kernel.name == "none"; 7 + inherit (stdenv.hostPlatform) isMusl; 8 + 9 + in 10 + 11 + stdenv.mkDerivation rec { 12 + pname = "compiler-rt"; 13 + inherit version; 14 + src = fetch pname "1n4jf0clwj3q0vfc7xjl0k4dqj69fvgsmib8qdqh45imgamnypvb"; 15 + 16 + nativeBuildInputs = [ cmake python3 llvm ]; 17 + buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi; 18 + 19 + NIX_CFLAGS_COMPILE = [ 20 + "-DSCUDO_DEFAULT_OPTIONS=DeleteSizeMismatch=0:DeallocationTypeMismatch=0" 21 + ]; 22 + 23 + cmakeFlags = [ 24 + "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON" 25 + "-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}" 26 + "-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}" 27 + ] ++ lib.optionals (stdenv.isDarwin) [ 28 + "-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON" 29 + "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.parsed.cpu.name}" 30 + ] ++ lib.optionals (useLLVM || bareMetal || isMusl) [ 31 + "-DCOMPILER_RT_BUILD_SANITIZERS=OFF" 32 + "-DCOMPILER_RT_BUILD_XRAY=OFF" 33 + "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF" 34 + "-DCOMPILER_RT_BUILD_PROFILE=OFF" 35 + ] ++ lib.optionals (useLLVM || bareMetal) [ 36 + "-DCMAKE_C_COMPILER_WORKS=ON" 37 + "-DCMAKE_CXX_COMPILER_WORKS=ON" 38 + "-DCOMPILER_RT_BAREMETAL_BUILD=ON" 39 + "-DCMAKE_SIZEOF_VOID_P=${toString (stdenv.hostPlatform.parsed.cpu.bits / 8)}" 40 + ] ++ lib.optionals (useLLVM) [ 41 + "-DCOMPILER_RT_BUILD_BUILTINS=ON" 42 + "-DCMAKE_C_FLAGS=-nodefaultlibs" 43 + #https://stackoverflow.com/questions/53633705/cmake-the-c-compiler-is-not-able-to-compile-a-simple-test-program 44 + "-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY" 45 + ] ++ lib.optionals (bareMetal) [ 46 + "-DCOMPILER_RT_OS_DIR=baremetal" 47 + ]; 48 + 49 + outputs = [ "out" "dev" ]; 50 + 51 + patches = [ 52 + ./compiler-rt-codesign.patch # Revert compiler-rt commit that makes codesign mandatory 53 + ./compiler-rt-X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config 54 + ]# ++ lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch 55 + ++ lib.optional stdenv.hostPlatform.isAarch32 ./compiler-rt-armv7l.patch; 56 + 57 + 58 + # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks 59 + # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra 60 + # can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd 61 + # get no binary cache for the entire platform. If you really find yourself wanting the TSAN, make this controllable by 62 + # a flag and turn the flag off during the stdenv build. 63 + postPatch = lib.optionalString (!stdenv.isDarwin) '' 64 + substituteInPlace cmake/builtin-config-ix.cmake \ 65 + --replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)' 66 + '' + lib.optionalString stdenv.isDarwin '' 67 + substituteInPlace cmake/builtin-config-ix.cmake \ 68 + --replace 'set(ARM64 arm64 arm64e)' 'set(ARM64)' 69 + substituteInPlace cmake/config-ix.cmake \ 70 + --replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)' 71 + '' + lib.optionalString (useLLVM) '' 72 + substituteInPlace lib/builtins/int_util.c \ 73 + --replace "#include <stdlib.h>" "" 74 + substituteInPlace lib/builtins/clear_cache.c \ 75 + --replace "#include <assert.h>" "" 76 + substituteInPlace lib/builtins/cpu_model.c \ 77 + --replace "#include <assert.h>" "" 78 + ''; 79 + 80 + # Hack around weird upsream RPATH bug 81 + postInstall = lib.optionalString (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isWasm) '' 82 + ln -s "$out/lib"/*/* "$out/lib" 83 + '' + lib.optionalString (useLLVM) '' 84 + ln -s $out/lib/*/clang_rt.crtbegin-*.o $out/lib/crtbegin.o 85 + ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtend.o 86 + ln -s $out/lib/*/clang_rt.crtbegin_shared-*.o $out/lib/crtbeginS.o 87 + ln -s $out/lib/*/clang_rt.crtend_shared-*.o $out/lib/crtendS.o 88 + ''; 89 + 90 + }
+204
pkgs/development/compilers/llvm/12/default.nix
··· 1 + { lowPrio, newScope, pkgs, lib, stdenv, cmake, gccForLibs 2 + , libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith 3 + , buildPackages 4 + , buildLlvmTools # tools, but from the previous stage, for cross 5 + , targetLlvmLibraries # libraries, but from the next stage, for cross 6 + , darwin 7 + }: 8 + 9 + let 10 + release_version = "12.0.0"; 11 + candidate = "rc3"; # empty or "rcN" 12 + dash-candidate = lib.optionalString (candidate != "") "-${candidate}"; 13 + version = "${release_version}${dash-candidate}"; # differentiating these (variables) is important for RCs 14 + targetConfig = stdenv.targetPlatform.config; 15 + 16 + fetch = name: sha256: fetchurl { 17 + url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/${name}-${release_version}${candidate}.src.tar.xz"; 18 + inherit sha256; 19 + }; 20 + 21 + clang-tools-extra_src = fetch "clang-tools-extra" "1p6ln69iciwwpng226mfvxf3vylfvbz73y0a4y4v2rg7pn7hk671"; 22 + 23 + tools = lib.makeExtensible (tools: let 24 + callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; }); 25 + mkExtraBuildCommands = cc: '' 26 + rsrc="$out/resource-root" 27 + mkdir "$rsrc" 28 + ln -s "${cc}/lib/clang/${release_version}/include" "$rsrc" 29 + ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib" 30 + ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share" 31 + echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags 32 + ''; 33 + in { 34 + 35 + llvm = callPackage ./llvm.nix { }; 36 + 37 + clang-unwrapped = callPackage ./clang { 38 + inherit (tools) lld; 39 + inherit clang-tools-extra_src; 40 + }; 41 + 42 + # disabled until recommonmark supports sphinx 3 43 + #Llvm-manpages = lowPrio (tools.llvm.override { 44 + # enableManpages = true; 45 + # python3 = pkgs.python3; # don't use python-boot 46 + #}); 47 + 48 + clang-manpages = lowPrio (tools.clang-unwrapped.override { 49 + enableManpages = true; 50 + python3 = pkgs.python3; # don't use python-boot 51 + }); 52 + 53 + # disabled until recommonmark supports sphinx 3 54 + # lldb-manpages = lowPrio (tools.lldb.override { 55 + # enableManpages = true; 56 + # python3 = pkgs.python3; # don't use python-boot 57 + # }); 58 + 59 + libclang = tools.clang-unwrapped.lib; 60 + 61 + clang = if stdenv.cc.isGNU then tools.libstdcxxClang else tools.libcxxClang; 62 + 63 + libstdcxxClang = wrapCCWith rec { 64 + cc = tools.clang-unwrapped; 65 + # libstdcxx is taken from gcc in an ad-hoc way in cc-wrapper. 66 + libcxx = null; 67 + extraPackages = [ 68 + targetLlvmLibraries.compiler-rt 69 + ]; 70 + extraBuildCommands = mkExtraBuildCommands cc; 71 + }; 72 + 73 + libcxxClang = wrapCCWith rec { 74 + cc = tools.clang-unwrapped; 75 + libcxx = targetLlvmLibraries.libcxx; 76 + extraPackages = [ 77 + targetLlvmLibraries.libcxxabi 78 + targetLlvmLibraries.compiler-rt 79 + ]; 80 + extraBuildCommands = mkExtraBuildCommands cc; 81 + }; 82 + 83 + lld = callPackage ./lld.nix { 84 + libunwind = libraries.libunwind; 85 + }; 86 + 87 + lldb = callPackage ./lldb.nix { 88 + inherit (darwin) libobjc bootstrap_cmds; 89 + inherit (darwin.apple_sdk.libs) xpc; 90 + inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa; 91 + }; 92 + 93 + # Below, is the LLVM bootstrapping logic. It handles building a 94 + # fully LLVM toolchain from scratch. No GCC toolchain should be 95 + # pulled in. As a consequence, it is very quick to build different 96 + # targets provided by LLVM and we can also build for what GCC 97 + # doesn’t support like LLVM. Probably we should move to some other 98 + # file. 99 + 100 + bintools = callPackage ./bintools.nix {}; 101 + 102 + lldClang = wrapCCWith rec { 103 + cc = tools.clang-unwrapped; 104 + libcxx = targetLlvmLibraries.libcxx; 105 + bintools = wrapBintoolsWith { 106 + inherit (tools) bintools; 107 + }; 108 + extraPackages = [ 109 + targetLlvmLibraries.libcxxabi 110 + targetLlvmLibraries.compiler-rt 111 + ] ++ lib.optionals (!stdenv.targetPlatform.isWasm) [ 112 + targetLlvmLibraries.libunwind 113 + ]; 114 + extraBuildCommands = '' 115 + echo "-rtlib=compiler-rt -Wno-unused-command-line-argument" >> $out/nix-support/cc-cflags 116 + echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags 117 + '' + lib.optionalString (!stdenv.targetPlatform.isWasm) '' 118 + echo "--unwindlib=libunwind" >> $out/nix-support/cc-cflags 119 + '' + lib.optionalString stdenv.targetPlatform.isWasm '' 120 + echo "-fno-exceptions" >> $out/nix-support/cc-cflags 121 + '' + mkExtraBuildCommands cc; 122 + }; 123 + 124 + lldClangNoLibcxx = wrapCCWith rec { 125 + cc = tools.clang-unwrapped; 126 + libcxx = null; 127 + bintools = wrapBintoolsWith { 128 + inherit (tools) bintools; 129 + }; 130 + extraPackages = [ 131 + targetLlvmLibraries.compiler-rt 132 + ]; 133 + extraBuildCommands = '' 134 + echo "-rtlib=compiler-rt" >> $out/nix-support/cc-cflags 135 + echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags 136 + echo "-nostdlib++" >> $out/nix-support/cc-cflags 137 + '' + mkExtraBuildCommands cc; 138 + }; 139 + 140 + lldClangNoLibc = wrapCCWith rec { 141 + cc = tools.clang-unwrapped; 142 + libcxx = null; 143 + bintools = wrapBintoolsWith { 144 + inherit (tools) bintools; 145 + libc = null; 146 + }; 147 + extraPackages = [ 148 + targetLlvmLibraries.compiler-rt 149 + ]; 150 + extraBuildCommands = '' 151 + echo "-rtlib=compiler-rt" >> $out/nix-support/cc-cflags 152 + echo "-B${targetLlvmLibraries.compiler-rt}/lib" >> $out/nix-support/cc-cflags 153 + '' + mkExtraBuildCommands cc; 154 + }; 155 + 156 + lldClangNoCompilerRt = wrapCCWith { 157 + cc = tools.clang-unwrapped; 158 + libcxx = null; 159 + bintools = wrapBintoolsWith { 160 + inherit (tools) bintools; 161 + libc = null; 162 + }; 163 + extraPackages = [ ]; 164 + extraBuildCommands = '' 165 + echo "-nostartfiles" >> $out/nix-support/cc-cflags 166 + ''; 167 + }; 168 + 169 + }); 170 + 171 + libraries = lib.makeExtensible (libraries: let 172 + callPackage = newScope (libraries // buildLlvmTools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; }); 173 + in { 174 + 175 + compiler-rt = callPackage ./compiler-rt.nix ({} // 176 + (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) { 177 + stdenv = overrideCC stdenv buildLlvmTools.lldClangNoCompilerRt; 178 + })); 179 + 180 + stdenv = overrideCC stdenv buildLlvmTools.clang; 181 + 182 + libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang; 183 + 184 + libcxx = callPackage ./libc++ ({} // 185 + (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) { 186 + stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx; 187 + })); 188 + 189 + libcxxabi = callPackage ./libc++abi.nix ({} // 190 + (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) { 191 + stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx; 192 + libunwind = libraries.libunwind; 193 + })); 194 + 195 + openmp = callPackage ./openmp.nix {}; 196 + 197 + libunwind = callPackage ./libunwind.nix ({} // 198 + (lib.optionalAttrs (stdenv.hostPlatform.useLLVM or false) { 199 + stdenv = overrideCC stdenv buildLlvmTools.lldClangNoLibcxx; 200 + })); 201 + 202 + }); 203 + 204 + in { inherit tools libraries; } // libraries // tools
+56
pkgs/development/compilers/llvm/12/libc++/default.nix
··· 1 + { lib, stdenv, fetch, fetchpatch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version 2 + , enableShared ? !stdenv.hostPlatform.isStatic 3 + }: 4 + 5 + stdenv.mkDerivation { 6 + pname = "libc++"; 7 + inherit version; 8 + 9 + src = fetch "libcxx" "1114yvbipwdk1qk1xrb7s05hf7cycyknpf4ph0wbqpjzzzxk0hgk"; 10 + 11 + postUnpack = '' 12 + unpackFile ${libcxxabi.src} 13 + mv libcxxabi-* libcxxabi 14 + unpackFile ${llvm.src} 15 + mv llvm-* llvm 16 + ''; 17 + 18 + patches = [ 19 + (fetchpatch { 20 + # Backported from LLVM 12, avoids clashes with commonly used "block.h" header. 21 + url = "https://github.com/llvm/llvm-project/commit/19bc9ea480b60b607a3e303f20c7a3a2ea553369.patch"; 22 + sha256 = "sha256-aWa66ogmPkG0xHzSfcpD0qZyZQcNKwLV44js4eiun78="; 23 + stripLen = 1; 24 + }) 25 + ] ++ lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch; 26 + 27 + preConfigure = lib.optionalString stdenv.hostPlatform.isMusl '' 28 + patchShebangs utils/cat_files.py 29 + ''; 30 + 31 + nativeBuildInputs = [ cmake python3 ] 32 + ++ lib.optional stdenv.isDarwin fixDarwinDylibNames; 33 + 34 + buildInputs = [ libcxxabi ]; 35 + 36 + cmakeFlags = [ 37 + "-DLIBCXX_CXX_ABI=libcxxabi" 38 + ] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1" 39 + ++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON" 40 + ++ lib.optional stdenv.hostPlatform.isWasm [ 41 + "-DLIBCXX_ENABLE_THREADS=OFF" 42 + "-DLIBCXX_ENABLE_FILESYSTEM=OFF" 43 + "-DLIBCXX_ENABLE_EXCEPTIONS=OFF" 44 + ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF"; 45 + 46 + passthru = { 47 + isLLVM = true; 48 + }; 49 + 50 + meta = { 51 + homepage = "https://libcxx.llvm.org/"; 52 + description = "A new implementation of the C++ standard library, targeting C++11"; 53 + license = with lib.licenses; [ ncsa mit ]; 54 + platforms = lib.platforms.all; 55 + }; 56 + }
+69
pkgs/development/compilers/llvm/12/libc++abi.nix
··· 1 + { lib, stdenv, cmake, fetch, libcxx, libunwind, llvm, version 2 + , enableShared ? !stdenv.hostPlatform.isStatic 3 + }: 4 + 5 + stdenv.mkDerivation { 6 + pname = "libc++abi"; 7 + inherit version; 8 + 9 + src = fetch "libcxxabi" "1vdc6zld5rlbrbpxf0fxs0m6k1cabpi82ksiwgj1pmhx8l140n0q"; 10 + 11 + nativeBuildInputs = [ cmake ]; 12 + buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind; 13 + 14 + cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [ 15 + "-DLLVM_ENABLE_LIBCXX=ON" 16 + "-DLIBCXXABI_USE_LLVM_UNWINDER=ON" 17 + ] ++ lib.optionals stdenv.hostPlatform.isWasm [ 18 + "-DLIBCXXABI_ENABLE_THREADS=OFF" 19 + "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF" 20 + ] ++ lib.optionals (!enableShared) [ 21 + "-DLIBCXXABI_ENABLE_SHARED=OFF" 22 + ]; 23 + 24 + patches = [ ./libcxxabi-no-threads.patch ]; 25 + 26 + postUnpack = '' 27 + unpackFile ${libcxx.src} 28 + mv libcxx-* libcxx 29 + unpackFile ${llvm.src} 30 + mv llvm-* llvm 31 + '' + lib.optionalString stdenv.isDarwin '' 32 + export TRIPLE=x86_64-apple-darwin 33 + '' + lib.optionalString stdenv.hostPlatform.isMusl '' 34 + patch -p1 -d libcxx -i ${../libcxx-0001-musl-hacks.patch} 35 + '' + lib.optionalString stdenv.hostPlatform.isWasm '' 36 + patch -p1 -d llvm -i ${./libcxxabi-wasm.patch} 37 + ''; 38 + 39 + installPhase = if stdenv.isDarwin 40 + then '' 41 + for file in lib/*.dylib; do 42 + # this should be done in CMake, but having trouble figuring out 43 + # the magic combination of necessary CMake variables 44 + # if you fancy a try, take a look at 45 + # https://gitlab.kitware.com/cmake/community/-/wikis/doc/cmake/RPATH-handling 46 + install_name_tool -id $out/$file $file 47 + done 48 + make install 49 + install -d 755 $out/include 50 + install -m 644 ../include/*.h $out/include 51 + '' 52 + else '' 53 + install -d -m 755 $out/include $out/lib 54 + install -m 644 lib/libc++abi.a $out/lib 55 + install -m 644 ../include/cxxabi.h $out/include 56 + '' + lib.optionalString enableShared '' 57 + install -m 644 lib/libc++abi.so.1.0 $out/lib 58 + ln -s libc++abi.so.1.0 $out/lib/libc++abi.so 59 + ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1 60 + ''; 61 + 62 + meta = { 63 + homepage = "https://libcxxabi.llvm.org/"; 64 + description = "A new implementation of low level support for a standard C++ library"; 65 + license = with lib.licenses; [ ncsa mit ]; 66 + maintainers = with lib.maintainers; [ vlstill ]; 67 + platforms = lib.platforms.all; 68 + }; 69 + }
+12
pkgs/development/compilers/llvm/12/libcxxabi-no-threads.patch
··· 1 + diff --git a/CMakeLists.txt b/CMakeLists.txt 2 + index 4138acf..41b4763 100644 3 + --- a/CMakeLists.txt 4 + +++ b/CMakeLists.txt 5 + @@ -362,6 +362,7 @@ if (NOT LIBCXXABI_ENABLE_THREADS) 6 + " is also set to ON.") 7 + endif() 8 + add_definitions(-D_LIBCXXABI_HAS_NO_THREADS) 9 + + add_definitions(-D_LIBCPP_HAS_NO_THREADS) 10 + endif() 11 + 12 + if (LIBCXXABI_HAS_EXTERNAL_THREAD_API)
+16
pkgs/development/compilers/llvm/12/libcxxabi-wasm.patch
··· 1 + diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake 2 + index 15497d405e0..33f7f18193a 100644 3 + --- a/cmake/modules/HandleLLVMOptions.cmake 4 + +++ b/cmake/modules/HandleLLVMOptions.cmake 5 + @@ -127,7 +127,10 @@ else(WIN32) 6 + set(LLVM_HAVE_LINK_VERSION_SCRIPT 1) 7 + endif() 8 + else(FUCHSIA OR UNIX) 9 + - MESSAGE(SEND_ERROR "Unable to determine platform") 10 + + if(${CMAKE_SYSTEM_NAME} MATCHES "Wasi") 11 + + else() 12 + + MESSAGE(SEND_ERROR "Unable to determine platform") 13 + + endif() 14 + endif(FUCHSIA OR UNIX) 15 + endif(WIN32) 16 +
+14
pkgs/development/compilers/llvm/12/libunwind.nix
··· 1 + { lib, stdenv, version, fetch, cmake, fetchpatch 2 + , enableShared ? !stdenv.hostPlatform.isStatic 3 + }: 4 + 5 + stdenv.mkDerivation rec { 6 + pname = "libunwind"; 7 + inherit version; 8 + 9 + src = fetch pname "18n3k2kf6pyvzspnz1i22czbgi14kmch76fxml8kvhky7mw7v1yz"; 10 + 11 + nativeBuildInputs = [ cmake ]; 12 + 13 + cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF"; 14 + }
+39
pkgs/development/compilers/llvm/12/lld.nix
··· 1 + { lib, stdenv 2 + , fetch 3 + , libunwind 4 + , cmake 5 + , libxml2 6 + , llvm 7 + , version 8 + }: 9 + 10 + stdenv.mkDerivation rec { 11 + pname = "lld"; 12 + inherit version; 13 + 14 + src = fetch pname "097pxd7hgipr538vi48q8fi5svbd03bx3d078a06wigmvb7kzvw1"; 15 + 16 + nativeBuildInputs = [ cmake ]; 17 + buildInputs = [ llvm libxml2 ]; 18 + 19 + postPatch = '' 20 + substituteInPlace MachO/CMakeLists.txt --replace \ 21 + '(''${LLVM_MAIN_SRC_DIR}/' '(' 22 + mkdir -p libunwind/include 23 + tar -xf "${libunwind.src}" --wildcards -C libunwind/include --strip-components=2 "libunwind-*/include/" 24 + ''; 25 + 26 + outputs = [ "out" "dev" ]; 27 + 28 + postInstall = '' 29 + moveToOutput include "$dev" 30 + moveToOutput lib "$dev" 31 + ''; 32 + 33 + meta = { 34 + description = "The LLVM Linker"; 35 + homepage = "https://lld.llvm.org/"; 36 + license = lib.licenses.ncsa; 37 + platforms = lib.platforms.all; 38 + }; 39 + }
+31
pkgs/development/compilers/llvm/12/lldb-procfs.patch
··· 1 + --- a/source/Plugins/Process/Linux/Procfs.h 2 + +++ b/source/Plugins/Process/Linux/Procfs.h 3 + @@ -11,21 +11,12 @@ 4 + // sys/procfs.h on Android/Linux for all supported architectures. 5 + 6 + #include <sys/ptrace.h> 7 + +#include <asm/ptrace.h> 8 + 9 + -#ifdef __ANDROID__ 10 + -#if defined(__arm64__) || defined(__aarch64__) 11 + -typedef unsigned long elf_greg_t; 12 + -typedef elf_greg_t 13 + - elf_gregset_t[(sizeof(struct user_pt_regs) / sizeof(elf_greg_t))]; 14 + -typedef struct user_fpsimd_state elf_fpregset_t; 15 + -#ifndef NT_FPREGSET 16 + -#define NT_FPREGSET NT_PRFPREG 17 + -#endif // NT_FPREGSET 18 + -#elif defined(__mips__) 19 + -#ifndef NT_FPREGSET 20 + -#define NT_FPREGSET NT_PRFPREG 21 + -#endif // NT_FPREGSET 22 + -#endif 23 + -#else // __ANDROID__ 24 + +#if !defined(__GLIBC__) && defined(__powerpc__) 25 + +#define pt_regs musl_pt_regs 26 + +#include <sys/procfs.h> 27 + +#undef pt_regs 28 + +#else 29 + #include <sys/procfs.h> 30 + -#endif // __ANDROID__ 31 + +#endif
+103
pkgs/development/compilers/llvm/12/lldb.nix
··· 1 + { lib, stdenv 2 + , fetch 3 + , cmake 4 + , zlib 5 + , ncurses 6 + , swig 7 + , which 8 + , libedit 9 + , libxml2 10 + , llvm 11 + , clang-unwrapped 12 + , python3 13 + , version 14 + , libobjc 15 + , xpc 16 + , Foundation 17 + , bootstrap_cmds 18 + , Carbon 19 + , Cocoa 20 + , lit 21 + , enableManpages ? false 22 + }: 23 + 24 + stdenv.mkDerivation (rec { 25 + pname = "lldb"; 26 + inherit version; 27 + 28 + src = fetch pname "077fli9l0fg4kpa5l9vrj810s13ajs15d745lg4l8kmjkbw7p3yh"; 29 + 30 + patches = [ ./lldb-procfs.patch ]; 31 + 32 + nativeBuildInputs = [ cmake python3 which swig lit ] 33 + ++ lib.optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ]; 34 + 35 + buildInputs = [ 36 + ncurses 37 + zlib 38 + libedit 39 + libxml2 40 + llvm 41 + ] 42 + ++ lib.optionals stdenv.isDarwin [ 43 + libobjc 44 + xpc 45 + Foundation 46 + bootstrap_cmds 47 + Carbon 48 + Cocoa 49 + ]; 50 + 51 + hardeningDisable = [ "format" ]; 52 + 53 + cmakeFlags = [ 54 + "-DLLVM_ENABLE_RTTI=OFF" 55 + "-DClang_DIR=${clang-unwrapped}/lib/cmake" 56 + "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit" 57 + ] ++ lib.optionals stdenv.isDarwin [ 58 + "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON" 59 + ] ++ lib.optionals (!stdenv.isDarwin) [ 60 + "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic 61 + ] ++ lib.optionals enableManpages [ 62 + "-DLLVM_ENABLE_SPHINX=ON" 63 + "-DSPHINX_OUTPUT_MAN=ON" 64 + "-DSPHINX_OUTPUT_HTML=OFF" 65 + ]; 66 + 67 + postInstall = '' 68 + # Editor support 69 + # vscode: 70 + install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json 71 + mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin 72 + ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin 73 + ''; 74 + 75 + meta = with lib; { 76 + description = "A next-generation high-performance debugger"; 77 + homepage = "https://lldb.llvm.org"; 78 + license = licenses.ncsa; 79 + platforms = platforms.all; 80 + }; 81 + } // lib.optionalAttrs enableManpages { 82 + pname = "lldb-manpages"; 83 + 84 + buildPhase = '' 85 + make docs-lldb-man 86 + ''; 87 + 88 + propagatedBuildInputs = []; 89 + # manually install lldb man page 90 + installPhase = '' 91 + mkdir -p $out/share/man/man1 92 + install docs/man/lldb.1 -t $out/share/man/man1/ 93 + ''; 94 + 95 + postPatch = null; 96 + postInstall = null; 97 + 98 + outputs = [ "out" ]; 99 + 100 + doCheck = false; 101 + 102 + meta.description = "man pages for LLDB ${version}"; 103 + })
+26
pkgs/development/compilers/llvm/12/llvm-outputs.patch
··· 1 + diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp 2 + index 94d426b..37f7794 100644 3 + --- a/tools/llvm-config/llvm-config.cpp 4 + +++ b/tools/llvm-config/llvm-config.cpp 5 + @@ -333,6 +333,21 @@ int main(int argc, char **argv) { 6 + ActiveIncludeOption = "-I" + ActiveIncludeDir; 7 + } 8 + 9 + + /// Nix-specific multiple-output handling: override ActiveLibDir if --link-shared 10 + + if (!IsInDevelopmentTree) { 11 + + bool WantShared = true; 12 + + for (int i = 1; i < argc; ++i) { 13 + + StringRef Arg = argv[i]; 14 + + if (Arg == "--link-shared") 15 + + WantShared = true; 16 + + else if (Arg == "--link-static") 17 + + WantShared = false; // the last one wins 18 + + } 19 + + 20 + + if (WantShared) 21 + + ActiveLibDir = std::string("@lib@") + "/lib" + LLVM_LIBDIR_SUFFIX; 22 + + } 23 + + 24 + /// We only use `shared library` mode in cases where the static library form 25 + /// of the components provided are not available; note however that this is 26 + /// skipped if we're run from within the build dir. However, once installed,
+189
pkgs/development/compilers/llvm/12/llvm.nix
··· 1 + { lib, stdenv 2 + , fetch 3 + , cmake 4 + , python3 5 + , libffi 6 + , libbfd 7 + , libpfm 8 + , libxml2 9 + , ncurses 10 + , version 11 + , release_version 12 + , zlib 13 + , buildPackages 14 + , debugVersion ? false 15 + , enableManpages ? false 16 + , enableSharedLibraries ? true 17 + , enablePFM ? !(stdenv.isDarwin 18 + || stdenv.isAarch64 # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245 19 + || stdenv.isAarch32 # broken for the armv7l builder 20 + ) 21 + , enablePolly ? false 22 + }: 23 + 24 + let 25 + inherit (lib) optional optionals optionalString; 26 + 27 + # Used when creating a version-suffixed symlink of libLLVM.dylib 28 + shortVersion = with lib; 29 + concatStringsSep "." (take 1 (splitString "." release_version)); 30 + 31 + in stdenv.mkDerivation (rec { 32 + pname = "llvm"; 33 + inherit version; 34 + 35 + src = fetch pname "1lpdkndjb8cxpcyjv9glqp58687j8y8cvd7r72pw6sbqkkzq86g5"; 36 + polly_src = fetch "polly" "002a8q3lgspvqdb8fi09cl11x438x6a2d2sb026jargrx92i5vas"; 37 + 38 + unpackPhase = '' 39 + unpackFile $src 40 + mv llvm-${release_version}* llvm 41 + sourceRoot=$PWD/llvm 42 + '' + optionalString enablePolly '' 43 + unpackFile $polly_src 44 + mv polly-* $sourceRoot/tools/polly 45 + ''; 46 + 47 + outputs = [ "out" "python" ] 48 + ++ optional enableSharedLibraries "lib"; 49 + 50 + nativeBuildInputs = [ cmake python3 ] 51 + ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ]; 52 + 53 + buildInputs = [ libxml2 libffi ] 54 + ++ optional enablePFM libpfm; # exegesis 55 + 56 + propagatedBuildInputs = [ ncurses zlib ]; 57 + 58 + postPatch = optionalString stdenv.isDarwin '' 59 + substituteInPlace cmake/modules/AddLLVM.cmake \ 60 + --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \ 61 + --replace 'set(_install_rpath "@loader_path/../lib''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' "" 62 + '' 63 + # Patch llvm-config to return correct library path based on --link-{shared,static}. 64 + + optionalString (enableSharedLibraries) '' 65 + substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib 66 + patch -p1 < ./llvm-outputs.patch 67 + '' + '' 68 + # FileSystem permissions tests fail with various special bits 69 + substituteInPlace unittests/Support/CMakeLists.txt \ 70 + --replace "Path.cpp" "" 71 + rm unittests/Support/Path.cpp 72 + substituteInPlace unittests/IR/CMakeLists.txt \ 73 + --replace "PassBuilderCallbacksTest.cpp" "" 74 + rm unittests/IR/PassBuilderCallbacksTest.cpp 75 + '' + optionalString stdenv.hostPlatform.isMusl '' 76 + patch -p1 -i ${../TLI-musl.patch} 77 + substituteInPlace unittests/Support/CMakeLists.txt \ 78 + --replace "add_subdirectory(DynamicLibrary)" "" 79 + rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp 80 + # valgrind unhappy with musl or glibc, but fails w/musl only 81 + rm test/CodeGen/AArch64/wineh4.mir 82 + '' + optionalString stdenv.hostPlatform.isAarch32 '' 83 + # skip failing X86 test cases on 32-bit ARM 84 + rm test/DebugInfo/X86/convert-debugloc.ll 85 + rm test/DebugInfo/X86/convert-inlined.ll 86 + rm test/DebugInfo/X86/convert-linked.ll 87 + rm test/tools/dsymutil/X86/op-convert.test 88 + '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") '' 89 + # Seems to require certain floating point hardware (NEON?) 90 + rm test/ExecutionEngine/frem.ll 91 + '' + '' 92 + patchShebangs test/BugPoint/compile-custom.ll.py 93 + ''; 94 + 95 + # hacky fix: created binaries need to be run before installation 96 + preBuild = '' 97 + mkdir -p $out/ 98 + ln -sv $PWD/lib $out 99 + ''; 100 + 101 + # E.g. mesa.drivers use the build-id as a cache key (see #93946): 102 + LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1"; 103 + 104 + cmakeFlags = with stdenv; [ 105 + "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" 106 + "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc 107 + "-DLLVM_BUILD_TESTS=ON" 108 + "-DLLVM_ENABLE_FFI=ON" 109 + "-DLLVM_ENABLE_RTTI=ON" 110 + "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}" 111 + "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}" 112 + "-DLLVM_ENABLE_DUMP=ON" 113 + ] ++ optionals enableSharedLibraries [ 114 + "-DLLVM_LINK_LLVM_DYLIB=ON" 115 + ] ++ optionals enableManpages [ 116 + "-DLLVM_BUILD_DOCS=ON" 117 + "-DLLVM_ENABLE_SPHINX=ON" 118 + "-DSPHINX_OUTPUT_MAN=ON" 119 + "-DSPHINX_OUTPUT_HTML=OFF" 120 + "-DSPHINX_WARNINGS_AS_ERRORS=OFF" 121 + ] ++ optionals (!isDarwin) [ 122 + "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include" 123 + ] ++ optionals isDarwin [ 124 + "-DLLVM_ENABLE_LIBCXX=ON" 125 + "-DCAN_TARGET_i386=false" 126 + ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ 127 + "-DCMAKE_CROSSCOMPILING=True" 128 + "-DLLVM_TABLEGEN=${buildPackages.llvm_12}/bin/llvm-tblgen" 129 + ]; 130 + 131 + postBuild = '' 132 + rm -R $out 133 + ''; 134 + 135 + preCheck = '' 136 + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib 137 + ''; 138 + 139 + postInstall = '' 140 + mkdir -p $python/share 141 + mv $out/share/opt-viewer $python/share/opt-viewer 142 + '' 143 + + optionalString enableSharedLibraries '' 144 + moveToOutput "lib/libLLVM-*" "$lib" 145 + moveToOutput "lib/libLLVM${stdenv.hostPlatform.extensions.sharedLibrary}" "$lib" 146 + '' 147 + + optionalString (enableSharedLibraries && (!stdenv.isDarwin)) '' 148 + substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \ 149 + --replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-" 150 + '' 151 + + optionalString (stdenv.isDarwin && enableSharedLibraries) '' 152 + substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \ 153 + --replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib" 154 + ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib 155 + ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib 156 + ''; 157 + 158 + doCheck = stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl); 159 + 160 + checkTarget = "check-all"; 161 + 162 + requiredSystemFeatures = [ "big-parallel" ]; 163 + meta = { 164 + description = "Collection of modular and reusable compiler and toolchain technologies"; 165 + homepage = "https://llvm.org/"; 166 + license = lib.licenses.ncsa; 167 + maintainers = with lib.maintainers; [ lovek323 raskin dtzWill primeos ]; 168 + platforms = lib.platforms.all; 169 + }; 170 + } // lib.optionalAttrs enableManpages { 171 + pname = "llvm-manpages"; 172 + 173 + buildPhase = '' 174 + make docs-llvm-man 175 + ''; 176 + 177 + installPhase = '' 178 + make -C docs install 179 + ''; 180 + 181 + postPatch = null; 182 + postInstall = null; 183 + 184 + outputs = [ "out" ]; 185 + 186 + doCheck = false; 187 + 188 + meta.description = "man pages for LLVM ${version}"; 189 + })
+35
pkgs/development/compilers/llvm/12/openmp.nix
··· 1 + { lib 2 + , stdenv 3 + , fetch 4 + , fetchpatch 5 + , cmake 6 + , llvm 7 + , perl 8 + , version 9 + }: 10 + 11 + stdenv.mkDerivation rec { 12 + pname = "openmp"; 13 + inherit version; 14 + 15 + src = fetch pname "0kw1g7ndvwi0g7lx5d55mp81h9vffxz820l9r2wjdvvfs3dsyq05"; 16 + 17 + patches = [ 18 + # Fix compilation on aarch64-darwin, remove after the next release. 19 + (fetchpatch { 20 + url = "https://github.com/llvm/llvm-project/commit/7b5254223acbf2ef9cd278070c5a84ab278d7e5f.patch"; 21 + sha256 = "sha256-A+9/IVIoazu68FK5H5CiXcOEYe1Hpp4xTx2mIw7m8Es="; 22 + stripLen = 1; 23 + }) 24 + ]; 25 + 26 + nativeBuildInputs = [ cmake perl ]; 27 + buildInputs = [ llvm ]; 28 + 29 + meta = { 30 + description = "Components required to build an executable OpenMP program"; 31 + homepage = "https://openmp.llvm.org/"; 32 + license = lib.licenses.mit; 33 + platforms = lib.platforms.all; 34 + }; 35 + }
+412
pkgs/development/compilers/llvm/12/sanitizers-nongnu.patch
··· 1 + From f7a253f8f85d0f49df6b73996737a3e84ac64236 Mon Sep 17 00:00:00 2001 2 + From: Will Dietz <w@wdtz.org> 3 + Date: Mon, 24 Sep 2018 11:17:25 -0500 4 + Subject: [PATCH] Ported to 7.0, taken from gentoo-musl project. 5 + 6 + ------ 7 + Ported to compiler-rt-sanitizers-5.0.0. Taken from 8 + 9 + https://gist.githubusercontent.com/pwaller/2337f3290f12634cad3e3730cff0a6c1/raw/83c87a8585e2f9662494db5662e5361beb093c26/nongnu.patch 10 + Signed-off-by: Jory A. Pratt <anarchy@gentoo.org> 11 + 12 + Taken from gentoo-musl project, with a few additional minor fixes. 13 + --- 14 + lib/asan/asan_linux.cc | 4 +- 15 + lib/interception/interception_linux.cc | 2 +- 16 + lib/interception/interception_linux.h | 2 +- 17 + lib/msan/msan_linux.cc | 2 +- 18 + lib/sanitizer_common/sanitizer_allocator.cc | 2 +- 19 + .../sanitizer_common_interceptors_ioctl.inc | 4 +- 20 + .../sanitizer_common_syscalls.inc | 2 +- 21 + lib/sanitizer_common/sanitizer_linux.cc | 8 +++- 22 + .../sanitizer_linux_libcdep.cc | 10 ++--- 23 + lib/sanitizer_common/sanitizer_platform.h | 6 +++ 24 + .../sanitizer_platform_interceptors.h | 4 +- 25 + .../sanitizer_platform_limits_posix.cc | 37 +++++++++++-------- 26 + lib/tsan/rtl/tsan_platform_linux.cc | 2 +- 27 + 13 files changed, 51 insertions(+), 34 deletions(-) 28 + 29 + diff --git a/lib/asan/asan_linux.cc b/lib/asan/asan_linux.cc 30 + index 625f32d40..73cf77aca 100644 31 + --- a/lib/asan/asan_linux.cc 32 + +++ b/lib/asan/asan_linux.cc 33 + @@ -46,7 +46,7 @@ 34 + #include <link.h> 35 + #endif 36 + 37 + -#if SANITIZER_ANDROID || SANITIZER_FREEBSD || SANITIZER_SOLARIS 38 + +#if SANITIZER_ANDROID || SANITIZER_FREEBSD || SANITIZER_SOLARIS || SANITIZER_NONGNU 39 + #include <ucontext.h> 40 + extern "C" void* _DYNAMIC; 41 + #elif SANITIZER_NETBSD 42 + @@ -139,7 +139,7 @@ void AsanApplyToGlobals(globals_op_fptr op, const void *needle) { 43 + UNIMPLEMENTED(); 44 + } 45 + 46 + -#if SANITIZER_ANDROID 47 + +#if SANITIZER_ANDROID || SANITIZER_NONGNU 48 + // FIXME: should we do anything for Android? 49 + void AsanCheckDynamicRTPrereqs() {} 50 + void AsanCheckIncompatibleRT() {} 51 + diff --git a/lib/interception/interception_linux.cc b/lib/interception/interception_linux.cc 52 + index 26bfcd8f6..529b234f7 100644 53 + --- a/lib/interception/interception_linux.cc 54 + +++ b/lib/interception/interception_linux.cc 55 + @@ -43,7 +43,7 @@ bool GetRealFunctionAddress(const char *func_name, uptr *func_addr, 56 + } 57 + 58 + // Android and Solaris do not have dlvsym 59 + -#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD 60 + +#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD && !SANITIZER_NONGNU 61 + void *GetFuncAddrVer(const char *func_name, const char *ver) { 62 + return dlvsym(RTLD_NEXT, func_name, ver); 63 + } 64 + diff --git a/lib/interception/interception_linux.h b/lib/interception/interception_linux.h 65 + index 942c25609..24a4d5080 100644 66 + --- a/lib/interception/interception_linux.h 67 + +++ b/lib/interception/interception_linux.h 68 + @@ -36,7 +36,7 @@ void *GetFuncAddrVer(const char *func_name, const char *ver); 69 + (::__interception::uptr) & WRAP(func)) 70 + 71 + // Android, Solaris and OpenBSD do not have dlvsym 72 + -#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD 73 + +#if !SANITIZER_ANDROID && !SANITIZER_SOLARIS && !SANITIZER_OPENBSD && !SANITIZER_NONGNU 74 + #define INTERCEPT_FUNCTION_VER_LINUX_OR_FREEBSD(func, symver) \ 75 + (::__interception::real_##func = (func##_f)( \ 76 + unsigned long)::__interception::GetFuncAddrVer(#func, symver)) 77 + diff --git a/lib/msan/msan_linux.cc b/lib/msan/msan_linux.cc 78 + index 385a650c4..6e30a8ce9 100644 79 + --- a/lib/msan/msan_linux.cc 80 + +++ b/lib/msan/msan_linux.cc 81 + @@ -13,7 +13,7 @@ 82 + //===----------------------------------------------------------------------===// 83 + 84 + #include "sanitizer_common/sanitizer_platform.h" 85 + -#if SANITIZER_FREEBSD || SANITIZER_LINUX || SANITIZER_NETBSD 86 + +#if SANITIZER_FREEBSD || (SANITIZER_LINUX && !SANITIZER_NONGNU) || SANITIZER_NETBSD 87 + 88 + #include "msan.h" 89 + #include "msan_report.h" 90 + diff --git a/lib/sanitizer_common/sanitizer_allocator.cc b/lib/sanitizer_common/sanitizer_allocator.cc 91 + index 6bfd5e5ee..048f6154f 100644 92 + --- a/lib/sanitizer_common/sanitizer_allocator.cc 93 + +++ b/lib/sanitizer_common/sanitizer_allocator.cc 94 + @@ -27,7 +27,7 @@ const char *SecondaryAllocatorName = "LargeMmapAllocator"; 95 + 96 + // ThreadSanitizer for Go uses libc malloc/free. 97 + #if SANITIZER_GO || defined(SANITIZER_USE_MALLOC) 98 + -# if SANITIZER_LINUX && !SANITIZER_ANDROID 99 + +# if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 100 + extern "C" void *__libc_malloc(uptr size); 101 + # if !SANITIZER_GO 102 + extern "C" void *__libc_memalign(uptr alignment, uptr size); 103 + diff --git a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc 104 + index 2d633c173..b6eb23116 100644 105 + --- a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc 106 + +++ b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc 107 + @@ -104,7 +104,7 @@ static void ioctl_table_fill() { 108 + _(SIOCGETVIFCNT, WRITE, struct_sioc_vif_req_sz); 109 + #endif 110 + 111 + -#if SANITIZER_LINUX 112 + +#if SANITIZER_LINUX && !SANITIZER_NONGNU 113 + // Conflicting request ids. 114 + // _(CDROMAUDIOBUFSIZ, NONE, 0); 115 + // _(SNDCTL_TMR_CONTINUE, NONE, 0); 116 + @@ -365,7 +365,7 @@ static void ioctl_table_fill() { 117 + _(VT_WAITACTIVE, NONE, 0); 118 + #endif 119 + 120 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 121 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 122 + // _(SIOCDEVPLIP, WRITE, struct_ifreq_sz); // the same as EQL_ENSLAVE 123 + _(CYGETDEFTHRESH, WRITE, sizeof(int)); 124 + _(CYGETDEFTIMEOUT, WRITE, sizeof(int)); 125 + diff --git a/lib/sanitizer_common/sanitizer_common_syscalls.inc b/lib/sanitizer_common/sanitizer_common_syscalls.inc 126 + index 469c8eb7e..24f87867d 100644 127 + --- a/lib/sanitizer_common/sanitizer_common_syscalls.inc 128 + +++ b/lib/sanitizer_common/sanitizer_common_syscalls.inc 129 + @@ -2038,7 +2038,7 @@ POST_SYSCALL(setrlimit)(long res, long resource, void *rlim) { 130 + } 131 + } 132 + 133 + -#if !SANITIZER_ANDROID 134 + +#if !SANITIZER_ANDROID && !SANITIZER_NONGNU 135 + PRE_SYSCALL(prlimit64)(long pid, long resource, const void *new_rlim, 136 + void *old_rlim) { 137 + if (new_rlim) PRE_READ(new_rlim, struct_rlimit64_sz); 138 + diff --git a/lib/sanitizer_common/sanitizer_linux.cc b/lib/sanitizer_common/sanitizer_linux.cc 139 + index 96d6c1eff..9e2b7fb9d 100644 140 + --- a/lib/sanitizer_common/sanitizer_linux.cc 141 + +++ b/lib/sanitizer_common/sanitizer_linux.cc 142 + @@ -541,13 +541,13 @@ const char *GetEnv(const char *name) { 143 + #endif 144 + } 145 + 146 + -#if !SANITIZER_FREEBSD && !SANITIZER_NETBSD && !SANITIZER_OPENBSD 147 + +#if !SANITIZER_FREEBSD && !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_NONGNU 148 + extern "C" { 149 + SANITIZER_WEAK_ATTRIBUTE extern void *__libc_stack_end; 150 + } 151 + #endif 152 + 153 + -#if !SANITIZER_GO && !SANITIZER_FREEBSD && !SANITIZER_NETBSD && \ 154 + +#if (!SANITIZER_GO || SANITIZER_NONGNU) && !SANITIZER_FREEBSD && !SANITIZER_NETBSD && \ 155 + !SANITIZER_OPENBSD 156 + static void ReadNullSepFileToArray(const char *path, char ***arr, 157 + int arr_size) { 158 + @@ -590,6 +590,10 @@ static void GetArgsAndEnv(char ***argv, char ***envp) { 159 + #elif SANITIZER_NETBSD 160 + *argv = __ps_strings->ps_argvstr; 161 + *envp = __ps_strings->ps_envstr; 162 + +#elif SANITIZER_NONGNU 163 + + static const int kMaxArgv = 2000, kMaxEnvp = 2000; 164 + + ReadNullSepFileToArray("/proc/self/cmdline", argv, kMaxArgv); 165 + + ReadNullSepFileToArray("/proc/self/environ", envp, kMaxEnvp); 166 + #else // SANITIZER_FREEBSD 167 + #if !SANITIZER_GO 168 + if (&__libc_stack_end) { 169 + diff --git a/lib/sanitizer_common/sanitizer_linux_libcdep.cc b/lib/sanitizer_common/sanitizer_linux_libcdep.cc 170 + index 4962ff832..438f94dbe 100644 171 + --- a/lib/sanitizer_common/sanitizer_linux_libcdep.cc 172 + +++ b/lib/sanitizer_common/sanitizer_linux_libcdep.cc 173 + @@ -179,7 +179,7 @@ __attribute__((unused)) static bool GetLibcVersion(int *major, int *minor, 174 + } 175 + 176 + #if !SANITIZER_FREEBSD && !SANITIZER_ANDROID && !SANITIZER_GO && \ 177 + - !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_SOLARIS 178 + + !SANITIZER_NETBSD && !SANITIZER_OPENBSD && !SANITIZER_SOLARIS && !SANITIZER_NONGNU 179 + static uptr g_tls_size; 180 + 181 + #ifdef __i386__ 182 + @@ -261,7 +261,7 @@ void InitTlsSize() { } 183 + #if (defined(__x86_64__) || defined(__i386__) || defined(__mips__) || \ 184 + defined(__aarch64__) || defined(__powerpc64__) || defined(__s390__) || \ 185 + defined(__arm__)) && \ 186 + - SANITIZER_LINUX && !SANITIZER_ANDROID 187 + + SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 188 + // sizeof(struct pthread) from glibc. 189 + static atomic_uintptr_t thread_descriptor_size; 190 + 191 + @@ -426,7 +426,7 @@ int GetSizeFromHdr(struct dl_phdr_info *info, size_t size, void *data) { 192 + 193 + #if !SANITIZER_GO 194 + static void GetTls(uptr *addr, uptr *size) { 195 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 196 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 197 + # if defined(__x86_64__) || defined(__i386__) || defined(__s390__) 198 + *addr = ThreadSelf(); 199 + *size = GetTlsSize(); 200 + @@ -470,7 +470,7 @@ static void GetTls(uptr *addr, uptr *size) { 201 + #elif SANITIZER_OPENBSD 202 + *addr = 0; 203 + *size = 0; 204 + -#elif SANITIZER_ANDROID 205 + +#elif SANITIZER_ANDROID || SANITIZER_NONGNU 206 + *addr = 0; 207 + *size = 0; 208 + #elif SANITIZER_SOLARIS 209 + @@ -486,7 +486,7 @@ static void GetTls(uptr *addr, uptr *size) { 210 + #if !SANITIZER_GO 211 + uptr GetTlsSize() { 212 + #if SANITIZER_FREEBSD || SANITIZER_ANDROID || SANITIZER_NETBSD || \ 213 + - SANITIZER_OPENBSD || SANITIZER_SOLARIS 214 + + SANITIZER_OPENBSD || SANITIZER_SOLARIS || SANITIZER_NONGNU 215 + uptr addr, size; 216 + GetTls(&addr, &size); 217 + return size; 218 + diff --git a/lib/sanitizer_common/sanitizer_platform.h b/lib/sanitizer_common/sanitizer_platform.h 219 + index d81e25580..e10680ac8 100644 220 + --- a/lib/sanitizer_common/sanitizer_platform.h 221 + +++ b/lib/sanitizer_common/sanitizer_platform.h 222 + @@ -208,6 +208,12 @@ 223 + # define SANITIZER_SOLARIS32 0 224 + #endif 225 + 226 + +#if defined(__linux__) && !defined(__GLIBC__) 227 + +# define SANITIZER_NONGNU 1 228 + +#else 229 + +# define SANITIZER_NONGNU 0 230 + +#endif 231 + + 232 + #if defined(__myriad2__) 233 + # define SANITIZER_MYRIAD2 1 234 + #else 235 + diff --git a/lib/sanitizer_common/sanitizer_platform_interceptors.h b/lib/sanitizer_common/sanitizer_platform_interceptors.h 236 + index f95539a73..6c53b3415 100644 237 + --- a/lib/sanitizer_common/sanitizer_platform_interceptors.h 238 + +++ b/lib/sanitizer_common/sanitizer_platform_interceptors.h 239 + @@ -39,7 +39,7 @@ 240 + # include "sanitizer_platform_limits_solaris.h" 241 + #endif 242 + 243 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 244 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 245 + # define SI_LINUX_NOT_ANDROID 1 246 + #else 247 + # define SI_LINUX_NOT_ANDROID 0 248 + @@ -322,7 +322,7 @@ 249 + #define SANITIZER_INTERCEPT_ETHER_R (SI_FREEBSD || SI_LINUX_NOT_ANDROID) 250 + #define SANITIZER_INTERCEPT_SHMCTL \ 251 + (SI_NETBSD || SI_OPENBSD || SI_SOLARIS || \ 252 + - ((SI_FREEBSD || SI_LINUX_NOT_ANDROID) && \ 253 + + ((SI_FREEBSD || SI_LINUX_NOT_ANDROID || SANITIZER_NONGNU) && \ 254 + SANITIZER_WORDSIZE == 64)) // NOLINT 255 + #define SANITIZER_INTERCEPT_RANDOM_R SI_LINUX_NOT_ANDROID 256 + #define SANITIZER_INTERCEPT_PTHREAD_ATTR_GET SI_POSIX 257 + diff --git a/lib/sanitizer_common/sanitizer_platform_limits_posix.cc b/lib/sanitizer_common/sanitizer_platform_limits_posix.cc 258 + index 54da635d7..2f6ff69c3 100644 259 + --- a/lib/sanitizer_common/sanitizer_platform_limits_posix.cc 260 + +++ b/lib/sanitizer_common/sanitizer_platform_limits_posix.cc 261 + @@ -14,6 +14,9 @@ 262 + 263 + #include "sanitizer_platform.h" 264 + 265 + +// Workaround musl <--> linux conflicting definition of 'struct sysinfo' 266 + +#define _LINUX_SYSINFO_H 267 + + 268 + #if SANITIZER_LINUX || SANITIZER_FREEBSD || SANITIZER_MAC 269 + // Tests in this file assume that off_t-dependent data structures match the 270 + // libc ABI. For example, struct dirent here is what readdir() function (as 271 + @@ -138,12 +141,14 @@ typedef struct user_fpregs elf_fpregset_t; 272 + 273 + #if SANITIZER_LINUX && !SANITIZER_ANDROID 274 + #include <glob.h> 275 + -#include <obstack.h> 276 + +# if !SANITIZER_NONGNU 277 + +# include <obstack.h> 278 + +# endif 279 + #include <mqueue.h> 280 + -#include <net/if_ppp.h> 281 + -#include <netax25/ax25.h> 282 + -#include <netipx/ipx.h> 283 + -#include <netrom/netrom.h> 284 + +#include <linux/if_ppp.h> 285 + +#include <linux/ax25.h> 286 + +#include <linux/ipx.h> 287 + +#include <linux/netrom.h> 288 + #if HAVE_RPC_XDR_H 289 + # include <rpc/xdr.h> 290 + #elif HAVE_TIRPC_RPC_XDR_H 291 + @@ -251,7 +256,7 @@ namespace __sanitizer { 292 + unsigned struct_itimerspec_sz = sizeof(struct itimerspec); 293 + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD 294 + 295 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 296 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 297 + // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which 298 + // has been removed from glibc 2.28. 299 + #if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \ 300 + @@ -322,7 +327,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(ElfW(Phdr)); 301 + unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); 302 + #endif 303 + 304 + -#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID 305 + +#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU 306 + int glob_nomatch = GLOB_NOMATCH; 307 + int glob_altdirfunc = GLOB_ALTDIRFUNC; 308 + #endif 309 + @@ -416,7 +421,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); 310 + unsigned struct_termios_sz = sizeof(struct termios); 311 + unsigned struct_winsize_sz = sizeof(struct winsize); 312 + 313 + -#if SANITIZER_LINUX 314 + +#if SANITIZER_LINUX && !SANITIZER_NONGNU 315 + unsigned struct_arpreq_sz = sizeof(struct arpreq); 316 + unsigned struct_cdrom_msf_sz = sizeof(struct cdrom_msf); 317 + unsigned struct_cdrom_multisession_sz = sizeof(struct cdrom_multisession); 318 + @@ -466,7 +471,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); 319 + unsigned struct_vt_mode_sz = sizeof(struct vt_mode); 320 + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD 321 + 322 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 323 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 324 + unsigned struct_ax25_parms_struct_sz = sizeof(struct ax25_parms_struct); 325 + unsigned struct_cyclades_monitor_sz = sizeof(struct cyclades_monitor); 326 + #if EV_VERSION > (0x010000) 327 + @@ -834,7 +839,7 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); 328 + unsigned IOCTL_VT_WAITACTIVE = VT_WAITACTIVE; 329 + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD 330 + 331 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 332 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 333 + unsigned IOCTL_CYGETDEFTHRESH = CYGETDEFTHRESH; 334 + unsigned IOCTL_CYGETDEFTIMEOUT = CYGETDEFTIMEOUT; 335 + unsigned IOCTL_CYGETMON = CYGETMON; 336 + @@ -989,7 +994,7 @@ CHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phdr); 337 + CHECK_SIZE_AND_OFFSET(dl_phdr_info, dlpi_phnum); 338 + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD 339 + 340 + -#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID 341 + +#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU 342 + CHECK_TYPE_SIZE(glob_t); 343 + CHECK_SIZE_AND_OFFSET(glob_t, gl_pathc); 344 + CHECK_SIZE_AND_OFFSET(glob_t, gl_pathv); 345 + @@ -1023,6 +1028,7 @@ CHECK_TYPE_SIZE(iovec); 346 + CHECK_SIZE_AND_OFFSET(iovec, iov_base); 347 + CHECK_SIZE_AND_OFFSET(iovec, iov_len); 348 + 349 + +#if !SANITIZER_NONGNU 350 + CHECK_TYPE_SIZE(msghdr); 351 + CHECK_SIZE_AND_OFFSET(msghdr, msg_name); 352 + CHECK_SIZE_AND_OFFSET(msghdr, msg_namelen); 353 + @@ -1036,6 +1042,7 @@ CHECK_TYPE_SIZE(cmsghdr); 354 + CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_len); 355 + CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_level); 356 + CHECK_SIZE_AND_OFFSET(cmsghdr, cmsg_type); 357 + +#endif 358 + 359 + #ifndef __GLIBC_PREREQ 360 + #define __GLIBC_PREREQ(x, y) 0 361 + @@ -1145,7 +1152,7 @@ CHECK_SIZE_AND_OFFSET(mntent, mnt_passno); 362 + 363 + CHECK_TYPE_SIZE(ether_addr); 364 + 365 + -#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID 366 + +#if (SANITIZER_LINUX || SANITIZER_FREEBSD) && !SANITIZER_ANDROID && !SANITIZER_NONGNU 367 + CHECK_TYPE_SIZE(ipc_perm); 368 + # if SANITIZER_FREEBSD 369 + CHECK_SIZE_AND_OFFSET(ipc_perm, key); 370 + @@ -1206,7 +1213,7 @@ CHECK_SIZE_AND_OFFSET(ifaddrs, ifa_dstaddr); 371 + CHECK_SIZE_AND_OFFSET(ifaddrs, ifa_data); 372 + #endif 373 + 374 + -#if SANITIZER_LINUX 375 + +#if SANITIZER_LINUX && !SANITIZER_NONGNU 376 + COMPILER_CHECK(sizeof(__sanitizer_mallinfo) == sizeof(struct mallinfo)); 377 + #endif 378 + 379 + @@ -1256,7 +1263,7 @@ COMPILER_CHECK(__sanitizer_XDR_DECODE == XDR_DECODE); 380 + COMPILER_CHECK(__sanitizer_XDR_FREE == XDR_FREE); 381 + #endif 382 + 383 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 384 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 385 + COMPILER_CHECK(sizeof(__sanitizer_FILE) <= sizeof(FILE)); 386 + CHECK_SIZE_AND_OFFSET(FILE, _flags); 387 + CHECK_SIZE_AND_OFFSET(FILE, _IO_read_ptr); 388 + @@ -1275,7 +1282,7 @@ CHECK_SIZE_AND_OFFSET(FILE, _chain); 389 + CHECK_SIZE_AND_OFFSET(FILE, _fileno); 390 + #endif 391 + 392 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 393 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 394 + COMPILER_CHECK(sizeof(__sanitizer__obstack_chunk) <= sizeof(_obstack_chunk)); 395 + CHECK_SIZE_AND_OFFSET(_obstack_chunk, limit); 396 + CHECK_SIZE_AND_OFFSET(_obstack_chunk, prev); 397 + diff --git a/lib/tsan/rtl/tsan_platform_linux.cc b/lib/tsan/rtl/tsan_platform_linux.cc 398 + index de989b780..51a97b554 100644 399 + --- a/lib/tsan/rtl/tsan_platform_linux.cc 400 + +++ b/lib/tsan/rtl/tsan_platform_linux.cc 401 + @@ -294,7 +294,7 @@ void InitializePlatform() { 402 + // This is required to properly "close" the fds, because we do not see internal 403 + // closes within glibc. The code is a pure hack. 404 + int ExtractResolvFDs(void *state, int *fds, int nfd) { 405 + -#if SANITIZER_LINUX && !SANITIZER_ANDROID 406 + +#if SANITIZER_LINUX && !SANITIZER_ANDROID && !SANITIZER_NONGNU 407 + int cnt = 0; 408 + struct __res_state *statp = (struct __res_state*)state; 409 + for (int i = 0; i < MAXNS && cnt < nfd; i++) { 410 + -- 411 + 2.19.0 412 +
+44
pkgs/development/compilers/llvm/update.sh
··· 1 + #!/usr/bin/env bash 2 + 3 + set -eu 4 + 5 + # Example usage: ./pkgs/development/compilers/llvm/update.sh 12.0.0-rc4 6 + 7 + readonly VERSION="$1" 8 + readonly VERSION_MAJOR="${VERSION%%.*}" 9 + readonly VERSION_MAIN="${VERSION%%-*}" 10 + declare VERSION_PATCH="${VERSION/$VERSION_MAIN/}" 11 + readonly VERSION_PATCH="${VERSION_PATCH/-/}" 12 + 13 + readonly DIR="pkgs/development/compilers/llvm/$VERSION_MAJOR" 14 + readonly FILE="$DIR/default.nix" 15 + 16 + sed -Ei \ 17 + -e "s/release_version = \".+\";/release_version = \"$VERSION_MAIN\";/" \ 18 + -e "s/candidate = \".*\";/candidate = \"$VERSION_PATCH\";/" \ 19 + "$FILE" 20 + 21 + readonly ATTRSET="llvmPackages_$VERSION_MAJOR" 22 + readonly SOURCES=( 23 + "clang-unwrapped.src" 24 + "compiler-rt.src" 25 + "clang-unwrapped.clang-tools-extra_src" 26 + "libcxx.src" 27 + "libcxxabi.src" 28 + "libunwind.src" 29 + "lld.src" 30 + "lldb.src" 31 + "llvm.src" 32 + "llvm.polly_src" 33 + "openmp.src" 34 + ) 35 + 36 + for SOURCE in "${SOURCES[@]}"; do 37 + echo "Updating the hash of $SOURCE:" 38 + declare ATTR="$ATTRSET.$SOURCE" 39 + declare OLD_HASH="$(nix eval -f . $ATTR.outputHash)" 40 + declare NEW_HASH="\"$(nix-prefetch-url -A $ATTR)\"" 41 + find "$DIR" -type f -exec sed -i "s/$OLD_HASH/$NEW_HASH/" {} + 42 + done 43 + 44 + echo OK
+6 -6
pkgs/development/interpreters/dart/default.nix
··· 2 2 , lib 3 3 , fetchurl 4 4 , unzip 5 - , version ? "2.10.5" 5 + , version ? "2.12.2" 6 6 , sources ? 7 7 let 8 8 base = "https://storage.googleapis.com/dart-archive/channels"; ··· 11 11 aarch64 = "arm64"; 12 12 # Make sure that if the user overrides version parameter they're 13 13 # also need to override sources, to avoid mistakes 14 - version = "2.10.5"; 14 + version = "2.12.2"; 15 15 in 16 16 { 17 17 "${version}-x86_64-darwin" = fetchurl { 18 18 url = "${base}/stable/release/${version}/sdk/dartsdk-macos-${x86_64}-release.zip"; 19 - sha256 = "1vb2m25w6v901id9syan9q69fa60sxxd7qpyzq21fn5dpah0g99i"; 19 + sha256 = "0h6mpy0kfc842vhg053fyxbjnd8lw1d1shdcsj800048260lxhyd"; 20 20 }; 21 21 "${version}-x86_64-linux" = fetchurl { 22 22 url = "${base}/stable/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip"; 23 - sha256 = "1mb6m3vxjya1dz47mdna23c2015n3bz8dvz8fwggq6k3zp0a4dsh"; 23 + sha256 = "1gg210gf4yif3bl9k19znkndc4c1cd529xwxpi20ykaw3zfxxz2z"; 24 24 }; 25 25 "${version}-i686-linux" = fetchurl { 26 26 url = "${base}/stable/release/${version}/sdk/dartsdk-linux-${i686}-release.zip"; 27 - sha256 = "10g4qrwvmabrdg4i8y0wq9g7whqcpkdfp05yilflg70ybplrscf7"; 27 + sha256 = "1wngxba71j20gq9vy7n8q0m9rnqs047xm5b03bxk3hhaq6dyzkwn"; 28 28 }; 29 29 "${version}-aarch64-linux" = fetchurl { 30 30 url = "${base}/stable/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip"; 31 - sha256 = "0js83wy496swcwia144fhxk872irb5nr6i8558hxabkdrpv1bky5"; 31 + sha256 = "0rqsmzl5g5kgk54qb03kamjm5n5g5pqfl79np37xdzwqbv0zx22b"; 32 32 }; 33 33 } 34 34 }:
+26
pkgs/development/libraries/mustache-hpp/default.nix
··· 1 + { lib, stdenv, fetchFromGitHub, cmake }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "mustache"; 5 + version = "4.1"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "kainjow"; 9 + repo = "Mustache"; 10 + rev = "v${version}"; 11 + sha256 = "0r9rbk6v1wpld2ismfsk2lkhbyv3dkf0p03hkjivbj05qkfhvlbb"; 12 + }; 13 + 14 + nativeBuildInputs = [ cmake ]; 15 + 16 + installPhase = '' 17 + mkdir -p $out/include 18 + cp ../mustache.hpp $out/include 19 + ''; 20 + 21 + meta = with lib; { 22 + description = "Mustache text templates for modern C++"; 23 + homepage = "https://github.com/kainjow/Mustache"; 24 + license = licenses.boost; 25 + }; 26 + }
+40 -8
pkgs/development/libraries/zimlib/default.nix
··· 1 - { lib, stdenv, fetchurl, lzma }: 1 + { lib, stdenv, fetchFromGitHub 2 + , meson, ninja, pkg-config 3 + , python3 4 + , icu 5 + , libuuid 6 + , xapian 7 + , xz 8 + , zstd 9 + , gtest 10 + }: 2 11 3 12 stdenv.mkDerivation rec { 4 13 pname = "zimlib"; 5 - version = "1.4"; 14 + version = "6.3.0"; 6 15 7 - src = fetchurl { 8 - url = "http://www.openzim.org/download/${pname}-${version}.tar.gz"; 9 - sha256 = "14ra3iq42x53k1nqxb5lsg4gadlkpkgv6cbjjl6305ajmbrghcdq"; 16 + src = fetchFromGitHub { 17 + owner = "openzim"; 18 + repo = "libzim"; 19 + rev = version; 20 + sha256 = "0iy0f1clhihq277x218ccx3mszgpr3h9l0by48b9ykr115nffw3s"; 10 21 }; 11 22 12 - buildInputs = [ lzma ]; 23 + nativeBuildInputs = [ 24 + meson 25 + pkg-config 26 + ninja 27 + python3 28 + ]; 13 29 14 - enableParallelBuilding = true; 30 + propagatedBuildInputs = [ 31 + icu 32 + libuuid 33 + xapian 34 + xz 35 + zstd 36 + ]; 37 + 38 + postPatch = '' 39 + patchShebangs scripts 40 + ''; 41 + 42 + checkInputs = [ 43 + gtest 44 + ]; 45 + 46 + doCheck = true; 15 47 16 48 meta = with lib; { 17 49 description = "Library for reading and writing ZIM files"; 18 50 homepage = "https://www.openzim.org/wiki/Zimlib"; 19 51 license = licenses.gpl2; 20 - maintainers = with maintainers; [ robbinch ]; 52 + maintainers = with maintainers; [ ajs124 ]; 21 53 platforms = platforms.linux; 22 54 }; 23 55 }
+6 -3
pkgs/development/ocaml-modules/bigstring/default.nix
··· 2 2 3 3 buildDunePackage rec { 4 4 pname = "bigstring"; 5 - version = "0.2"; 5 + version = "0.3"; 6 + 7 + useDune2 = true; 6 8 7 9 minimumOCamlVersion = "4.03"; 8 10 ··· 10 12 owner = "c-cube"; 11 13 repo = "ocaml-bigstring"; 12 14 rev = version; 13 - sha256 = "0ypdf29cmwmjm3djr5ygz8ls81dl41a4iz1xx5gbcdpbrdiapb77"; 15 + sha256 = "0bkxwdcswy80f6rmx5wjza92xzq4rdqsb4a9fm8aav8bdqx021n8"; 14 16 }; 15 17 16 - doCheck = true; 18 + # Circular dependency with bigstring-unix 19 + doCheck = false; 17 20 18 21 meta = with lib; { 19 22 homepage = "https://github.com/c-cube/ocaml-bigstring";
+2
pkgs/development/ocaml-modules/cpu/default.nix
··· 4 4 pname = "cpu"; 5 5 version = "2.0.0"; 6 6 7 + useDune2 = true; 8 + 7 9 src = fetchFromGitHub { 8 10 owner = "UnixJunkie"; 9 11 repo = pname;
+2
pkgs/development/ocaml-modules/crowbar/default.nix
··· 5 5 pname = "crowbar"; 6 6 version = "0.2"; 7 7 8 + useDune2 = true; 9 + 8 10 src = fetchFromGitHub { 9 11 owner = "stedolan"; 10 12 repo = pname;
+2
pkgs/development/ocaml-modules/dtoa/default.nix
··· 4 4 pname = "dtoa"; 5 5 version = "0.3.2"; 6 6 7 + useDune2 = true; 8 + 7 9 minimumOCamlVersion = "4.02"; 8 10 9 11 src = fetchurl {
+4 -2
pkgs/development/ocaml-modules/hidapi/default.nix
··· 1 - { pkgs, lib, fetchurl, buildDunePackage, pkg-config 1 + { pkgs, lib, fetchurl, buildDunePackage, pkg-config, dune-configurator 2 2 , bigstring, 3 3 }: 4 4 ··· 6 6 pname = "hidapi"; 7 7 version = "1.1.1"; 8 8 9 + useDune2 = true; 10 + 9 11 src = fetchurl { 10 12 url = "https://github.com/vbmithr/ocaml-hidapi/releases/download/${version}/${pname}-${version}.tbz"; 11 13 sha256 = "1j7rd7ajrzla76r3sxljx6fb18f4f4s3jd7vhv59l2ilxyxycai2"; ··· 13 15 14 16 minimumOCamlVersion = "4.03"; 15 17 16 - buildInputs = [ pkgs.hidapi pkg-config ]; 18 + buildInputs = [ pkgs.hidapi pkg-config dune-configurator ]; 17 19 propagatedBuildInputs = [ bigstring ]; 18 20 19 21 doCheck = true;
+2
pkgs/development/ocaml-modules/parany/default.nix
··· 4 4 pname = "parany"; 5 5 version = "8.0.0"; 6 6 7 + useDune2 = true; 8 + 7 9 src = fetchFromGitHub { 8 10 owner = "UnixJunkie"; 9 11 repo = pname;
+2 -2
pkgs/development/python-modules/mcstatus/default.nix
··· 12 12 13 13 buildPythonPackage rec { 14 14 pname = "mcstatus"; 15 - version = "5.1.1"; 15 + version = "5.1.2"; 16 16 disabled = pythonOlder "3.6"; 17 17 18 18 src = fetchFromGitHub { 19 19 owner = "Dinnerbone"; 20 20 repo = pname; 21 21 rev = "release-${version}"; 22 - sha256 = "1a3qrl6w76ayqkl1knaz5ai0brrzpjfdk33lyb1n1p7gnc73nhlr"; 22 + sha256 = "16k5vcqpd9r7mm1cg9khzba42rcxs491h8gk2klymav249yzrwk7"; 23 23 }; 24 24 25 25 propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/solax/default.nix
··· 12 12 13 13 buildPythonPackage rec { 14 14 pname = "solax"; 15 - version = "0.2.5"; 15 + version = "0.2.6"; 16 16 17 17 src = fetchPypi { 18 18 inherit pname version; 19 - sha256 = "0h7q6y2cdkj9dqxw0k7pgz7a7vbpq1qw50pmy9rajphhv2600cbc"; 19 + sha256 = "sha256-3WhJBBnIl6C0AdEsmSX3ZEVDThzCBguS4UUri80ifGg="; 20 20 }; 21 21 22 22 nativeBuildInputs = [ setuptools-scm ];
+2 -2
pkgs/development/python-modules/vsure/default.nix
··· 6 6 7 7 buildPythonPackage rec { 8 8 pname = "vsure"; 9 - version = "1.7.3"; 9 + version = "1.8.1"; 10 10 11 11 src = fetchPypi { 12 12 inherit pname version; 13 - sha256 = "sha256-tnUL9krKHqHR79EROsmVflCy9uO1n0iV6evQc/YpxnM="; 13 + sha256 = "sha256-Zh83t7yjZU2NjOgCkqPUHbqvEyEWXGITRgr5d2fLtRI="; 14 14 }; 15 15 16 16 propagatedBuildInputs = [ requests ];
+3 -3
pkgs/development/tools/hover/default.nix
··· 18 18 19 19 let 20 20 pname = "hover"; 21 - version = "0.46.2"; 21 + version = "0.46.3"; 22 22 23 23 libs = with xorg; [ 24 24 libX11.dev ··· 46 46 47 47 subPackages = [ "." ]; 48 48 49 - vendorSha256 = "0hdh4vwzvwlarjzg6pv9dp665r9px9yplfjpgyyfjyy5b9sxl795"; 49 + vendorSha256 = "sha256-qTBGmONlcFJcN+9bMZbVY+6kOQ97JmJWWvgmNeDWBL0="; 50 50 51 51 src = fetchFromGitHub { 52 52 rev = "v${version}"; 53 53 owner = "go-flutter-desktop"; 54 54 repo = pname; 55 - sha256 = "1gmsv7hmj7zzfwbz50az3kvgzqvj0jn8i2pv7sjyl9dx1bavi5g3"; 55 + sha256 = "sha256-0qzbRzpqoZcAt3k52+omqZ3Fq1KdS++wPpQkBkG1p6o="; 56 56 }; 57 57 58 58 nativeBuildInputs = [ addOpenGLRunpath makeWrapper ];
+1 -1
pkgs/development/tools/hover/fix-assets-path.patch
··· 53 53 -func ExecuteTemplateFromAssetsBox(boxed, to string, assetsBox *rice.Box, templateData interface{}) { 54 54 - templateString, err := assetsBox.String(boxed) 55 55 +func ExecuteTemplateFromAssetsBox(boxed, to string, assetsBox string, templateData interface{}) { 56 - + templateString, err := ioutil.ReadFile(boxed + "/" + boxed) 56 + + templateString, err := ioutil.ReadFile(assetsBox + "/" + boxed) 57 57 if err != nil { 58 58 log.Errorf("Failed to find template file: %v\n", err) 59 59 os.Exit(1)
+2 -2
pkgs/misc/vscode-extensions/ms-vsliveshare-vsliveshare/default.nix
··· 38 38 mktplcRef = { 39 39 name = "vsliveshare"; 40 40 publisher = "ms-vsliveshare"; 41 - version = "1.0.3968"; 42 - sha256 = "1nmhkxrlg9blxcqh7a3hl0wc5mkk2p77mn228lvmcirpbk3acsx5"; 41 + version = "1.0.4070"; 42 + sha256 = "18dddaz5g0kbrmj9l9k0fivdj6p6y5a6iw24ikvzmypz8zql7gd5"; 43 43 }; 44 44 }).overrideAttrs({ nativeBuildInputs ? [], buildInputs ? [], ... }: { 45 45 nativeBuildInputs = nativeBuildInputs ++ [
+25
pkgs/servers/gemini/gmnisrv/default.nix
··· 1 + { stdenv, lib, fetchFromSourcehut, pkg-config, openssl, mime-types, scdoc }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "gmnisrv"; 5 + version = "unstable-2021-03-26"; 6 + 7 + src = fetchFromSourcehut { 8 + owner = "~sircmpwn"; 9 + repo = "gmnisrv"; 10 + rev = "f23ec10a6d66c574bbf718c4b10f2cf91ea8daef"; 11 + sha256 = "1d9rjx0s092yfzjxd2yvzixhqgg883nlnmsysgp21w75n2as354n"; 12 + }; 13 + 14 + MIMEDB = "${mime-types}/etc/mime.types"; 15 + nativeBuildInputs = [ pkg-config ]; 16 + buildInputs = [ openssl mime-types scdoc ]; 17 + 18 + meta = with lib; { 19 + description = "A simple Gemini protocol server"; 20 + homepage = "https://git.sr.ht/~sircmpwn/gmnisrv"; 21 + license = licenses.gpl3Only; 22 + maintainers = with maintainers; [ bsima jb55 ]; 23 + platforms = platforms.all; 24 + }; 25 + }
+2
pkgs/servers/home-assistant/default.nix
··· 257 257 "media_player" 258 258 "media_source" 259 259 "met" 260 + "minecraft_server" 260 261 "mobile_app" 261 262 "modbus" 262 263 "moon" ··· 322 323 "upnp" 323 324 "uptime" 324 325 "vacuum" 326 + "verisure" 325 327 "weather" 326 328 "webhook" 327 329 "websocket_api"
+66
pkgs/servers/ombi/default.nix
··· 1 + { lib, stdenv, fetchurl, makeWrapper, patchelf, openssl, libunwind, zlib, krb5, icu, nixosTests }: 2 + 3 + let 4 + os = if stdenv.isDarwin then "osx" else "linux"; 5 + arch = { 6 + x86_64-linux = "x64"; 7 + aarch64-linux = "arm64"; 8 + x86_64-darwin = "x64"; 9 + }."${stdenv.hostPlatform.system}" or (throw 10 + "Unsupported system: ${stdenv.hostPlatform.system}"); 11 + 12 + hash = { 13 + x64-linux_hash = "sha256-Cuvz9Mhwpg8RIaiSXib+QW00DM66qPRQulrchRL2BSk="; 14 + arm64-linux_hash = "sha256-uyVwa73moHWMZScNNSOU17lALuK3PC/cvTZPJ9qg7JQ="; 15 + x64-osx_hash = "sha256-FGXLsfEuCW94D786LJ/wvA9TakOn5sG2M1rDXPQicYw="; 16 + }."${arch}-${os}_hash"; 17 + 18 + rpath = lib.makeLibraryPath [ 19 + stdenv.cc.cc openssl libunwind zlib krb5 icu 20 + ]; 21 + 22 + dynamicLinker = stdenv.cc.bintools.dynamicLinker; 23 + 24 + in stdenv.mkDerivation rec { 25 + pname = "ombi"; 26 + version = "4.0.1292"; 27 + 28 + sourceRoot = "."; 29 + 30 + src = fetchurl { 31 + url = "https://github.com/Ombi-app/Ombi/releases/download/v${version}/${os}-${arch}.tar.gz"; 32 + sha256 = hash; 33 + }; 34 + 35 + buildInputs = [ makeWrapper patchelf ]; 36 + 37 + installPhase = '' 38 + mkdir -p $out/{bin,share/${pname}-${version}} 39 + cp -r * $out/share/${pname}-${version} 40 + 41 + makeWrapper $out/share/${pname}-${version}/Ombi $out/bin/Ombi \ 42 + --run "cd $out/share/${pname}-${version}" 43 + ''; 44 + 45 + dontPatchELF = true; 46 + postFixup = '' 47 + patchelf --set-interpreter "${dynamicLinker}" \ 48 + --set-rpath "$ORIGIN:${rpath}" $out/share/${pname}-${version}/Ombi 49 + 50 + find $out -type f -name "*.so" -exec \ 51 + patchelf --set-rpath '$ORIGIN:${rpath}' {} ';' 52 + ''; 53 + 54 + passthru = { 55 + updateScript = ./update.sh; 56 + tests.smoke-test = nixosTests.ombi; 57 + }; 58 + 59 + meta = with lib; { 60 + description = "Self-hosted web application that automatically gives your shared Plex or Emby users the ability to request content by themselves"; 61 + homepage = "https://ombi.io/"; 62 + license = licenses.gpl2Only; 63 + maintainers = with maintainers; [ woky ]; 64 + platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ]; 65 + }; 66 + }
+42
pkgs/servers/ombi/update.sh
··· 1 + #!/usr/bin/env nix-shell 2 + #!nix-shell -i bash -p curl gnused nix-prefetch jq 3 + 4 + set -e 5 + 6 + dirname="$(dirname "$0")" 7 + 8 + updateHash() 9 + { 10 + version=$1 11 + arch=$2 12 + os=$3 13 + 14 + hashKey="${arch}-${os}_hash" 15 + 16 + url="https://github.com/Ombi-app/Ombi/releases/download/v$version/$os-$arch.tar.gz" 17 + hash=$(nix-prefetch-url --type sha256 $url) 18 + sriHash="$(nix to-sri --type sha256 $hash)" 19 + 20 + sed -i "s|$hashKey = \"[a-zA-Z0-9\/+-=]*\";|$hashKey = \"$sriHash\";|g" "$dirname/default.nix" 21 + } 22 + 23 + updateVersion() 24 + { 25 + sed -i "s/version = \"[0-9.]*\";/version = \"$1\";/g" "$dirname/default.nix" 26 + } 27 + 28 + currentVersion=$(cd $dirname && nix eval --raw '(with import ../../.. {}; ombi.version)') 29 + 30 + latestTag=$(curl https://api.github.com/repos/Ombi-App/Ombi/tags | jq -r '.[] | .name' | sort --version-sort | tail -1) 31 + latestVersion="$(expr $latestTag : 'v\(.*\)')" 32 + 33 + if [[ "$currentVersion" == "$latestVersion" ]]; then 34 + echo "Ombi is up-to-date: ${currentVersion}" 35 + exit 0 36 + fi 37 + 38 + updateVersion $latestVersion 39 + 40 + updateHash $latestVersion x64 linux 41 + updateHash $latestVersion arm64 linux 42 + updateHash $latestVersion x64 osx
+3 -3
pkgs/shells/zsh/zsh-fzf-tab/default.nix
··· 4 4 INSTALL_PATH="${placeholder "out"}/share/fzf-tab"; 5 5 in stdenv.mkDerivation rec { 6 6 pname = "zsh-fzf-tab"; 7 - version = "unstable-2021-02-14"; 7 + version = "unstable-2021-04-01"; 8 8 9 9 src = fetchFromGitHub { 10 10 owner = "Aloxaf"; 11 11 repo = "fzf-tab"; 12 - rev = "8cebb8f01ca57076c3c7cd66365270d989bcaa89"; 13 - sha256 = "119m84g2c4z9xdr22j401p09n3cpiyj61dw5m7xkm6309nd7zz0a"; 12 + rev = "0c36bdcf6a80ec009280897f07f56969f94d377e"; 13 + sha256 = "0ymp9ky0jlkx9b63jajvpac5g3ll8snkf8q081g0yw42b9hwpiid"; 14 14 }; 15 15 16 16 buildInputs = [ ncurses ];
+2 -2
pkgs/tools/admin/aws-vault/default.nix
··· 1 1 { buildGoModule, lib, fetchFromGitHub, installShellFiles }: 2 2 buildGoModule rec { 3 3 pname = "aws-vault"; 4 - version = "6.3.0"; 4 + version = "6.3.1"; 5 5 6 6 src = fetchFromGitHub { 7 7 owner = "99designs"; 8 8 repo = pname; 9 9 rev = "v${version}"; 10 - sha256 = "sha256-bmqmT/gkdgczrDfZdI+FySX5CuesJXWKS0JatzaubIw="; 10 + sha256 = "sha256-yNmjoCq9fYzt/lZQlVgxQvxKWCh5Lxd4NSX7c+gE/As="; 11 11 }; 12 12 13 13 vendorSha256 = "sha256-Lb5iiuT/Fd3RMt98AafIi9I0FHJaSpJ8pH7r4yZiiiw=";
+3 -3
pkgs/tools/admin/google-cloud-sdk/default.nix
··· 21 21 sources = name: system: { 22 22 x86_64-darwin = { 23 23 url = "${baseUrl}/${name}-darwin-x86_64.tar.gz"; 24 - sha256 = "09jhcv0ysq37k06b4rw3f9w33spvkkxx7fydraikm3zzvy28l58x"; 24 + sha256 = "0csgdmzr9h3vnqn8gxvgg2mnjzackkvrid1i55l2fqcad69h6w1k"; 25 25 }; 26 26 27 27 x86_64-linux = { 28 28 url = "${baseUrl}/${name}-linux-x86_64.tar.gz"; 29 - sha256 = "1971fz8cv69y7kvirgw9n0xr7z9b1yyh4y43mg10lvv3glx46xcy"; 29 + sha256 = "0gcxldk3c03dipbkj9yzaa4v1s6bf9zlwslvi8dv3s3kbljjd84b"; 30 30 }; 31 31 }.${system}; 32 32 33 33 in stdenv.mkDerivation rec { 34 34 pname = "google-cloud-sdk"; 35 - version = "332.0.0"; 35 + version = "334.0.0"; 36 36 37 37 src = fetchurl (sources "${pname}-${version}" stdenv.hostPlatform.system); 38 38
+3 -3
pkgs/tools/filesystems/xfsprogs/default.nix
··· 4 4 5 5 stdenv.mkDerivation rec { 6 6 pname = "xfsprogs"; 7 - version = "5.10.0"; 7 + version = "5.11.0"; 8 8 9 9 src = fetchurl { 10 10 url = "mirror://kernel/linux/utils/fs/xfs/xfsprogs/${pname}-${version}.tar.xz"; 11 - sha256 = "1schqzjx836jd54l10pqds7hyli2m77df3snk95xbr23dpj1fh70"; 11 + sha256 = "0lxks616nmdk8zkdbwpq5sf9zz19smgy5rpmp3hpk2mvrl7kk70f"; 12 12 }; 13 13 14 14 outputs = [ "bin" "dev" "out" "doc" ]; ··· 48 48 meta = with lib; { 49 49 homepage = "https://xfs.org/"; 50 50 description = "SGI XFS utilities"; 51 - license = licenses.lgpl21; 51 + license = with licenses; [ gpl2Only lgpl21 gpl3Plus ]; # see https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/tree/debian/copyright 52 52 platforms = platforms.linux; 53 53 maintainers = with maintainers; [ dezgeg ajs124 ]; 54 54 };
+2 -2
pkgs/tools/misc/youtube-dl/default.nix
··· 18 18 # The websites youtube-dl deals with are a very moving target. That means that 19 19 # downloads break constantly. Because of that, updates should always be backported 20 20 # to the latest stable release. 21 - version = "2021.03.31"; 21 + version = "2021.04.01"; 22 22 23 23 src = fetchurl { 24 24 url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz"; 25 - sha256 = "1svcgrhq1yxpcd6k3piqs5paalrcsq9bm79h5ras1g7yjzid05gj"; 25 + sha256 = "1vw9l32bv115129v1lfar626y3vivvxkp36bc1phjcrsjfayz67h"; 26 26 }; 27 27 28 28 nativeBuildInputs = [ installShellFiles makeWrapper ];
+42
pkgs/tools/security/credslayer/default.nix
··· 1 + { lib 2 + , fetchFromGitHub 3 + , python3 4 + , wireshark-cli 5 + }: 6 + 7 + python3.pkgs.buildPythonApplication rec { 8 + pname = "credslayer"; 9 + version = "0.1.2"; 10 + 11 + src = fetchFromGitHub { 12 + owner = "ShellCode33"; 13 + repo = "CredSLayer"; 14 + rev = "v${version}"; 15 + sha256 = "1rbfy0h9c2gra1r2b39kngj3m7g177nmzzs5xy9np8lxixrh17pc"; 16 + }; 17 + 18 + propagatedBuildInputs = with python3.pkgs; [ 19 + pyshark 20 + ]; 21 + 22 + checkInputs = with python3.pkgs; [ 23 + wireshark-cli 24 + pytestCheckHook 25 + ]; 26 + 27 + pytestFlagsArray = [ "tests/tests.py" ]; 28 + 29 + disabledTests = [ 30 + # Requires a telnet setup 31 + "test_telnet" 32 + ]; 33 + 34 + pythonImportsCheck = [ "credslayer" ]; 35 + 36 + meta = with lib; { 37 + description = "Extract credentials and other useful info from network captures"; 38 + homepage = "https://github.com/ShellCode33/CredSLayer"; 39 + license = with licenses; [ gpl3Only ]; 40 + maintainers = with maintainers; [ fab ]; 41 + }; 42 + }
+2 -2
pkgs/tools/security/nuclei/default.nix
··· 5 5 6 6 buildGoModule rec { 7 7 pname = "nuclei"; 8 - version = "2.3.2"; 8 + version = "2.3.3"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "projectdiscovery"; 12 12 repo = pname; 13 13 rev = "v${version}"; 14 - sha256 = "sha256-QF9w3ZrW+Mbl6EOC1n2848+q71AhxXTf0j//Us9L1r8="; 14 + sha256 = "sha256-6Y93Buxq9HIqeXY92xq5KjSn2nn+u05bKGNNi/myeSo="; 15 15 }; 16 16 17 17 vendorSha256 = "sha256-qmuua7HXnwuy24CSqHKALqNDmXBvSIXYTVu3kaGVoeU=";
-38
pkgs/tools/text/zimreader/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, fetchpatch, automake, autoconf, libtool 2 - , zimlib, cxxtools, tntnet 3 - }: 4 - 5 - stdenv.mkDerivation { 6 - name = "zimreader-0.92"; 7 - 8 - src = fetchFromGitHub { 9 - owner = "wikimedia"; 10 - repo = "openzim"; 11 - rev = "r1.3"; # there multiple tools with different version in the repo 12 - sha256 = "0x529137rxy6ld64xqa6xmn93121ripxvkf3sc7hv3wg6km182sw"; 13 - }; 14 - 15 - patchFlags = [ "-p2" ]; 16 - patches = [ 17 - (fetchpatch { 18 - name = "zimreader_tntnet221.patch"; 19 - url = "https://github.com/wikimedia/openzim/compare/r1.3...juliendehos:3ee5f11eaa811284d340451e6f466529c00f6ef2.patch"; 20 - sha256 = "0rc5n20svyyndqh7hsynjyblfraphgi0f6khw6f5jq89w9i1j1hd"; 21 - }) 22 - ]; 23 - 24 - enableParallelBuilding = true; 25 - buildInputs = [ automake autoconf libtool zimlib cxxtools tntnet ]; 26 - setSourceRoot = '' 27 - sourceRoot=$(echo */zimreader) 28 - ''; 29 - preConfigure = "./autogen.sh"; 30 - 31 - meta = { 32 - description = "A tool to serve ZIM files using HTTP"; 33 - homepage = "http://git.wikimedia.org/log/openzim"; 34 - license = lib.licenses.gpl2; 35 - maintainers = with lib.maintainers; [ robbinch juliendehos ]; 36 - platforms = [ "x86_64-linux" ]; 37 - }; 38 - }
+1
pkgs/top-level/aliases.nix
··· 827 827 ytop = throw "ytop has been abandoned by upstream. Consider switching to bottom instead"; 828 828 yubikey-neo-manager = throw "yubikey-neo-manager has been removed because it was broken. Use yubikey-manager-qt instead."; # added 2021-03-08 829 829 yuzu = yuzu-mainline; # added 2021-01-25 830 + zimreader = throw "zimreader has been removed from nixpkgs as it has been replaced by kiwix-serve and stopped working with modern zimlib versions."; # added 2021-03-28 830 831 zdfmediathk = mediathekview; # added 2019-01-19 831 832 gnome_user_docs = gnome-user-docs; # added 2019-11-20 832 833 # spidermonkey is not ABI upwards-ompatible, so only allow this for nix-shell
+30 -4
pkgs/top-level/all-packages.nix
··· 285 285 286 286 creddump = callPackage ../tools/security/creddump {}; 287 287 288 + credslayer = callPackage ../tools/security/credslayer { }; 289 + 288 290 device-tree_rpi = callPackage ../os-specific/linux/device-tree/raspberrypi.nix {}; 289 291 290 292 devour = callPackage ../tools/X11/devour {}; ··· 1381 1383 glances = python3Packages.callPackage ../applications/system/glances { }; 1382 1384 1383 1385 glasgow = with python3Packages; toPythonApplication glasgow; 1386 + 1387 + gmni = callPackage ../applications/networking/browsers/gmni { }; 1388 + 1389 + gmnisrv = callPackage ../servers/gemini/gmnisrv { }; 1384 1390 1385 1391 goimapnotify = callPackage ../tools/networking/goimapnotify { }; 1386 1392 ··· 6965 6971 inherit (darwin.apple_sdk.frameworks) CoreFoundation; 6966 6972 }; 6967 6973 6974 + ombi = callPackage ../servers/ombi { }; 6975 + 6968 6976 omping = callPackage ../applications/networking/omping { }; 6969 6977 6970 6978 onefetch = callPackage ../tools/misc/onefetch { ··· 9571 9579 zinnia = callPackage ../tools/inputmethods/zinnia { }; 9572 9580 tegaki-zinnia-japanese = callPackage ../tools/inputmethods/tegaki-zinnia-japanese { }; 9573 9581 9574 - zimreader = callPackage ../tools/text/zimreader { }; 9575 - 9576 9582 zimwriterfs = callPackage ../tools/text/zimwriterfs { }; 9577 9583 9578 9584 par = callPackage ../tools/text/par { }; ··· 9926 9932 }; 9927 9933 }; 9928 9934 9935 + clang_12 = llvmPackages_12.clang; 9929 9936 clang_11 = llvmPackages_11.clang; 9930 9937 clang_10 = llvmPackages_10.clang; 9931 9938 clang_9 = llvmPackages_9.clang; ··· 10803 10810 lld_9 = llvmPackages_9.lld; 10804 10811 lld_10 = llvmPackages_10.lld; 10805 10812 lld_11 = llvmPackages_11.lld; 10813 + lld_12 = llvmPackages_12.lld; 10806 10814 10807 10815 lldb = llvmPackages_latest.lldb; 10808 10816 lldb_5 = llvmPackages_5.lldb; ··· 10812 10820 lldb_9 = llvmPackages_9.lldb; 10813 10821 lldb_10 = llvmPackages_10.lldb; 10814 10822 lldb_11 = llvmPackages_11.lldb; 10823 + lldb_12 = llvmPackages_12.lldb; 10815 10824 10816 10825 llvm = llvmPackages.llvm; 10817 10826 llvm-manpages = llvmPackages.llvm-manpages; 10818 10827 10828 + llvm_12 = llvmPackages_12.llvm; 10819 10829 llvm_11 = llvmPackages_11.llvm; 10820 10830 llvm_10 = llvmPackages_10.llvm; 10821 10831 llvm_9 = llvmPackages_9.llvm; ··· 10880 10890 stdenv = gcc7Stdenv; 10881 10891 })); 10882 10892 10893 + llvmPackages_12 = callPackage ../development/compilers/llvm/12 ({ 10894 + inherit (stdenvAdapters) overrideCC; 10895 + buildLlvmTools = buildPackages.llvmPackages_12.tools; 10896 + targetLlvmLibraries = targetPackages.llvmPackages_12.libraries; 10897 + } // lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { 10898 + stdenv = gcc7Stdenv; 10899 + }); 10900 + 10883 10901 llvmPackages_latest = llvmPackages_11; 10884 10902 10885 10903 llvmPackages_rocm = recurseIntoAttrs (callPackage ../development/compilers/llvm/rocm { }); ··· 21042 21060 21043 21061 koreader = callPackage ../applications/misc/koreader {}; 21044 21062 21063 + kreative-square-fonts = callPackage ../data/fonts/kreative-square-fonts { }; 21064 + 21045 21065 lato = callPackage ../data/fonts/lato {}; 21046 21066 21047 21067 league-of-moveable-type = callPackage ../data/fonts/league-of-moveable-type {}; ··· 21167 21187 mustache-spec = callPackage ../data/documentation/mustache-spec { }; 21168 21188 21169 21189 mustache-go = callPackage ../development/tools/mustache-go { }; 21190 + 21191 + mustache-hpp = callPackage ../development/libraries/mustache-hpp { }; 21170 21192 21171 21193 myrica = callPackage ../data/fonts/myrica { }; 21172 21194 ··· 23733 23755 ffmpeg = ffmpeg_2; 23734 23756 }; 23735 23757 23736 - kiwix = callPackage ../applications/misc/kiwix { }; 23758 + kiwix = libsForQt5.callPackage ../applications/misc/kiwix { }; 23737 23759 23738 23760 klayout = libsForQt5.callPackage ../applications/misc/klayout { }; 23739 23761 ··· 25523 25545 }; 25524 25546 25525 25547 lightdm_gtk_greeter = callPackage ../applications/display-managers/lightdm/gtk-greeter.nix { 25526 - inherit (xfce) exo; 25548 + inherit (xfce) xfce4-dev-tools; 25527 25549 }; 25528 25550 25529 25551 lightdm-mini-greeter = callPackage ../applications/display-managers/lightdm-mini-greeter { }; ··· 26011 26033 }); 26012 26034 26013 26035 unigine-valley = callPackage ../applications/graphics/unigine-valley { }; 26036 + 26037 + unipicker = callPackage ../applications/misc/unipicker { }; 26014 26038 26015 26039 unison = callPackage ../applications/networking/sync/unison { 26016 26040 ocamlPackages = ocaml-ng.ocamlPackages_4_09; ··· 29516 29540 nixStable 29517 29541 nixUnstable 29518 29542 nixFlakes; 29543 + 29544 + nixStatic = pkgsStatic.nix; 29519 29545 29520 29546 nixops = callPackage ../tools/package-management/nixops { }; 29521 29547
+21 -11
pkgs/top-level/static.nix
··· 93 93 clangStdenv = foldl (flip id) super.clangStdenv staticAdapters; 94 94 libcxxStdenv = foldl (flip id) super.libcxxStdenv staticAdapters; 95 95 96 - zlib = super.zlib.override { 97 - # Don’t use new stdenv zlib because 98 - # it doesn’t like the --disable-shared flag 96 + boost = super.boost.override { 97 + # Don’t use new stdenv for boost because it doesn’t like the 98 + # --disable-shared flag 99 99 stdenv = super.stdenv; 100 100 }; 101 + 102 + curl = super.curl.override { 103 + # brotli doesn't build static (Mar. 2021) 104 + brotliSupport = false; 105 + # disable gss becuase of: undefined reference to `k5_bcmp' 106 + gssSupport = false; 107 + }; 108 + 109 + ocaml-ng = self.lib.mapAttrs (_: set: 110 + if set ? overrideScope' then set.overrideScope' ocamlStaticAdapter else set 111 + ) super.ocaml-ng; 112 + 101 113 openssl = super.openssl_1_1.overrideAttrs (o: { 102 114 # OpenSSL doesn't like the `--enable-static` / `--disable-shared` flags. 103 115 configureFlags = (removeUnknownConfigureFlags o.configureFlags); 104 116 }); 105 - boost = super.boost.override { 106 - # Don’t use new stdenv for boost because it doesn’t like the 107 - # --disable-shared flag 108 - stdenv = super.stdenv; 109 - }; 117 + 110 118 perl = super.perl.override { 111 119 # Don’t use new stdenv zlib because 112 120 # it doesn’t like the --disable-shared flag 113 121 stdenv = super.stdenv; 114 122 }; 115 123 116 - ocaml-ng = self.lib.mapAttrs (_: set: 117 - if set ? overrideScope' then set.overrideScope' ocamlStaticAdapter else set 118 - ) super.ocaml-ng; 124 + zlib = super.zlib.override { 125 + # Don’t use new stdenv zlib because 126 + # it doesn’t like the --disable-shared flag 127 + stdenv = super.stdenv; 128 + }; 119 129 }