Merge staging-next into staging

authored by github-actions[bot] and committed by GitHub 61a01768 e5bcbab4

+641 -161
+2
.gitignore
··· 2 2 ,* 3 3 .*.swp 4 4 .*.swo 5 + .\#* 6 + \#*\# 5 7 .idea/ 6 8 .vscode/ 7 9 outputs/
+22
nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
··· 39 39 </listitem> 40 40 <listitem> 41 41 <para> 42 + <link xlink:href="https://github.com/ellie/atuin">atuin</link>, 43 + a sync server for shell history. Available as 44 + <link linkend="opt-services.atuin.enable">services.atuin</link>. 45 + </para> 46 + </listitem> 47 + <listitem> 48 + <para> 42 49 <link xlink:href="https://v2raya.org">v2rayA</link>, a Linux 43 50 web GUI client of Project V which supports V2Ray, Xray, SS, 44 51 SSR, Trojan and Pingtunnel. Available as ··· 59 66 and 60 67 <link xlink:href="https://github.com/kolloch/crate2nix">crate2nix</link> 61 68 instead. 69 + </para> 70 + </listitem> 71 + <listitem> 72 + <para> 73 + <literal>borgbackup</literal> module now has an option for 74 + inhibiting system sleep while backups are running, defaulting 75 + to off (not inhibiting sleep), available as 76 + <link linkend="opt-services.borgbackup.jobs._name_.inhibitsSleep"><literal>services.borgbackup.jobs.&lt;name&gt;.inhibitsSleep</literal></link>. 62 77 </para> 63 78 </listitem> 64 79 <listitem> ··· 236 251 <link xlink:href="https://docs.getutm.app/">UTM</link> 237 252 virtualisation 238 253 <link xlink:href="https://search.nixos.org/packages?channel=unstable&amp;show=utm&amp;from=0&amp;size=1&amp;sort=relevance&amp;type=packages&amp;query=utm">package</link>. 254 + </para> 255 + </listitem> 256 + <listitem> 257 + <para> 258 + The new option <literal>users.motdFile</literal> allows 259 + configuring a Message Of The Day that can be updated 260 + dynamically. 239 261 </para> 240 262 </listitem> 241 263 <listitem>
+6
nixos/doc/manual/release-notes/rl-2305.section.md
··· 18 18 19 19 - [fzf](https://github.com/junegunn/fzf), a command line fuzzyfinder. Available as [programs.fzf](#opt-programs.fzf.fuzzyCompletion). 20 20 21 + - [atuin](https://github.com/ellie/atuin), a sync server for shell history. Available as [services.atuin](#opt-services.atuin.enable). 22 + 21 23 - [v2rayA](https://v2raya.org), a Linux web GUI client of Project V which supports V2Ray, Xray, SS, SSR, Trojan and Pingtunnel. Available as [services.v2raya](options.html#opt-services.v2raya.enable). 22 24 23 25 ## Backward Incompatibilities {#sec-release-23.05-incompatibilities} ··· 25 27 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> 26 28 27 29 - `carnix` and `cratesIO` has been removed due to being unmaintained, use alternatives such as [naersk](https://github.com/nix-community/naersk) and [crate2nix](https://github.com/kolloch/crate2nix) instead. 30 + 31 + - `borgbackup` module now has an option for inhibiting system sleep while backups are running, defaulting to off (not inhibiting sleep), available as [`services.borgbackup.jobs.<name>.inhibitsSleep`](#opt-services.borgbackup.jobs._name_.inhibitsSleep). 28 32 29 33 - The EC2 image module no longer fetches instance metadata in stage-1. This results in a significantly smaller initramfs, since network drivers no longer need to be included, and faster boots, since metadata fetching can happen in parallel with startup of other services. 30 34 This breaks services which rely on metadata being present by the time stage-2 is entered. Anything which reads EC2 metadata from `/etc/ec2-metadata` should now have an `after` dependency on `fetch-ec2-metadata.service` ··· 69 73 - `mastodon` now supports connection to a remote `PostgreSQL` database. 70 74 71 75 - A new `virtualisation.rosetta` module was added to allow running `x86_64` binaries through [Rosetta](https://developer.apple.com/documentation/apple-silicon/about-the-rosetta-translation-environment) inside virtualised NixOS guests on Apple silicon. This feature works by default with the [UTM](https://docs.getutm.app/) virtualisation [package](https://search.nixos.org/packages?channel=unstable&show=utm&from=0&size=1&sort=relevance&type=packages&query=utm). 76 + 77 + - The new option `users.motdFile` allows configuring a Message Of The Day that can be updated dynamically. 72 78 73 79 - Resilio sync secret keys can now be provided using a secrets file at runtime, preventing these secrets from ending up in the Nix store. 74 80
+1
nixos/modules/module-list.nix
··· 559 559 ./services/misc/airsonic.nix 560 560 ./services/misc/ankisyncd.nix 561 561 ./services/misc/apache-kafka.nix 562 + ./services/misc/atuin.nix 562 563 ./services/misc/autofs.nix 563 564 ./services/misc/autorandr.nix 564 565 ./services/misc/bazarr.nix
+10 -4
nixos/modules/programs/streamdeck-ui.nix
··· 4 4 5 5 let 6 6 cfg = config.programs.streamdeck-ui; 7 - in { 7 + in 8 + { 8 9 options.programs.streamdeck-ui = { 9 10 enable = mkEnableOption (lib.mdDoc "streamdeck-ui"); 10 11 ··· 13 14 type = types.bool; 14 15 description = lib.mdDoc "Whether streamdeck-ui should be started automatically."; 15 16 }; 17 + 18 + package = mkPackageOption pkgs "streamdeck-ui" { 19 + default = [ "streamdeck-ui" ]; 20 + }; 21 + 16 22 }; 17 23 18 24 config = mkIf cfg.enable { 19 25 environment.systemPackages = with pkgs; [ 20 - streamdeck-ui 21 - (mkIf cfg.autoStart (makeAutostartItem { name = "streamdeck-ui"; package = streamdeck-ui; })) 26 + cfg.package 27 + (mkIf cfg.autoStart (makeAutostartItem { name = "streamdeck-ui"; package = cfg.package; })) 22 28 ]; 23 29 24 - services.udev.packages = with pkgs; [ streamdeck-ui ]; 30 + services.udev.packages = [ cfg.package ]; 25 31 }; 26 32 27 33 meta.maintainers = with maintainers; [ majiir ];
+18 -2
nixos/modules/security/pam.nix
··· 694 694 optionalString (cfg.limits != []) '' 695 695 session required ${pkgs.pam}/lib/security/pam_limits.so conf=${makeLimitsConf cfg.limits} 696 696 '' + 697 - optionalString (cfg.showMotd && config.users.motd != null) '' 697 + optionalString (cfg.showMotd && (config.users.motd != null || config.users.motdFile != null)) '' 698 698 session optional ${pkgs.pam}/lib/security/pam_motd.so motd=${motd} 699 699 '' + 700 700 optionalString (cfg.enableAppArmor && config.security.apparmor.enable) '' ··· 775 775 }; 776 776 })); 777 777 778 - motd = pkgs.writeText "motd" config.users.motd; 778 + motd = if isNull config.users.motdFile 779 + then pkgs.writeText "motd" config.users.motd 780 + else config.users.motdFile; 779 781 780 782 makePAMService = name: service: 781 783 { name = "pam.d/${name}"; ··· 1199 1201 description = lib.mdDoc "Message of the day shown to users when they log in."; 1200 1202 }; 1201 1203 1204 + users.motdFile = mkOption { 1205 + default = null; 1206 + example = "/etc/motd"; 1207 + type = types.nullOr types.path; 1208 + description = lib.mdDoc "A file containing the message of the day shown to users when they log in."; 1209 + }; 1202 1210 }; 1203 1211 1204 1212 1205 1213 ###### implementation 1206 1214 1207 1215 config = { 1216 + assertions = [ 1217 + { 1218 + assertion = isNull config.users.motd || isNull config.users.motdFile; 1219 + message = '' 1220 + Only one of users.motd and users.motdFile can be set. 1221 + ''; 1222 + } 1223 + ]; 1208 1224 1209 1225 environment.systemPackages = 1210 1226 # Include the PAM modules in the system path mostly for the manpages.
+21 -4
nixos/modules/services/backup/borgbackup.nix
··· 19 19 concatStringsSep " " 20 20 (mapAttrsToList (x: y: "--keep-${x}=${toString y}") cfg.prune.keep); 21 21 22 - mkBackupScript = cfg: '' 22 + mkBackupScript = name: cfg: pkgs.writeShellScript "${name}-script" ('' 23 + set -e 23 24 on_exit() 24 25 { 25 26 exitStatus=$? ··· 61 62 ${optionalString (cfg.prune.prefix != null) "--glob-archives ${escapeShellArg "${cfg.prune.prefix}*"}"} \ 62 63 $extraPruneArgs 63 64 ${cfg.postPrune} 64 - ''; 65 + ''); 65 66 66 67 mkPassEnv = cfg: with cfg.encryption; 67 68 if passCommand != null then ··· 73 74 mkBackupService = name: cfg: 74 75 let 75 76 userHome = config.users.users.${cfg.user}.home; 76 - in nameValuePair "borgbackup-job-${name}" { 77 + backupJobName = "borgbackup-job-${name}"; 78 + backupScript = mkBackupScript backupJobName cfg; 79 + in nameValuePair backupJobName { 77 80 description = "BorgBackup job ${name}"; 78 81 path = with pkgs; [ 79 82 borgbackup openssh 80 83 ]; 81 - script = mkBackupScript cfg; 84 + script = "exec " + optionalString cfg.inhibitsSleep ''\ 85 + ${pkgs.systemd}/bin/systemd-inhibit \ 86 + --who="borgbackup" \ 87 + --what="sleep" \ 88 + --why="Scheduled backup" \ 89 + '' + backupScript; 82 90 serviceConfig = { 83 91 User = cfg.user; 84 92 Group = cfg.group; ··· 338 346 {manpage}`systemd.timer(5)` 339 347 which triggers the backup immediately if the last trigger 340 348 was missed (e.g. if the system was powered down). 349 + ''; 350 + }; 351 + 352 + inhibitsSleep = mkOption { 353 + default = false; 354 + type = types.bool; 355 + example = true; 356 + description = lib.mdDoc '' 357 + Prevents the system from sleeping while backing up. 341 358 ''; 342 359 }; 343 360
+85
nixos/modules/services/misc/atuin.nix
··· 1 + { config, pkgs, lib, ... }: 2 + 3 + with lib; 4 + 5 + let 6 + cfg = config.services.atuin; 7 + in 8 + { 9 + options = { 10 + services.atuin = { 11 + enable = mkEnableOption (mdDoc "Enable server for shell history sync with atuin."); 12 + 13 + openRegistration = mkOption { 14 + type = types.bool; 15 + default = false; 16 + description = mdDoc "Allow new user registrations with the atuin server."; 17 + }; 18 + 19 + path = mkOption { 20 + type = types.str; 21 + default = ""; 22 + description = mdDoc "A path to prepend to all the routes of the server."; 23 + }; 24 + 25 + host = mkOption { 26 + type = types.str; 27 + default = "127.0.0.1"; 28 + description = mdDoc "The host address the atuin server should listen on."; 29 + }; 30 + 31 + port = mkOption { 32 + type = types.port; 33 + default = 8888; 34 + description = mdDoc "The port the atuin server should listen on."; 35 + }; 36 + 37 + openFirewall = mkOption { 38 + type = types.bool; 39 + default = false; 40 + description = mdDoc "Open ports in the firewall for the atuin server."; 41 + }; 42 + 43 + }; 44 + }; 45 + 46 + config = mkIf cfg.enable { 47 + 48 + # enable postgres to host atuin db 49 + services.postgresql = { 50 + enable = true; 51 + ensureUsers = [{ 52 + name = "atuin"; 53 + ensurePermissions = { 54 + "DATABASE atuin" = "ALL PRIVILEGES"; 55 + }; 56 + }]; 57 + ensureDatabases = [ "atuin" ]; 58 + }; 59 + 60 + systemd.services.atuin = { 61 + description = "atuin server"; 62 + after = [ "network.target" "postgresql.service" ]; 63 + wantedBy = [ "multi-user.target" ]; 64 + 65 + serviceConfig = { 66 + ExecStart = "${pkgs.atuin}/bin/atuin server start"; 67 + RuntimeDirectory = "atuin"; 68 + RuntimeDirectoryMode = "0700"; 69 + DynamicUser = true; 70 + }; 71 + 72 + environment = { 73 + ATUIN_HOST = cfg.host; 74 + ATUIN_PORT = toString cfg.port; 75 + ATUIN_OPEN_REGISTRATION = boolToString cfg.openRegistration; 76 + ATUIN_DB_URI = "postgresql:///atuin"; 77 + ATUIN_PATH = cfg.path; 78 + ATUIN_CONFIG_DIR = "/run/atuin"; # required to start, but not used as configuration is via environment variables 79 + }; 80 + }; 81 + 82 + networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.port ]; 83 + 84 + }; 85 + }
+9 -2
nixos/modules/services/web-apps/miniflux.nix
··· 21 21 services.miniflux = { 22 22 enable = mkEnableOption (lib.mdDoc "miniflux and creates a local postgres database for it"); 23 23 24 + package = mkOption { 25 + type = types.package; 26 + default = pkgs.miniflux; 27 + defaultText = literalExpression "pkgs.miniflux"; 28 + description = lib.mdDoc "Miniflux package to use."; 29 + }; 30 + 24 31 config = mkOption { 25 32 type = types.attrsOf types.str; 26 33 example = literalExpression '' ··· 89 96 after = [ "network.target" "postgresql.service" "miniflux-dbsetup.service" ]; 90 97 91 98 serviceConfig = { 92 - ExecStart = "${pkgs.miniflux}/bin/miniflux"; 99 + ExecStart = "${cfg.package}/bin/miniflux"; 93 100 User = dbUser; 94 101 DynamicUser = true; 95 102 RuntimeDirectory = "miniflux"; ··· 122 129 123 130 environment = cfg.config; 124 131 }; 125 - environment.systemPackages = [ pkgs.miniflux ]; 132 + environment.systemPackages = [ cfg.package ]; 126 133 }; 127 134 }
+1
nixos/tests/all-tests.nix
··· 80 80 apparmor = handleTest ./apparmor.nix {}; 81 81 atd = handleTest ./atd.nix {}; 82 82 atop = handleTest ./atop.nix {}; 83 + atuin = handleTest ./atuin.nix {}; 83 84 auth-mysql = handleTest ./auth-mysql.nix {}; 84 85 avahi = handleTest ./avahi.nix {}; 85 86 avahi-with-resolved = handleTest ./avahi.nix { networkd = true; };
+65
nixos/tests/atuin.nix
··· 1 + import ./make-test-python.nix ({ pkgs, lib, ... }: 2 + 3 + let 4 + testPort = 8888; 5 + testUser = "testerman"; 6 + testPass = "password"; 7 + testEmail = "test.testerman@test.com"; 8 + in 9 + with lib; 10 + { 11 + name = "atuin"; 12 + meta.maintainers = with pkgs.lib.maintainers; [ devusb ]; 13 + 14 + nodes = { 15 + server = 16 + { ... }: 17 + { 18 + services.atuin = { 19 + enable = true; 20 + port = testPort; 21 + host = "0.0.0.0"; 22 + openFirewall = true; 23 + openRegistration = true; 24 + }; 25 + }; 26 + 27 + client = 28 + { ... }: 29 + { }; 30 + 31 + }; 32 + 33 + testScript = with pkgs; '' 34 + start_all() 35 + 36 + # wait for atuin server startup 37 + server.wait_for_unit("atuin.service") 38 + server.wait_for_open_port(${toString testPort}) 39 + 40 + # configure atuin client on server node 41 + server.execute("mkdir -p ~/.config/atuin") 42 + server.execute("echo 'sync_address = \"http://localhost:${toString testPort}\"' > ~/.config/atuin/config.toml") 43 + 44 + # register with atuin server on server node 45 + server.succeed("${atuin}/bin/atuin register -u ${testUser} -p ${testPass} -e ${testEmail}") 46 + _, key = server.execute("${atuin}/bin/atuin key") 47 + 48 + # store test record in atuin server and sync 49 + server.succeed("ATUIN_SESSION=$(${atuin}/bin/atuin uuid) ${atuin}/bin/atuin history start 'shazbot'") 50 + server.succeed("${atuin}/bin/atuin sync") 51 + 52 + # configure atuin client on client node 53 + client.execute("mkdir -p ~/.config/atuin") 54 + client.execute("echo 'sync_address = \"http://server:${toString testPort}\"' > ~/.config/atuin/config.toml") 55 + 56 + # log in to atuin server on client node 57 + client.succeed(f"${atuin}/bin/atuin login -u ${testUser} -p ${testPass} -k {key}") 58 + 59 + # pull records from atuin server 60 + client.succeed("${atuin}/bin/atuin sync -f") 61 + 62 + # check for test record 63 + client.succeed("ATUIN_SESSION=$(${atuin}/bin/atuin uuid) ${atuin}/bin/atuin history list | grep shazbot") 64 + ''; 65 + })
+20
nixos/tests/borgbackup.nix
··· 99 99 environment.BORG_RSH = "ssh -oStrictHostKeyChecking=no -i /root/id_ed25519"; 100 100 }; 101 101 102 + sleepInhibited = { 103 + inhibitsSleep = true; 104 + # Blocks indefinitely while "backing up" so that we can try to suspend the local system while it's hung 105 + dumpCommand = pkgs.writeScript "sleepInhibited" '' 106 + cat /dev/zero 107 + ''; 108 + repo = remoteRepo; 109 + encryption.mode = "none"; 110 + startAt = [ ]; 111 + environment.BORG_RSH = "ssh -oStrictHostKeyChecking=no -i /root/id_ed25519"; 112 + }; 113 + 102 114 }; 103 115 }; 104 116 ··· 204 216 client.wait_for_unit("network.target") 205 217 client.systemctl("start --wait borgbackup-job-commandFail") 206 218 client.succeed("systemctl is-failed borgbackup-job-commandFail") 219 + 220 + with subtest("sleepInhibited"): 221 + server.wait_for_unit("sshd.service") 222 + client.wait_for_unit("network.target") 223 + client.fail("systemd-inhibit --list | grep -q borgbackup") 224 + client.systemctl("start borgbackup-job-sleepInhibited") 225 + client.wait_until_succeeds("systemd-inhibit --list | grep -q borgbackup") 226 + client.systemctl("stop borgbackup-job-sleepInhibited") 207 227 ''; 208 228 })
+2 -4
nixos/tests/prometheus-exporters.nix
··· 1244 1244 exporterConfig.enable = true; 1245 1245 exporterConfig.controllers = [{ }]; 1246 1246 exporterTest = '' 1247 - wait_for_unit("prometheus-unpoller-exporter.service") 1248 - wait_for_open_port(9130) 1249 - succeed( 1250 - "curl -sSf localhost:9130/metrics | grep 'unpoller_build_info{.\\+} 1'" 1247 + wait_until_succeeds( 1248 + 'journalctl -eu prometheus-unpoller-exporter.service -o cat | grep "Connection Error"' 1251 1249 ) 1252 1250 ''; 1253 1251 };
+22
pkgs/applications/audio/pms/default.nix
··· 1 + { lib, fetchFromGitHub, buildGoModule }: 2 + 3 + buildGoModule { 4 + pname = "pms"; 5 + version = "unstable-2022-11-12"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "ambientsound"; 9 + repo = "pms"; 10 + rev = "40d6e37111293187ab4542c7a64bd73d1b13974f"; 11 + sha256 = "sha256-294MiS4c2PO2lFSSRrg8ns7sXzZsEUAqPG3q2z3TRUg="; 12 + }; 13 + 14 + vendorHash = "sha256-XNFzG4hGDUN0wWbpBoQWUH1bWIgoYcyP4tNRGSV4ro4="; 15 + 16 + meta = with lib; { 17 + description = "An interactive Vim-like console client for MPD"; 18 + homepage = "https://ambientsound.github.io/pms/"; 19 + license = licenses.mit; 20 + maintainers = with maintainers; [ deejayem ]; 21 + }; 22 + }
+12
pkgs/applications/editors/vim/plugins/generated.nix
··· 3596 3596 meta.homepage = "https://github.com/rktjmp/hotpot.nvim/"; 3597 3597 }; 3598 3598 3599 + html5-vim = buildVimPluginFrom2Nix { 3600 + pname = "html5.vim"; 3601 + version = "2020-08-22"; 3602 + src = fetchFromGitHub { 3603 + owner = "othree"; 3604 + repo = "html5.vim"; 3605 + rev = "7c9f6f38ce4f9d35db7eeedb764035b6b63922c6"; 3606 + sha256 = "1hgbvdpmn3yffk5ahz7hz36a7f5zjc1k3pan5ybgncmdq9f4rzq6"; 3607 + }; 3608 + meta.homepage = "https://github.com/othree/html5.vim/"; 3609 + }; 3610 + 3599 3611 hydra-nvim = buildVimPluginFrom2Nix { 3600 3612 pname = "hydra.nvim"; 3601 3613 version = "2022-11-20";
+1
pkgs/applications/editors/vim/plugins/vim-plugin-names
··· 301 301 https://github.com/urbit/hoon.vim/,, 302 302 https://github.com/phaazon/hop.nvim/,, 303 303 https://github.com/rktjmp/hotpot.nvim/,, 304 + https://github.com/othree/html5.vim/,HEAD, 304 305 https://github.com/anuvyklack/hydra.nvim/,HEAD, 305 306 https://github.com/mboughaba/i3config.vim/,, 306 307 https://github.com/cocopon/iceberg.vim/,,
+20 -24
pkgs/applications/graphics/evilpixie/default.nix
··· 1 - { mkDerivation 2 - , lib 1 + { lib 2 + , stdenv 3 3 , fetchFromGitHub 4 - , makeDesktopItem 5 - , qmake 4 + , meson 5 + , ninja 6 + , pkg-config 7 + , wrapQtAppsHook 6 8 , qtbase 7 9 , libpng 8 10 , giflib 11 + , libjpeg 9 12 , impy 10 13 }: 11 14 12 - let 13 - desktopItem = makeDesktopItem { 14 - name = "EvilPixie"; 15 - desktopName = "EvilPixie"; 16 - exec = "evilpixie %F"; 17 - icon = "evilpixie"; 18 - genericName = "Image Editor"; 19 - categories = [ "Graphics" "2DGraphics" "RasterGraphics" ]; 20 - mimeTypes = [ "image/bmp" "image/gif" "image/jpeg" "image/jpg" "image/png" "image/x-pcx" "image/x-targa" "image/x-tga" ]; 21 - }; 22 - 23 - in mkDerivation rec { 15 + stdenv.mkDerivation rec { 24 16 pname = "evilpixie"; 25 - version = "0.2.1"; 17 + version = "0.3"; 26 18 27 19 src = fetchFromGitHub { 28 20 owner = "bcampbell"; 29 21 repo = "evilpixie"; 30 22 rev = "v${version}"; 31 - sha256 = "0dwgfr8kmkfppgf5wx9i5f7fjz3gxk0ji1l06x1z4r3vj52hdbph"; 23 + sha256 = "sha256-t7ccaMXaCanCyn3oV8WJ11bhF7xTBkd992AheFJpSGQ="; 32 24 }; 33 25 34 26 nativeBuildInputs = [ 35 - qmake 27 + meson 28 + ninja 29 + pkg-config 30 + wrapQtAppsHook 36 31 ]; 37 32 38 33 buildInputs = [ 39 34 qtbase 40 35 libpng 41 36 giflib 37 + libjpeg 42 38 impy 43 39 ]; 44 - 45 - postInstall = '' 46 - ln -s ${desktopItem}/share/applications $out/share 47 - install -Dm 444 icon_128x128.png $out/share/icons/hicolor/128x128/apps/evilpixie.png 48 - ''; 49 40 50 41 meta = with lib; { 51 42 description = "Pixel-oriented paint program, modelled on Deluxe Paint"; ··· 54 45 license = licenses.gpl3Only; 55 46 maintainers = with maintainers; [ fgaz ]; 56 47 platforms = platforms.all; 48 + # Undefined symbols for architecture x86_64: 49 + # "_bundle_path", referenced from: App::SetupPaths() in src_app.cpp.o 50 + broken = stdenv.isDarwin || 51 + # https://github.com/bcampbell/evilpixie/issues/28 52 + stdenv.isAarch64; 57 53 }; 58 54 } 59 55
+2 -2
pkgs/applications/misc/bemenu/default.nix
··· 11 11 12 12 stdenv.mkDerivation rec { 13 13 pname = "bemenu"; 14 - version = "0.6.13"; 14 + version = "0.6.14"; 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "Cloudef"; 18 18 repo = pname; 19 19 rev = version; 20 - sha256 = "sha256-YGaAJOyVZBHEWQuZVfPIIbtuntv1klQk9GcWRN+oVF4="; 20 + sha256 = "sha256-bMnnuT+LNNKphmvVcD1aaNZxasSGOEcAveC4stCieG8="; 21 21 }; 22 22 23 23 nativeBuildInputs = [ pkg-config pcre ];
+26
pkgs/applications/misc/seashells/default.nix
··· 1 + { lib, python3Packages }: 2 + 3 + python3Packages.buildPythonApplication rec { 4 + pname = "seashells"; 5 + version = "0.1.2"; 6 + format = "setuptools"; 7 + 8 + src = python3Packages.fetchPypi { 9 + inherit pname version; 10 + sha256 = "sha256-RBs28FC7f82DrxRcmvTP9nljVpm7tjrGuvr05l32hDM="; 11 + }; 12 + 13 + doCheck = false; # there are no tests 14 + pythonImportsCheck = [ "seashells" ]; 15 + 16 + meta = with lib; { 17 + homepage = "https://seashells.io/"; 18 + description = "Pipe command-line programs to seashells.io"; 19 + longDescription = '' 20 + Official cient for seashells.io, which allows you to view 21 + command-line output on the web, in real-time. 22 + ''; 23 + license = licenses.mit; 24 + maintainers = with maintainers; [ deejayem ]; 25 + }; 26 + }
+2 -1
pkgs/applications/networking/gns3/gui.nix
··· 46 46 postPatch = '' 47 47 substituteInPlace requirements.txt \ 48 48 --replace "psutil==" "psutil>=" \ 49 - --replace "jsonschema>=4.17.0,<4.18" "jsonschema" 49 + --replace "jsonschema>=4.17.0,<4.18" "jsonschema" \ 50 + --replace "sentry-sdk==1.10.1,<1.11" "sentry-sdk" 50 51 ''; 51 52 52 53 meta = with lib; {
+2 -1
pkgs/applications/networking/gns3/server.nix
··· 24 24 postPatch = '' 25 25 substituteInPlace requirements.txt \ 26 26 --replace "psutil==" "psutil>=" \ 27 - --replace "jsonschema>=4.17.0,<4.18" "jsonschema" 27 + --replace "jsonschema>=4.17.0,<4.18" "jsonschema" \ 28 + --replace "sentry-sdk==1.10.1,<1.11" "sentry-sdk" 28 29 ''; 29 30 30 31 propagatedBuildInputs = with python3.pkgs; [
+2 -2
pkgs/applications/version-management/git-and-tools/git-delete-merged-branches/default.nix
··· 2 2 3 3 python3Packages.buildPythonApplication rec { 4 4 pname = "git-delete-merged-branches"; 5 - version = "7.2.2"; 5 + version = "7.3.1"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "hartwork"; 9 9 repo = pname; 10 10 rev = "refs/tags/${version}"; 11 - sha256 = "sha256-Q83s0kkrArRndxQa+V+eZw+iaJje7VR+aPScB33l1W0="; 11 + sha256 = "sha256-9Y4n8OWZMwGoCunqwWtkDeDvRcJ4aepw1vgMXFHkhx0="; 12 12 }; 13 13 14 14 propagatedBuildInputs = with python3Packages; [
+3 -3
pkgs/applications/virtualization/docker/compose.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "docker-compose"; 5 - version = "2.14.0"; 5 + version = "2.14.1"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "docker"; 9 9 repo = "compose"; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-6dTVDAFq5CwLvTzOczyaM+ZILKjKZzR2SAaRq2hqk7M="; 11 + sha256 = "sha256-FxioqEPVHI6PlKfcQlKbPVj6LGyUsXabCpJh+zY3gco="; 12 12 }; 13 13 14 14 postPatch = '' ··· 16 16 rm -rf e2e/ 17 17 ''; 18 18 19 - vendorSha256 = "sha256-B6xqMsspWexTdYX+o2BJNlXuJFL7/rv8oexFUxOO8BI="; 19 + vendorSha256 = "sha256-sWEtpwtr2/2qNWyHZdiZRYdw/LTwmIQKM9nCaHxL7ns="; 20 20 21 21 ldflags = [ "-X github.com/docker/compose/v2/internal.Version=${version}" "-s" "-w" ]; 22 22
+2 -1
pkgs/common-updater/directory-listing-updater.nix
··· 11 11 , odd-unstable ? false 12 12 , patchlevel-unstable ? false 13 13 , url ? null 14 + , extraRegex ? null 14 15 }: 15 16 16 17 genericUpdater { 17 18 inherit pname version attrPath ignoredVersions rev-prefix odd-unstable patchlevel-unstable; 18 - versionLister = "${common-updater-scripts}/bin/list-directory-versions ${lib.optionalString (url != null) "--url=${lib.escapeShellArg url}"}"; 19 + versionLister = "${common-updater-scripts}/bin/list-directory-versions ${lib.optionalString (url != null) "--url=${lib.escapeShellArg url}"} ${lib.optionalString (extraRegex != null) "--extra-regex=${lib.escapeShellArg extraRegex}"}"; 19 20 }
+6 -2
pkgs/common-updater/scripts/list-directory-versions
··· 26 26 parser.add_argument("--url", help="url of the page that lists the package versions") 27 27 parser.add_argument("--file", help="file name for writing debugging information") 28 28 29 + parser.add_argument("--extra-regex", help="additional regex to filter versions with") 30 + 29 31 30 32 if __name__ == "__main__": 31 33 args = parser.parse_args() ··· 59 61 link_url = link.get("href", None) 60 62 if link_url is not None: 61 63 match = re.fullmatch( 62 - rf"{args.pname}-([\d.]+?(-[\d\w.-]+?)?)(\.tar)?(\.[^.]*)", link_url 64 + rf"(.*/)?{args.pname}-([\d.]+?(-[\d\w.-]+?)?)(\.tar)?(\.[^.]*)", link_url 63 65 ) 64 66 if match: 65 - print(match.group(1)) 67 + version = match.group(2) 68 + if (not args.extra_regex) or re.fullmatch(args.extra_regex, version): 69 + print(version)
+2 -2
pkgs/development/guile-modules/guile-gcrypt/default.nix
··· 10 10 11 11 stdenv.mkDerivation rec { 12 12 pname = "guile-gcrypt"; 13 - version = "0.3.0"; 13 + version = "0.4.0"; 14 14 15 15 src = fetchFromGitea { 16 16 domain = "notabug.org"; 17 17 owner = "cwebber"; 18 18 repo = "guile-gcrypt"; 19 19 rev = "v${version}"; 20 - sha256 = "sha256-lAaiKBOdTFWEWsmwKgx0C67ACvtnEKUxti66dslzSVQ="; 20 + hash = "sha256-vbm31EsOJiMeTs2tu5KPXckxPcAQbi3/PGJ5EHCC5VQ="; 21 21 }; 22 22 23 23 nativeBuildInputs = [
+11 -2
pkgs/development/interpreters/python/cpython/2.7/default.nix
··· 35 35 , stripConfig ? false 36 36 , stripIdlelib ? false 37 37 , stripTests ? false 38 + , stripLibs ? [ ] 38 39 , pythonAttr ? "python${sourceVersion.major}${sourceVersion.minor}" 39 40 }: 40 41 ··· 325 326 '' + optionalString strip2to3 '' 326 327 rm -R $out/bin/2to3 $out/lib/python*/lib2to3 327 328 '' + optionalString stripConfig '' 328 - rm -R $out/bin/python*-config $out/lib/python*/config-* 329 + rm -R $out/bin/python*-config $out/lib/python*/config* 329 330 '' + optionalString stripIdlelib '' 330 331 # Strip IDLE 331 332 rm -R $out/bin/idle* $out/lib/python*/idlelib 332 333 '' + optionalString stripTests '' 333 334 # Strip tests 334 335 rm -R $out/lib/python*/test $out/lib/python*/**/test{,s} 335 - ''; 336 + '' + (concatStringsSep "\n" 337 + (map 338 + (lib: 339 + '' 340 + rm -vR $out/lib/python*/${lib} 341 + # libraries in dynload (C libraries) may not exist, 342 + # but when they exist they may be prefixed with _ 343 + rm -vfR $out/lib/python*/lib-dynload/{,_}${lib} 344 + '') stripLibs)); 336 345 337 346 enableParallelBuilding = true; 338 347
+6 -6
pkgs/development/libraries/impy/default.nix
··· 1 1 { lib, stdenv 2 2 , fetchFromGitHub 3 - , cmake 3 + , meson 4 + , ninja 4 5 , pkg-config 5 6 , libpng 6 7 , zlib 7 8 , giflib 8 9 , libjpeg 9 - , SDL2 10 10 }: 11 11 12 12 stdenv.mkDerivation rec { 13 13 pname = "impy"; 14 - version = "0.1"; 14 + version = "0.2"; 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "bcampbell"; 18 18 repo = "impy"; 19 19 rev = "v${version}"; 20 - sha256 = "1h45xjms56radhknspyx17a12dpnm7xgqm1x1chy42aw5ic8b5qf"; 20 + sha256 = "sha256-0bHm3jawYgcIeF2COALWlypX7kvPw1hifB/W+TKcC4M="; 21 21 }; 22 22 23 23 nativeBuildInputs = [ 24 - cmake 24 + meson 25 + ninja 25 26 pkg-config 26 27 ]; 27 28 ··· 30 31 zlib 31 32 giflib 32 33 libjpeg 33 - SDL2 34 34 ]; 35 35 36 36 meta = with lib; {
+10
pkgs/development/libraries/spice-gtk/default.nix
··· 23 23 , libusb1 24 24 , lz4 25 25 , meson 26 + , mesonEmulatorHook 26 27 , ninja 27 28 , openssl 28 29 , perl ··· 36 37 , usbredir 37 38 , vala 38 39 , wayland-protocols 40 + , wayland-scanner 39 41 , zlib 40 42 , withPolkit ? stdenv.isLinux 41 43 }: ··· 82 84 "# meson.add_install_script('../build-aux/setcap-or-suid'," 83 85 ''; 84 86 87 + depsBuildBuild = [ 88 + pkg-config 89 + ]; 90 + 85 91 nativeBuildInputs = [ 86 92 docbook_xsl 87 93 gettext ··· 94 100 python3 95 101 python3.pkgs.pyparsing 96 102 python3.pkgs.six 103 + wayland-scanner 97 104 vala 105 + ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ 106 + mesonEmulatorHook 98 107 ]; 99 108 100 109 propagatedBuildInputs = [ ··· 118 127 pixman 119 128 spice-protocol 120 129 usbredir 130 + vala 121 131 zlib 122 132 ] ++ lib.optionals withPolkit [ 123 133 polkit
+54
pkgs/development/misc/resholve/default.nix
··· 29 29 stripConfig = true; 30 30 stripIdlelib = true; 31 31 stripTests = true; 32 + stripLibs = [ 33 + # directories 34 + "bsddb*" 35 + "curses" 36 + "compiler" 37 + "ensurepip" 38 + "hotshot" 39 + "lib-tk" 40 + "sqlite3" 41 + # files 42 + "aifc*" 43 + "antigravity*" 44 + "async*" 45 + "*audio*" 46 + "BaseHTTPServer*" 47 + "Bastion*" 48 + "binhex*" 49 + "bdb*" 50 + "CGIHTTPServer*" 51 + "cgitb*" 52 + "chunk*" 53 + "colorsys*" 54 + "dbhash*" 55 + "dircache*" 56 + "*dbm*" 57 + "ftplib*" 58 + "*hdr*" 59 + "imaplib*" 60 + "imputil*" 61 + "MimeWriter*" 62 + "mailbox*" 63 + "mhlib*" 64 + "mimify*" 65 + "multifile*" 66 + "netrc*" 67 + "nntplib*" 68 + "os2emxpath*" 69 + "pyclbr*" 70 + "pydoc*" 71 + "SimpleHTTPServer*" 72 + "sgmllib*" 73 + "smtp*" 74 + "ssl*" 75 + "sun*" 76 + "tabnanny*" 77 + "telnetlib*" 78 + "this*" 79 + "wave*" 80 + "webbrowser*" 81 + "whichdb*" 82 + "wsgiref*" 83 + "xdrlib*" 84 + "*XMLRPC*" 85 + ]; 32 86 enableOptimizations = false; 33 87 }; 34 88 callPackage = lib.callPackageWith (pkgs // { python27 = python27'; });
+5 -5
pkgs/development/mobile/maestro/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "maestro"; 5 - version = "1.11.3"; 5 + version = "1.17.2"; 6 6 7 7 src = fetchurl { 8 - url = "https://github.com/mobile-dev-inc/maestro/releases/download/cli-${version}/maestro-${version}.zip"; 9 - sha256 = "0hjsrwp6d1k68p0qhn7v9689ihy06ssnfpi8dj61jw6r64c234m4"; 8 + url = "https://github.com/mobile-dev-inc/maestro/releases/download/cli-${version}/maestro.zip"; 9 + sha256 = "1lf0226gl9912qrk4s57bsncv23886b8wk7wri6icg26xp1cxa3v"; 10 10 }; 11 11 12 12 dontUnpack = true; ··· 15 15 installPhase = '' 16 16 mkdir $out 17 17 unzip $src -d $out 18 - mv $out/maestro-$version/* $out 19 - rm -rf $out/maestro-$version 18 + mv $out/maestro/* $out 19 + rm -rf $out/maestro 20 20 ''; 21 21 22 22 postFixup = ''
+6
pkgs/development/python-modules/exchangelib/default.nix
··· 45 45 url = "https://github.com/ecederstrand/exchangelib/commit/d5d386f54adec8ab02f871332b89e1176c214ba2.diff"; 46 46 hash = "sha256-E3Ys6IDJ/yMsvi+1GKbwckkhbNrc9JLM/+GrPtUz+mY="; 47 47 }) 48 + (fetchpatch { 49 + name = "tests-timezones-2.patch"; 50 + url = "https://github.com/ecederstrand/exchangelib/commit/419eafcd9261bfd0617823ee437204d5556a8271.diff"; 51 + excludes = [ "tests/test_ewsdatetime.py" ]; 52 + hash = "sha256-dSp6NkNT5dHOg8XgDi8sR3t3hq46sNtPjUXva2YfFSU="; 53 + }) 48 54 ]; 49 55 50 56 propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/selenium/default.nix
··· 13 13 14 14 buildPythonPackage rec { 15 15 pname = "selenium"; 16 - version = "4.6.0"; 16 + version = "4.7.0"; 17 17 format = "setuptools"; 18 18 19 19 disabled = pythonOlder "3.7"; ··· 23 23 repo = "selenium"; 24 24 # check if there is a newer tag with or without -python suffix 25 25 rev = "refs/tags/selenium-${version}"; 26 - hash = "sha256-xgGGtJo+DZIwPa0H6dsT0VClRTMM8iFbNzSDZjH7ImI="; 26 + hash = "sha256-7inmi8dHi6So+8AbLq85Go/GEaiV1XK/7+wt9UkTdo8="; 27 27 }; 28 28 29 29 postPatch = ''
+16 -9
pkgs/development/python-modules/skorch/default.nix
··· 2 2 , buildPythonPackage 3 3 , fetchPypi 4 4 , pytestCheckHook 5 - , pytest 6 - , pytest-cov 7 5 , flaky 8 6 , numpy 9 7 , pandas ··· 16 14 17 15 buildPythonPackage rec { 18 16 pname = "skorch"; 19 - version = "0.11.0"; 17 + version = "0.12.1"; 20 18 21 19 src = fetchPypi { 22 20 inherit pname version; 23 - sha256 = "b35cb4e50045742f0ffcfad33044af691d5d36b50212573753a804483a947ca9"; 21 + hash = "sha256-fjNbNY/Dr7lgVGPrHJTvPGuhyPR6IVS7ohBQMI+J1+k="; 24 22 }; 25 23 26 24 propagatedBuildInputs = [ numpy torch scikit-learn scipy tabulate tqdm ]; 27 - checkInputs = [ pytest pytest-cov flaky pandas pytestCheckHook ]; 25 + checkInputs = [ flaky pandas pytestCheckHook ]; 26 + 27 + # patch out pytest-cov dep/invocation 28 + postPatch = '' 29 + substituteInPlace setup.cfg \ 30 + --replace "--cov=skorch" "" \ 31 + --replace "--cov-report=term-missing" "" \ 32 + --replace "--cov-config .coveragerc" "" 33 + ''; 28 34 29 35 disabledTests = [ 30 36 # on CPU, these expect artifacts from previous GPU run 31 37 "test_load_cuda_params_to_cpu" 32 38 # failing tests 33 39 "test_pickle_load" 34 - "test_grid_search_with_slds_" 35 - "test_grid_search_with_dict_works" 36 40 ]; 37 41 42 + # tries to import `transformers` and download HuggingFace data 43 + disabledTestPaths = [ "skorch/tests/test_hf.py" ]; 44 + 45 + pythonImportsCheck = [ "skorch" ]; 46 + 38 47 meta = with lib; { 39 48 description = "Scikit-learn compatible neural net library using Pytorch"; 40 49 homepage = "https://skorch.readthedocs.io"; 41 50 changelog = "https://github.com/skorch-dev/skorch/blob/master/CHANGES.md"; 42 51 license = licenses.bsd3; 43 52 maintainers = with maintainers; [ bcdarwin ]; 44 - # TypeError: __init__() got an unexpected keyword argument 'iid' 45 - broken = true; 46 53 }; 47 54 }
+3 -3
pkgs/development/tools/bacon/default.nix
··· 2 2 3 3 rustPlatform.buildRustPackage rec { 4 4 pname = "bacon"; 5 - version = "2.2.7"; 5 + version = "2.2.8"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "Canop"; 9 9 repo = pname; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-GVwaqpczo+9bRA8VUwpLTwP+3PQ0mqM+4F1K61WKaNA="; 11 + sha256 = "sha256-UFuU3y+v1V7Llc+IrWbh7kz8uUyCsxJO2zJhE6zwjSg="; 12 12 }; 13 13 14 - cargoSha256 = "sha256-mdzNbGDA93MSuZw3gYXGIuHbt36WAlf/7JcxJtkl0mk="; 14 + cargoSha256 = "sha256-CPugHGkYbJG6WrguuGt/CnHq6NvRZ2fP2hgPIuIGGqc="; 15 15 16 16 buildInputs = lib.optional stdenv.isDarwin CoreServices; 17 17
+3 -3
pkgs/development/tools/continuous-integration/cirrus-cli/default.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "cirrus-cli"; 9 - version = "0.92.1"; 9 + version = "0.93.0"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "cirruslabs"; 13 13 repo = pname; 14 14 rev = "v${version}"; 15 - sha256 = "sha256-ehJyC5NXB53i7ZpWTKySnMwWiqgbgBbnxIVWhyrXC0A="; 15 + sha256 = "sha256-exGOCBKPHuVBaFXd+/jbjAid7ZDodtZ/h/OWp/NBOhE="; 16 16 }; 17 17 18 - vendorSha256 = "sha256-Llq6siZn34sHsZFneT+MLXf2W9cXqi4DZwrH1R5laOY="; 18 + vendorSha256 = "sha256-gotc9M2UkRJtE4LZPCpqDTXQ/cnN4tk+3HG243tFoss="; 19 19 20 20 ldflags = [ 21 21 "-X github.com/cirruslabs/cirrus-cli/internal/version.Version=v${version}"
+2 -2
pkgs/development/tools/dtools/default.nix
··· 1 - {stdenv, lib, fetchFromGitHub, fetchpatch, ldc, curl}: 1 + { stdenv, lib, fetchFromGitHub, fetchpatch, ldc, curl, gnumake42 }: 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "dtools"; ··· 20 20 }) 21 21 ]; 22 22 23 - nativeBuildInputs = [ ldc ]; 23 + nativeBuildInputs = [ ldc gnumake42 ]; # fails with make 4.4 24 24 buildInputs = [ curl ]; 25 25 26 26 makeCmd = ''
+2 -2
pkgs/development/tools/esbuild/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "esbuild"; 5 - version = "0.16.1"; 5 + version = "0.16.7"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "evanw"; 9 9 repo = "esbuild"; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-5b9uJfIGWDQi5exPVCgK/9wrozptX1FebPMrWJ0v4TM="; 11 + sha256 = "sha256-zo7YQ4Is3VWsXGvPNrg95tZ76qTSQRyntFjDeqhoyVw="; 12 12 }; 13 13 14 14 vendorSha256 = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ=";
+9 -2
pkgs/games/lgames/lbreakouthd/default.nix
··· 5 5 , SDL2_image 6 6 , SDL2_mixer 7 7 , SDL2_ttf 8 + , directoryListingUpdater 8 9 }: 9 10 10 11 stdenv.mkDerivation rec { 11 12 pname = "lbreakouthd"; 12 - version = "1.0.10"; 13 + version = "1.1"; 13 14 14 15 src = fetchurl { 15 16 url = "mirror://sourceforge/lgames/${pname}-${version}.tar.gz"; 16 - hash = "sha256-hlGhPa91u6pOaZoFJSDcXYQdizTFjuuTLnx9fcrXUhA="; 17 + hash = "sha256-5hjS0aJ5f8Oe0aSuVgcV10h5OmWsaMHF5B9wYVFrlDY="; 17 18 }; 18 19 19 20 buildInputs = [ ··· 24 25 ]; 25 26 26 27 hardeningDisable = [ "format" ]; 28 + 29 + passthru.updateScript = directoryListingUpdater { 30 + inherit pname version; 31 + url = "https://lgames.sourceforge.io/LBreakoutHD/"; 32 + extraRegex = "(?!.*-win(32|64)).*"; 33 + }; 27 34 28 35 meta = with lib; { 29 36 broken = stdenv.isDarwin;
+7
pkgs/games/lgames/lpairs2/default.nix
··· 5 5 , SDL2_image 6 6 , SDL2_mixer 7 7 , SDL2_ttf 8 + , directoryListingUpdater 8 9 }: 9 10 10 11 stdenv.mkDerivation rec { ··· 22 23 SDL2_mixer 23 24 SDL2_ttf 24 25 ]; 26 + 27 + passthru.updateScript = directoryListingUpdater { 28 + inherit pname version; 29 + url = "https://lgames.sourceforge.io/LPairs/"; 30 + extraRegex = "(?!.*-win(32|64)).*"; 31 + }; 25 32 26 33 meta = with lib; { 27 34 broken = stdenv.isDarwin;
+15 -3
pkgs/games/lgames/ltris/default.nix
··· 1 - { lib, stdenv, fetchurl, SDL, SDL_mixer }: 1 + { lib 2 + , stdenv 3 + , fetchurl 4 + , SDL 5 + , SDL_mixer 6 + , directoryListingUpdater 7 + }: 2 8 3 9 stdenv.mkDerivation rec { 4 10 pname = "ltris"; 5 - version = "1.2.5"; 11 + version = "1.2.6"; 6 12 7 13 src = fetchurl { 8 14 url = "mirror://sourceforge/lgames/${pname}-${version}.tar.gz"; 9 - hash = "sha256-Ksb5TdQMTEzaJfjHVhgq27dSFvZxUnNUQ6OpAU+xwzM="; 15 + hash = "sha256-wjziFFTAOJxSl6fvLhTv6ATZQGJefusDhqKXgOwsRvY="; 10 16 }; 11 17 12 18 buildInputs = [ ··· 15 21 ]; 16 22 17 23 hardeningDisable = [ "format" ]; 24 + 25 + passthru.updateScript = directoryListingUpdater { 26 + inherit pname version; 27 + url = "https://lgames.sourceforge.io/LTris/"; 28 + extraRegex = "(?!.*-win(32|64)).*"; 29 + }; 18 30 19 31 meta = with lib; { 20 32 homepage = "https://lgames.sourceforge.io/LTris/";
+3 -2
pkgs/os-specific/linux/fwts/default.nix
··· 1 - { lib, stdenv, fetchzip, autoreconfHook, pkg-config, glib, pcre 1 + { lib, stdenv, fetchzip, autoreconfHook, pkg-config, gnumake42, glib, pcre 2 2 , json_c, flex, bison, dtc, pciutils, dmidecode, acpica-tools, libbsd }: 3 3 4 4 stdenv.mkDerivation rec { ··· 11 11 stripRoot = false; 12 12 }; 13 13 14 - nativeBuildInputs = [ autoreconfHook pkg-config ]; 14 + # fails with make 4.4 15 + nativeBuildInputs = [ autoreconfHook pkg-config gnumake42 ]; 15 16 buildInputs = [ glib pcre json_c flex bison dtc pciutils dmidecode acpica-tools libbsd ]; 16 17 17 18 postPatch = ''
+30 -30
pkgs/os-specific/linux/kernel/hardened/patches.json
··· 2 2 "4.14": { 3 3 "patch": { 4 4 "extra": "-hardened1", 5 - "name": "linux-hardened-4.14.300-hardened1.patch", 6 - "sha256": "1y43qxcn00w1gayjj1rr3vfws8m4f2p9nz080nqilw0g14kq73sa", 7 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.300-hardened1/linux-hardened-4.14.300-hardened1.patch" 5 + "name": "linux-hardened-4.14.302-hardened1.patch", 6 + "sha256": "028wmgp5xkxf0k127vfnfr8wfvrdn68phfjxh21fjs5nag0vxmgs", 7 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.302-hardened1/linux-hardened-4.14.302-hardened1.patch" 8 8 }, 9 - "sha256": "047vmh09icm45g7mnmdvyj9cam7747bcpah1s7n9dm5i2j2f906y", 10 - "version": "4.14.300" 9 + "sha256": "102c9h0byr9v4bxzkdh7mnw1grm47ji6lf6l1gjlwah7f46j6ap3", 10 + "version": "4.14.302" 11 11 }, 12 12 "4.19": { 13 13 "patch": { 14 14 "extra": "-hardened1", 15 - "name": "linux-hardened-4.19.267-hardened1.patch", 16 - "sha256": "0phlfwigzh2j5j8xjqamywqn8libpzvhingx0vjxggf0wqxvgix0", 17 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.267-hardened1/linux-hardened-4.19.267-hardened1.patch" 15 + "name": "linux-hardened-4.19.269-hardened1.patch", 16 + "sha256": "03gmxnficyjngxq1ciwp2jbr38zi0pfkax8bycs3xp1xhx90p3db", 17 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.269-hardened1/linux-hardened-4.19.269-hardened1.patch" 18 18 }, 19 - "sha256": "035yxx13jz5f5ig2r6ybzgivm8vjafgnvjws0jfzha4w6klf7r9l", 20 - "version": "4.19.267" 19 + "sha256": "02mjb16xxfj984vibpxvhjl84y5yg0jgzjccjdxnn8db4k9aa2vf", 20 + "version": "4.19.269" 21 21 }, 22 22 "5.10": { 23 23 "patch": { 24 24 "extra": "-hardened1", 25 - "name": "linux-hardened-5.10.157-hardened1.patch", 26 - "sha256": "1igmixscnjynnczwcrwp2kcw2llrbw3zlg4qzvyfmqvf3ylbbq5z", 27 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.157-hardened1/linux-hardened-5.10.157-hardened1.patch" 25 + "name": "linux-hardened-5.10.159-hardened1.patch", 26 + "sha256": "0kjiijq9qd5zyy2gvsn8xv99jv5crfyqi69lchmsqk1gs4qhs7m9", 27 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.159-hardened1/linux-hardened-5.10.159-hardened1.patch" 28 28 }, 29 - "sha256": "0zrjdmaj3sx0w7397glaiq6w9wwdj7lpff77a09kzmbyfz0dfk7w", 30 - "version": "5.10.157" 29 + "sha256": "19yfi5vknxnw0cb8274q3pb5zjs6ny04n16m8xjdfdmznrbvza8v", 30 + "version": "5.10.159" 31 31 }, 32 32 "5.15": { 33 33 "patch": { 34 34 "extra": "-hardened1", 35 - "name": "linux-hardened-5.15.81-hardened1.patch", 36 - "sha256": "0dignkwdpfi0jm3d1iz63rc4a0ki1vwyw100nganxbrg13kjm9jv", 37 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.15.81-hardened1/linux-hardened-5.15.81-hardened1.patch" 35 + "name": "linux-hardened-5.15.83-hardened1.patch", 36 + "sha256": "0cyd14xlmiy7bj5psjws2p1xdc7vzhv1hy77xca4mlwssb41zvdb", 37 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.15.83-hardened1/linux-hardened-5.15.83-hardened1.patch" 38 38 }, 39 - "sha256": "1awny3lgfkh5n2gdksajbyzips8kawz6rkr0p5inwkbmppg5r24g", 40 - "version": "5.15.81" 39 + "sha256": "1wvzfhzqq9dps508wmp2gblfz93ipppnjzqm0n8pi1acq11hhna0", 40 + "version": "5.15.83" 41 41 }, 42 42 "5.4": { 43 43 "patch": { 44 44 "extra": "-hardened1", 45 - "name": "linux-hardened-5.4.225-hardened1.patch", 46 - "sha256": "09h8bjq73fyx6kqk0kcy3z2a0cs32gg4visv859siwb8rw1ziva2", 47 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.225-hardened1/linux-hardened-5.4.225-hardened1.patch" 45 + "name": "linux-hardened-5.4.227-hardened1.patch", 46 + "sha256": "1q5xxaz154iz65x6n4m1lfsly9p978zzrnp9xdh6sp1cw8g39fyn", 47 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.227-hardened1/linux-hardened-5.4.227-hardened1.patch" 48 48 }, 49 - "sha256": "1ak0qlxzfylgvkldh2whq4mzynh1rymhnnc1yif9a5s3f7v9dxar", 50 - "version": "5.4.225" 49 + "sha256": "14q5gy48j78vwnqivrgpdhj778n2jq5l7yiw5na1rwqmfh1wbvsy", 50 + "version": "5.4.227" 51 51 }, 52 52 "6.0": { 53 53 "patch": { 54 54 "extra": "-hardened1", 55 - "name": "linux-hardened-6.0.11-hardened1.patch", 56 - "sha256": "0y48mj6sj43s1d58gds0v8dbyiavsvl5n0a8iqjs0fb8f6wbld0r", 57 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/6.0.11-hardened1/linux-hardened-6.0.11-hardened1.patch" 55 + "name": "linux-hardened-6.0.13-hardened1.patch", 56 + "sha256": "0v037rg3h8khjdr1hhkpqv2xb9g5vc7dklxf8zidaww27gb2g528", 57 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/6.0.13-hardened1/linux-hardened-6.0.13-hardened1.patch" 58 58 }, 59 - "sha256": "0qn7m74wfixqk832j2yvgf2lq4vi55agm5gk9ziy2wa9wqqn3bib", 60 - "version": "6.0.11" 59 + "sha256": "191dlxcmbx8vy6z2k04jq2kr6hwnaknsnsyycvqnjmvmdf6i3lq8", 60 + "version": "6.0.13" 61 61 } 62 62 }
+2 -2
pkgs/os-specific/linux/kernel/linux-4.14.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "4.14.301"; 6 + version = "4.14.302"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; 16 - sha256 = "16zrpfadsnznpl37crbq5g1hz1ch0zfp2a75yzlqy2fs0f7fxlmc"; 16 + sha256 = "102c9h0byr9v4bxzkdh7mnw1grm47ji6lf6l1gjlwah7f46j6ap3"; 17 17 }; 18 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-4.19.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "4.19.268"; 6 + version = "4.19.269"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; 16 - sha256 = "0kr0di4gr6p57c8h6ybcli01kazq235npbh6qrpx0hpmqcdcx6r1"; 16 + sha256 = "02mjb16xxfj984vibpxvhjl84y5yg0jgzjccjdxnn8db4k9aa2vf"; 17 17 }; 18 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-5.10.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "5.10.158"; 6 + version = "5.10.159"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "1rq7lyp41fydybs53rcdjhiy271arh95xch16s5s3jhhanxj82hy"; 16 + sha256 = "19yfi5vknxnw0cb8274q3pb5zjs6ny04n16m8xjdfdmznrbvza8v"; 17 17 }; 18 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-5.15.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "5.15.82"; 6 + version = "5.15.83"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "0r8v7113favmch2x6br7jk6idihza99l9qyd7ik99i5sg6xzdvpw"; 16 + sha256 = "1wvzfhzqq9dps508wmp2gblfz93ipppnjzqm0n8pi1acq11hhna0"; 17 17 }; 18 18 } // (args.argsOverride or { }))
+2 -2
pkgs/os-specific/linux/kernel/linux-5.4.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "5.4.226"; 6 + version = "5.4.227"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "0i4s1hl5q0ax55z7m5krzyw1zj9v03q8jcfksknb6qrg3lm5a7qc"; 16 + sha256 = "14q5gy48j78vwnqivrgpdhj778n2jq5l7yiw5na1rwqmfh1wbvsy"; 17 17 }; 18 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-6.0.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "6.0.12"; 6 + version = "6.0.13"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz"; 16 - sha256 = "00ag63lnxw2gijw3b6v29lhrlv480m12954q5zh4jawlz3nk1dw9"; 16 + sha256 = "191dlxcmbx8vy6z2k04jq2kr6hwnaknsnsyycvqnjmvmdf6i3lq8"; 17 17 }; 18 18 } // (args.argsOverride or { }))
+3 -3
pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
··· 6 6 , ... } @ args: 7 7 8 8 let 9 - version = "5.10.153-rt76"; # updated by ./update-rt.sh 9 + version = "5.10.158-rt77"; # updated by ./update-rt.sh 10 10 branch = lib.versions.majorMinor version; 11 11 kversion = builtins.elemAt (lib.splitString "-" version) 0; 12 12 in buildLinux (args // { ··· 18 18 19 19 src = fetchurl { 20 20 url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz"; 21 - sha256 = "0qhn5xv0m6baip1my1gp4mrjc4j6d6nbxa701vpwllg4kx8y9wiw"; 21 + sha256 = "1rq7lyp41fydybs53rcdjhiy271arh95xch16s5s3jhhanxj82hy"; 22 22 }; 23 23 24 24 kernelPatches = let rt-patch = { 25 25 name = "rt"; 26 26 patch = fetchurl { 27 27 url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; 28 - sha256 = "12gf2nnnfcbmyp34xnns35qpnzsnwjilq2qs1xvq6m51gcnnzq7g"; 28 + sha256 = "1yl2add34ylsancly5dblxigljwrcxgs456cz7xlnpywrlfsir5m"; 29 29 }; 30 30 }; in [ rt-patch ] ++ kernelPatches; 31 31
+2 -2
pkgs/os-specific/linux/libcgroup/default.nix
··· 12 12 hash = "sha256-x2yBqpr3LedtWmpZ4K1ipZxIualNJuDtC4FVGzzcQn8="; 13 13 }; 14 14 15 - buildInputs = [ pam bison flex ]; 16 - nativeBuildInputs = [ autoreconfHook ]; 15 + nativeBuildInputs = [ autoreconfHook bison flex ]; 16 + buildInputs = [ pam ]; 17 17 18 18 postPatch = '' 19 19 substituteInPlace src/tools/Makefile.am \
+3 -3
pkgs/servers/mautrix-whatsapp/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "mautrix-whatsapp"; 5 - version = "0.7.2"; 5 + version = "0.8.0"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "mautrix"; 9 9 repo = "whatsapp"; 10 10 rev = "v${version}"; 11 - hash = "sha256-KeuAxrp4DYy0+K1XYF3FxindYoOHHfwtufwKnic46i8="; 11 + hash = "sha256-shCFKTS6ArvjecokNSrgOBr5jO+64+d6OdubTHOWiws="; 12 12 }; 13 13 14 14 buildInputs = [ olm ]; 15 15 16 - vendorSha256 = "sha256-oxRxGxYvpO1TeEBAKO1RDwqw4NUSW4XunGdVB6zXjx8="; 16 + vendorSha256 = "sha256-BD1DBzr8iwVq2Qe7Zz1i871ysAYJ7iUlcBftjDYreeM="; 17 17 18 18 doCheck = false; 19 19
+3 -3
pkgs/servers/monitoring/unpoller/default.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "unpoller"; 9 - version = "2.3.1"; 9 + version = "2.4.1"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "unpoller"; 13 13 repo = "unpoller"; 14 14 rev = "v${version}"; 15 - hash = "sha256-0IknWsJ7fWJuvXeiMZscWEv8p90KZQaQC4Q0KV98Z88="; 15 + hash = "sha256-t4f7iAIOg19n1aKG0tQy/GHNXdVAEnaRyTXMZY+1IUw="; 16 16 }; 17 17 18 - vendorHash = "sha256-l2V41Rf8KDoh/fC9NcuGF4ISwCLwpbVuzQZiqiGNbuc="; 18 + vendorHash = "sha256-GUzMu3ltdmFCKKWi9Hlr39rNe5uPnZpwQfhVAHtbeiw="; 19 19 20 20 ldflags = [ 21 21 "-w" "-s"
+3 -3
pkgs/tools/admin/eksctl/default.nix
··· 2 2 3 3 buildGoModule rec { 4 4 pname = "eksctl"; 5 - version = "0.122.0"; 5 + version = "0.123.0"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "weaveworks"; 9 9 repo = pname; 10 10 rev = version; 11 - sha256 = "sha256-NvUnLnACQCBvIiM3a0dtTUhfr9P3Ra9TX5Gy4Pj0tww="; 11 + sha256 = "sha256-K5o7lEFrUjAXXwL1cnWfuRNVXvLehk0tXCCIc0rfK5s="; 12 12 }; 13 13 14 - vendorSha256 = "sha256-qc2i4bfasTBzndsxbMk6xRhtbgmbBAvuyBgUMeIiHaA="; 14 + vendorSha256 = "sha256-CJ2b6O57E1mrNAWkDcnICeDzW3q4+uSeXV5UnYkbUng="; 15 15 16 16 doCheck = false; 17 17
+5
pkgs/tools/misc/atuin/default.nix
··· 6 6 , libiconv 7 7 , Security 8 8 , SystemConfiguration 9 + , nixosTests 9 10 }: 10 11 11 12 rustPlatform.buildRustPackage rec { ··· 31 32 --fish <($out/bin/atuin gen-completions -s fish) \ 32 33 --zsh <($out/bin/atuin gen-completions -s zsh) 33 34 ''; 35 + 36 + passthru.tests = { 37 + inherit (nixosTests) atuin; 38 + }; 34 39 35 40 meta = with lib; { 36 41 description = "Replacement for a shell history which records additional commands context with optional encrypted synchronization between machines";
+4
pkgs/tools/networking/bgpdump/default.nix
··· 11 11 sha256 = "sha256-1HXMf9mHManR7jhonU2Agon0YFXOlM9APIN1Zm840AM="; 12 12 }; 13 13 14 + postPatch = '' 15 + substituteInPlace Makefile.in --replace 'ar r libbgpdump.a' '$(AR) r libbgpdump.a' 16 + ''; 17 + 14 18 nativeBuildInputs = [ autoreconfHook ]; 15 19 buildInputs = [ zlib bzip2 ]; 16 20
+2
pkgs/tools/networking/iperf/2.nix
··· 12 12 hardeningDisable = [ "format" ]; 13 13 configureFlags = [ "--enable-fastsampling" ]; 14 14 15 + makeFlags = [ "AR:=$(AR)" ]; 16 + 15 17 postInstall = '' 16 18 mv $out/bin/iperf $out/bin/iperf2 17 19 ln -s $out/bin/iperf2 $out/bin/iperf
+39
pkgs/tools/networking/mbidled/default.nix
··· 1 + { stdenv 2 + , lib 3 + , fetchFromGitHub 4 + , meson 5 + , ninja 6 + , libev 7 + , openssl 8 + }: 9 + stdenv.mkDerivation { 10 + pname = "mbidled"; 11 + version = "unstable-2022-10-30"; 12 + 13 + src = fetchFromGitHub { 14 + owner = "zsugabubus"; 15 + repo = "mbidled"; 16 + rev = "b06152f015a470876b042e538804ebb1ac247c09"; 17 + sha256 = "sha256-eHm10onJ7v6fhvJiGXZhuN3c9cj+NoVIW2XQb2fdmuA="; 18 + }; 19 + 20 + preConfigure = '' 21 + export LIBRARY_PATH=${libev}/lib 22 + ''; 23 + 24 + nativeBuildInputs = [ 25 + meson ninja 26 + ]; 27 + 28 + buildInputs = [ 29 + libev openssl 30 + ]; 31 + 32 + meta = with lib; { 33 + description = "run command on mailbox change"; 34 + homepage = "https://github.com/zsugabubus/mbidled"; 35 + license = licenses.unlicense; 36 + maintainers = with maintainers; [ laalsaas ]; 37 + platforms = platforms.linux; 38 + }; 39 + }
+2
pkgs/tools/networking/netsniff-ng/default.nix
··· 15 15 , liburcu 16 16 , ncurses 17 17 , pkg-config 18 + , gnumake42 18 19 , zlib 19 20 }: 20 21 ··· 34 35 flex 35 36 makeWrapper 36 37 pkg-config 38 + gnumake42 # fails with make 4.4 37 39 ]; 38 40 39 41 buildInputs = [
+2 -2
pkgs/tools/security/nsjail/default.nix
··· 23 23 ''; 24 24 25 25 installPhase = '' 26 - runHook preInstallPhase 26 + runHook preInstall 27 27 install -Dm755 nsjail "$out/bin/nsjail" 28 28 installManPage nsjail.1 29 - runHook postInstallPhase 29 + runHook postInstall 30 30 ''; 31 31 32 32 meta = with lib; {
+5 -6
pkgs/tools/security/pinentry/default.nix
··· 1 1 { fetchurl, mkDerivation, fetchpatch, stdenv, lib, pkg-config, autoreconfHook, wrapGAppsHook 2 2 , libgpg-error, libassuan, qtbase, wrapQtAppsHook 3 - , ncurses, gtk2, gcr, libcap 3 + , ncurses, gtk2, gcr 4 4 , withLibsecret ? true, libsecret 5 5 , enabledFlavors ? [ "curses" "tty" "gtk2" "emacs" ] 6 6 ++ lib.optionals stdenv.isLinux [ "gnome3" ] ··· 35 35 36 36 pinentryMkDerivation rec { 37 37 pname = "pinentry"; 38 - version = "1.2.0"; 38 + version = "1.2.1"; 39 39 40 40 src = fetchurl { 41 41 url = "mirror://gnupg/pinentry/${pname}-${version}.tar.bz2"; 42 - sha256 = "sha256-EAcgRaPgQ9BYH5HNVnb8rH/+6VehZjat7apPWDphZHA="; 42 + sha256 = "sha256-RXoYXlqFI4+5RalV3GNSq5YtyLSHILYvyfpIx1QKQGc="; 43 43 }; 44 44 45 45 nativeBuildInputs = [ pkg-config autoreconfHook ] 46 46 ++ lib.concatMap(f: flavorInfo.${f}.nativeBuildInputs or []) enabledFlavors; 47 + 47 48 buildInputs = [ libgpg-error libassuan ] 48 49 ++ lib.optional withLibsecret libsecret 49 - ++ lib.optional (!stdenv.isDarwin) libcap 50 50 ++ lib.concatMap(f: flavorInfo.${f}.buildInputs or []) enabledFlavors; 51 51 52 52 dontWrapGApps = true; ··· 62 62 ]; 63 63 64 64 configureFlags = [ 65 - (lib.withFeature (libcap != null) "libcap") 66 - (lib.enableFeature withLibsecret "libsecret") 65 + (lib.enableFeature withLibsecret "libsecret") 67 66 ] ++ (map enableFeaturePinentry (lib.attrNames flavorInfo)); 68 67 69 68 postInstall =
+6
pkgs/top-level/all-packages.nix
··· 1414 1414 1415 1415 linux-router-without-wifi = linux-router.override { useWifiDependencies = false; }; 1416 1416 1417 + mbidled = callPackage ../tools/networking/mbidled { }; 1418 + 1417 1419 metapixel = callPackage ../tools/graphics/metapixel { }; 1418 1420 1419 1421 midimonster = callPackage ../tools/audio/midimonster { }; ··· 11465 11467 senpai = callPackage ../applications/networking/irc/senpai { }; 11466 11468 11467 11469 skim = callPackage ../tools/misc/skim { }; 11470 + 11471 + seashells = callPackage ../applications/misc/seashells { }; 11468 11472 11469 11473 seaweedfs = callPackage ../applications/networking/seaweedfs { }; 11470 11474 ··· 30678 30682 ncmpc = callPackage ../applications/audio/ncmpc { }; 30679 30683 30680 30684 ncmpcpp = callPackage ../applications/audio/ncmpcpp { }; 30685 + 30686 + pms = callPackage ../applications/audio/pms { }; 30681 30687 30682 30688 pragha = libsForQt5.callPackage ../applications/audio/pragha { }; 30683 30689
+2 -2
pkgs/top-level/perl-packages.nix
··· 12507 12507 12508 12508 ImageExifTool = buildPerlPackage rec { 12509 12509 pname = "Image-ExifTool"; 12510 - version = "12.51"; 12510 + version = "12.52"; 12511 12511 12512 12512 src = fetchurl { 12513 12513 url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz"; 12514 - hash = "sha256-76meNQp9c0Z+81gNSMnDTtJmd/qOGu4uqeHsGhTnDkQ="; 12514 + hash = "sha256-yH8RlkTRAanHYNyq5Vi52W8mGKIJwmGZsWhzyokz+ao="; 12515 12515 }; 12516 12516 12517 12517 nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang;