nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'staging-next' into staging

Merge conflict in `pkgs/by-name/en/envision/package.nix` between efb2d2b815fe9f7d12f4aab42c83e759db5ec716 (staging) and b9d59c4515ea7cd4595d342c9d87877b544e6dbd+de7a60960219b303cc44ad446f9e7ddaf23b9944 (staging-next).

+3452 -1508
+21 -2
nixos/doc/manual/release-notes/rl-2505.section.md
··· 22 22 23 23 - The default Elixir version has been updated to 1.18. 24 24 25 + - `services.dex` now restarts upon changes to the `.environmentFile` or entries in `.settings.staticClients[].secretFile` when the entry is a `path` type. 26 + 25 27 - `nixos-rebuild-ng`, a full rewrite of `nixos-rebuild` in Python, is available for testing. You can enable it by setting [system.rebuild.enableNg](options.html#opt-system.rebuild.enableNg) in your configuration (this will replace the old `nixos-rebuild`), or by adding `nixos-rebuild-ng` to your `environment.systemPackages` (in this case, it will live side-by-side with `nixos-rebuild` as `nixos-rebuild-ng`). It is expected that the next major version of NixOS (25.11) will enable `system.rebuild.enableNg` by default. 26 28 - A `nixos-rebuild build-image` sub-command has been added. 27 29 ··· 66 64 - [Whoogle Search](https://github.com/benbusby/whoogle-search), a self-hosted, ad-free, privacy-respecting metasearch engine. Available as [services.whoogle-search](options.html#opt-services.whoogle-search.enable). 67 65 68 66 - [agorakit](https://github.com/agorakit/agorakit), an organization tool for citizens' collectives. Available with [services.agorakit](options.html#opt-services.agorakit.enable). 67 + 68 + - [vivid](https://github.com/sharkdp/vivid), a generator for LS_COLOR. Available as [programs.vivid](#opt-programs.vivid.enable). 69 69 70 70 - [waagent](https://github.com/Azure/WALinuxAgent), the Microsoft Azure Linux Agent (waagent) manages Linux provisioning and VM interaction with the Azure Fabric Controller. Available with [services.waagent](options.html#opt-services.waagent.enable). 71 71 ··· 142 138 - `minetest` has been renamed to `luanti` to match the upstream name change but aliases have been added. The new name hasn't resulted in many changes as of yet but older references to minetest should be sunset. See the [new name announcement](https://blog.minetest.net/2024/10/13/Introducing-Our-New-Name/) for more details. 143 139 144 140 - `racket_7_9` has been removed, as it is insecure. It is recommended to use Racket 8 instead. 141 + 142 + - `rofi` has been updated from 1.7.5 to 1.7.6 which introduces some breaking changes to binary plugins, and also contains a lot of new features and bug fixes. This is highlighted because the patch version bump does not indicate the volume of changes by itself. See the [upstream release notes](https://github.com/davatorium/rofi/releases/tag/1.7.6) for the full list of changes. 145 143 146 144 - `ente-auth` now uses the name `enteauth` for its binary. The previous name was `ente_auth`. 147 145 ··· 264 258 265 259 - `siduck76-st` has been renamed to `st-snazzy`, like the project's [flake](https://github.com/siduck/st/blob/main/flake.nix). 266 260 261 + - `python3Packages.jax` now directly depends on `python3Packages.jaxlib`. 262 + As a result, packages that depend on jax no longer need to include jaxlib to their dependencies. 263 + There is also a breaking change in the handling of CUDA. Instead of using a CUDA compatible jaxlib 264 + as before, you can use plugins like `python3Packages.jax-cuda12-plugin`. 265 + 267 266 268 267 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> 269 268 ··· 300 289 services.caddy = { 301 290 enable = true; 302 291 package = pkgs.caddy.withPlugins { 303 - plugins = [ "github.com/caddy-dns/powerdns@v1.0.1" ]; 304 - hash = "sha256-F/jqR4iEsklJFycTjSaW8B/V3iTGqqGOzwYBUXxRKrc="; 292 + plugins = [ 293 + # tagged upstream 294 + "github.com/caddy-dns/powerdns@v1.0.1" 295 + # pseudo-version number generated by Go 296 + "github.com/caddy-dns/cloudflare@v0.0.0-20240703190432-89f16b99c18e" 297 + "github.com/mholt/caddy-webdav@v0.0.0-20241008162340-42168ba04c9d" 298 + ]; 299 + hash = "sha256-wqXSd1Ep9TVpQi570TTb96LwzNYvWL5EBJXMJfYWCAk="; 305 300 }; 306 301 }; 307 302 ``` 308 303 309 304 To get the necessary hash of the vendored dependencies, omit `hash`. The build will fail and tell you the correct value. 305 + 306 + Note that all provided plugins must have versions/tags (string after `@`), even if upstream repo does not tag each release. For untagged plugins, you can either create an empty Go project and run `go get <plugin>` and see changes in `go.mod` to get the pseudo-version number, or provide a commit hash in place of version/tag for the first run, and update the plugin string based on the error output. 310 307 311 308 - KDE Partition Manager `partitionmanager`'s support for ReiserFS is removed. 312 309 ReiserFS has not been actively maintained for many years. It has been marked as obsolete since Linux 6.6, and
+1
nixos/modules/module-list.nix
··· 317 317 ./programs/usbtop.nix 318 318 ./programs/vim.nix 319 319 ./programs/virt-manager.nix 320 + ./programs/vivid.nix 320 321 ./programs/wavemon.nix 321 322 ./programs/wayland/cardboard.nix 322 323 ./programs/wayland/hyprlock.nix
+63
nixos/modules/programs/vivid.nix
··· 1 + { 2 + pkgs, 3 + config, 4 + lib, 5 + ... 6 + }: 7 + 8 + let 9 + cfg = config.programs.vivid; 10 + in 11 + { 12 + options = { 13 + programs.vivid = { 14 + enable = lib.mkOption { 15 + default = false; 16 + description = "Whether to configure LS_COLORS with vivid."; 17 + type = lib.types.bool; 18 + }; 19 + 20 + package = lib.mkPackageOption pkgs "vivid" { example = "vivid"; }; 21 + 22 + theme = lib.mkOption { 23 + default = "gruvbox-dark-soft"; 24 + description = "Theme to be used (see `vivid themes`)"; 25 + example = "solarized-dark"; 26 + type = lib.types.str; 27 + }; 28 + }; 29 + }; 30 + 31 + config = lib.mkIf cfg.enable { 32 + environment.systemPackages = [ cfg.package ]; 33 + 34 + programs = 35 + let 36 + interactiveShellInit = lib.mkAfter '' 37 + export LS_COLORS="$(${lib.getExe cfg.package} generate ${cfg.theme})" 38 + ''; 39 + enableLsColors = lib.mkOverride 999 false; 40 + in 41 + { 42 + bash = { 43 + inherit interactiveShellInit enableLsColors; 44 + }; 45 + zsh = { 46 + inherit interactiveShellInit enableLsColors; 47 + }; 48 + }; 49 + 50 + assertions = [ 51 + { 52 + assertion = !config.programs.bash.enableLsColors; 53 + message = "`programs.vivid.enable` is incompatible with `programs.bash.enableLsColors`."; 54 + } 55 + { 56 + assertion = !config.programs.zsh.enableLsColors; 57 + message = "`programs.vivid.enable` is incompatible with `programs.zsh.enableLsColors`."; 58 + } 59 + ]; 60 + }; 61 + 62 + meta.maintainers = with lib.maintainers; [ blackheaven ]; 63 + }
+30 -2
nixos/modules/services/misc/nix-optimise.nix
··· 22 22 which the optimiser will run. 23 23 ''; 24 24 }; 25 + 26 + randomizedDelaySec = lib.mkOption { 27 + default = "1800"; 28 + type = lib.types.singleLineStr; 29 + example = "45min"; 30 + description = '' 31 + Add a randomized delay before the optimizer will run. 32 + The delay will be chosen between zero and this value. 33 + This value must be a time span in the format specified by 34 + {manpage}`systemd.time(7)` 35 + ''; 36 + }; 37 + 38 + persistent = lib.mkOption { 39 + default = true; 40 + type = lib.types.bool; 41 + example = false; 42 + description = '' 43 + Takes a boolean argument. If true, the time when the service 44 + unit was last triggered is stored on disk. When the timer is 45 + activated, the service unit is triggered immediately if it 46 + would have been triggered at least once during the time when 47 + the timer was inactive. Such triggering is nonetheless 48 + subject to the delay imposed by RandomizedDelaySec=. This is 49 + useful to catch up on missed runs of the service when the 50 + system was powered down. 51 + ''; 52 + }; 25 53 }; 26 54 }; 27 55 ··· 72 44 73 45 timers.nix-optimise = lib.mkIf cfg.automatic { 74 46 timerConfig = { 75 - Persistent = true; 76 - RandomizedDelaySec = 1800; 47 + RandomizedDelaySec = cfg.randomizedDelaySec; 48 + Persistent = cfg.persistent; 77 49 }; 78 50 }; 79 51 };
+2 -165
nixos/modules/services/monitoring/cockpit.nix
··· 53 53 54 54 networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.port ]; 55 55 56 - # units are in reverse sort order if you ls $out/lib/systemd/system 57 - # all these units are basically verbatim translated from upstream 58 - 59 - # Translation from $out/lib/systemd/system/systemd-cockpithttps.slice 60 - systemd.slices.system-cockpithttps = { 61 - description = "Resource limits for all cockpit-ws-https@.service instances"; 62 - sliceConfig = { 63 - TasksMax = 200; 64 - MemoryHigh = "75%"; 65 - MemoryMax = "90%"; 66 - }; 67 - }; 68 - 69 - # Translation from $out/lib/systemd/system/cockpit-wsinstance-https@.socket 70 - systemd.sockets."cockpit-wsinstance-https@" = { 71 - unitConfig = { 72 - Description = "Socket for Cockpit Web Service https instance %I"; 73 - BindsTo = [ "cockpit.service" "cockpit-wsinstance-https@%i.service" ]; 74 - # clean up the socket after the service exits, to prevent fd leak 75 - # this also effectively prevents a DoS by starting arbitrarily many sockets, as 76 - # the services are resource-limited by system-cockpithttps.slice 77 - Documentation = "man:cockpit-ws(8)"; 78 - }; 79 - socketConfig = { 80 - ListenStream = "/run/cockpit/wsinstance/https@%i.sock"; 81 - SocketUser = "root"; 82 - SocketMode = "0600"; 83 - }; 84 - }; 85 - 86 - # Translation from $out/lib/systemd/system/cockpit-wsinstance-https@.service 87 - systemd.services."cockpit-wsinstance-https@" = { 88 - description = "Cockpit Web Service https instance %I"; 89 - bindsTo = [ "cockpit.service"]; 90 - path = [ cfg.package ]; 91 - documentation = [ "man:cockpit-ws(8)" ]; 92 - serviceConfig = { 93 - Slice = "system-cockpithttps.slice"; 94 - ExecStart = "${cfg.package}/libexec/cockpit-ws --for-tls-proxy --port=0"; 95 - User = "root"; 96 - Group = ""; 97 - }; 98 - }; 99 - 100 - # Translation from $out/lib/systemd/system/cockpit-wsinstance-http.socket 101 - systemd.sockets.cockpit-wsinstance-http = { 102 - unitConfig = { 103 - Description = "Socket for Cockpit Web Service http instance"; 104 - BindsTo = "cockpit.service"; 105 - Documentation = "man:cockpit-ws(8)"; 106 - }; 107 - socketConfig = { 108 - ListenStream = "/run/cockpit/wsinstance/http.sock"; 109 - SocketUser = "root"; 110 - SocketMode = "0600"; 111 - }; 112 - }; 113 - 114 - # Translation from $out/lib/systemd/system/cockpit-wsinstance-https-factory.socket 115 - systemd.sockets.cockpit-wsinstance-https-factory = { 116 - unitConfig = { 117 - Description = "Socket for Cockpit Web Service https instance factory"; 118 - BindsTo = "cockpit.service"; 119 - Documentation = "man:cockpit-ws(8)"; 120 - }; 121 - socketConfig = { 122 - ListenStream = "/run/cockpit/wsinstance/https-factory.sock"; 123 - Accept = true; 124 - SocketUser = "root"; 125 - SocketMode = "0600"; 126 - }; 127 - }; 128 - 129 - # Translation from $out/lib/systemd/system/cockpit-wsinstance-https-factory@.service 130 - systemd.services."cockpit-wsinstance-https-factory@" = { 131 - description = "Cockpit Web Service https instance factory"; 132 - documentation = [ "man:cockpit-ws(8)" ]; 133 - path = [ cfg.package ]; 134 - serviceConfig = { 135 - ExecStart = "${cfg.package}/libexec/cockpit-wsinstance-factory"; 136 - User = "root"; 137 - }; 138 - }; 139 - 140 - # Translation from $out/lib/systemd/system/cockpit-wsinstance-http.service 141 - systemd.services."cockpit-wsinstance-http" = { 142 - description = "Cockpit Web Service http instance"; 143 - bindsTo = [ "cockpit.service" ]; 144 - path = [ cfg.package ]; 145 - documentation = [ "man:cockpit-ws(8)" ]; 146 - serviceConfig = { 147 - ExecStart = "${cfg.package}/libexec/cockpit-ws --no-tls --port=0"; 148 - User = "root"; 149 - Group = ""; 150 - }; 151 - }; 152 - 153 - # Translation from $out/lib/systemd/system/cockpit.socket 154 - systemd.sockets."cockpit" = { 155 - unitConfig = { 156 - Description = "Cockpit Web Service Socket"; 157 - Documentation = "man:cockpit-ws(8)"; 158 - Wants = "cockpit-motd.service"; 159 - }; 160 - socketConfig = { 161 - ListenStream = cfg.port; 162 - ExecStartPost = [ 163 - "-${cfg.package}/share/cockpit/motd/update-motd \"\" localhost" 164 - "-${pkgs.coreutils}/bin/ln -snf active.motd /run/cockpit/motd" 165 - ]; 166 - ExecStopPost = "-${pkgs.coreutils}/bin/ln -snf inactive.motd /run/cockpit/motd"; 167 - }; 168 - wantedBy = [ "sockets.target" ]; 169 - }; 170 - 171 - # Translation from $out/lib/systemd/system/cockpit.service 172 - systemd.services."cockpit" = { 173 - description = "Cockpit Web Service"; 174 - documentation = [ "man:cockpit-ws(8)" ]; 175 - restartIfChanged = true; 176 - path = with pkgs; [ coreutils cfg.package ]; 177 - requires = [ "cockpit.socket" "cockpit-wsinstance-http.socket" "cockpit-wsinstance-https-factory.socket" ]; 178 - after = [ "cockpit-wsinstance-http.socket" "cockpit-wsinstance-https-factory.socket" ]; 179 - environment = { 180 - G_MESSAGES_DEBUG = "cockpit-ws,cockpit-bridge"; 181 - }; 182 - serviceConfig = { 183 - RuntimeDirectory="cockpit/tls"; 184 - ExecStartPre = [ 185 - # cockpit-tls runs in a more constrained environment, these + means that these commands 186 - # will run with full privilege instead of inside that constrained environment 187 - # See https://www.freedesktop.org/software/systemd/man/systemd.service.html#ExecStart= for details 188 - "+${cfg.package}/libexec/cockpit-certificate-ensure --for-cockpit-tls" 189 - ]; 190 - ExecStart = "${cfg.package}/libexec/cockpit-tls"; 191 - User = "root"; 192 - Group = ""; 193 - NoNewPrivileges = true; 194 - ProtectSystem = "strict"; 195 - ProtectHome = true; 196 - PrivateTmp = true; 197 - PrivateDevices = true; 198 - ProtectKernelTunables = true; 199 - RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ]; 200 - MemoryDenyWriteExecute = true; 201 - }; 202 - }; 203 - 204 - # Translation from $out/lib/systemd/system/cockpit-motd.service 205 - # This part basically implements a motd state machine: 206 - # - If cockpit.socket is enabled then /run/cockpit/motd points to /run/cockpit/active.motd 207 - # - If cockpit.socket is disabled then /run/cockpit/motd points to /run/cockpit/inactive.motd 208 - # - As cockpit.socket is disabled by default, /run/cockpit/motd points to /run/cockpit/inactive.motd 209 - # /run/cockpit/active.motd is generated dynamically by cockpit-motd.service 210 - systemd.services."cockpit-motd" = { 211 - path = with pkgs; [ nettools ]; 212 - serviceConfig = { 213 - Type = "oneshot"; 214 - ExecStart = "${cfg.package}/share/cockpit/motd/update-motd"; 215 - }; 216 - description = "Cockpit motd updater service"; 217 - documentation = [ "man:cockpit-ws(8)" ]; 218 - wants = [ "network.target" ]; 219 - after = [ "network.target" "cockpit.socket" ]; 220 - }; 56 + systemd.packages = [ cfg.package ]; 57 + systemd.sockets.cockpit.wantedBy = [ "multi-user.target" ]; 221 58 222 59 systemd.tmpfiles.rules = [ # From $out/lib/tmpfiles.d/cockpit-tmpfiles.conf 223 60 "C /run/cockpit/inactive.motd 0640 root root - ${cfg.package}/share/cockpit/motd/inactive.motd"
+45 -77
nixos/modules/services/networking/minidlna.nix
··· 1 - # Module for MiniDLNA, a simple DLNA server. 2 1 { config, lib, pkgs, ... }: 3 - with lib; 4 2 5 3 let 6 4 cfg = config.services.minidlna; 7 - settingsFormat = pkgs.formats.keyValue { listsAsDuplicateKeys = true; }; 8 - settingsFile = settingsFormat.generate "minidlna.conf" cfg.settings; 9 - in 5 + format = pkgs.formats.keyValue { listsAsDuplicateKeys = true; }; 6 + cfgfile = format.generate "minidlna.conf" cfg.settings; 10 7 11 - { 12 - ###### interface 13 - options.services.minidlna.enable = mkOption { 14 - type = types.bool; 15 - default = false; 16 - description = '' 17 - Whether to enable MiniDLNA, a simple DLNA server. 18 - It serves media files such as video and music to DLNA client devices 19 - such as televisions and media players. If you use the firewall, consider 20 - adding the following: `services.minidlna.openFirewall = true;` 21 - ''; 22 - }; 8 + in { 9 + options.services.minidlna.enable = lib.mkEnableOption "MiniDLNA, a simple DLNA server. Consider adding `openFirewall = true` into your config"; 10 + options.services.minidlna.openFirewall = lib.mkEnableOption "opening HTTP (TCP) and SSDP (UDP) ports in the firewall"; 11 + options.services.minidlna.package = lib.mkPackageOption pkgs "minidlna" {}; 23 12 24 - options.services.minidlna.package = lib.mkPackageOption pkgs "minidlna" { }; 25 - 26 - options.services.minidlna.openFirewall = mkOption { 27 - type = types.bool; 28 - default = false; 29 - description = '' 30 - Whether to open both HTTP (TCP) and SSDP (UDP) ports in the firewall. 31 - ''; 32 - }; 33 - 34 - options.services.minidlna.settings = mkOption { 13 + options.services.minidlna.settings = lib.mkOption { 35 14 default = {}; 36 - description = '' 37 - The contents of MiniDLNA's configuration file. 38 - When the service is activated, a basic template is generated from the current options opened here. 39 - ''; 40 - type = types.submodule { 41 - freeformType = settingsFormat.type; 15 + description = "Configuration for `minidlna.conf(5)`."; 16 + type = lib.types.submodule { 17 + freeformType = format.type; 42 18 43 - options.media_dir = mkOption { 44 - type = types.listOf types.str; 19 + options.media_dir = lib.mkOption { 20 + type = lib.types.listOf lib.types.str; 45 21 default = []; 46 22 example = [ "/data/media" "V,/home/alice/video" ]; 47 23 description = '' ··· 26 50 The directories must be accessible to the `minidlna` user account. 27 51 ''; 28 52 }; 29 - options.notify_interval = mkOption { 30 - type = types.int; 53 + options.notify_interval = lib.mkOption { 54 + type = lib.types.int; 31 55 default = 90000; 32 56 description = '' 33 57 The interval between announces (in seconds). 34 58 Instead of waiting for announces, you should set `openFirewall` option to use SSDP discovery. 35 - Lower values (e.g. 30 seconds) should be used if your network blocks the discovery unicast. 36 - Some relevant information can be found here: 37 - https://sourceforge.net/p/minidlna/discussion/879957/thread/1389d197/ 59 + Lower values (e.g. 30 seconds) should be used if your network is blocking the SSDP multicast. 60 + Some relevant information can be found [here](https://sourceforge.net/p/minidlna/discussion/879957/thread/1389d197/). 38 61 ''; 39 62 }; 40 - options.port = mkOption { 41 - type = types.port; 63 + options.port = lib.mkOption { 64 + type = lib.types.port; 42 65 default = 8200; 43 66 description = "Port number for HTTP traffic (descriptions, SOAP, media transfer)."; 44 67 }; 45 - options.db_dir = mkOption { 46 - type = types.path; 68 + options.db_dir = lib.mkOption { 69 + type = lib.types.path; 47 70 default = "/var/cache/minidlna"; 48 71 example = "/tmp/minidlna"; 49 - description = "Specify the directory where you want MiniDLNA to store its database and album art cache."; 72 + description = "Specify the directory to store database and album art cache."; 50 73 }; 51 - options.friendly_name = mkOption { 52 - type = types.str; 74 + options.friendly_name = lib.mkOption { 75 + type = lib.types.str; 53 76 default = config.networking.hostName; 54 - defaultText = literalExpression "config.networking.hostName"; 77 + defaultText = lib.literalExpression "config.networking.hostName"; 55 78 example = "rpi3"; 56 - description = "Name that the DLNA server presents to clients."; 79 + description = "Name that the server presents to clients."; 57 80 }; 58 - options.root_container = mkOption { 59 - type = types.str; 81 + options.root_container = lib.mkOption { 82 + type = lib.types.str; 60 83 default = "B"; 61 84 example = "."; 62 85 description = "Use a different container as the root of the directory tree presented to clients."; 63 86 }; 64 - options.log_level = mkOption { 65 - type = types.str; 87 + options.log_level = lib.mkOption { 88 + type = lib.types.str; 66 89 default = "warn"; 67 90 example = "general,artwork,database,inotify,scanner,metadata,http,ssdp,tivo=warn"; 68 91 description = "Defines the type of messages that should be logged and down to which level of importance."; 69 92 }; 70 - options.inotify = mkOption { 71 - type = types.enum [ "yes" "no" ]; 93 + options.enable_subtitles = lib.mkOption { 94 + type = lib.types.enum [ "yes" "no" ]; 95 + default = "yes"; 96 + description = "Enable subtitle support on unknown clients."; 97 + }; 98 + options.inotify = lib.mkOption { 99 + type = lib.types.enum [ "yes" "no" ]; 72 100 default = "no"; 73 101 description = "Whether to enable inotify monitoring to automatically discover new files."; 74 102 }; 75 - options.enable_tivo = mkOption { 76 - type = types.enum [ "yes" "no" ]; 103 + options.enable_tivo = lib.mkOption { 104 + type = lib.types.enum [ "yes" "no" ]; 77 105 default = "no"; 78 106 description = "Support for streaming .jpg and .mp3 files to a TiVo supporting HMO."; 79 107 }; 80 - options.wide_links = mkOption { 81 - type = types.enum [ "yes" "no" ]; 108 + options.wide_links = lib.mkOption { 109 + type = lib.types.enum [ "yes" "no" ]; 82 110 default = "no"; 83 111 description = "Set this to yes to allow symlinks that point outside user-defined `media_dir`."; 84 112 }; 85 113 }; 86 114 }; 87 115 88 - imports = [ 89 - (mkRemovedOptionModule [ "services" "minidlna" "config" ] "") 90 - (mkRemovedOptionModule [ "services" "minidlna" "extraConfig" ] "") 91 - (mkRenamedOptionModule [ "services" "minidlna" "loglevel"] [ "services" "minidlna" "settings" "log_level" ]) 92 - (mkRenamedOptionModule [ "services" "minidlna" "rootContainer"] [ "services" "minidlna" "settings" "root_container" ]) 93 - (mkRenamedOptionModule [ "services" "minidlna" "mediaDirs"] [ "services" "minidlna" "settings" "media_dir" ]) 94 - (mkRenamedOptionModule [ "services" "minidlna" "friendlyName"] [ "services" "minidlna" "settings" "friendly_name" ]) 95 - (mkRenamedOptionModule [ "services" "minidlna" "announceInterval"] [ "services" "minidlna" "settings" "notify_interval" ]) 96 - ]; 116 + config = lib.mkIf cfg.enable { 117 + networking.firewall.allowedTCPPorts = lib.mkIf cfg.openFirewall [ cfg.settings.port ]; 118 + networking.firewall.allowedUDPPorts = lib.mkIf cfg.openFirewall [ 1900 ]; 97 119 98 - ###### implementation 99 - config = mkIf cfg.enable { 100 - networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.settings.port ]; 101 - networking.firewall.allowedUDPPorts = mkIf cfg.openFirewall [ 1900 ]; 102 - 120 + users.groups.minidlna.gid = config.ids.gids.minidlna; 103 121 users.users.minidlna = { 104 122 description = "MiniDLNA daemon user"; 105 123 group = "minidlna"; 106 124 uid = config.ids.uids.minidlna; 107 125 }; 108 - 109 - users.groups.minidlna.gid = config.ids.gids.minidlna; 110 126 111 127 systemd.services.minidlna = { 112 128 description = "MiniDLNA Server"; ··· 111 143 CacheDirectory = "minidlna"; 112 144 RuntimeDirectory = "minidlna"; 113 145 PIDFile = "/run/minidlna/pid"; 114 - ExecStart = "${lib.getExe cfg.package} -S -P /run/minidlna/pid -f ${settingsFile}"; 146 + ExecStart = "${lib.getExe cfg.package} -S -P /run/minidlna/pid -f ${cfgfile}"; 115 147 }; 116 148 }; 117 149 };
+2 -2
nixos/modules/services/networking/ntp/chrony.nix
··· 74 74 75 75 enableMemoryLocking = mkOption { 76 76 type = types.bool; 77 - default = config.environment.memoryAllocator.provider != "graphene-hardened"; 78 - defaultText = ''config.environment.memoryAllocator.provider != "graphene-hardened"''; 77 + default = config.environment.memoryAllocator.provider != "graphene-hardened" && config.environment.memoryAllocator.provider != "graphene-hardened-light"; 78 + defaultText = ''config.environment.memoryAllocator.provider != "graphene-hardened" && config.environment.memoryAllocator.provider != "graphene-hardened-light"''; 79 79 description = '' 80 80 Whether to add the `-m` flag to lock memory. 81 81 '';
+12 -1
nixos/modules/services/web-apps/dex.nix
··· 12 12 fixClient = 13 13 client: 14 14 if client ? secretFile then 15 - ((builtins.removeAttrs client [ "secretFile" ]) // { secret = client.secretFile; }) 15 + ( 16 + (builtins.removeAttrs client [ "secretFile" ]) 17 + // { 18 + secret = client.secretFile; 19 + } 20 + ) 16 21 else 17 22 client; 18 23 filteredSettings = mapAttrs ( ··· 37 32 '') secretFiles 38 33 ) 39 34 ); 35 + 36 + restartTriggers = 37 + [ ] 38 + ++ (optionals (cfg.environmentFile != null) [ cfg.environmentFile ]) 39 + ++ (filter (file: builtins.typeOf file == "path") secretFiles); 40 40 in 41 41 { 42 42 options.services.dex = { ··· 100 90 "networking.target" 101 91 ] ++ (optional (cfg.settings.storage.type == "postgres") "postgresql.service"); 102 92 path = with pkgs; [ replace-secret ]; 93 + restartTriggers = restartTriggers; 103 94 serviceConfig = 104 95 { 105 96 ExecStart = "${pkgs.dex-oidc}/bin/dex serve /run/dex/config.yaml";
+31 -2
nixos/tests/caddy.nix
··· 3 3 { 4 4 name = "caddy"; 5 5 meta = with pkgs.lib.maintainers; { 6 - maintainers = [ Br1ght0ne ]; 6 + maintainers = [ 7 + Br1ght0ne 8 + stepbrobd 9 + ]; 7 10 }; 8 11 9 12 nodes = { 10 13 webserver = 11 - { pkgs, lib, ... }: 14 + { pkgs, ... }: 12 15 { 13 16 services.caddy.enable = true; 14 17 services.caddy.extraConfig = '' ··· 66 63 respond "hello world" 67 64 ''; 68 65 }; 66 + specialisation.with-plugins.configuration = { 67 + services.caddy = { 68 + package = pkgs.caddy.withPlugins { 69 + plugins = [ "github.com/caddyserver/replace-response@v0.0.0-20241211194404-3865845790a7" ]; 70 + hash = "sha256-zgMdtOJbmtRSfTlrrg8njr11in2C7OAXLB+34V23jek="; 71 + }; 72 + configFile = pkgs.writeText "Caddyfile" '' 73 + { 74 + order replace after encode 75 + } 76 + 77 + localhost:80 { 78 + respond "hello world" 79 + replace world caddy 80 + } 81 + ''; 82 + }; 83 + }; 69 84 }; 70 85 }; 71 86 ··· 94 73 justReloadSystem = "${nodes.webserver.system.build.toplevel}/specialisation/config-reload"; 95 74 multipleConfigs = "${nodes.webserver.system.build.toplevel}/specialisation/multiple-configs"; 96 75 rfc42Config = "${nodes.webserver.system.build.toplevel}/specialisation/rfc42"; 76 + withPluginsConfig = "${nodes.webserver.system.build.toplevel}/specialisation/with-plugins"; 97 77 in 98 78 '' 99 79 url = "http://localhost/example.html" ··· 130 108 ) 131 109 webserver.wait_for_open_port(80) 132 110 webserver.succeed("curl http://localhost | grep hello") 111 + 112 + with subtest("plugins are correctled installed and configurable"): 113 + webserver.succeed( 114 + "${withPluginsConfig}/bin/switch-to-configuration test >&2" 115 + ) 116 + webserver.wait_for_open_port(80) 117 + webserver.succeed("curl http://localhost | grep caddy") 133 118 ''; 134 119 } 135 120 )
+11 -9
nixos/tests/cockpit.nix
··· 67 67 log("Opening homepage") 68 68 driver.get("https://server:9090") 69 69 70 - wait = WebDriverWait(driver, 60) 71 70 72 - 73 - def wait_elem(by, query): 71 + def wait_elem(by, query, timeout=10): 72 + wait = WebDriverWait(driver, timeout) 74 73 wait.until(EC.presence_of_element_located((by, query))) 75 74 76 75 77 - def wait_title_contains(title): 76 + def wait_title_contains(title, timeout=10): 77 + wait = WebDriverWait(driver, timeout) 78 78 wait.until(EC.title_contains(title)) 79 79 80 80 ··· 121 121 122 122 assert "Web console is running in limited access mode" in driver.page_source 123 123 124 + log("Clicking the sudo button") 125 + driver.switch_to.default_content() 126 + driver.find_element(By.CSS_SELECTOR, 'button.ct-locked').click() 127 + log("Checking that /nonexistent is not a thing") 128 + assert '/nonexistent' not in driver.page_source 129 + 124 130 driver.close() 125 131 ''; 126 132 in ··· 142 136 testScript = '' 143 137 start_all() 144 138 139 + server.wait_for_unit("sockets.target") 145 140 server.wait_for_open_port(9090) 146 - server.wait_for_unit("network.target") 147 - server.wait_for_unit("multi-user.target") 148 - server.systemctl("start", "polkit") 149 - 150 - client.wait_for_unit("multi-user.target") 151 141 152 142 client.succeed("curl -k https://server:9090 -o /dev/stderr") 153 143 print(client.succeed("whoami"))
+27 -26
pkgs/applications/editors/neovim/wrapper.nix
··· 123 123 124 124 wrapperArgsStr = if lib.isString wrapperArgs then wrapperArgs else lib.escapeShellArgs wrapperArgs; 125 125 126 - generatedWrapperArgs = let 127 - op = acc: normalizedPlugin: acc ++ normalizedPlugin.plugin.runtimeDeps or []; 128 - 129 - runtimeDeps = lib.foldl' op [] pluginsNormalized; 130 - 131 - binPath = lib.makeBinPath ( 132 - lib.optional finalAttrs.withRuby rubyEnv 133 - ++ lib.optional finalAttrs.withNodeJs nodejs 134 - ++ lib.optionals finalAttrs.autowrapRuntimeDeps runtimeDeps 135 - ); 136 - in 137 - 138 - # vim accepts a limited number of commands so we join them all 139 - [ 140 - "--add-flags" ''--cmd "lua ${providerLuaRc}"'' 141 - ] 142 - ++ lib.optionals (packpathDirs.myNeovimPackages.start != [] || packpathDirs.myNeovimPackages.opt != []) [ 143 - "--add-flags" ''--cmd "set packpath^=${finalPackdir}"'' 144 - "--add-flags" ''--cmd "set rtp^=${finalPackdir}"'' 145 - ] 146 - ++ lib.optionals finalAttrs.withRuby [ 147 - "--set" "GEM_HOME" "${rubyEnv}/${rubyEnv.ruby.gemPath}" 148 - ] ++ lib.optionals (binPath != "") [ 149 - "--suffix" "PATH" ":" binPath 150 - ] 151 - ; 126 + generatedWrapperArgs = 127 + [ 128 + # vim accepts a limited number of commands so we join all the provider ones 129 + "--add-flags" ''--cmd "lua ${providerLuaRc}"'' 130 + ] 131 + ++ lib.optionals (finalAttrs.packpathDirs.myNeovimPackages.start != [] || finalAttrs.packpathDirs.myNeovimPackages.opt != []) [ 132 + "--add-flags" ''--cmd "set packpath^=${finalPackdir}"'' 133 + "--add-flags" ''--cmd "set rtp^=${finalPackdir}"'' 134 + ] 135 + ++ lib.optionals finalAttrs.withRuby [ 136 + "--set" "GEM_HOME" "${rubyEnv}/${rubyEnv.ruby.gemPath}" 137 + ] ++ lib.optionals (finalAttrs.runtimeDeps != []) [ 138 + "--suffix" "PATH" ":" (lib.makeBinPath finalAttrs.runtimeDeps) 139 + ] 140 + ; 152 141 153 142 providerLuaRc = neovimUtils.generateProviderRc { 154 143 inherit (finalAttrs) withPython3 withNodeJs withPerl withRuby; ··· 171 182 inherit autoconfigure autowrapRuntimeDeps wrapRc providerLuaRc packpathDirs; 172 183 inherit python3Env rubyEnv; 173 184 inherit wrapperArgs generatedWrapperArgs; 185 + 186 + 187 + runtimeDeps = let 188 + op = acc: normalizedPlugin: acc ++ normalizedPlugin.plugin.runtimeDeps or []; 189 + runtimeDeps = lib.foldl' op [] pluginsNormalized; 190 + in 191 + lib.optional finalAttrs.withRuby rubyEnv 192 + ++ lib.optional finalAttrs.withNodeJs nodejs 193 + ++ lib.optionals finalAttrs.autowrapRuntimeDeps runtimeDeps 194 + ; 195 + 196 + 174 197 luaRcContent = rcContent; 175 198 # Remove the symlinks created by symlinkJoin which we need to perform 176 199 # extra actions upon
+12
pkgs/applications/editors/vim/plugins/generated.nix
··· 17505 17505 meta.homepage = "https://github.com/kbenzie/vim-spirv/"; 17506 17506 }; 17507 17507 17508 + vim-splunk = buildVimPlugin { 17509 + pname = "vim-splunk"; 17510 + version = "2024-08-10"; 17511 + src = fetchFromGitHub { 17512 + owner = "yorokobi"; 17513 + repo = "vim-splunk"; 17514 + rev = "827cdf8d9f6940eea146e6571a1086ed7a4061eb"; 17515 + sha256 = "08f5c14ic4mr039by2ml9xf6b2l2rylgjj5q3m7gj29n7mn1zzc7"; 17516 + }; 17517 + meta.homepage = "https://github.com/yorokobi/vim-splunk/"; 17518 + }; 17519 + 17508 17520 vim-startify = buildVimPlugin { 17509 17521 pname = "vim-startify"; 17510 17522 version = "2023-09-20";
+1
pkgs/applications/editors/vim/plugins/vim-plugin-names
··· 1454 1454 https://github.com/christoomey/vim-sort-motion/,, 1455 1455 https://github.com/tpope/vim-speeddating/,, 1456 1456 https://github.com/kbenzie/vim-spirv/,, 1457 + https://github.com/yorokobi/vim-splunk/,HEAD, 1457 1458 https://github.com/mhinz/vim-startify/,, 1458 1459 https://github.com/dstein64/vim-startuptime/,, 1459 1460 https://github.com/axelf4/vim-strip-trailing-whitespace/,,
+25 -2
pkgs/applications/emulators/libretro/cores/fbalpha2012.nix
··· 2 2 lib, 3 3 fetchFromGitHub, 4 4 mkLibretroCore, 5 + runCommand, 6 + zlib, 5 7 }: 6 - mkLibretroCore { 8 + mkLibretroCore rec { 7 9 core = "fbalpha2012"; 8 10 version = "0-unstable-2024-10-21"; 9 11 ··· 16 14 hash = "sha256-giEV09dT/e82bmDlRkxpkW04JcsEZc/enIPecqYtg3c="; 17 15 }; 18 16 17 + sourceRoot = "${src.name}/svn-current/trunk"; 18 + 19 + # unvendor zlib and broken minizip code 20 + postPatch = 21 + let 22 + minizip-src = runCommand "minizip-src" { } '' 23 + mkdir $out 24 + unpackFile ${zlib.src} 25 + cp */contrib/minizip/{unzip.*,ioapi.*,crypt.h} $out/ 26 + ''; 27 + in 28 + '' 29 + substituteInPlace ${makefile} \ 30 + --replace-fail '-I$(FBA_LIB_DIR)/zlib' "" 31 + 32 + cp ${minizip-src}/* src/burner 33 + ''; 34 + 35 + buildInputs = [ zlib ]; 36 + 37 + makeFlags = [ "EXTERNAL_ZLIB=1" ]; 38 + 19 39 makefile = "makefile.libretro"; 20 - preBuild = "cd svn-current/trunk"; 21 40 22 41 meta = { 23 42 description = "Port of Final Burn Alpha ~2012 to libretro";
+6 -3
pkgs/applications/emulators/libretro/cores/mame2003.nix
··· 5 5 }: 6 6 mkLibretroCore { 7 7 core = "mame2003"; 8 - version = "0-unstable-2024-11-01"; 8 + version = "0-unstable-2024-12-10"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "libretro"; 12 12 repo = "mame2003-libretro"; 13 - rev = "6d543115531fc96422b73c989a628600cacbea50"; 14 - hash = "sha256-jFzFQVB0uiSRa82sq1fiMEXyzzDJqRANNgq5hj/ZAl4="; 13 + rev = "b6c6d52d8d630d1a172b6b771443dcbbdb45b76d"; 14 + hash = "sha256-E0kymRxy5aubvcwE5sHcS4T3OEY924TAOXtJN69wp+8="; 15 15 }; 16 + 17 + # Fix build with GCC 14 18 + env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types"; 16 19 17 20 makefile = "Makefile"; 18 21
+13 -4
pkgs/applications/emulators/libretro/cores/mame2016.nix
··· 4 4 fetchFromGitHub, 5 5 mkLibretroCore, 6 6 python3, 7 + rapidjson, 7 8 }: 8 9 mkLibretroCore { 9 10 core = "mame2016"; ··· 17 16 hash = "sha256-IsM7f/zlzvomVOYlinJVqZllUhDfy4NNTeTPtNmdVak="; 18 17 }; 19 18 19 + postPatch = '' 20 + rm -r 3rdparty/rapidjson 21 + ln -s ${lib.getInclude rapidjson} 3rdparty/rapidjson 22 + ''; 23 + 20 24 patches = [ ./patches/mame2016-python311.patch ]; 21 25 extraNativeBuildInputs = [ python3 ]; 22 26 extraBuildInputs = [ alsa-lib ]; 23 27 makeFlags = [ "PYTHON_EXECUTABLE=python3" ]; 24 - # Build failures when this is set to a bigger number 25 - NIX_BUILD_CORES = 8; 26 - # Fix build errors in GCC13 27 - NIX_CFLAGS_COMPILE = "-Wno-error -fpermissive"; 28 + 29 + env = { 30 + # Build failures when this is set to a bigger number 31 + NIX_BUILD_CORES = 8; 32 + # Fix build errors in GCC 13 33 + NIX_CFLAGS_COMPILE = "-Wno-error -fpermissive"; 34 + }; 28 35 29 36 meta = { 30 37 description = "Port of MAME ~2016 to libretro, compatible with MAME 0.174 sets";
+6
pkgs/applications/emulators/libretro/cores/np2kai.nix
··· 21 21 "NP2KAI_HASH=${builtins.substring 0 7 src.rev}" 22 22 ]; 23 23 24 + # Fix build with GCC 14 25 + env.NIX_CFLAGS_COMPILE = toString [ 26 + "-Wno-error=incompatible-pointer-types" 27 + "-Wno-error=int-conversion" 28 + ]; 29 + 24 30 preBuild = "cd sdl"; 25 31 26 32 meta = {
+3 -1
pkgs/applications/emulators/libretro/mkLibretroCore.nix
··· 83 83 84 84 passthru = { 85 85 inherit core libretroCore; 86 - updateScript = unstableGitUpdater { }; 86 + # libretro repos sometimes has a fake tag like "Current", ignore 87 + # it by setting hardcodeZeroVersion 88 + updateScript = unstableGitUpdater { hardcodeZeroVersion = true; }; 87 89 } // (args.passthru or { }); 88 90 89 91 meta =
+21 -17
pkgs/applications/misc/gallery-dl/default.nix pkgs/by-name/ga/gallery-dl/package.nix
··· 1 1 { 2 2 lib, 3 - buildPythonApplication, 4 - fetchPypi, 5 - requests, 3 + fetchFromGitHub, 4 + gitUpdater, 6 5 yt-dlp, 7 - pytestCheckHook, 8 - nix-update-script, 6 + python3Packages, 9 7 }: 10 8 11 - buildPythonApplication rec { 9 + python3Packages.buildPythonApplication rec { 12 10 pname = "gallery-dl"; 13 - version = "1.28.1"; 14 - format = "setuptools"; 11 + version = "1.28.2"; 12 + pyproject = true; 15 13 16 - src = fetchPypi { 17 - inherit version; 18 - pname = "gallery_dl"; 19 - hash = "sha256-1UxLZZoDJsaiPqb+zaiWb9TyQIknKlrz6RN21B0sNe4="; 14 + src = fetchFromGitHub { 15 + owner = "mikf"; 16 + repo = "gallery-dl"; 17 + rev = "v${version}"; 18 + hash = "sha256-AVycp24wGhit9JVE0b+didc2GRnB+EQNnJ3y9a5dMQw="; 20 19 }; 21 20 22 - propagatedBuildInputs = [ 23 - requests 21 + build-system = [ python3Packages.setuptools ]; 22 + 23 + dependencies = [ 24 + python3Packages.requests 24 25 yt-dlp 25 26 ]; 26 27 27 - nativeCheckInputs = [ pytestCheckHook ]; 28 + nativeCheckInputs = [ python3Packages.pytestCheckHook ]; 28 29 29 30 disabledTests = [ 30 31 # requires network access ··· 43 42 44 43 pythonImportsCheck = [ "gallery_dl" ]; 45 44 46 - passthru.updateScript = nix-update-script { }; 45 + passthru.updateScript = gitUpdater { rev-prefix = "v"; }; 47 46 48 47 meta = { 49 48 description = "Command-line program to download image-galleries and -collections from several image hosting sites"; ··· 51 50 changelog = "https://github.com/mikf/gallery-dl/blob/v${version}/CHANGELOG.md"; 52 51 license = lib.licenses.gpl2Only; 53 52 mainProgram = "gallery-dl"; 54 - maintainers = with lib.maintainers; [ dawidsowa ]; 53 + maintainers = [ 54 + lib.maintainers.dawidsowa 55 + lib.maintainers.lucasew 56 + ]; 55 57 }; 56 58 }
+60
pkgs/applications/misc/prusa-slicer/super-slicer-use-boost186.patch
··· 1 + diff --git a/src/hints/HintsToPot.cpp b/src/hints/HintsToPot.cpp 2 + index 7c8029cdeb..4791f0612f 100644 3 + --- a/src/hints/HintsToPot.cpp 4 + +++ b/src/hints/HintsToPot.cpp 5 + @@ -9,7 +9,7 @@ 6 + 7 + bool write_to_pot(boost::filesystem::path path, const std::vector<std::pair<std::string, std::string>>& data) 8 + { 9 + - boost::filesystem::ofstream file(std::move(path), std::ios_base::app); 10 + + boost::nowide::ofstream file(path.string(), std::ios_base::app); 11 + for (const auto& element : data) 12 + { 13 + //Example of .pot element 14 + diff --git a/src/slic3r/GUI/RemovableDriveManager.cpp b/src/slic3r/GUI/RemovableDriveManager.cpp 15 + index 2f8ac96a1a..f0f95c9459 100644 16 + --- a/src/slic3r/GUI/RemovableDriveManager.cpp 17 + +++ b/src/slic3r/GUI/RemovableDriveManager.cpp 18 + @@ -22,7 +22,8 @@ 19 + #include <pwd.h> 20 + #include <boost/filesystem.hpp> 21 + #include <boost/system/error_code.hpp> 22 + -#include <boost/filesystem/convenience.hpp> 23 + +#include <boost/filesystem/path.hpp> 24 + +#include <boost/filesystem/operations.hpp> 25 + #include <boost/process.hpp> 26 + #endif 27 + 28 + diff --git a/src/slic3r/GUI/ScriptExecutor.cpp b/src/slic3r/GUI/ScriptExecutor.cpp 29 + index 3e10680e46..374915ee34 100644 30 + --- a/src/slic3r/GUI/ScriptExecutor.cpp 31 + +++ b/src/slic3r/GUI/ScriptExecutor.cpp 32 + @@ -825,6 +825,19 @@ void as_back_custom_initial_value(int preset_type, std::string& key) { 33 + set_custom_option(preset_type, serialized_vars); 34 + } 35 + 36 + +inline void load_string_file(boost::filesystem::path const& p, std::string& str) 37 + +{ 38 + + boost::filesystem::ifstream file; 39 + + file.exceptions(std::ios_base::failbit | std::ios_base::badbit); 40 + + file.open(p, std::ios_base::binary); 41 + + const boost::uintmax_t sz = boost::filesystem::file_size(p); 42 + + if (BOOST_UNLIKELY(sz > static_cast< boost::uintmax_t >((std::numeric_limits< std::streamsize >::max)()))) 43 + + BOOST_FILESYSTEM_THROW(std::length_error("File size exceeds max read size")); 44 + + str.resize(static_cast< std::size_t >(sz), '\0'); 45 + + if (sz > 0u) 46 + + file.read(&str[0], static_cast< std::streamsize >(sz)); 47 + +} 48 + + 49 + /////// main script fucntions ////// 50 + 51 + //TODO: add "unset" function, that revert to last value (befoer a scripted set) if a set has been made since last not-scripted change. 52 + @@ -960,7 +973,7 @@ void ScriptContainer::init(const std::string& tab_key, Tab* tab) 53 + //res = builder.AddSectionFromFile(ui_script_file.string().c_str()); //seems to be problematic on cyrillic locale 54 + { 55 + std::string all_file; 56 + - boost::filesystem::load_string_file(ui_script_file, all_file); 57 + + load_string_file(ui_script_file, all_file); 58 + res = builder.AddSectionFromMemory(ui_script_file.string().c_str(), all_file.c_str(), (unsigned int)(all_file.length()), 0); 59 + } 60 + if (res < 0) throw CompileErrorException("Error, can't build the script for tab " + tab_key);
+16 -20
pkgs/applications/misc/prusa-slicer/super-slicer.nix
··· 13 13 description = "PrusaSlicer fork with more features and faster development cycle"; 14 14 15 15 patches = [ 16 - # Fix compile error with boost 1.79. See https://github.com/supermerill/SuperSlicer/issues/2823 17 - (fetchpatch { 18 - url = "https://raw.githubusercontent.com/gentoo/gentoo/81e3ca3b7c131e8345aede89e3bbcd700e1ad567/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch"; 19 - # Excludes Linux-only patches 20 - excludes = [ 21 - "src/slic3r/GUI/FreeCADDialog.cpp" 22 - "src/slic3r/GUI/Tab.cpp" 23 - "src/slic3r/Utils/Http.cpp" 24 - ]; 25 - hash = "sha256-v0q2MhySayij7+qBTE5q01IOq/DyUcWnjpbzB/AV34c="; 26 - }) 27 16 # Drop if this fix gets merged upstream 28 17 (fetchpatch { 29 18 url = "https://github.com/supermerill/SuperSlicer/commit/fa7c545efa5d1880cf24af32083094fc872d3692.patch"; 30 19 hash = "sha256-fh31qrqjQiRQL03pQl4KJAEtbKMwG8/nJroqIDOIePw="; 31 20 }) 21 + ./super-slicer-use-boost186.patch 32 22 ]; 33 23 34 24 versions = { 35 25 stable = { 36 - version = "2.3.57.12"; 37 - hash = "sha256-lePhDRHI++9zs54bTt2/Lu6ZQ7egjJCWb752aI0s7Mw=="; 38 - patches = null; 26 + version = "2.5.59.13"; 27 + hash = "sha256-FkoGcgVoBeHSZC3W5y30TBPmPrWnZSlO66TgwskgqAU="; 28 + inherit patches; 39 29 }; 40 30 latest = { 41 - version = "2.4.58.5"; 42 - hash = "sha256-UywxEGedXaBUTKojEkbkuejI6SdPSkPxTJMwUDNW6W0="; 31 + version = "2.5.59.13"; 32 + hash = "sha256-FkoGcgVoBeHSZC3W5y30TBPmPrWnZSlO66TgwskgqAU="; 43 33 inherit patches; 44 34 }; 45 35 beta = { 46 - version = "2.5.59.6"; 47 - hash = "sha256-4ivhkcvVw5NlPsDz3J840aWc0qnp/XzCnTTCICwi3/c="; 36 + version = "2.5.60.0"; 37 + hash = "sha256-dDRK07SatLLhuoc2fJKbHUwAofRRvBUoXWO61W2blFM="; 48 38 inherit patches; 49 39 }; 50 40 }; ··· 74 84 --replace-fail 'auto &vi' 'auto vi' 75 85 ''; 76 86 77 - # We don't need PS overrides anymore, and gcode-viewer is embedded in the binary. 78 - postInstall = null; 87 + # We don't need PS overrides anymore, and gcode-viewer is embedded in the binary 88 + # but we do still need to move OCCTWrapper.so to the lib directory 89 + postInstall = '' 90 + if [[ -f $out/bin/OCCTWrapper.so ]]; then 91 + mkdir -p "$out/lib" 92 + mv -v $out/bin/*.* $out/lib/ 93 + fi 94 + ''; 79 95 separateDebugInfo = true; 80 96 81 97 buildInputs = super.buildInputs ++ [
+6 -4
pkgs/applications/misc/rofi/default.nix
··· 11 11 git, 12 12 cairo, 13 13 libxcb, 14 + xcb-util-cursor, 15 + xcbutilkeysyms, 14 16 xcbutil, 15 17 xcbutilwm, 16 18 xcbutilxrm, 17 - xcb-util-cursor, 18 19 libstartup_notification, 19 20 bison, 20 21 flex, ··· 27 26 28 27 stdenv.mkDerivation rec { 29 28 pname = "rofi-unwrapped"; 30 - version = "1.7.5"; 29 + version = "1.7.6"; 31 30 32 31 src = fetchFromGitHub { 33 32 owner = "davatorium"; 34 33 repo = "rofi"; 35 34 rev = version; 36 35 fetchSubmodules = true; 37 - hash = "sha256-3XFusKeckagEPfbLtt1xAVTEfn1Qebdi/Iq1AYbHCR4="; 36 + hash = "sha256-hT9FMCAwY8hZx4y1l0vHfcReIJUBxSmixZJhKP8nRpw="; 38 37 }; 39 38 40 39 preConfigure = '' ··· 64 63 check 65 64 libstartup_notification 66 65 libxcb 66 + xcb-util-cursor 67 + xcbutilkeysyms 67 68 xcbutil 68 69 xcbutilwm 69 70 xcbutilxrm 70 - xcb-util-cursor 71 71 which 72 72 ]; 73 73
+6 -11
pkgs/applications/misc/workrave/default.nix pkgs/by-name/wo/workrave/package.nix
··· 25 25 cairomm, 26 26 dbus, 27 27 dbus-glib, 28 - gdome2, 29 - gstreamer, 30 - gst-plugins-base, 31 - gst-plugins-good, 28 + gst_all_1, 32 29 libsigcxx, 33 30 boost, 34 - jinja2, 31 + python3Packages, 35 32 }: 36 33 37 34 stdenv.mkDerivation rec { ··· 51 54 libtool 52 55 pkg-config 53 56 wrapGAppsHook3 54 - jinja2 57 + python3Packages.jinja2 55 58 gobject-introspection 56 59 ]; 57 60 ··· 70 73 cairomm 71 74 dbus 72 75 dbus-glib 73 - gdome2 74 - gstreamer 75 - gst-plugins-base 76 - gst-plugins-good 76 + gst_all_1.gstreamer 77 + gst_all_1.gst-plugins-base 78 + gst_all_1.gst-plugins-good 77 79 libsigcxx 78 80 boost 79 81 ]; ··· 82 86 enableParallelBuilding = true; 83 87 84 88 meta = with lib; { 85 - broken = (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64); 86 89 description = "Program to help prevent Repetitive Strain Injury"; 87 90 mainProgram = "workrave"; 88 91 longDescription = ''
+33
pkgs/by-name/ag/agenix-cli/package.nix
··· 1 + { 2 + lib, 3 + fetchFromGitHub, 4 + rustPlatform, 5 + nix-update-script, 6 + }: 7 + 8 + rustPlatform.buildRustPackage rec { 9 + pname = "agenix-cli"; 10 + version = "0.1.0"; 11 + 12 + src = fetchFromGitHub { 13 + owner = "cole-h"; 14 + repo = "agenix-cli"; 15 + rev = "v${version}"; 16 + sha256 = "sha256-0+QVY1sDhGF4hAN6m2FdKZgm9V1cuGGjY4aitRBnvKg="; 17 + }; 18 + 19 + cargoHash = "sha256-TLCSLxrKLBge/DgyzvBSshssIiFOuc/4Dq0wY7u2hxI="; 20 + 21 + passthru.updateScript = nix-update-script { }; 22 + 23 + meta = { 24 + description = "Companion tool to https://github.com/ryantm/agenix"; 25 + homepage = "https://github.com/cole-h/agenix-cli"; 26 + license = with lib.licenses; [ 27 + asl20 28 + mit 29 + ]; 30 + maintainers = with lib.maintainers; [ misuzu ]; 31 + mainProgram = "agenix"; 32 + }; 33 + }
+126
pkgs/by-name/aj/aja-desktop-software/package.nix
··· 1 + { 2 + stdenvNoCC, 3 + lib, 4 + fetchzip, 5 + dpkg, 6 + patchelf, 7 + buildFHSEnv, 8 + writeShellScript, 9 + makeBinaryWrapper, 10 + }: 11 + 12 + let 13 + pname = "aja-desktop-software"; 14 + version = "17.1.3"; 15 + meta = { 16 + description = "Graphical utilities for interacting with AJA desktop video cards"; 17 + homepage = "https://www.aja.com/products/aja-control-room"; 18 + license = lib.licenses.unfree; # https://www.aja.com/software-license-agreement 19 + maintainers = [ lib.maintainers.lukegb ]; 20 + platforms = [ "x86_64-linux" ]; 21 + sourceProvenance = [ 22 + lib.sourceTypes.binaryNativeCode 23 + lib.sourceTypes.binaryFirmware 24 + ]; 25 + }; 26 + 27 + unwrapped = stdenvNoCC.mkDerivation { 28 + pname = "${pname}-unwrapped"; 29 + inherit version; 30 + 31 + src = fetchzip { 32 + url = "https://www.aja.com/assets/support/files/9895/en/AJA-Desktop-Software-Installer_Linux-Ubuntu_v${version}_Release.zip"; 33 + hash = "sha256-TxDcYIhEcpPnpoqpey5vSvUltLT/3xwBfOhAP81Q9+E="; 34 + }; 35 + 36 + unpackCmd = "dpkg -x $curSrc/ajaretail_*.deb source"; 37 + 38 + nativeBuildInputs = [ 39 + dpkg 40 + patchelf 41 + ]; 42 + 43 + installPhase = '' 44 + runHook preInstall 45 + 46 + mkdir -p $out/share 47 + mv usr/share/applications $out/share/applications 48 + mv usr/share/doc $out/share/doc 49 + 50 + mv etc $out/etc 51 + 52 + mv opt $out/opt 53 + 54 + ln -s $out/opt/aja/bin $out/bin 55 + 56 + # For some reason ajanmos doesn't have /opt/aja/lib in its rpath... 57 + patchelf $out/opt/aja/bin/ajanmos --add-rpath $out/opt/aja/lib 58 + 59 + runHook postInstall 60 + ''; 61 + 62 + dontPatchELF = true; 63 + 64 + inherit meta; 65 + }; 66 + in 67 + buildFHSEnv { 68 + inherit pname version; 69 + 70 + targetPkgs = 71 + pkgs: 72 + [ unwrapped ] 73 + ++ (with pkgs; [ 74 + ocl-icd 75 + libGL 76 + udev 77 + libpulseaudio 78 + zstd 79 + glib 80 + fontconfig 81 + freetype 82 + xorg.libxcb 83 + xorg.libX11 84 + xorg.xcbutilwm 85 + xorg.xcbutilimage 86 + xorg.xcbutilkeysyms 87 + xorg.xcbutilrenderutil 88 + xorg.libSM 89 + xorg.libICE 90 + libxkbcommon 91 + dbus 92 + avahi 93 + ]); 94 + 95 + nativeBuildInputs = [ 96 + makeBinaryWrapper 97 + ]; 98 + 99 + unshareIpc = false; 100 + unsharePid = false; 101 + 102 + runScript = writeShellScript "aja" '' 103 + exec_binary="$1" 104 + shift 105 + export QT_PLUGIN_PATH="${unwrapped}/opt/aja/plugins" 106 + exec "${unwrapped}/opt/aja/bin/$exec_binary" "$@" 107 + ''; 108 + 109 + extraInstallCommands = '' 110 + mkdir -p $out/libexec/aja-desktop 111 + mv $out/bin/${pname} $out/libexec/aja-desktop/${pname} 112 + 113 + for binary in controlpanel controlroom ajanmos systemtest; do 114 + makeWrapper "$out/libexec/aja-desktop/${pname}" "$out/bin/aja-$binary" \ 115 + --add-flags "$binary" 116 + done 117 + ''; 118 + 119 + passthru = { 120 + inherit unwrapped; 121 + }; 122 + 123 + meta = meta // { 124 + mainProgram = "aja-controlpanel"; 125 + }; 126 + }
+2 -2
pkgs/by-name/al/alt-tab-macos/package.nix
··· 8 8 9 9 stdenvNoCC.mkDerivation (finalAttrs: { 10 10 pname = "alt-tab-macos"; 11 - version = "7.12.0"; 11 + version = "7.14.1"; 12 12 13 13 src = fetchurl { 14 14 url = "https://github.com/lwouis/alt-tab-macos/releases/download/v${finalAttrs.version}/AltTab-${finalAttrs.version}.zip"; 15 - hash = "sha256-CUsbex5R3msKZYrp52snX6ZBTZjtVRN63t6ABDcDYfI="; 15 + hash = "sha256-62+2N+TjKq+TdJuaOizpiSvGQnkC2+VhBX+3A2QepwI="; 16 16 }; 17 17 18 18 sourceRoot = ".";
+9 -18
pkgs/by-name/ap/apt-cacher-ng/package.nix
··· 17 17 c-ares, 18 18 }: 19 19 20 - stdenv.mkDerivation rec { 20 + stdenv.mkDerivation (finalAttrs: { 21 21 pname = "apt-cacher-ng"; 22 - version = "3.7.4"; 22 + version = "3.7.5"; 23 23 24 24 src = fetchurl { 25 - url = "mirror://debian/pool/main/a/apt-cacher-ng/apt-cacher-ng_${version}.orig.tar.xz"; 26 - sha256 = "0pwsj9rf6a6q7cnfbpcrfq2gjcy7sylqzqqr49g2zi39lrrh8533"; 25 + url = "mirror://debian/pool/main/a/apt-cacher-ng/apt-cacher-ng_${finalAttrs.version}.orig.tar.xz"; 26 + hash = "sha256-LkiH1ocDljNJkqzNMx4Sy6ht/vhXUy9hC7BjWo4ykA0="; 27 27 }; 28 - 29 - patches = [ 30 - # this patch fixes the build for glibc >= 2.38 31 - (fetchpatch { 32 - name = "strlcpy-glibc238.patch"; 33 - url = "https://bugs.debian.org/cgi-bin/bugreport.cgi?att=0;bug=1052360;msg=10"; 34 - hash = "sha256-uhQj+ZcHCV36Tm0pF/+JG59bSaRdTZCrMcKL3YhZTk8="; 35 - }) 36 - ]; 37 28 38 29 nativeBuildInputs = [ 39 30 cmake ··· 43 52 c-ares 44 53 ]; 45 54 46 - meta = with lib; { 55 + meta = { 47 56 description = "Caching proxy specialized for Linux distribution files"; 48 57 mainProgram = "apt-cacher-ng"; 49 58 homepage = "https://www.unix-ag.uni-kl.de/~bloch/acng/"; 50 - license = licenses.bsdOriginal; 51 - platforms = platforms.linux; 52 - maintainers = [ maintainers.makefu ]; 59 + license = lib.licenses.bsdOriginal; 60 + platforms = lib.platforms.linux; 61 + maintainers = [ lib.maintainers.makefu ]; 53 62 }; 54 - } 63 + })
+68
pkgs/by-name/ar/arj/package.nix
··· 1 + { 2 + gccStdenv, 3 + lib, 4 + fetchurl, 5 + fetchzip, 6 + fetchpatch, 7 + autoreconfHook, 8 + }: 9 + 10 + gccStdenv.mkDerivation (finalAttrs: { 11 + pname = "arj"; 12 + version = "3.10.22"; 13 + debianrev = "28"; 14 + 15 + src = fetchurl { 16 + url = "http://deb.debian.org/debian/pool/main/a/arj/arj_${finalAttrs.version}.orig.tar.gz"; 17 + hash = "sha256-WJ5Mm8zIZp57bY1vzWTgH2osIf4QqtVqgzBOzDuWp9s="; 18 + }; 19 + 20 + versionPatch = fetchzip { 21 + url = "http://deb.debian.org/debian/pool/main/a/arj/arj_${finalAttrs.version}-${finalAttrs.debianrev}.debian.tar.xz"; 22 + hash = "sha256-rmu5RSZ6OHGT093PShzkvC3ktm/U6smta6pmn9D7Jfw="; 23 + }; 24 + 25 + nativeBuildInputs = [ autoreconfHook ]; 26 + 27 + postPatch = 28 + lib.optionalString gccStdenv.hostPlatform.isDarwin '' 29 + substituteInPlace environ.c \ 30 + --replace-fail " #include <sys/statfs.h>" " #include <sys/mount.h>" 31 + '' 32 + + '' 33 + cp -r ${finalAttrs.versionPatch} ./debian 34 + chmod +w debian/patches/gnu_build_cross.patch 35 + chmod +w debian/patches 36 + mv debian/patches/gnu_build_cross.patch debian/patches/zz_for_last_gnu_build_cross.patch # This patch should be applied at last 37 + for fname in debian/patches/*.patch 38 + do 39 + patch -p1 < "$fname" 40 + done 41 + ''; 42 + 43 + env = { 44 + NIX_CFLAGS_COMPILE = toString [ 45 + "-Wno-error=implicit-function-declaration" 46 + ]; 47 + }; 48 + 49 + preAutoreconf = '' 50 + cd gnu 51 + ''; 52 + 53 + postConfigure = '' 54 + cd .. 55 + ''; 56 + 57 + meta = { 58 + description = "Open-source implementation of the world-famous ARJ archiver"; 59 + longDescription = '' 60 + This version of ARJ has been created with an intent to preserve maximum 61 + compatibility and retain the feature set of the original ARJ archiver as 62 + provided by ARJ Software, Inc. 63 + ''; 64 + license = lib.licenses.gpl2Plus; 65 + maintainers = [ lib.maintainers.sander ]; 66 + platforms = lib.platforms.unix; 67 + }; 68 + })
+46
pkgs/by-name/as/asha-pipewire-sink/package.nix
··· 1 + { 2 + cmake, 3 + stdenv, 4 + fetchFromGitHub, 5 + lib, 6 + pkg-config, 7 + pipewire, 8 + bluez, 9 + glib, 10 + }: 11 + 12 + stdenv.mkDerivation rec { 13 + pname = "asha-pipewire-sink"; 14 + version = "0-unstable-2024-10-22"; 15 + 16 + src = fetchFromGitHub { 17 + owner = "thewierdnut"; 18 + repo = "asha_pipewire_sink"; 19 + rev = "bbf665b9a3b90fcdbaeb092799ea3c5ba4347e31"; 20 + hash = "sha256-PuJ6lBV7s5OqGe1X4wD7T+8LVMCFpgvM1pnMjXYr8gs="; 21 + }; 22 + 23 + nativeBuildInputs = [ 24 + cmake 25 + pkg-config 26 + ]; 27 + 28 + buildInputs = [ 29 + bluez.dev 30 + glib.dev 31 + pipewire.dev 32 + ]; 33 + 34 + installPhase = '' 35 + install -Dm755 asha_connection_test snoop_analyze asha_stream_test asha_pipewire_sink -t $out/bin 36 + ''; 37 + 38 + meta = { 39 + description = "Sample ASHA implementation for Linux designed to work with pipewire and bluez"; 40 + homepage = "https://github.com/thewierdnut/asha_pipewire_sink"; 41 + license = lib.licenses.unlicense; 42 + platforms = lib.platforms.all; 43 + maintainers = with lib.maintainers; [ onny ]; 44 + mainProgram = "asha_pipewire_sink"; 45 + }; 46 + }
+14 -5
pkgs/by-name/c6/c64-debugger/package.nix
··· 19 19 src = fetchgit { 20 20 url = "https://git.code.sf.net/p/c64-debugger/code"; 21 21 rev = "f97772e3f5c8b4fa99e8ed212ed1c4cb1e2389f1"; 22 - sha256 = "sha256-3SR73AHQlYSEYpJLtQ/aJ1UITZGq7aA9tQKxBsn/yuc="; 22 + hash = "sha256-3SR73AHQlYSEYpJLtQ/aJ1UITZGq7aA9tQKxBsn/yuc="; 23 23 }; 24 24 25 25 buildInputs = [ ··· 85 85 runHook postInstall 86 86 ''; 87 87 88 - meta = with lib; { 88 + env = { 89 + NIX_CFLAGS_COMPILE = toString [ 90 + "-Wno-error=narrowing" 91 + "-Wno-error=implicit-function-declaration" 92 + "-Wno-error=int-conversion" 93 + "-Wno-error=incompatible-pointer-types" 94 + ]; 95 + }; 96 + 97 + meta = { 89 98 homepage = "https://sourceforge.net/projects/c64-debugger"; 90 99 description = "Commodore 64, Atari XL/XE and NES code and memory debugger that works in real time"; 91 - license = with licenses; [ 100 + license = with lib.licenses; [ 92 101 gpl3Only # c64-debugger 93 102 mit # MTEngine 94 103 # emulators included in c64-debugger ··· 105 96 gpl2 # nestopiaue 106 97 ]; 107 98 mainProgram = "c64debugger"; 108 - maintainers = [ maintainers.detegr ]; 109 - platforms = platforms.linux; 99 + maintainers = [ lib.maintainers.detegr ]; 100 + platforms = lib.platforms.linux; 110 101 }; 111 102 }
+1 -5
pkgs/by-name/ca/caddy/package.nix
··· 7 7 , testers 8 8 , installShellFiles 9 9 , stdenv 10 - , go 11 - , xcaddy 12 - , cacert 13 - , git 14 10 }: 15 11 let 16 12 version = "2.8.4"; ··· 79 83 description = "Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS"; 80 84 license = licenses.asl20; 81 85 mainProgram = "caddy"; 82 - maintainers = with maintainers; [ Br1ght0ne emilylange techknowlogick ]; 86 + maintainers = with maintainers; [ Br1ght0ne techknowlogick ]; 83 87 }; 84 88 }
+60 -11
pkgs/by-name/ca/caddy/plugins.nix
··· 1 + # callPackage args 1 2 { 2 3 lib, 3 4 stdenv, ··· 8 7 git, 9 8 caddy, 10 9 }: 10 + 11 + let 12 + inherit (builtins) hashString; 13 + inherit (lib) 14 + assertMsg 15 + concatMapStrings 16 + elemAt 17 + fakeHash 18 + filter 19 + hasInfix 20 + length 21 + lessThan 22 + sort 23 + toShellVar 24 + ; 25 + in 26 + 27 + # pkgs.caddy.withPlugins args 11 28 { 12 29 plugins, 13 - hash ? lib.fakeHash, 30 + hash ? fakeHash, 14 31 }: 32 + 15 33 let 16 - pluginsSorted = lib.sort lib.lessThan plugins; 17 - pluginsList = lib.concatMapStrings (plugin: "${plugin}-") pluginsSorted; 18 - pluginsHash = builtins.hashString "md5" pluginsList; 19 - pluginsWithoutVersion = lib.filter (p: !lib.hasInfix "@" p) pluginsSorted; 34 + pluginsSorted = sort lessThan plugins; 35 + pluginsList = concatMapStrings (plugin: "${plugin}-") pluginsSorted; 36 + pluginsHash = hashString "md5" pluginsList; 37 + pluginsWithoutVersion = filter (p: !hasInfix "@" p) pluginsSorted; 20 38 in 21 - assert lib.assertMsg ( 22 - lib.length pluginsWithoutVersion == 0 23 - ) "All plugins should have a version (eg ${lib.elemAt pluginsWithoutVersion 0}@x.y.z)!"; 39 + 40 + # eval barrier: user provided plugins must have tags 41 + # the go module must either be tagged in upstream repo 42 + # or user must provide commit sha or a pseudo-version number 43 + # https://go.dev/doc/modules/version-numbers#pseudo-version-number 44 + assert assertMsg ( 45 + length pluginsWithoutVersion == 0 46 + ) "Plugins must have tags present (e.g. ${elemAt pluginsWithoutVersion 0}@x.y.z)!"; 47 + 24 48 caddy.overrideAttrs ( 25 49 finalAttrs: prevAttrs: { 26 50 vendorHash = null; ··· 64 38 dontUnpack = true; 65 39 buildPhase = 66 40 let 67 - withArgs = lib.concatMapStrings (plugin: "--with ${plugin} ") pluginsSorted; 41 + withArgs = concatMapStrings (plugin: "--with ${plugin} ") pluginsSorted; 68 42 in 69 43 '' 70 44 export GOCACHE=$TMPDIR/go-cache ··· 81 55 outputHashAlgo = "sha256"; 82 56 }; 83 57 58 + # xcaddy built output always uses pseudo-version number 59 + # we enforce user provided plugins are present and have matching tags here 84 60 doInstallCheck = true; 85 61 installCheckPhase = '' 86 62 runHook preInstallCheck 87 63 88 - ${lib.toShellVar "notfound" pluginsSorted} 64 + ${toShellVar "notfound" pluginsSorted} 65 + 89 66 while read kind module version; do 90 67 [[ "$kind" = "dep" ]] || continue 91 68 module="''${module}@''${version}" ··· 98 69 fi 99 70 done 100 71 done < <($out/bin/caddy build-info) 72 + 101 73 if (( ''${#notfound[@]} )); then 102 - >&2 echo "Plugins not found: ''${notfound[@]}" 74 + for plugin in "''${notfound[@]}"; do 75 + base=''${plugin%@*} 76 + specified=''${plugin#*@} 77 + found=0 78 + 79 + while read kind module expected; do 80 + [[ "$kind" = "dep" && "$module" = "$base" ]] || continue 81 + echo "Plugin \"$base\" have incorrect tag:" 82 + echo " specified: \"$base@$specified\"" 83 + echo " got: \"$base@$expected\"" 84 + found=1 85 + done < <($out/bin/caddy build-info) 86 + 87 + if (( found == 0 )); then 88 + echo "Plugin \"$base\" not found in build:" 89 + echo " specified: \"$base@$specified\"" 90 + echo " plugin does not exist in the xcaddy build output, open an issue in nixpkgs or upstream" 91 + fi 92 + done 93 + 103 94 exit 1 104 95 fi 105 96
+6
pkgs/by-name/ca/canokey-usbip/package.nix
··· 28 28 python3 29 29 ]; 30 30 31 + env = { 32 + NIX_CFLAGS_COMPILE = toString [ 33 + "-Wno-error=incompatible-pointer-types" 34 + ]; 35 + }; 36 + 31 37 postInstall = '' 32 38 install -D --target-directory=$out/bin canokey-usbip 33 39 '';
+3 -3
pkgs/by-name/ca/cargo-generate/package.nix
··· 12 12 13 13 rustPlatform.buildRustPackage rec { 14 14 pname = "cargo-generate"; 15 - version = "0.22.0"; 15 + version = "0.22.1"; 16 16 17 17 src = fetchFromGitHub { 18 18 owner = "cargo-generate"; 19 19 repo = "cargo-generate"; 20 20 rev = "v${version}"; 21 - sha256 = "sha256-oiXv6MbQpmWFi2cTN3a1Zx7Bjr0Y+f6/O+0FQNidbBg="; 21 + sha256 = "sha256-iOZCSd6jF1OF7ScjpsMlvMjsFHyg6QJJ6qk0OxrARho="; 22 22 }; 23 23 24 - cargoHash = "sha256-8yLGxydU7jjoG13I+h7qjtabcCxzjnEiE8tAbH56pp4="; 24 + cargoHash = "sha256-ZLzJpD3bIuNtGl5kzhvpE07jtfEV+lgnTiPcFM7MHdE="; 25 25 26 26 nativeBuildInputs = [ pkg-config ]; 27 27
+15
pkgs/by-name/cl/clipit/package.nix
··· 1 1 { 2 2 fetchFromGitHub, 3 + fetchpatch, 3 4 lib, 4 5 stdenv, 5 6 autoreconfHook, ··· 28 27 intltoolize --copy --force --automake 29 28 ''; 30 29 30 + patches = [ 31 + # Fixes for GCC14 32 + (fetchpatch { 33 + url = "https://salsa.debian.org/debian/clipit/-/raw/d4bafc28fcb445d1940cdfede6c70142cf3162f5/debian/patches/incompatible-pointer-types.patch"; 34 + hash = "sha256-STI1fpnoPdEqu1embQcUlTG712HPbJ+LPm930P13Ixo="; 35 + }) 36 + (fetchpatch { 37 + url = "https://salsa.debian.org/debian/clipit/-/raw/656d0814030c13437b10d40ee75615d0e8cd873e/debian/patches/missing-prototypes.patch"; 38 + hash = "sha256-UD183IjV5BprPHQK9bhmUBKfUYgqEZ9M1cRE+AmhAPA="; 39 + }) 40 + ]; 41 + 31 42 nativeBuildInputs = [ 32 43 pkg-config 33 44 wrapGAppsHook3 34 45 autoreconfHook 35 46 intltool 36 47 ]; 48 + 37 49 configureFlags = [ 38 50 "--with-gtk3" 39 51 "--enable-appindicator=yes" 40 52 ]; 53 + 41 54 buildInputs = [ 42 55 gtk3 43 56 libayatana-appindicator
+38 -52
pkgs/by-name/co/cockpit/package.nix
··· 14 14 git, 15 15 glib, 16 16 glib-networking, 17 - gnused, 18 17 gnutls, 19 18 json-glib, 20 19 krb5, ··· 30 31 pkg-config, 31 32 polkit, 32 33 python3Packages, 33 - runtimeShell, 34 34 systemd, 35 35 udev, 36 36 xmlto, 37 37 }: 38 38 39 - stdenv.mkDerivation rec { 39 + stdenv.mkDerivation (finalAttrs: { 40 40 pname = "cockpit"; 41 - version = "330"; 41 + version = "331"; 42 42 43 43 src = fetchFromGitHub { 44 44 owner = "cockpit-project"; 45 45 repo = "cockpit"; 46 - rev = "refs/tags/${version}"; 47 - hash = "sha256-tPoFa9/22WUO+N3Pc/7jdWIOsoImeru6/F+2yUi92iI="; 46 + tag = finalAttrs.version; 47 + hash = "sha256-G0L1ZcvjUCSNkDvYoyConymZ4bsEye03t5K15EyI008="; 48 48 fetchSubmodules = true; 49 49 }; 50 50 ··· 85 87 echo "#!/bin/sh" > test/node_modules 86 88 87 89 substituteInPlace src/tls/cockpit-certificate-helper.in \ 88 - --replace 'COCKPIT_CONFIG="@sysconfdir@/cockpit"' 'COCKPIT_CONFIG=/etc/cockpit' 90 + --replace-fail 'COCKPIT_CONFIG="@sysconfdir@/cockpit"' 'COCKPIT_CONFIG=/etc/cockpit' 89 91 90 92 substituteInPlace src/tls/cockpit-certificate-ensure.c \ 91 - --replace '#define COCKPIT_SELFSIGNED_PATH PACKAGE_SYSCONF_DIR COCKPIT_SELFSIGNED_FILENAME' '#define COCKPIT_SELFSIGNED_PATH "/etc" COCKPIT_SELFSIGNED_FILENAME' 93 + --replace-fail '#define COCKPIT_SELFSIGNED_PATH PACKAGE_SYSCONF_DIR COCKPIT_SELFSIGNED_FILENAME' '#define COCKPIT_SELFSIGNED_PATH "/etc" COCKPIT_SELFSIGNED_FILENAME' 92 94 93 95 substituteInPlace src/common/cockpitconf.c \ 94 - --replace 'const char *cockpit_config_dirs[] = { PACKAGE_SYSCONF_DIR' 'const char *cockpit_config_dirs[] = { "/etc"' 96 + --replace-fail 'const char *cockpit_config_dirs[] = { PACKAGE_SYSCONF_DIR' 'const char *cockpit_config_dirs[] = { "/etc"' 95 97 96 98 # instruct users with problems to create a nixpkgs issue instead of nagging upstream directly 97 99 substituteInPlace configure.ac \ 98 - --replace 'devel@lists.cockpit-project.org' 'https://github.com/NixOS/nixpkgs/issues/new?assignees=&labels=0.kind%3A+bug&template=bug_report.md&title=cockpit%25' 100 + --replace-fail 'devel@lists.cockpit-project.org' 'https://github.com/NixOS/nixpkgs/issues/new?assignees=&labels=0.kind%3A+bug&template=bug_report.md&title=cockpit%25' 99 101 100 102 patchShebangs \ 101 103 build.js \ 102 104 test/common/pixel-tests \ 103 105 test/common/run-tests \ 104 106 test/common/tap-cdp \ 105 - test/static-code \ 106 107 tools/escape-to-c \ 107 108 tools/make-compile-commands \ 108 109 tools/node-modules \ 109 110 tools/termschutz \ 110 - tools/webpack-make.js 111 + tools/webpack-make.js \ 112 + tools/test-driver \ 113 + test/common/static-code 111 114 112 115 for f in node_modules/.bin/*; do 113 116 patchShebangs $(realpath $f) ··· 121 122 for f in pkg/**/*.js pkg/**/*.jsx test/**/* src/**/*; do 122 123 # some files substituteInPlace report as missing and it's safe to ignore them 123 124 substituteInPlace "$(realpath "$f")" \ 124 - --replace '"/usr/bin/' '"' \ 125 - --replace '"/bin/' '"' || true 125 + --replace-quiet '"/usr/bin/' '"' \ 126 + --replace-quiet '"/bin/' '"' || true 126 127 done 127 128 128 129 substituteInPlace src/common/Makefile-common.am \ 129 - --replace 'TEST_PROGRAM += test-pipe' "" # skip test-pipe because it hangs the build 130 + --replace-warn 'TEST_PROGRAM += test-pipe' "" # skip test-pipe because it hangs the build 131 + 132 + substituteInPlace src/ws/Makefile-ws.am \ 133 + --replace-warn 'TEST_PROGRAM += test-compat' "" 130 134 131 135 substituteInPlace test/pytest/*.py \ 132 - --replace "'bash" "'${bashInteractive}/bin/bash" 136 + --replace-quiet "'bash" "'${bashInteractive}/bin/bash" 133 137 134 - echo "m4_define(VERSION_NUMBER, [${version}])" > version.m4 138 + echo "m4_define(VERSION_NUMBER, [${finalAttrs.version}])" > version.m4 139 + 140 + # hardcode libexecdir, I am assuming that cockpit only use it to find it's binaries 141 + printf 'def get_libexecdir() -> str:\n\treturn "%s"' "$out/libexec" >> src/cockpit/packages.py 135 142 ''; 136 143 137 144 configureFlags = [ ··· 145 140 "--disable-pcp" # TODO: figure out how to package its dependency 146 141 "--with-default-session-path=/run/wrappers/bin:/run/current-system/sw/bin" 147 142 "--with-admin-group=root" # TODO: really? Maybe "wheel"? 148 - "--enable-old-bridge=yes" 149 143 ]; 150 144 151 145 enableParallelBuilding = true; 152 146 153 - preBuild = '' 154 - patchShebangs \ 155 - tools/test-driver 156 - ''; 157 - 158 - postBuild = '' 159 - chmod +x \ 160 - src/systemd/update-motd \ 161 - src/tls/cockpit-certificate-helper \ 162 - src/ws/cockpit-desktop 163 - 164 - patchShebangs \ 165 - src/systemd/update-motd \ 166 - src/tls/cockpit-certificate-helper \ 167 - src/ws/cockpit-desktop 168 - 169 - substituteInPlace src/ws/cockpit-desktop \ 170 - --replace ' /bin/bash' ' ${runtimeShell}' 171 - ''; 172 - 173 147 fixupPhase = '' 174 148 runHook preFixup 149 + 150 + patchShebangs $out/libexec/* 175 151 176 152 wrapProgram $out/libexec/cockpit-certificate-helper \ 177 153 --prefix PATH : ${ ··· 163 177 } \ 164 178 --run 'cd $(mktemp -d)' 165 179 166 - wrapProgram $out/share/cockpit/motd/update-motd \ 167 - --prefix PATH : ${lib.makeBinPath [ gnused ]} 168 - 169 180 wrapProgram $out/bin/cockpit-bridge \ 170 181 --prefix PYTHONPATH : $out/${python3Packages.python.sitePackages} 171 182 172 183 substituteInPlace $out/${python3Packages.python.sitePackages}/cockpit/_vendor/systemd_ctypes/libsystemd.py \ 173 - --replace-fail libsystemd.so.0 ${systemd}/lib/libsystemd.so.0 184 + --replace-warn libsystemd.so.0 ${systemd}/lib/libsystemd.so.0 174 185 175 186 substituteInPlace $out/share/polkit-1/actions/org.cockpit-project.cockpit-bridge.policy \ 176 187 --replace-fail /usr $out 177 188 189 + substituteInPlace $out/lib/systemd/*/* \ 190 + --replace-warn /bin /run/current-system/sw/bin 191 + 178 192 runHook postFixup 179 193 ''; 180 194 181 - doCheck = true; 195 + nativeCheckInputs = [ python3Packages.pytestCheckHook ]; 196 + 182 197 checkInputs = [ 183 198 bashInteractive 184 199 cacert 185 200 dbus 186 201 glib-networking 187 202 openssh 188 - python3Packages.pytest 189 203 ]; 190 - checkPhase = '' 204 + 205 + preCheck = '' 191 206 export GIO_EXTRA_MODULES=$GIO_EXTRA_MODULES:${glib-networking}/lib/gio/modules 192 207 export G_DEBUG=fatal-criticals 193 208 export G_MESSAGES_DEBUG=cockpit-ws,cockpit-wrapper,cockpit-bridge 194 209 export PATH=$PATH:$(pwd) 195 210 196 - make pytest -j$NIX_BUILD_CORES || true 197 211 make check -j$NIX_BUILD_CORES || true 198 - test/static-code 199 212 npm run eslint 200 - npm run stylelint || true 213 + npm run stylelint 201 214 ''; 202 215 203 216 passthru = { ··· 204 219 updateScript = nix-update-script { }; 205 220 }; 206 221 207 - meta = with lib; { 222 + meta = { 208 223 description = "Web-based graphical interface for servers"; 209 224 mainProgram = "cockpit-bridge"; 210 225 homepage = "https://cockpit-project.org/"; 211 - license = licenses.lgpl21; 212 - maintainers = with maintainers; [ lucasew ]; 226 + changelog = "https://cockpit-project.org/blog/cockpit-${finalAttrs.version}.html"; 227 + license = lib.licenses.lgpl21; 228 + maintainers = [ lib.maintainers.lucasew ]; 213 229 }; 214 - } 230 + })
+59
pkgs/by-name/co/copywrite/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + buildGoModule, 5 + fetchFromGitHub, 6 + installShellFiles, 7 + testers, 8 + copywrite, 9 + }: 10 + 11 + let 12 + commitHash = "6ed520a710166c6094098b786c63f212604654a4"; # matches tag release 13 + shortCommitHash = builtins.substring 0 7 commitHash; 14 + in 15 + buildGoModule rec { 16 + pname = "copywrite"; 17 + version = "0.19.0"; 18 + 19 + src = fetchFromGitHub { 20 + owner = "hashicorp"; 21 + repo = "copywrite"; 22 + rev = "v${version}"; 23 + hash = "sha256-DmlPioaw/wMk8GoBYNG24P4J1C6h0bjVjjOuMYW6Tgo="; 24 + }; 25 + 26 + vendorHash = "sha256-ZIu0/fue3xi+YVE9GFsVjCNs8t3c3TWH8O0xUzJdim8="; 27 + 28 + ldflags = [ 29 + "-s" 30 + "-w" 31 + "-X github.com/hashicorp/copywrite/cmd.version=${version}" 32 + "-X github.com/hashicorp/copywrite/cmd.commit=${shortCommitHash}" 33 + ]; 34 + 35 + env.CGO_ENABLED = 0; 36 + 37 + nativeBuildInputs = [ installShellFiles ]; 38 + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' 39 + $out/bin/copywrite completion bash > copywrite.bash 40 + $out/bin/copywrite completion zsh > copywrite.zsh 41 + $out/bin/copywrite completion fish > copywrite.fish 42 + installShellCompletion copywrite.{bash,zsh,fish} 43 + ''; 44 + 45 + passthru.tests.version = testers.testVersion { 46 + package = copywrite; 47 + command = "copywrite --version"; 48 + version = "${version}-${shortCommitHash}"; 49 + }; 50 + 51 + meta = { 52 + description = "Automate copyright headers and license files at scale"; 53 + mainProgram = "copywrite"; 54 + homepage = "https://github.com/hashicorp/copywrite"; 55 + changelog = "https://github.com/hashicorp/copywrite/releases/tag/v${version}"; 56 + license = lib.licenses.mpl20; 57 + maintainers = with lib.maintainers; [ dvcorreia ]; 58 + }; 59 + }
+8 -2
pkgs/by-name/da/daemontools/package.nix
··· 22 22 sha256 = "07scvw88faxkscxi91031pjkpccql6wspk4yrlnsbrrb5c0kamd5"; 23 23 }; 24 24 25 - patches = [ ./fix-nix-usernamespace-build.patch ]; 25 + patches = [ 26 + (fetchurl { 27 + url = "https://salsa.debian.org/debian/daemontools/-/raw/1844f0e704ab66844da14354a16ea068eba0403f/debian/patches/0005-fix-ftbfs.patch"; 28 + hash = "sha256-Q7t0kwajjTW2Ms5m44E4spBwHi5Xi6Y39FQVsawr8LA="; 29 + }) 30 + ./fix-nix-usernamespace-build.patch 31 + ]; 26 32 27 33 outputs = [ 28 34 "out" ··· 43 37 sed -i -e '1 s_$_ -include ${glibc.dev}/include/errno.h_' src/conf-cc 44 38 45 39 substituteInPlace src/Makefile \ 46 - --replace '/bin/sh' '${bash}/bin/bash -oxtrace' 40 + --replace-fail '/bin/sh' '${bash}/bin/bash -oxtrace' 47 41 48 42 sed -i -e "s_^PATH=.*_PATH=$src/daemontools-${version}/compile:''${PATH}_" src/rts.tests 49 43
+134
pkgs/by-name/dn/dnote/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + buildGoModule, 5 + fetchFromGitHub, 6 + fetchNpmDeps, 7 + npmHooks, 8 + nodejs, 9 + nix-update-script, 10 + versionCheckHook, 11 + postgresqlTestHook, 12 + postgresql, 13 + defaultApiEndPoint ? "https://api.getdnote.com", 14 + }: 15 + 16 + buildGoModule rec { 17 + pname = "dnote"; 18 + version = "0.15.1"; 19 + 20 + src = fetchFromGitHub { 21 + owner = "dnote"; 22 + repo = "dnote"; 23 + tag = "cli-v${version}"; 24 + hash = "sha256-2vVopuFf9bx8U3+U4wznC/9nlLtan+fU5v9HUCEI1R4="; 25 + }; 26 + 27 + npmDeps = fetchNpmDeps { 28 + inherit version src; 29 + pname = "${pname}-webui"; 30 + sourceRoot = "${src.name}/pkg/server/assets"; 31 + hash = "sha256-gUr8ptPsE7uw/F52CZi1P2L7eLgGiELEz6tI+fwAN0I="; 32 + }; 33 + 34 + overrideModAttrs = oldAttrs: { 35 + # Do not add `npmConfigHook` to `goModules` 36 + nativeBuildInputs = lib.remove npmHooks.npmConfigHook oldAttrs.nativeBuildInputs; 37 + preBuild = null; 38 + }; 39 + 40 + npmRoot = "pkg/server/assets"; 41 + 42 + env = { 43 + DBHost = "localhost"; 44 + DBPort = "5432"; 45 + DBName = "test_db"; 46 + DBUser = "postgres"; 47 + DBPassword = ""; 48 + DBSkipSSL = true; 49 + SmtpUsername = "mock-SmtpUsername"; 50 + SmtpPassword = "mock-SmtpPassword"; 51 + SmtpHost = "mock-SmtpHost"; 52 + SmtpPort = 465; 53 + WebURL = "http://localhost:3000"; 54 + DisableRegistration = false; 55 + postgresqlEnableTCP = true; 56 + }; 57 + 58 + nativeBuildInputs = [ 59 + npmHooks.npmConfigHook 60 + nodejs 61 + ]; 62 + 63 + nativeCheckInputs = [ 64 + postgresqlTestHook 65 + postgresql 66 + ]; 67 + 68 + tags = [ 69 + "fts5" 70 + ]; 71 + 72 + preBuild = '' 73 + patchShebangs . 74 + 75 + pushd pkg/server/assets 76 + 77 + ./styles/build.sh 78 + ./js/build.sh 79 + 80 + popd 81 + ''; 82 + 83 + ldflags = [ 84 + "-X github.com/dnote/dnote/pkg/server/buildinfo.Version=${version}" 85 + "-X github.com/dnote/dnote/pkg/cli/buildinfo.Version=${version}" 86 + "-X main.apiEndpoint=${defaultApiEndPoint}" 87 + "-X main.versionTag=${version}" 88 + "-X github.com/dnote/dnote/pkg/server/buildinfo.Standalone=true" 89 + "-X github.com/dnote/dnote/pkg/server/buildinfo.JSFiles=main.js" 90 + "-X github.com/dnote/dnote/pkg/server/buildinfo.CSSFiles=main.css" 91 + ]; 92 + 93 + __darwinAllowLocalNetworking = true; 94 + 95 + postInstall = '' 96 + mv $out/bin/cli $out/bin/dnote-cli 97 + mv $out/bin/migrate $out/bin/dnote-migrate 98 + mv $out/bin/server $out/bin/dnote-server 99 + mv $out/bin/templates $out/bin/dnote-templates 100 + mv $out/bin/watcher $out/bin/dnote-watcher 101 + ''; 102 + 103 + checkFlags = [ 104 + "-p 1" 105 + ]; 106 + 107 + vendorHash = "sha256-4mP5z3ZVlHYhItRjkbXvcOxVm6PuZ6viL2GHqzCH9tA="; 108 + 109 + nativeInstallCheckInputs = [ 110 + versionCheckHook 111 + ]; 112 + versionCheckProgram = "${placeholder "out"}/bin/dnote-cli"; 113 + versionCheckProgramArg = [ "version" ]; 114 + # Fails on darwin: 115 + # panic: initializing context: initializing files: creating the dnote dir: 116 + # initializing config dir: creating a directory at /var/empty/.config/dnote: mkdir /var/empty: file exists 117 + doInstallCheck = !stdenv.hostPlatform.isDarwin; 118 + 119 + passthru = { 120 + updateScript = nix-update-script { }; 121 + }; 122 + 123 + meta = { 124 + description = "Simple command line notebook for programmers"; 125 + homepage = "https://www.getdnote.com/"; 126 + changelog = "https://github.com/dnote/dnote/blob/cli-v${version}/CHANGELOG.md"; 127 + platforms = lib.platforms.unix; 128 + maintainers = with lib.maintainers; [ bot-wxt1221 ]; 129 + license = with lib.licenses; [ 130 + gpl3Only 131 + agpl3Only 132 + ]; 133 + }; 134 + }
+3 -3
pkgs/by-name/do/dotenvx/package.nix
··· 8 8 9 9 buildNpmPackage rec { 10 10 pname = "dotenvx"; 11 - version = "1.28.0"; 11 + version = "1.32.0"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "dotenvx"; 15 15 repo = "dotenvx"; 16 16 rev = "refs/tags/v${version}"; 17 - hash = "sha256-MSLWr0d31mMn1Emsyb/1YSL74LzAwH8WI16ya8FN0Gc="; 17 + hash = "sha256-GOofZ8nBsncxdmoodA86s0HUuLGw6UxDpTcG6yKiE6k="; 18 18 }; 19 19 20 - npmDepsHash = "sha256-pao2U3H28S1YL725vTzRpJ86TitiNKQ6dniwEUjC2nk="; 20 + npmDepsHash = "sha256-eRxOptiD23W6S1ey3Ev5AGdWLHE4+O1+IT/AP8tbVQU="; 21 21 22 22 dontNpmBuild = true; 23 23
+13 -2
pkgs/by-name/en/envision-unwrapped/package.nix
··· 1 1 { 2 2 appstream-glib, 3 + applyPatches, 3 4 cairo, 4 5 cargo, 5 6 desktop-file-utils, ··· 26 25 rustc, 27 26 stdenv, 28 27 vte-gtk4, 28 + versionCheckHook, 29 29 wrapGAppsHook4, 30 30 zlib, 31 31 }: ··· 42 40 hash = "sha256-J1zctfFOyu+uLpctTiAe5OWBM7nXanzQocTGs1ToUMA="; 43 41 }; 44 42 43 + patches = [ 44 + ./support-headless-cli.patch 45 + ]; 46 + 45 47 strictDeps = true; 46 48 47 49 cargoDeps = rustPlatform.fetchCargoTarball { 48 - inherit (finalAttrs) pname version src; 49 - hash = "sha256-kNZucZKzxFHzDAIGE1PFfuBq1rSVkb2Gpk23MEgohME="; 50 + inherit (finalAttrs) pname version; 51 + # TODO: Use srcOnly instead 52 + src = applyPatches { 53 + inherit (finalAttrs) src patches; 54 + }; 55 + hash = "sha256-zWaw6K2H67PEmFISDNce5jDUXKV39qu35SO+Ai0DP90="; 50 56 }; 51 57 52 58 nativeBuildInputs = [ ··· 67 57 pkg-config 68 58 rustPlatform.cargoSetupHook 69 59 rustc 60 + versionCheckHook 70 61 wrapGAppsHook4 71 62 ]; 72 63
+345
pkgs/by-name/en/envision-unwrapped/support-headless-cli.patch
··· 1 + diff --git a/Cargo.lock b/Cargo.lock 2 + index 989abbb..dbfc483 100644 3 + --- a/Cargo.lock 4 + +++ b/Cargo.lock 5 + @@ -26,6 +26,55 @@ dependencies = [ 6 + "memchr", 7 + ] 8 + 9 + +[[package]] 10 + +name = "anstream" 11 + +version = "0.6.18" 12 + +source = "registry+https://github.com/rust-lang/crates.io-index" 13 + +checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" 14 + +dependencies = [ 15 + + "anstyle", 16 + + "anstyle-parse", 17 + + "anstyle-query", 18 + + "anstyle-wincon", 19 + + "colorchoice", 20 + + "is_terminal_polyfill", 21 + + "utf8parse", 22 + +] 23 + + 24 + +[[package]] 25 + +name = "anstyle" 26 + +version = "1.0.10" 27 + +source = "registry+https://github.com/rust-lang/crates.io-index" 28 + +checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" 29 + + 30 + +[[package]] 31 + +name = "anstyle-parse" 32 + +version = "0.2.6" 33 + +source = "registry+https://github.com/rust-lang/crates.io-index" 34 + +checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" 35 + +dependencies = [ 36 + + "utf8parse", 37 + +] 38 + + 39 + +[[package]] 40 + +name = "anstyle-query" 41 + +version = "1.1.2" 42 + +source = "registry+https://github.com/rust-lang/crates.io-index" 43 + +checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" 44 + +dependencies = [ 45 + + "windows-sys 0.59.0", 46 + +] 47 + + 48 + +[[package]] 49 + +name = "anstyle-wincon" 50 + +version = "3.0.6" 51 + +source = "registry+https://github.com/rust-lang/crates.io-index" 52 + +checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" 53 + +dependencies = [ 54 + + "anstyle", 55 + + "windows-sys 0.59.0", 56 + +] 57 + + 58 + [[package]] 59 + name = "anyhow" 60 + version = "1.0.93" 61 + @@ -368,6 +417,46 @@ dependencies = [ 62 + "libloading", 63 + ] 64 + 65 + +[[package]] 66 + +name = "clap" 67 + +version = "4.5.23" 68 + +source = "registry+https://github.com/rust-lang/crates.io-index" 69 + +checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" 70 + +dependencies = [ 71 + + "clap_builder", 72 + + "clap_derive", 73 + +] 74 + + 75 + +[[package]] 76 + +name = "clap_builder" 77 + +version = "4.5.23" 78 + +source = "registry+https://github.com/rust-lang/crates.io-index" 79 + +checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" 80 + +dependencies = [ 81 + + "anstream", 82 + + "anstyle", 83 + + "clap_lex", 84 + + "strsim", 85 + +] 86 + + 87 + +[[package]] 88 + +name = "clap_derive" 89 + +version = "4.5.18" 90 + +source = "registry+https://github.com/rust-lang/crates.io-index" 91 + +checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" 92 + +dependencies = [ 93 + + "heck", 94 + + "proc-macro2", 95 + + "quote", 96 + + "syn", 97 + +] 98 + + 99 + +[[package]] 100 + +name = "clap_lex" 101 + +version = "0.7.4" 102 + +source = "registry+https://github.com/rust-lang/crates.io-index" 103 + +checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" 104 + + 105 + [[package]] 106 + name = "cmake" 107 + version = "0.1.52" 108 + @@ -377,6 +466,12 @@ dependencies = [ 109 + "cc", 110 + ] 111 + 112 + +[[package]] 113 + +name = "colorchoice" 114 + +version = "1.0.3" 115 + +source = "registry+https://github.com/rust-lang/crates.io-index" 116 + +checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" 117 + + 118 + [[package]] 119 + name = "concurrent-queue" 120 + version = "2.5.0" 121 + @@ -558,6 +653,7 @@ version = "2.0.1" 122 + dependencies = [ 123 + "anyhow", 124 + "ash", 125 + + "clap", 126 + "gettext-rs", 127 + "git2", 128 + "gtk4", 129 + @@ -1443,6 +1539,12 @@ version = "2.10.1" 130 + source = "registry+https://github.com/rust-lang/crates.io-index" 131 + checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" 132 + 133 + +[[package]] 134 + +name = "is_terminal_polyfill" 135 + +version = "1.70.1" 136 + +source = "registry+https://github.com/rust-lang/crates.io-index" 137 + +checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" 138 + + 139 + [[package]] 140 + name = "itertools" 141 + version = "0.12.1" 142 + @@ -2637,6 +2739,12 @@ version = "1.1.0" 143 + source = "registry+https://github.com/rust-lang/crates.io-index" 144 + checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 145 + 146 + +[[package]] 147 + +name = "strsim" 148 + +version = "0.11.1" 149 + +source = "registry+https://github.com/rust-lang/crates.io-index" 150 + +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" 151 + + 152 + [[package]] 153 + name = "subtle" 154 + version = "2.6.1" 155 + @@ -3045,6 +3153,12 @@ version = "1.0.4" 156 + source = "registry+https://github.com/rust-lang/crates.io-index" 157 + checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" 158 + 159 + +[[package]] 160 + +name = "utf8parse" 161 + +version = "0.2.2" 162 + +source = "registry+https://github.com/rust-lang/crates.io-index" 163 + +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" 164 + + 165 + [[package]] 166 + name = "uuid" 167 + version = "1.11.0" 168 + diff --git a/Cargo.toml b/Cargo.toml 169 + index 512e892..01e9fb7 100644 170 + --- a/Cargo.toml 171 + +++ b/Cargo.toml 172 + @@ -42,3 +42,4 @@ notify-rust = "4.11.3" 173 + zbus = { version = "5.1.1", features = ["tokio"] } 174 + tracing-subscriber = { version = "0.3.19", features = ["env-filter"] } 175 + tracing = "0.1.41" 176 + +clap = { version = "4.5.23", features = ["derive"] } 177 + diff --git a/meson.build b/meson.build 178 + index 4d58596..53991dd 100644 179 + --- a/meson.build 180 + +++ b/meson.build 181 + @@ -77,6 +77,7 @@ meson.add_dist_script( 182 + 183 + global_conf = configuration_data() 184 + global_conf.set('APP_ID', application_id) 185 + +global_conf.set('DESCRIPTION', description) 186 + global_conf.set('RESOURCES_BASE_PATH', '/' + base_id.replace('.', '/')) 187 + global_conf.set('PKGDATADIR', pkgdatadir) 188 + global_conf.set('PROFILE', profile) 189 + diff --git a/src/constants.rs.in b/src/constants.rs.in 190 + index db00776..886e545 100644 191 + --- a/src/constants.rs.in 192 + +++ b/src/constants.rs.in 193 + @@ -3,6 +3,7 @@ use std::path::PathBuf; 194 + 195 + pub const APP_NAME: &str = "@PRETTY_NAME@"; 196 + pub const APP_ID: &str = "@APP_ID@"; 197 + +pub const DESCRIPTION: &str = "@DESCRIPTION@"; 198 + pub const RESOURCES_BASE_PATH: &str = "@RESOURCES_BASE_PATH@"; 199 + pub const PKG_DATA_DIR: &str = "@PKGDATADIR@"; 200 + pub const RESOURCES: &str = concat!("@PKGDATADIR@", "/resources.gresource"); 201 + diff --git a/src/main.rs b/src/main.rs 202 + index 4453911..cd7c212 100644 203 + --- a/src/main.rs 204 + +++ b/src/main.rs 205 + @@ -1,4 +1,5 @@ 206 + use anyhow::Result; 207 + +use clap::Parser; 208 + use constants::{resources, APP_ID, APP_NAME, GETTEXT_PACKAGE, LOCALE_DIR, RESOURCES_BASE_PATH}; 209 + use file_builders::{ 210 + active_runtime_json::restore_active_runtime_backup, 211 + @@ -82,6 +83,11 @@ fn main() -> Result<()> { 212 + gettextrs::bindtextdomain(GETTEXT_PACKAGE, LOCALE_DIR).expect("Unable to bind the text domain"); 213 + gettextrs::textdomain(GETTEXT_PACKAGE).expect("Unable to switch to the text domain"); 214 + 215 + + let opts = CmdLineOpts::parse(); 216 + + if let Some(exit_code) = opts.handle_non_activating_opts() { 217 + + std::process::exit(exit_code); 218 + + } 219 + + 220 + gtk::init()?; 221 + glib::set_application_name(APP_NAME); 222 + 223 + @@ -115,10 +121,6 @@ fn main() -> Result<()> { 224 + let sender = BROKER.sender(); 225 + main_app.connect_command_line(move |this, cmdline| { 226 + let opts = CmdLineOpts::from_cmdline(cmdline); 227 + - if let Some(exit_code) = opts.handle_non_activating_opts() { 228 + - this.quit(); 229 + - return exit_code; 230 + - } 231 + this.activate(); 232 + sender.emit(Msg::HandleCommandLine(opts)); 233 + 0 234 + diff --git a/src/ui/cmdline_opts.rs b/src/ui/cmdline_opts.rs 235 + index 48458e0..4b224c6 100644 236 + --- a/src/ui/cmdline_opts.rs 237 + +++ b/src/ui/cmdline_opts.rs 238 + @@ -1,4 +1,8 @@ 239 + -use crate::config::Config; 240 + +use crate::{ 241 + + config::Config, 242 + + constants::{APP_NAME, DESCRIPTION, VERSION}, 243 + +}; 244 + +use clap::Parser; 245 + use gtk::{ 246 + gio::{ 247 + prelude::{ApplicationCommandLineExt, ApplicationExt}, 248 + @@ -8,21 +12,47 @@ use gtk::{ 249 + }; 250 + use tracing::error; 251 + 252 + -#[derive(Debug, Clone)] 253 + +#[derive(Parser, Debug, Clone)] 254 + +#[command(name = APP_NAME)] 255 + +#[command(version = VERSION)] 256 + +#[command(about = DESCRIPTION, long_about = None)] 257 + pub struct CmdLineOpts { 258 + + #[arg(short = 'S', long = "start", help = "Start the XR Service right away")] 259 + pub start: bool, 260 + + 261 + + #[arg( 262 + + short = 'l', 263 + + long = "list-profiles", 264 + + help = "List the available profiles" 265 + + )] 266 + pub list_profiles: bool, 267 + + 268 + + #[arg( 269 + + short = 'p', 270 + + long = "profile", 271 + + help = "Switch to the profile indicated by the UUID" 272 + + )] 273 + pub profile_uuid: Option<String>, 274 + + 275 + + #[arg( 276 + + short = 'd', 277 + + long = "skip-dependency-check", 278 + + help = "Skip dependency checks when building profiles" 279 + + )] 280 + pub skip_depcheck: bool, 281 + + 282 + + #[arg( 283 + + short = 'c', 284 + + long = "check-deps-for", 285 + + help = "Prints missing dependencies for given profile id; returns nothing if all dependencies are satisfied" 286 + + )] 287 + pub check_dependencies_for: Option<String>, 288 + } 289 + 290 + impl CmdLineOpts { 291 + const OPT_START: (&'static str, char) = ("start", 'S'); 292 + - const OPT_LIST_PROFILES: (&'static str, char) = ("list-profiles", 'l'); 293 + const OPT_PROFILE: (&'static str, char) = ("profile", 'p'); 294 + const OPT_SKIP_DEPCHECK: (&'static str, char) = ("skip-dependency-check", 'd'); 295 + - const OPT_CHECK_DEPS_FOR: (&'static str, char) = ("check-deps-for", 'c'); 296 + 297 + pub fn init(app: &impl IsA<Application>) { 298 + app.add_main_option( 299 + @@ -33,14 +63,6 @@ impl CmdLineOpts { 300 + "Start the XR Service right away", 301 + None, 302 + ); 303 + - app.add_main_option( 304 + - Self::OPT_LIST_PROFILES.0, 305 + - glib::Char::try_from(Self::OPT_LIST_PROFILES.1).unwrap(), 306 + - glib::OptionFlags::IN_MAIN, 307 + - glib::OptionArg::None, 308 + - "List the available profiles", 309 + - None, 310 + - ); 311 + app.add_main_option( 312 + Self::OPT_PROFILE.0, 313 + glib::Char::try_from(Self::OPT_PROFILE.1).unwrap(), 314 + @@ -57,14 +79,6 @@ impl CmdLineOpts { 315 + "Skip dependency checks when building profiles", 316 + None, 317 + ); 318 + - app.add_main_option( 319 + - Self::OPT_CHECK_DEPS_FOR.0, 320 + - glib::Char::try_from(Self::OPT_CHECK_DEPS_FOR.1).unwrap(), 321 + - glib::OptionFlags::IN_MAIN, 322 + - glib::OptionArg::String, 323 + - "Prints missing dependencies for given profile id; returns nothing if all dependencies are satisfied", 324 + - None, 325 + - ); 326 + } 327 + 328 + /// returns an exit code if the application should quit immediately 329 + @@ -100,14 +114,12 @@ impl CmdLineOpts { 330 + let opts = cmdline.options_dict(); 331 + Self { 332 + start: opts.contains(Self::OPT_START.0), 333 + - list_profiles: opts.contains(Self::OPT_LIST_PROFILES.0), 334 + + list_profiles: false, 335 + profile_uuid: opts 336 + .lookup::<String>(Self::OPT_PROFILE.0) 337 + .unwrap_or_default(), 338 + skip_depcheck: opts.contains(Self::OPT_SKIP_DEPCHECK.0), 339 + - check_dependencies_for: opts 340 + - .lookup::<String>(Self::OPT_CHECK_DEPS_FOR.0) 341 + - .unwrap_or_default(), 342 + + check_dependencies_for: None, 343 + } 344 + } 345 + }
+79 -1
pkgs/by-name/en/envision/package.nix
··· 2 2 lib, 3 3 pkgs, 4 4 buildFHSEnv, 5 + envision, 5 6 envision-unwrapped, 7 + testers, 6 8 }: 7 9 8 10 let ··· 14 12 ( 15 13 ( 16 14 # OpenHMD dependencies 17 - openhmd.buildInputs ++ openhmd.nativeBuildInputs 15 + ( 16 + pkgs.openhmd.buildInputs 17 + ++ pkgs.openhmd.nativeBuildInputs 18 + ++ (with pkgs; [ 19 + meson 20 + ]) 21 + ) 18 22 ) 19 23 ++ ( 20 24 # OpenComposite dependencies ··· 38 30 xorg.libXrandr 39 31 xorg.libXrender 40 32 xorg.xorgproto 33 + SDL2 34 + wayland 41 35 42 36 # Additional dependencies required for Monado WMR support 43 37 bc ··· 52 42 lz4.dev 53 43 tbb 54 44 libxkbcommon 45 + boost 46 + glew 55 47 56 48 # Not required for build, but autopatchelf requires them 57 49 glibc ··· 92 80 vulkan-loader 93 81 vulkan-headers 94 82 x264 83 + glslang 84 + libdrm 85 + openssl 95 86 ]) 96 87 ); 97 88 in ··· 135 120 runScript = "env libs=${ 136 121 lib.makeLibraryPath ((runtimeBuildDeps pkgs) ++ [ pkgs.libgcc.lib ]) 137 122 } envision --skip-dependency-check"; 123 + 124 + # TODO: When buildFHSEnv gets finalAttrs support, profiles should be moved into the derivation so it can be overrideAttrs'd 125 + passthru.tests = 126 + let 127 + kebabToPascal = 128 + kebab: 129 + lib.foldl' ( 130 + acc: part: acc + lib.substring 0 1 (lib.toUpper part) + lib.substring 1 (lib.stringLength part) part 131 + ) "" (lib.splitString "-" kebab); 132 + pascalToCamel = 133 + pascal: lib.substring 0 1 (lib.toLower pascal) + lib.substring 1 (lib.stringLength pascal) pascal; 134 + kebabToCamel = x: pascalToCamel (kebabToPascal x); 135 + profiles = [ 136 + "lighthouse-default" 137 + "openhmd-default" 138 + "simulated-default" 139 + "survive-default" 140 + "wmr-default" 141 + "wivrn-default" 142 + ]; 143 + in 144 + { 145 + allProfilesPresent = testers.runCommand { 146 + name = "envision-all-profiles-present-test"; 147 + # TODO: Is there a better way to escape ${}? 148 + script = 149 + '' 150 + export ALL_PROFILES=(${lib.concatStringsSep " " (profiles ++ [ "UUID" ])}) 151 + export ENVISION_PROFILES=($(envision -l | grep -oP '^\w+(?=:)')) 152 + 153 + # This is dark magic 154 + missing_from_array=($(grep -vf <(printf "%s\n" "$'' 155 + + ''{ALL_PROFILES[@]}") <(printf "%s\n" "$'' 156 + + '' 157 + {ENVISION_PROFILES[@]}") || true)) 158 + 159 + if [ $'' 160 + + '' 161 + {#missing_from_array[@]} -gt 0 ]; then 162 + echo "Missing profiles: $'' 163 + + '' 164 + {missing_from_array[@]}" 165 + exit 1 166 + fi 167 + 168 + touch $out 169 + ''; 170 + nativeBuildInputs = [ envision ]; 171 + }; 172 + } 173 + // lib.listToAttrs ( 174 + lib.map (profile: { 175 + name = "${kebabToCamel profile}DependenciesMet"; 176 + value = testers.runCommand { 177 + name = "envision-profile-${profile}-dependencies-met-test"; 178 + script = '' 179 + envision -c ${profile} 180 + touch $out 181 + ''; 182 + nativeBuildInputs = [ envision ]; 183 + }; 184 + }) profiles 185 + ); 138 186 139 187 meta = envision-unwrapped.meta // { 140 188 description = "${envision-unwrapped.meta.description} (with build environment)";
+10
pkgs/by-name/ex/exercism/package.nix
··· 1 1 { 2 2 lib, 3 3 buildGoModule, 4 + installShellFiles, 4 5 fetchFromGitHub, 5 6 nix-update-script, 6 7 }: ··· 23 22 24 23 subPackages = [ "./exercism" ]; 25 24 25 + nativeBuildInputs = [ installShellFiles ]; 26 + 26 27 passthru.updateScript = nix-update-script { }; 28 + 29 + postInstall = '' 30 + installShellCompletion --cmd exercism \ 31 + --bash shell/exercism_completion.bash \ 32 + --fish shell/exercism.fish \ 33 + --zsh shell/exercism_completion.zsh 34 + ''; 27 35 28 36 meta = with lib; { 29 37 inherit (src.meta) homepage;
+8 -5
pkgs/by-name/fl/flet-client-flutter/package.nix
··· 1 1 { lib 2 2 , fetchFromGitHub 3 3 , pkg-config 4 - , flutter 4 + , flutter324 5 5 , gst_all_1 6 6 , libunwind 7 7 , makeWrapper ··· 14 14 , libplacebo 15 15 , _experimental-update-script-combinators 16 16 , flet-client-flutter 17 + , fletTarget ? "linux" 17 18 }: 18 19 19 - flutter.buildFlutterApplication rec { 20 + flutter324.buildFlutterApplication rec { 20 21 pname = "flet-client-flutter"; 21 - version = "0.24.1"; 22 + version = "0.25.2"; 22 23 23 24 src = fetchFromGitHub { 24 25 owner = "flet-dev"; 25 26 repo = "flet"; 26 - rev = "v${version}"; 27 - hash = "sha256-cT1cWxMVpZ0fXoIaJpW96ifQKNe7+PLUXjIFJ3ALdyo="; 27 + tag = "v${version}"; 28 + hash = "sha256-bD44MCRZPXB/xuw2vBCzNbRNSVgdc4GyyWg3F2adxKk="; 28 29 }; 29 30 30 31 sourceRoot = "${src.name}/client"; ··· 33 32 cmakeFlags = [ 34 33 "-DMIMALLOC_LIB=${mimalloc}/lib/mimalloc.o" 35 34 ]; 35 + 36 + targetFlutterPlatform = fletTarget; 36 37 37 38 pubspecLock = lib.importJSON ./pubspec.lock.json; 38 39
+149 -40
pkgs/by-name/fl/flet-client-flutter/pubspec.lock.json
··· 210 210 "source": "hosted", 211 211 "version": "0.7.10" 212 212 }, 213 + "dio": { 214 + "dependency": "transitive", 215 + "description": { 216 + "name": "dio", 217 + "sha256": "5598aa796bbf4699afd5c67c0f5f6e2ed542afc956884b9cd58c306966efc260", 218 + "url": "https://pub.dev" 219 + }, 220 + "source": "hosted", 221 + "version": "5.7.0" 222 + }, 223 + "dio_web_adapter": { 224 + "dependency": "transitive", 225 + "description": { 226 + "name": "dio_web_adapter", 227 + "sha256": "33259a9276d6cea88774a0000cfae0d861003497755969c92faa223108620dc8", 228 + "url": "https://pub.dev" 229 + }, 230 + "source": "hosted", 231 + "version": "2.0.0" 232 + }, 213 233 "equatable": { 214 234 "dependency": "transitive", 215 235 "description": { ··· 274 254 "dependency": "transitive", 275 255 "description": { 276 256 "name": "file_picker", 277 - "sha256": "167bb619cdddaa10ef2907609feb8a79c16dfa479d3afaf960f8e223f754bf12", 257 + "sha256": "aac85f20436608e01a6ffd1fdd4e746a7f33c93a2c83752e626bdfaea139b877", 278 258 "url": "https://pub.dev" 279 259 }, 280 260 "source": "hosted", 281 - "version": "8.1.2" 261 + "version": "8.1.3" 282 262 }, 283 263 "fixnum": { 284 264 "dependency": "transitive", ··· 294 274 "dependency": "transitive", 295 275 "description": { 296 276 "name": "fl_chart", 297 - "sha256": "d0f0d49112f2f4b192481c16d05b6418bd7820e021e265a3c22db98acf7ed7fb", 277 + "sha256": "94307bef3a324a0d329d3ab77b2f0c6e5ed739185ffc029ed28c0f9b019ea7ef", 298 278 "url": "https://pub.dev" 299 279 }, 300 280 "source": "hosted", 301 - "version": "0.68.0" 281 + "version": "0.69.0" 302 282 }, 303 283 "flet": { 304 284 "dependency": "direct main", ··· 307 287 "relative": true 308 288 }, 309 289 "source": "path", 310 - "version": "0.24.1" 290 + "version": "0.25.1" 291 + }, 292 + "flet_ads": { 293 + "dependency": "direct main", 294 + "description": { 295 + "path": "../packages/flet_ads", 296 + "relative": true 297 + }, 298 + "source": "path", 299 + "version": "0.25.1" 311 300 }, 312 301 "flet_audio": { 313 302 "dependency": "direct main", ··· 325 296 "relative": true 326 297 }, 327 298 "source": "path", 328 - "version": "0.24.1" 299 + "version": "0.25.1" 329 300 }, 330 301 "flet_audio_recorder": { 331 302 "dependency": "direct main", ··· 334 305 "relative": true 335 306 }, 336 307 "source": "path", 337 - "version": "0.24.1" 308 + "version": "0.25.1" 338 309 }, 339 310 "flet_flashlight": { 340 311 "dependency": "direct main", ··· 343 314 "relative": true 344 315 }, 345 316 "source": "path", 346 - "version": "0.24.1" 317 + "version": "0.25.1" 347 318 }, 348 319 "flet_geolocator": { 349 320 "dependency": "direct main", ··· 352 323 "relative": true 353 324 }, 354 325 "source": "path", 355 - "version": "0.24.1" 326 + "version": "0.25.1" 356 327 }, 357 328 "flet_lottie": { 358 329 "dependency": "direct main", ··· 361 332 "relative": true 362 333 }, 363 334 "source": "path", 364 - "version": "0.24.1" 335 + "version": "0.25.1" 365 336 }, 366 337 "flet_map": { 367 338 "dependency": "direct main", ··· 370 341 "relative": true 371 342 }, 372 343 "source": "path", 373 - "version": "0.24.1" 344 + "version": "0.25.1" 374 345 }, 375 346 "flet_permission_handler": { 376 347 "dependency": "direct main", ··· 379 350 "relative": true 380 351 }, 381 352 "source": "path", 382 - "version": "0.24.1" 353 + "version": "0.25.1" 383 354 }, 384 355 "flet_rive": { 385 356 "dependency": "direct main", ··· 388 359 "relative": true 389 360 }, 390 361 "source": "path", 391 - "version": "0.24.1" 362 + "version": "0.25.1" 392 363 }, 393 364 "flet_video": { 394 365 "dependency": "direct main", ··· 397 368 "relative": true 398 369 }, 399 370 "source": "path", 400 - "version": "0.24.1" 371 + "version": "0.25.1" 401 372 }, 402 373 "flet_webview": { 403 374 "dependency": "direct main", ··· 406 377 "relative": true 407 378 }, 408 379 "source": "path", 409 - "version": "0.24.1" 380 + "version": "0.25.1" 410 381 }, 411 382 "flutter": { 412 383 "dependency": "direct main", ··· 466 437 "source": "hosted", 467 438 "version": "7.0.2" 468 439 }, 440 + "flutter_map_animations": { 441 + "dependency": "transitive", 442 + "description": { 443 + "name": "flutter_map_animations", 444 + "sha256": "08233f89919049a3601e785d32e9d1d9e1faac6578190150f1d7495fc1050d36", 445 + "url": "https://pub.dev" 446 + }, 447 + "source": "hosted", 448 + "version": "0.8.0" 449 + }, 450 + "flutter_map_cancellable_tile_provider": { 451 + "dependency": "transitive", 452 + "description": { 453 + "name": "flutter_map_cancellable_tile_provider", 454 + "sha256": "03662220ce0cd784ad2f2a45c36fc379b8b315c74f5c12b5ff4a0515eab1acd1", 455 + "url": "https://pub.dev" 456 + }, 457 + "source": "hosted", 458 + "version": "3.0.2" 459 + }, 469 460 "flutter_markdown": { 470 461 "dependency": "transitive", 471 462 "description": { 472 463 "name": "flutter_markdown", 473 - "sha256": "2e8a801b1ded5ea001a4529c97b1f213dcb11c6b20668e081cafb23468593514", 464 + "sha256": "f0e599ba89c9946c8e051780f0ec99aba4ba15895e0380a7ab68f420046fc44e", 474 465 "url": "https://pub.dev" 475 466 }, 476 467 "source": "hosted", 477 - "version": "0.7.3" 468 + "version": "0.7.4+1" 478 469 }, 479 470 "flutter_plugin_android_lifecycle": { 480 471 "dependency": "transitive", ··· 520 471 "dependency": "transitive", 521 472 "description": { 522 473 "name": "flutter_svg", 523 - "sha256": "7b4ca6cf3304575fe9c8ec64813c8d02ee41d2afe60bcfe0678bcb5375d596a2", 474 + "sha256": "de82e6bf958cec7190fbc1c5298282c851228e35ae2b14e2b103e7f777818c64", 524 475 "url": "https://pub.dev" 525 476 }, 526 477 "source": "hosted", 527 - "version": "2.0.10+1" 478 + "version": "2.0.13" 528 479 }, 529 480 "flutter_test": { 530 481 "dependency": "direct dev", ··· 603 554 }, 604 555 "source": "hosted", 605 556 "version": "0.2.3" 557 + }, 558 + "google_mobile_ads": { 559 + "dependency": "transitive", 560 + "description": { 561 + "name": "google_mobile_ads", 562 + "sha256": "4775006383a27a5d86d46f8fb452bfcb17794fc0a46c732979e49a8eb1c8963f", 563 + "url": "https://pub.dev" 564 + }, 565 + "source": "hosted", 566 + "version": "5.2.0" 606 567 }, 607 568 "graphs": { 608 569 "dependency": "transitive", ··· 1234 1175 "dependency": "transitive", 1235 1176 "description": { 1236 1177 "name": "rive", 1237 - "sha256": "23ffbeb1d45956b2d5ecd4b2c2d3bae2e61bc32b61fc2e9a48021e28feab6b5f", 1178 + "sha256": "b44b62feb908610ca6c85e05f4573a66118a23867425926cf06152d171236141", 1238 1179 "url": "https://pub.dev" 1239 1180 }, 1240 1181 "source": "hosted", 1241 - "version": "0.13.0" 1182 + "version": "0.13.17" 1242 1183 }, 1243 1184 "rive_common": { 1244 1185 "dependency": "transitive", 1245 1186 "description": { 1246 1187 "name": "rive_common", 1247 - "sha256": "3fcaa47dd20dde59d197fc71dce174ca0a7ce9083a0fb73cf457e2cd111b0bbc", 1188 + "sha256": "a3e5786f8d85c89977062b9ceeb3b72a7c28f81e32fb68497744042ce20bee2f", 1248 1189 "url": "https://pub.dev" 1249 1190 }, 1250 1191 "source": "hosted", 1251 - "version": "0.3.2" 1192 + "version": "0.4.12" 1252 1193 }, 1253 1194 "safe_local_storage": { 1254 1195 "dependency": "transitive", ··· 1324 1265 "dependency": "transitive", 1325 1266 "description": { 1326 1267 "name": "screen_retriever", 1327 - "sha256": "6ee02c8a1158e6dae7ca430da79436e3b1c9563c8cf02f524af997c201ac2b90", 1268 + "sha256": "570dbc8e4f70bac451e0efc9c9bb19fa2d6799a11e6ef04f946d7886d2e23d0c", 1328 1269 "url": "https://pub.dev" 1329 1270 }, 1330 1271 "source": "hosted", 1331 - "version": "0.1.9" 1272 + "version": "0.2.0" 1273 + }, 1274 + "screen_retriever_linux": { 1275 + "dependency": "transitive", 1276 + "description": { 1277 + "name": "screen_retriever_linux", 1278 + "sha256": "f7f8120c92ef0784e58491ab664d01efda79a922b025ff286e29aa123ea3dd18", 1279 + "url": "https://pub.dev" 1280 + }, 1281 + "source": "hosted", 1282 + "version": "0.2.0" 1283 + }, 1284 + "screen_retriever_macos": { 1285 + "dependency": "transitive", 1286 + "description": { 1287 + "name": "screen_retriever_macos", 1288 + "sha256": "71f956e65c97315dd661d71f828708bd97b6d358e776f1a30d5aa7d22d78a149", 1289 + "url": "https://pub.dev" 1290 + }, 1291 + "source": "hosted", 1292 + "version": "0.2.0" 1293 + }, 1294 + "screen_retriever_platform_interface": { 1295 + "dependency": "transitive", 1296 + "description": { 1297 + "name": "screen_retriever_platform_interface", 1298 + "sha256": "ee197f4581ff0d5608587819af40490748e1e39e648d7680ecf95c05197240c0", 1299 + "url": "https://pub.dev" 1300 + }, 1301 + "source": "hosted", 1302 + "version": "0.2.0" 1303 + }, 1304 + "screen_retriever_windows": { 1305 + "dependency": "transitive", 1306 + "description": { 1307 + "name": "screen_retriever_windows", 1308 + "sha256": "449ee257f03ca98a57288ee526a301a430a344a161f9202b4fcc38576716fe13", 1309 + "url": "https://pub.dev" 1310 + }, 1311 + "source": "hosted", 1312 + "version": "0.2.0" 1332 1313 }, 1333 1314 "sensors_plus": { 1334 1315 "dependency": "transitive", ··· 1394 1295 "dependency": "transitive", 1395 1296 "description": { 1396 1297 "name": "shared_preferences", 1397 - "sha256": "c272f9cabca5a81adc9b0894381e9c1def363e980f960fa903c604c471b22f68", 1298 + "sha256": "746e5369a43170c25816cc472ee016d3a66bc13fcf430c0bc41ad7b4b2922051", 1398 1299 "url": "https://pub.dev" 1399 1300 }, 1400 1301 "source": "hosted", 1401 - "version": "2.3.1" 1302 + "version": "2.3.2" 1402 1303 }, 1403 1304 "shared_preferences_android": { 1404 1305 "dependency": "transitive", ··· 1610 1511 "dependency": "transitive", 1611 1512 "description": { 1612 1513 "name": "url_launcher", 1613 - "sha256": "21b704ce5fa560ea9f3b525b43601c678728ba46725bab9b01187b4831377ed3", 1514 + "sha256": "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603", 1614 1515 "url": "https://pub.dev" 1615 1516 }, 1616 1517 "source": "hosted", 1617 - "version": "6.3.0" 1518 + "version": "6.3.1" 1618 1519 }, 1619 1520 "url_launcher_android": { 1620 1521 "dependency": "transitive", ··· 1820 1721 "dependency": "transitive", 1821 1722 "description": { 1822 1723 "name": "webview_flutter", 1823 - "sha256": "6869c8786d179f929144b4a1f86e09ac0eddfe475984951ea6c634774c16b522", 1724 + "sha256": "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec", 1824 1725 "url": "https://pub.dev" 1825 1726 }, 1826 1727 "source": "hosted", 1827 - "version": "4.8.0" 1728 + "version": "4.10.0" 1828 1729 }, 1829 1730 "webview_flutter_android": { 1830 - "dependency": "transitive", 1731 + "dependency": "direct overridden", 1831 1732 "description": { 1832 1733 "name": "webview_flutter_android", 1833 - "sha256": "c66651fba15f9d7ddd31daec42da8d6bce46c85610a7127e3ebcb39a4395c3c9", 1734 + "sha256": "74693a212d990b32e0b7055d27db973a18abf31c53942063948cdfaaef9787ba", 1834 1735 "url": "https://pub.dev" 1835 1736 }, 1836 1737 "source": "hosted", 1837 - "version": "3.16.6" 1738 + "version": "4.0.0" 1838 1739 }, 1839 1740 "webview_flutter_platform_interface": { 1840 1741 "dependency": "transitive", ··· 1846 1747 "source": "hosted", 1847 1748 "version": "2.10.0" 1848 1749 }, 1750 + "webview_flutter_web": { 1751 + "dependency": "transitive", 1752 + "description": { 1753 + "name": "webview_flutter_web", 1754 + "sha256": "cbe1efe45e1be8470fdef7ddb75e2e2998c7ca47b75c09b9354934d20eca146b", 1755 + "url": "https://pub.dev" 1756 + }, 1757 + "source": "hosted", 1758 + "version": "0.2.3+2" 1759 + }, 1849 1760 "webview_flutter_wkwebview": { 1850 1761 "dependency": "transitive", 1851 1762 "description": { 1852 1763 "name": "webview_flutter_wkwebview", 1853 - "sha256": "9c62cc46fa4f2d41e10ab81014c1de470a6c6f26051a2de32111b2ee55287feb", 1764 + "sha256": "1942a12224ab31e9508cf00c0c6347b931b023b8a4f0811e5dec3b06f94f117d", 1854 1765 "url": "https://pub.dev" 1855 1766 }, 1856 1767 "source": "hosted", 1857 - "version": "3.14.0" 1768 + "version": "3.15.0" 1858 1769 }, 1859 1770 "win32": { 1860 1771 "dependency": "transitive", ··· 1880 1771 "dependency": "transitive", 1881 1772 "description": { 1882 1773 "name": "window_manager", 1883 - "sha256": "8699323b30da4cdbe2aa2e7c9de567a6abd8a97d9a5c850a3c86dcd0b34bbfbf", 1774 + "sha256": "732896e1416297c63c9e3fb95aea72d0355f61390263982a47fd519169dc5059", 1884 1775 "url": "https://pub.dev" 1885 1776 }, 1886 1777 "source": "hosted", 1887 - "version": "0.3.9" 1778 + "version": "0.4.3" 1888 1779 }, 1889 1780 "window_to_front": { 1890 1781 "dependency": "transitive", ··· 1938 1829 } 1939 1830 }, 1940 1831 "sdks": { 1941 - "dart": ">=3.4.0 <4.0.0", 1942 - "flutter": ">=3.22.0" 1832 + "dart": ">=3.5.0 <4.0.0", 1833 + "flutter": ">=3.24.0" 1943 1834 } 1944 1835 }
+7 -5
pkgs/by-name/fr/freeorion/package.nix
··· 5 5 , doxygen 6 6 , graphviz 7 7 , makeWrapper 8 - , boost179 8 + , boost 9 9 , SDL2 10 10 , python3 11 11 , freetype ··· 24 24 25 25 stdenv.mkDerivation rec { 26 26 pname = "freeorion"; 27 - version = "0.5.0.1"; 27 + version = "0.5.0.1-unstable-2024-07-28"; 28 28 29 29 src = fetchFromGitHub { 30 30 owner = "freeorion"; 31 31 repo = "freeorion"; 32 - rev = "v${version}"; 33 - sha256 = "sha256-VvTq6TcLc5BMvRTjVsZ2HA9ug3WAqFuTHIoFQ/9/zWc="; 32 + # Current `release-0.5` commit to pick up Boost and GCC 14 fixes 33 + # until another release is cut. 34 + rev = "dc3d6a4f01aa78229c419fa17b4e383f73b024e2"; 35 + hash = "sha256-9yPk77YeYkGMJqrlDYRTUMDKMWpxUXhVCnHhomiUc/A="; 34 36 }; 35 37 36 38 buildInputs = [ 37 - (boost179.override { enablePython = true; python = python3; }) 39 + (boost.override { enablePython = true; python = python3; }) 38 40 (python3.withPackages (p: with p; [ pycodestyle ])) 39 41 SDL2 40 42 freetype
-11
pkgs/by-name/gd/gdome2/fno-common.patch
··· 1 - On gcc-10 -fno-common is the default which forbids miltiple definitions. 2 - --- a/libgdome/xpath/gdome-xpath-xpnsresolv.h 3 - +++ b/libgdome/xpath/gdome-xpath-xpnsresolv.h 4 - @@ -42,6 +42,6 @@ void gdome_xpath_xpnsresolv_ref (GdomeXPathNSResolver *self, GdomeException *exc 5 - void gdome_xpath_xpnsresolv_unref (GdomeXPathNSResolver *self, GdomeException *exc); 6 - GdomeDOMString * gdome_xpath_xpnsresolv_lookupNamespaceURI( GdomeXPathNSResolver *self, GdomeDOMString *prefix, GdomeException *exc); 7 - 8 - -const GdomeXPathNSResolverVtab gdome_xpath_xpnsresolv_vtab; 9 - +extern const GdomeXPathNSResolverVtab gdome_xpath_xpnsresolv_vtab; 10 - 11 - #endif /* GDOME_XPNSRESOLV_FILE */
-52
pkgs/by-name/gd/gdome2/package.nix
··· 1 - { 2 - lib, 3 - stdenv, 4 - fetchurl, 5 - pkg-config, 6 - glib, 7 - libxml2, 8 - gtk-doc, 9 - }: 10 - 11 - let 12 - pname = "gdome2"; 13 - version = "0.8.1"; 14 - in 15 - 16 - stdenv.mkDerivation { 17 - name = "${pname}-${version}"; 18 - 19 - src = fetchurl { 20 - url = "http://gdome2.cs.unibo.it/tarball/${pname}-${version}.tar.gz"; 21 - sha256 = "0hyms5s3hziajp3qbwdwqjc2xcyhb783damqg8wxjpwfxyi81fzl"; 22 - }; 23 - 24 - hardeningDisable = [ "format" ]; 25 - 26 - nativeBuildInputs = [ pkg-config ]; 27 - buildInputs = [ 28 - glib 29 - libxml2 30 - gtk-doc 31 - ]; 32 - propagatedBuildInputs = [ 33 - glib 34 - libxml2 35 - ]; 36 - patches = [ 37 - ./xml-document.patch 38 - ./fno-common.patch 39 - ]; 40 - 41 - meta = with lib; { 42 - homepage = "http://gdome2.cs.unibo.it/"; 43 - description = "DOM C library developed for the Gnome project"; 44 - mainProgram = "gdome-config"; 45 - license = licenses.lgpl21Plus; 46 - maintainers = with maintainers; [ 47 - prikhi 48 - roconnor 49 - ]; 50 - platforms = platforms.linux; 51 - }; 52 - }
-11
pkgs/by-name/gd/gdome2/xml-document.patch
··· 1 - --- a/libgdome/gdomecore/gdome-xml-documentt.c 2003-07-13 14:47:54.000000000 +0400 2 - +++ b/libgdome/gdomecore/gdome-xml-documentt.c 2013-07-02 14:09:18.304613703 +0400 3 - @@ -342,7 +342,7 @@ 4 - } 5 - xmlNodeDumpOutput (out_buff, NULL, (xmlNode *)is, 0, 0, NULL); 6 - xmlOutputBufferFlush(out_buff); 7 - - ret = g_strndup (out_buff->buffer->content, out_buff->buffer->use); 8 - + ret = g_strndup (xmlBufContent(out_buff), xmlBufUse(out_buff)); 9 - (void)xmlOutputBufferClose(out_buff); 10 - 11 - return gdome_xml_str_mkref_own (ret);
+15 -9
pkgs/by-name/ge/geographiclib/package.nix
··· 8 8 9 9 stdenv.mkDerivation rec { 10 10 pname = "geographiclib"; 11 - version = "2.4"; 11 + version = "2.5"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "geographiclib"; 15 15 repo = "geographiclib"; 16 - rev = "v${version}"; 17 - hash = "sha256-1CuB3H4KFFRo8wdFaa9NQLBdT8HxK2AdiVkEhbeYagM="; 16 + tag = "v${version}"; 17 + hash = "sha256-hFheJ6Q1GEfqPVq7t4SHN/n2JniqCQUzwl7GEVG0jgo="; 18 18 }; 19 + 20 + outputs = [ 21 + "dev" 22 + "doc" 23 + "out" 24 + ]; 19 25 20 26 nativeBuildInputs = [ 21 27 cmake ··· 29 23 ]; 30 24 31 25 cmakeFlags = [ 32 - "-DBUILD_DOCUMENTATION=ON" 33 - "-DCMAKE_INSTALL_LIBDIR=lib" 26 + (lib.cmakeBool "BUILD_DOCUMENTATION" true) 27 + (lib.cmakeFeature "CMAKE_INSTALL_LIBDIR" "lib") 34 28 ]; 35 29 36 - meta = with lib; { 30 + meta = { 37 31 description = "C++ geographic library"; 38 32 longDescription = '' 39 33 GeographicLib is a small C++ library for: ··· 42 36 * gravity (e.g., EGM2008) and geomagnetic field (e.g., WMM2020) calculations 43 37 ''; 44 38 homepage = "https://geographiclib.sourceforge.io/"; 45 - license = licenses.mit; 46 - maintainers = with maintainers; [ sikmir ]; 47 - platforms = platforms.unix; 39 + license = lib.licenses.mit; 40 + maintainers = with lib.maintainers; [ sikmir ]; 41 + platforms = lib.platforms.unix; 48 42 }; 49 43 }
+62
pkgs/by-name/gh/ghostty/darwin.nix
··· 1 + { 2 + pname, 3 + version, 4 + outputs, 5 + meta, 6 + lib, 7 + stdenvNoCC, 8 + fetchurl, 9 + _7zz, 10 + makeWrapper, 11 + }: 12 + 13 + stdenvNoCC.mkDerivation (finalAttrs: { 14 + inherit pname version outputs; 15 + 16 + src = fetchurl { 17 + url = "https://release.files.ghostty.org/${finalAttrs.version}/Ghostty.dmg"; 18 + sha256 = "sha256-CR96Kz9BYKFtfVKygiEku51XFJk4FfYqfXACeYQ3JlI="; 19 + }; 20 + 21 + nativeBuildInputs = [ 22 + _7zz 23 + makeWrapper 24 + ]; 25 + 26 + sourceRoot = "."; 27 + installPhase = '' 28 + runHook preInstall 29 + 30 + mkdir -p $out/Applications 31 + mv Ghostty.app $out/Applications/ 32 + makeWrapper $out/Applications/Ghostty.app/Contents/MacOS/ghostty $out/bin/ghostty 33 + 34 + runHook postInstall 35 + ''; 36 + 37 + postFixup = 38 + let 39 + resources = "$out/Applications/Ghostty.app/Contents/Resources"; 40 + in 41 + '' 42 + mkdir -p $man/share 43 + ln -s ${resources}/man $man/share/man 44 + 45 + mkdir -p $terminfo/share 46 + ln -s ${resources}/terminfo $terminfo/share/terminfo 47 + 48 + mkdir -p $shell_integration 49 + for folder in "${resources}/ghostty/shell-integration"/*; do 50 + ln -s $folder $shell_integration/$(basename "$folder") 51 + done 52 + 53 + mkdir -p $vim 54 + for folder in "${resources}/vim/vimfiles"/*; do 55 + ln -s $folder $vim/$(basename "$folder") 56 + done 57 + ''; 58 + 59 + meta = meta // { 60 + sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; 61 + }; 62 + })
+179
pkgs/by-name/gh/ghostty/linux.nix
··· 1 + { 2 + pname, 3 + version, 4 + outputs, 5 + meta, 6 + lib, 7 + stdenv, 8 + bzip2, 9 + callPackage, 10 + fetchFromGitHub, 11 + fontconfig, 12 + freetype, 13 + glib, 14 + glslang, 15 + harfbuzz, 16 + libGL, 17 + libX11, 18 + libadwaita, 19 + ncurses, 20 + nixosTests, 21 + oniguruma, 22 + pandoc, 23 + pkg-config, 24 + removeReferencesTo, 25 + versionCheckHook, 26 + wrapGAppsHook4, 27 + zig_0_13, 28 + # Usually you would override `zig.hook` with this, but we do that internally 29 + # since upstream recommends a non-default level 30 + # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/PACKAGING.md#build-options 31 + optimizeLevel ? "ReleaseFast", 32 + # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/build.zig#L106 33 + withAdwaita ? true, 34 + }: 35 + 36 + let 37 + zig_hook = zig_0_13.hook.overrideAttrs { 38 + zig_default_flags = "-Dcpu=baseline -Doptimize=${optimizeLevel} --color off"; 39 + }; 40 + 41 + # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/apprt.zig#L72-L76 42 + appRuntime = if stdenv.hostPlatform.isLinux then "gtk" else "none"; 43 + # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/font/main.zig#L94 44 + fontBackend = if stdenv.hostPlatform.isDarwin then "coretext" else "fontconfig_freetype"; 45 + # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/renderer.zig#L51-L52 46 + renderer = if stdenv.hostPlatform.isDarwin then "metal" else "opengl"; 47 + in 48 + 49 + stdenv.mkDerivation (finalAttrs: { 50 + inherit 51 + pname 52 + version 53 + outputs 54 + meta 55 + ; 56 + 57 + src = fetchFromGitHub { 58 + owner = "ghostty-org"; 59 + repo = "ghostty"; 60 + tag = "v${finalAttrs.version}"; 61 + hash = "sha256-AHI1Z4mfgXkNwQA8xYq4tS0/BARbHL7gQUT41vCxQTM="; 62 + }; 63 + 64 + # Avoid using runtime hacks to help find X11 65 + postPatch = lib.optionalString (appRuntime == "gtk") '' 66 + substituteInPlace src/apprt/gtk/x11.zig \ 67 + --replace-warn 'std.DynLib.open("libX11.so");' 'std.DynLib.open("${lib.getLib libX11}/lib/libX11.so");' 68 + ''; 69 + 70 + deps = callPackage ./deps.nix { 71 + name = "${finalAttrs.pname}-cache-${finalAttrs.version}"; 72 + }; 73 + 74 + strictDeps = true; 75 + 76 + nativeBuildInputs = 77 + [ 78 + ncurses 79 + pandoc 80 + pkg-config 81 + removeReferencesTo 82 + zig_hook 83 + ] 84 + ++ lib.optionals (appRuntime == "gtk") [ 85 + glib # Required for `glib-compile-schemas` 86 + wrapGAppsHook4 87 + ]; 88 + 89 + buildInputs = 90 + [ 91 + glslang 92 + oniguruma 93 + ] 94 + ++ lib.optional (appRuntime == "gtk" && withAdwaita) libadwaita 95 + ++ lib.optional (appRuntime == "gtk") libX11 96 + ++ lib.optional (renderer == "opengl") libGL 97 + ++ lib.optionals (fontBackend == "fontconfig_freetype") [ 98 + bzip2 99 + fontconfig 100 + freetype 101 + harfbuzz 102 + ]; 103 + 104 + zigBuildFlags = 105 + [ 106 + "--system" 107 + "${finalAttrs.deps}" 108 + "-Dversion-string=${finalAttrs.version}" 109 + 110 + "-Dapp-runtime=${appRuntime}" 111 + "-Dfont-backend=${fontBackend}" 112 + "-Dgtk-adwaita=${lib.boolToString withAdwaita}" 113 + "-Drenderer=${renderer}" 114 + ] 115 + ++ lib.mapAttrsToList (name: package: "-fsys=${name} --search-prefix ${lib.getLib package}") { 116 + inherit glslang; 117 + }; 118 + 119 + zigCheckFlags = finalAttrs.zigBuildFlags; 120 + 121 + # Unit tests currently fail inside the sandbox 122 + doCheck = false; 123 + 124 + /** 125 + Ghostty really likes all of it's resources to be in the same directory, so link them back after we split them 126 + 127 + - https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/os/resourcesdir.zig#L11-L52 128 + - https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/termio/Exec.zig#L745-L750 129 + - https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/termio/Exec.zig#L818-L834 130 + 131 + terminfo and shell integration should also be installable on remote machines 132 + 133 + ```nix 134 + { pkgs, ... }: { 135 + environment.systemPackages = [ pkgs.ghostty.terminfo ]; 136 + 137 + programs.bash = { 138 + interactiveShellInit = '' 139 + if [[ "$TERM" == "xterm-ghostty" ]]; then 140 + builtin source ${pkgs.ghostty.shell_integration}/bash/ghostty.bash 141 + fi 142 + ''; 143 + }; 144 + } 145 + ``` 146 + */ 147 + postFixup = '' 148 + ln -s $man/share/man $out/share/man 149 + 150 + moveToOutput share/terminfo $terminfo 151 + ln -s $terminfo/share/terminfo $out/share/terminfo 152 + 153 + mv $out/share/ghostty/shell-integration $shell_integration 154 + ln -s $shell_integration $out/share/ghostty/shell-integration 155 + 156 + mv $out/share/vim/vimfiles $vim 157 + rmdir $out/share/vim 158 + ln -s $vim $out/share/vim-plugins 159 + 160 + 161 + remove-references-to -t ${finalAttrs.deps} $out/bin/ghostty 162 + ''; 163 + 164 + nativeInstallCheckInputs = [ 165 + versionCheckHook 166 + ]; 167 + 168 + doInstallCheck = true; 169 + 170 + versionCheckProgramArg = [ "--version" ]; 171 + 172 + passthru = { 173 + tests = lib.optionalAttrs stdenv.hostPlatform.isLinux { 174 + inherit (nixosTests) allTerminfo; 175 + nixos = nixosTests.terminal-emulators.ghostty; 176 + }; 177 + }; 178 + 179 + })
+23 -167
pkgs/by-name/gh/ghostty/package.nix
··· 1 1 { 2 - lib, 3 - stdenv, 4 - bzip2, 2 + stdenvNoCC, 5 3 callPackage, 6 - fetchFromGitHub, 7 - fontconfig, 8 - freetype, 9 - glib, 10 - glslang, 11 - harfbuzz, 12 - libGL, 13 - libX11, 14 - libadwaita, 15 - ncurses, 16 - nixosTests, 17 - oniguruma, 18 - pandoc, 19 - pkg-config, 20 - removeReferencesTo, 21 - versionCheckHook, 22 - wrapGAppsHook4, 23 - zig_0_13, 24 - # Usually you would override `zig.hook` with this, but we do that internally 25 - # since upstream recommends a non-default level 26 - # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/PACKAGING.md#build-options 27 - optimizeLevel ? "ReleaseFast", 28 - # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/build.zig#L106 29 - withAdwaita ? true, 4 + lib, 30 5 }: 31 6 32 7 let 33 - zig_hook = zig_0_13.hook.overrideAttrs { 34 - zig_default_flags = "-Dcpu=baseline -Doptimize=${optimizeLevel} --color off"; 35 - }; 36 - 37 - # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/apprt.zig#L72-L76 38 - appRuntime = if stdenv.hostPlatform.isLinux then "gtk" else "none"; 39 - # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/font/main.zig#L94 40 - fontBackend = if stdenv.hostPlatform.isDarwin then "coretext" else "fontconfig_freetype"; 41 - # https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/renderer.zig#L51-L52 42 - renderer = if stdenv.hostPlatform.isDarwin then "metal" else "opengl"; 43 - in 44 - 45 - stdenv.mkDerivation (finalAttrs: { 46 8 pname = "ghostty"; 47 9 version = "1.0.0"; 48 - 49 10 outputs = [ 50 11 "out" 51 12 "man" ··· 14 53 "terminfo" 15 54 "vim" 16 55 ]; 17 - 18 - src = fetchFromGitHub { 19 - owner = "ghostty-org"; 20 - repo = "ghostty"; 21 - tag = "v${finalAttrs.version}"; 22 - hash = "sha256-AHI1Z4mfgXkNwQA8xYq4tS0/BARbHL7gQUT41vCxQTM="; 23 - }; 24 - 25 - # Avoid using runtime hacks to help find X11 26 - postPatch = lib.optionalString (appRuntime == "gtk") '' 27 - substituteInPlace src/apprt/gtk/x11.zig \ 28 - --replace-warn 'std.DynLib.open("libX11.so");' 'std.DynLib.open("${lib.getLib libX11}/lib/libX11.so");' 29 - ''; 30 - 31 - deps = callPackage ./deps.nix { 32 - name = "${finalAttrs.pname}-cache-${finalAttrs.version}"; 33 - }; 34 - 35 - strictDeps = true; 36 - 37 - nativeBuildInputs = 38 - [ 39 - ncurses 40 - pandoc 41 - pkg-config 42 - removeReferencesTo 43 - zig_hook 44 - ] 45 - ++ lib.optionals (appRuntime == "gtk") [ 46 - glib # Required for `glib-compile-schemas` 47 - wrapGAppsHook4 48 - ]; 49 - 50 - buildInputs = 51 - [ 52 - glslang 53 - oniguruma 54 - ] 55 - ++ lib.optional (appRuntime == "gtk" && withAdwaita) libadwaita 56 - ++ lib.optional (appRuntime == "gtk") libX11 57 - ++ lib.optional (renderer == "opengl") libGL 58 - ++ lib.optionals (fontBackend == "fontconfig_freetype") [ 59 - bzip2 60 - fontconfig 61 - freetype 62 - harfbuzz 63 - ]; 64 - 65 - zigBuildFlags = 66 - [ 67 - "--system" 68 - "${finalAttrs.deps}" 69 - "-Dversion-string=${finalAttrs.version}" 70 - 71 - "-Dapp-runtime=${appRuntime}" 72 - "-Dfont-backend=${fontBackend}" 73 - "-Dgtk-adwaita=${lib.boolToString withAdwaita}" 74 - "-Drenderer=${renderer}" 75 - ] 76 - ++ lib.mapAttrsToList (name: package: "-fsys=${name} --search-prefix ${lib.getLib package}") { 77 - inherit glslang; 78 - }; 79 - 80 - zigCheckFlags = finalAttrs.zigBuildFlags; 81 - 82 - # Unit tests currently fail inside the sandbox 83 - doCheck = false; 84 - 85 - /** 86 - Ghostty really likes all of it's resources to be in the same directory, so link them back after we split them 87 - 88 - - https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/os/resourcesdir.zig#L11-L52 89 - - https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/termio/Exec.zig#L745-L750 90 - - https://github.com/ghostty-org/ghostty/blob/4b4d4062dfed7b37424c7210d1230242c709e990/src/termio/Exec.zig#L818-L834 91 - 92 - terminfo and shell integration should also be installable on remote machines 93 - 94 - ```nix 95 - { pkgs, ... }: { 96 - environment.systemPackages = [ pkgs.ghostty.terminfo ]; 97 - 98 - programs.bash = { 99 - interactiveShellInit = '' 100 - if [[ "$TERM" == "xterm-ghostty" ]]; then 101 - builtin source ${pkgs.ghostty.shell_integration}/bash/ghostty.bash 102 - fi 103 - ''; 104 - }; 105 - } 106 - ``` 107 - */ 108 - postFixup = '' 109 - ln -s $man/share/man $out/share/man 110 - 111 - moveToOutput share/terminfo $terminfo 112 - ln -s $terminfo/share/terminfo $out/share/terminfo 113 - 114 - mv $out/share/ghostty/shell-integration $shell_integration 115 - ln -s $shell_integration $out/share/ghostty/shell-integration 116 - 117 - mv $out/share/vim/vimfiles $vim 118 - rmdir $out/share/vim 119 - ln -s $vim $out/share/vim-plugins 120 - 121 - 122 - remove-references-to -t ${finalAttrs.deps} $out/bin/ghostty 123 - ''; 124 - 125 - nativeInstallCheckInputs = [ 126 - versionCheckHook 127 - ]; 128 - 129 - doInstallCheck = true; 130 - 131 - versionCheckProgramArg = [ "--version" ]; 132 - 133 - passthru = { 134 - tests = lib.optionalAttrs stdenv.hostPlatform.isLinux { 135 - inherit (nixosTests) allTerminfo; 136 - nixos = nixosTests.terminal-emulators.ghostty; 137 - }; 138 - }; 139 - 140 56 meta = { 141 57 description = "Fast, native, feature-rich terminal emulator pushing modern features"; 142 58 longDescription = '' ··· 31 193 jcollie 32 194 pluiedev 33 195 getchoo 196 + DimitarNestorov 34 197 ]; 35 198 outputsToInstall = [ 36 199 "out" ··· 40 201 "terminfo" 41 202 ]; 42 203 platforms = lib.platforms.linux ++ lib.platforms.darwin; 43 - # Issues finding the SDK in the sandbox 44 - broken = stdenv.hostPlatform.isDarwin; 45 204 }; 46 - }) 205 + in 206 + 207 + if stdenvNoCC.hostPlatform.isDarwin then 208 + callPackage ./darwin.nix { 209 + inherit 210 + pname 211 + version 212 + outputs 213 + meta 214 + ; 215 + } 216 + else 217 + callPackage ./linux.nix { 218 + inherit 219 + pname 220 + version 221 + outputs 222 + meta 223 + ; 224 + }
+27
pkgs/by-name/gn/gnome-pomodoro-watcher/package.nix
··· 1 + { 2 + lib, 3 + rustPlatform, 4 + fetchFromGitHub, 5 + }: 6 + 7 + rustPlatform.buildRustPackage { 8 + pname = "gnome-pomodoro-watcher"; 9 + version = "0-unstable-2023-12-20"; 10 + 11 + src = fetchFromGitHub { 12 + owner = "sei40kr"; 13 + repo = "gnome-pomodoro-watcher"; 14 + rev = "7c1443d470c9a6bfc07fd9d26a138f136de96515"; 15 + hash = "sha256-VQjjLK2gnxbf7CzRjNrS/562fBGVAFMTxj6F71hOXrU="; 16 + }; 17 + 18 + cargoHash = "sha256-P7hrSTb8XE/rCAGflbZwrqpQGxWnXFREqXSmZmIMAGU="; 19 + 20 + meta = with lib; { 21 + description = "Helper tool to watch GNOME Pomodoro timer"; 22 + homepage = "https://github.com/sei40kr/gnome-pomodoro-watcher"; 23 + license = licenses.mit; 24 + maintainers = with maintainers; [ sei40kr ]; 25 + mainProgram = "gnome-pomodoro-watcher"; 26 + }; 27 + }
+3 -3
pkgs/by-name/go/gollama/package.nix
··· 7 7 8 8 buildGoModule rec { 9 9 pname = "gollama"; 10 - version = "1.28.0"; 10 + version = "1.28.4"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "sammcj"; 14 14 repo = "gollama"; 15 15 rev = "refs/tags/v${version}"; 16 - hash = "sha256-nQrd0gpl6fjJ5wzDvDGpI01h7jeGEyB6uuObgoz7Uo8="; 16 + hash = "sha256-n3GbEPh69mrr5qZ2TVzKv06lkR+zuhH9TtjmusXDHQg="; 17 17 }; 18 18 19 - vendorHash = "sha256-vIqDYtdz799qm3vp8w293OLx1IoLNr5YjyNqYcvOkI0="; 19 + vendorHash = "sha256-Y5yg54em+vqoWXxS3JVQVPEM+fLXgoblmY+48WpxSCQ="; 20 20 21 21 doCheck = false; 22 22
+3 -3
pkgs/by-name/gq/gqlgenc/package.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "gqlgenc"; 9 - version = "0.27.4"; 9 + version = "0.30.2"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "yamashou"; 13 13 repo = "gqlgenc"; 14 14 rev = "v${version}"; 15 - sha256 = "sha256-NqFF3ppdg3nUZJ3ij0Zx3uKXz4Xhr/JEnkAzYNbPqOE="; 15 + sha256 = "sha256-F6EuOqB9ccat9pytJn8glBn5X9eEsEUN2+8+FqVvEbY="; 16 16 }; 17 17 18 18 excludedPackages = [ "example" ]; 19 19 20 - vendorHash = "sha256-ln26CHD0q+iPyAx5DalOGyCtVB1QR+7ls1ZjNK8APBU="; 20 + vendorHash = "sha256-h3ePmfRkGqVXdtjX2cU5y2HnX+VkmTWNwrEkhLAmrlU="; 21 21 22 22 meta = with lib; { 23 23 description = "Go tool for building GraphQL client with gqlgen";
+1 -1
pkgs/by-name/ha/hardinfo2/package.nix
··· 90 90 ]; 91 91 maintainers = with lib.maintainers; [ sigmanificient ]; 92 92 platforms = lib.platforms.linux; 93 - mainProgram = "hardinfo"; 93 + mainProgram = "hardinfo2"; 94 94 }; 95 95 })
+8 -3
pkgs/by-name/ho/houdini/runtime-build.nix
··· 1 - { stdenv, bc, version, src, eulaDate }: 2 - stdenv.mkDerivation { 1 + { stdenv, bc, version, src, eulaDate, outputHash ? null }: 2 + stdenv.mkDerivation ({ 3 3 inherit version src; 4 4 pname = "houdini-runtime"; 5 5 ··· 16 16 --accept-EULA ${eulaDate} \ 17 17 $out 18 18 echo "licensingMode = localValidator" >> $out/houdini/Licensing.opt # does not seem to do anything any more. not sure, official docs do not say anything about it 19 + sed -i 's@'"$out"'@$HFS@g' $out/packages/package_dirs.json # this seem to be internal houdini tools unavailable to users anyway, but they break fixed-derivation 19 20 ''; 20 21 21 22 dontFixup = true; 22 - } 23 + } // (if isNull outputHash then {} else { 24 + inherit outputHash; 25 + outputHashAlgo = "sha256"; 26 + outputHashMode = "recursive"; 27 + }))
+3 -2
pkgs/by-name/ho/houdini/runtime.nix
··· 1 1 { requireFile, callPackage }: 2 2 3 3 callPackage ./runtime-build.nix rec { 4 - version = "20.5.370"; 4 + version = "20.5.445"; 5 5 eulaDate = "2021-10-13"; 6 6 src = requireFile { 7 7 name = "houdini-${version}-linux_x86_64_gcc11.2.tar.gz"; 8 - hash = "sha256-QwPCU7E5yoJvWsiRUMBSAhEJYckbFTrQa1S4fto8dy0="; 8 + hash = "sha256-rk8HKX1Aq7ACbAWKFxfjSzfa3PA/iXQZsYOkr/kSbkM="; 9 9 url = "https://www.sidefx.com/download/daily-builds/?production=true"; 10 10 }; 11 + outputHash = "sha256-bdL+Ha5LWkty4r+rgPAKr50pxV+j7CLspD4KOsSxyMo="; 11 12 }
+4
pkgs/by-name/hy/hyprnome/package.nix
··· 19 19 20 20 cargoHash = "sha256-oxIZTp5ZJRUjXLpMw2nOnPHYHhHN03HWFRhBZ82Ac10="; 21 21 22 + # Upstream has 'missing_docs = "deny"', which trips up test builds for 0.3.1 release. 23 + # Let's just treat lints as warnings. 24 + env.RUSTFLAGS = "--cap-lints warn"; 25 + 22 26 nativeBuildInputs = [ installShellFiles ]; 23 27 24 28 postInstall = ''
+3 -2
pkgs/by-name/im/immich/package.nix
··· 5 5 fetchFromGitHub, 6 6 fetchpatch2, 7 7 python3, 8 - nodejs, 8 + nodejs_20, 9 9 node-gyp, 10 10 runCommand, 11 11 nixosTests, ··· 27 27 vips, 28 28 }: 29 29 let 30 + nodejs = nodejs_20; 30 31 buildNpmPackage' = buildNpmPackage.override { inherit nodejs; }; 31 32 sources = lib.importJSON ./sources.json; 32 33 inherit (sources) version; ··· 187 186 mkdir node_modules 188 187 ln -s ${node-addon-api} node_modules/node-addon-api 189 188 190 - ${lib.getExe nodejs} install/check 189 + node install/check 191 190 192 191 rm -r node_modules 193 192
+3 -3
pkgs/by-name/ip/ipxe/package.nix
··· 49 49 50 50 stdenv.mkDerivation (finalAttrs: { 51 51 pname = "ipxe"; 52 - version = "1.21.1-unstable-2024-12-03"; 52 + version = "1.21.1-unstable-2024-12-18"; 53 53 54 54 nativeBuildInputs = [ 55 55 gnu-efi ··· 67 67 src = fetchFromGitHub { 68 68 owner = "ipxe"; 69 69 repo = "ipxe"; 70 - rev = "24db39fb2983ca83ab5c6ee37cb57a4f7f6f94e6"; 71 - hash = "sha256-RuJRtrjM2gyPBVAC9FeVDu+CksXY8XiNstLb1/QiUCw="; 70 + rev = "83ba34076ad4ca79be81a71f25303b340c60e7b8"; 71 + hash = "sha256-nzAU9ZaUa+D6tBv2mq8mXRGCY7dDeSURPVUjJ1Jy7Vg="; 72 72 }; 73 73 74 74 # Calling syslinux on a FAT image isn't going to work on Aarch64.
+4 -3
pkgs/by-name/jc/jcli/package.nix
··· 8 8 9 9 buildGoModule rec { 10 10 pname = "jcli"; 11 - version = "0.0.44"; 11 + version = "0.0.46"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "jenkins-zh"; 15 15 repo = "jenkins-cli"; 16 16 tag = "v${version}"; 17 - hash = "sha256-lsYLUgjpHcURiMTA4we9g+a6dFimOupAYMw0TcmABk4="; 17 + hash = "sha256-l0qpyrggDJSzaJMbhgJYVK2Y3A/R+xS0Qoy3afA/eGo="; 18 18 }; 19 19 20 - vendorHash = "sha256-f2f/Qi6aav7LPpO9ERYkejygz0XiPQ8YrKLB63EpaoY="; 20 + vendorHash = "sha256-0x0Cl6cqullGIvtQTlHTGnWz9dBCT7aMEIRSB/Cuy8k="; 21 21 22 22 ldflags = [ 23 23 "-s" ··· 36 36 + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' 37 37 installShellCompletion --cmd jcli \ 38 38 --bash <($out/bin/jcli completion --type bash) \ 39 + --fish <($out/bin/jcli completion --type fish) \ 39 40 --zsh <($out/bin/jcli completion --type zsh) 40 41 ''; 41 42
+3 -3
pkgs/by-name/jf/jfrog-cli/package.nix
··· 8 8 9 9 buildGoModule rec { 10 10 pname = "jfrog-cli"; 11 - version = "2.72.2"; 11 + version = "2.72.5"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "jfrog"; 15 15 repo = "jfrog-cli"; 16 16 rev = "refs/tags/v${version}"; 17 - hash = "sha256-Vu57V6OiMZjR+g0afeLEkQcwGA0e8PZzYAJjR3/wNoI="; 17 + hash = "sha256-owE3mWzVogESko4SeysobC3VmmH37ikk7llJv65ZTfU="; 18 18 }; 19 19 20 20 proxyVendor = true; 21 - vendorHash = "sha256-BSLBXHcowF2iVS/fMR3UIIdpbuLDgsPXYV4WK/oeHB4="; 21 + vendorHash = "sha256-cxuNlIXD4LIBWxbTdC/ygiF/ti4eHYQBR6kZRhhgJtY="; 22 22 23 23 postPatch = '' 24 24 # Patch out broken test cleanup.
+11 -1
pkgs/by-name/ka/kakasi/package.nix
··· 2 2 lib, 3 3 stdenv, 4 4 fetchurl, 5 + fetchpatch, 6 + autoreconfHook, 5 7 libiconv, 6 8 }: 7 9 ··· 11 9 pname = "kakasi"; 12 10 version = "2.3.6"; 13 11 12 + nativeBuildInputs = [ autoreconfHook ]; 14 13 buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ]; 15 14 16 15 meta = with lib; { ··· 31 28 sha256 = "1qry3xqb83pjgxp3my8b1sy77z4f0893h73ldrvdaky70cdppr9f"; 32 29 }; 33 30 31 + patches = [ 32 + (fetchpatch { 33 + url = "https://src.fedoraproject.org/rpms/kakasi/raw/4756771/f/kakasi-configure-c99.patch"; 34 + hash = "sha256-XPIp/+AR6K84lv606aRHPQwia/1K3rt/7KSo0V0ZQ5o="; 35 + }) 36 + ]; 37 + 34 38 postPatch = '' 35 39 for a in tests/kakasi-* ; do 36 40 substituteInPlace $a \ 37 - --replace "/bin/echo" echo 41 + --replace-quiet "/bin/echo" echo 38 42 done 39 43 ''; 40 44
+1 -1
pkgs/by-name/kx/kx-aspe-cli/package.nix
··· 25 25 cargoHash = "sha256-ZZwb5WHKFMAP5yPT1DDi+nWy7rjM/UI6ahagNqTDDMM="; 26 26 27 27 meta = { 28 - homepage = "https://github.com/rustic-rs/rustic"; 28 + homepage = "https://codeberg.org/keyoxide/kx-aspe-cli"; 29 29 changelog = "https://codeberg.org/keyoxide/kx-aspe-cli/src/commit/${src.rev}/CHANGELOG.md"; 30 30 description = "Keyoxide profile generator CLI using ASPE"; 31 31 mainProgram = "kx-aspe";
+9
pkgs/by-name/li/libeb/package.nix
··· 4 4 fetchurl, 5 5 perl, 6 6 zlib, 7 + fetchpatch, 7 8 }: 8 9 stdenv.mkDerivation rec { 9 10 pname = "libeb"; ··· 14 13 url = "ftp://ftp.sra.co.jp/pub/misc/eb/eb-${version}.tar.bz2"; 15 14 sha256 = "0psbdzirazfnn02hp3gsx7xxss9f1brv4ywp6a15ihvggjki1rxb"; 16 15 }; 16 + 17 + patches = [ 18 + (fetchpatch { 19 + name = "gcc-14.patch"; 20 + url = "https://salsa.debian.org/debian/eb/-/raw/50c84ee2d190083fc88a14e62ef9fef779d088de/debian/patches/0002-gcc14-fix.patch"; 21 + hash = "sha256-0hht7ojj4MLNfFbemDR2hD1PbSmBxrC2JtDl2WJINlM="; 22 + }) 23 + ]; 17 24 18 25 nativeBuildInputs = [ perl ]; 19 26 buildInputs = [ zlib ];
+7 -7
pkgs/by-name/li/libsearpc/package.nix
··· 10 10 }: 11 11 12 12 stdenv.mkDerivation rec { 13 - version = "3.3-20230626"; 14 - commit = "783141fb694f3bd1f8bd8a783670dd25a53b9fc1"; 13 + version = "3.3-20241031"; 14 + commit = "d00c062d76d86b76c8c179bfb4babc9e2200b3f1"; 15 15 pname = "libsearpc"; 16 16 17 17 src = fetchFromGitHub { 18 18 owner = "haiwen"; 19 19 repo = "libsearpc"; 20 20 rev = commit; 21 - sha256 = "sha256-nYYp3EyA8nufhbWaw4Lv/c4utGYaxC+PoFyamUEVJx4="; 21 + sha256 = "sha256-Ze1dOEFUIA16OlqkyDjQw6c6JcDECjYsdCm5um0kG/c="; 22 22 }; 23 23 24 24 nativeBuildInputs = [ ··· 32 32 jansson 33 33 ]; 34 34 35 - meta = with lib; { 35 + meta = { 36 36 homepage = "https://github.com/haiwen/libsearpc"; 37 37 description = "Simple and easy-to-use C language RPC framework based on GObject System"; 38 38 mainProgram = "searpc-codegen.py"; 39 - license = licenses.lgpl3; 40 - platforms = platforms.linux; 41 - maintainers = with maintainers; [ greizgh ]; 39 + license = lib.licenses.lgpl3; 40 + platforms = lib.platforms.linux; 41 + maintainers = with lib.maintainers; [ greizgh ]; 42 42 }; 43 43 }
+69 -10
pkgs/by-name/li/libsignal-ffi/Cargo.lock
··· 421 421 422 422 [[package]] 423 423 name = "boring" 424 - version = "4.9.0" 425 - source = "git+https://github.com/signalapp/boring?tag=signal-v4.9.0b#3d4180b232d332a86ee3b41d1a622b0f1c1c6037" 424 + version = "4.13.0" 425 + source = "git+https://github.com/signalapp/boring?tag=signal-v4.13.0#1af143f50937bce6a9a9c7405ec824a9153c8ba0" 426 426 dependencies = [ 427 427 "bitflags", 428 428 "boring-sys", 429 429 "foreign-types", 430 430 "libc", 431 431 "once_cell", 432 + "openssl-macros", 432 433 ] 433 434 434 435 [[package]] 435 436 name = "boring-sys" 436 - version = "4.9.0" 437 - source = "git+https://github.com/signalapp/boring?tag=signal-v4.9.0b#3d4180b232d332a86ee3b41d1a622b0f1c1c6037" 437 + version = "4.13.0" 438 + source = "git+https://github.com/signalapp/boring?tag=signal-v4.13.0#1af143f50937bce6a9a9c7405ec824a9153c8ba0" 438 439 dependencies = [ 439 440 "autocfg", 440 441 "bindgen", ··· 1245 1244 checksum = "324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253" 1246 1245 dependencies = [ 1247 1246 "crc32fast", 1247 + "libz-sys", 1248 1248 "miniz_oxide", 1249 1249 ] 1250 1250 ··· 1840 1838 ] 1841 1839 1842 1840 [[package]] 1841 + name = "intmap" 1842 + version = "2.0.0" 1843 + source = "git+https://github.com/JesperAxelsson/rust-intmap?rev=e7edd6e8fb452506ca2570e91f62b14dc29a950c#e7edd6e8fb452506ca2570e91f62b14dc29a950c" 1844 + 1845 + [[package]] 1843 1846 name = "ipnet" 1844 1847 version = "2.10.0" 1845 1848 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2192 2185 2193 2186 [[package]] 2194 2187 name = "libsignal-ffi" 2195 - version = "0.62.0" 2188 + version = "0.64.1" 2196 2189 dependencies = [ 2197 2190 "cpufeatures", 2198 2191 "futures-util", ··· 2207 2200 2208 2201 [[package]] 2209 2202 name = "libsignal-jni" 2210 - version = "0.62.0" 2203 + version = "0.64.1" 2211 2204 dependencies = [ 2212 2205 "cfg-if", 2213 2206 "cpufeatures", 2207 + "flate2", 2214 2208 "jni 0.19.0", 2215 2209 "jni 0.21.1", 2216 2210 "libsignal-bridge", ··· 2224 2216 2225 2217 [[package]] 2226 2218 name = "libsignal-jni-testing" 2227 - version = "0.62.0" 2219 + version = "0.64.1" 2228 2220 dependencies = [ 2229 2221 "jni 0.21.1", 2230 2222 "libsignal-bridge-testing", ··· 2266 2258 "cbc", 2267 2259 "clap", 2268 2260 "clap-stdin", 2261 + "criterion", 2269 2262 "derive-where", 2270 2263 "dir-test", 2271 2264 "displaydoc", 2272 2265 "env_logger", 2266 + "flate2", 2273 2267 "futures", 2274 2268 "hex", 2275 2269 "hex-literal", 2276 2270 "hkdf", 2277 2271 "hmac", 2272 + "intmap", 2278 2273 "itertools 0.13.0", 2279 2274 "json5", 2280 2275 "libsignal-account-keys", ··· 2295 2284 "protobuf", 2296 2285 "protobuf-codegen", 2297 2286 "protobuf-json-mapping", 2287 + "rand", 2298 2288 "serde", 2299 2289 "serde_json", 2300 2290 "sha2", ··· 2308 2296 "thiserror", 2309 2297 "usernames", 2310 2298 "uuid", 2299 + "visibility", 2311 2300 "zkcredential", 2312 2301 "zkgroup", 2313 2302 ] ··· 2435 2422 "tokio-util", 2436 2423 "tungstenite 0.23.0", 2437 2424 "url", 2425 + "visibility", 2438 2426 "warp", 2439 2427 ] 2440 2428 2441 2429 [[package]] 2442 2430 name = "libsignal-node" 2443 - version = "0.62.0" 2431 + version = "0.64.1" 2444 2432 dependencies = [ 2445 2433 "cmake", 2446 2434 "futures", ··· 2522 2508 "subtle", 2523 2509 "test-case", 2524 2510 "zerocopy", 2511 + ] 2512 + 2513 + [[package]] 2514 + name = "libz-sys" 2515 + version = "1.1.20" 2516 + source = "registry+https://github.com/rust-lang/crates.io-index" 2517 + checksum = "d2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472" 2518 + dependencies = [ 2519 + "cc", 2520 + "pkg-config", 2521 + "vcpkg", 2525 2522 ] 2526 2523 2527 2524 [[package]] ··· 2974 2949 checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" 2975 2950 2976 2951 [[package]] 2952 + name = "openssl-macros" 2953 + version = "0.1.1" 2954 + source = "registry+https://github.com/rust-lang/crates.io-index" 2955 + checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" 2956 + dependencies = [ 2957 + "proc-macro2", 2958 + "quote", 2959 + "syn 2.0.77", 2960 + ] 2961 + 2962 + [[package]] 2977 2963 name = "openssl-probe" 2978 2964 version = "0.1.5" 2979 2965 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 3183 3147 "der", 3184 3148 "spki", 3185 3149 ] 3150 + 3151 + [[package]] 3152 + name = "pkg-config" 3153 + version = "0.3.31" 3154 + source = "registry+https://github.com/rust-lang/crates.io-index" 3155 + checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" 3186 3156 3187 3157 [[package]] 3188 3158 name = "plotters" ··· 4499 4457 4500 4458 [[package]] 4501 4459 name = "tokio-boring" 4502 - version = "4.9.0" 4503 - source = "git+https://github.com/signalapp/boring?tag=signal-v4.9.0b#3d4180b232d332a86ee3b41d1a622b0f1c1c6037" 4460 + version = "4.13.0" 4461 + source = "git+https://github.com/signalapp/boring?tag=signal-v4.13.0#1af143f50937bce6a9a9c7405ec824a9153c8ba0" 4504 4462 dependencies = [ 4505 4463 "boring", 4506 4464 "boring-sys", ··· 4846 4804 checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" 4847 4805 4848 4806 [[package]] 4807 + name = "vcpkg" 4808 + version = "0.2.15" 4809 + source = "registry+https://github.com/rust-lang/crates.io-index" 4810 + checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" 4811 + 4812 + [[package]] 4849 4813 name = "version_check" 4850 4814 version = "0.9.5" 4851 4815 source = "registry+https://github.com/rust-lang/crates.io-index" 4852 4816 checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" 4817 + 4818 + [[package]] 4819 + name = "visibility" 4820 + version = "0.1.1" 4821 + source = "registry+https://github.com/rust-lang/crates.io-index" 4822 + checksum = "d674d135b4a8c1d7e813e2f8d1c9a58308aee4a680323066025e53132218bd91" 4823 + dependencies = [ 4824 + "proc-macro2", 4825 + "quote", 4826 + "syn 2.0.77", 4827 + ] 4853 4828 4854 4829 [[package]] 4855 4830 name = "wait-timeout"
+5 -3
pkgs/by-name/li/libsignal-ffi/package.nix
··· 22 22 pname = "libsignal-ffi"; 23 23 # must match the version used in mautrix-signal 24 24 # see https://github.com/mautrix/signal/issues/401 25 - version = "0.62.0"; 25 + version = "0.64.1"; 26 26 27 27 src = fetchFromGitHub { 28 28 fetchSubmodules = true; 29 29 owner = "signalapp"; 30 30 repo = "libsignal"; 31 31 rev = "v${version}"; 32 - hash = "sha256-+tY00a5NJflVkSVESFhaP1B5qqZs72AwZM9pCIrAQRk="; 32 + hash = "sha256-36z8Tgf3w0ZDLOS7hMTeVbZLiq/M/es6+sL8rEWtps4="; 33 33 }; 34 34 35 35 buildInputs = lib.optional stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.Security ]; ··· 40 40 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ xcodebuild ]; 41 41 42 42 env.BORING_BSSL_PATH = "${boringssl-wrapper}"; 43 + env.NIX_LDFLAGS = "-lstdc++"; 43 44 44 45 # The Cargo.lock contains git dependencies 45 46 cargoLock = { 46 47 lockFile = ./Cargo.lock; 47 48 outputHashes = { 48 - "boring-4.9.0" = "sha256-zhf0sO6TV4e55k4MxAB/TlXdqd96dg6i674RbuUPrtM="; 49 + "boring-4.13.0" = "sha256-+0LeCN4YtHe84GzkMZog8gCTvrzVNoAYXv04jQXZaUo="; 50 + "intmap-2.0.0" = "sha256-PGlkaZl+DYS4QkpJFfUf+2unVKwd9vLNF0N+/YFg8qE="; 49 51 "curve25519-dalek-4.1.3" = "sha256-bPh7eEgcZnq9C3wmSnnYv0C4aAP+7pnwk9Io29GrI4A="; 50 52 }; 51 53 };
+3 -3
pkgs/by-name/li/lint-staged/package.nix
··· 8 8 9 9 buildNpmPackage rec { 10 10 pname = "lint-staged"; 11 - version = "15.2.11"; 11 + version = "15.3.0"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "okonet"; 15 15 repo = "lint-staged"; 16 16 rev = "v${version}"; 17 - hash = "sha256-f2sHvbReLfX+PtFAZuxK36ZzHmaegqCG/7ADel8YVOA="; 17 + hash = "sha256-TcjJtNELI7jOVpQJJovVTKrrQtHlECUaX6/CeoCXgsA="; 18 18 }; 19 19 20 - npmDepsHash = "sha256-RhR5nexLM5Ah35u/8jhv2PzrMYWYztPf964kQXWNim8="; 20 + npmDepsHash = "sha256-FWbXo8io35nGk8baYtL7FIx7DI7QQk2JsAoJPQ9dWp8="; 21 21 22 22 dontNpmBuild = true; 23 23
+2 -2
pkgs/by-name/lu/lunacy/package.nix
··· 20 20 21 21 stdenv.mkDerivation (finalAttrs: { 22 22 pname = "lunacy"; 23 - version = "10.9.0"; 23 + version = "10.10"; 24 24 25 25 src = fetchurl { 26 26 url = "https://lcdn.icons8.com/setup/Lunacy_${finalAttrs.version}.deb"; 27 - hash = "sha256-z5EUztSbU/8G0UE6UVgtIu6iQUY40PZYy1jDbjPIuv8="; 27 + hash = "sha256-4aIsEECUl9AjVhPMEhmuAew6ZynaIl15i8jmo3NJ6TU="; 28 28 }; 29 29 30 30 buildInputs = [
+3 -3
pkgs/by-name/md/mdbook-alerts/package.nix
··· 6 6 7 7 rustPlatform.buildRustPackage rec { 8 8 pname = "mdbook-alerts"; 9 - version = "0.6.10"; 9 + version = "0.7.0"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "lambdalisue"; 13 13 repo = "rs-mdbook-alerts"; 14 14 rev = "v${version}"; 15 - hash = "sha256-xyjLrqNb/YC2FWQXsCFJgiIDZz4xWACnrUiBuXS2Nio="; 15 + hash = "sha256-MZS9TESITj3tzdaXYu5S2QUCW7cZuTpH1skFKeVi/sQ="; 16 16 }; 17 17 18 - cargoHash = "sha256-ZKnpOgTyUETCW0qxAjEj2E75mgHWLxmaTTfpdW+y3OY="; 18 + cargoHash = "sha256-twAIr1GVkvo4ZC7iwgKY4L1CklGVvGqd/eQf8toncDE="; 19 19 20 20 meta = { 21 21 description = "Preprocessor for mdbook to support the inclusion of Markdown alerts";
+2 -2
pkgs/by-name/mo/monkeysAudio/package.nix
··· 6 6 }: 7 7 8 8 stdenv.mkDerivation (finalAttrs: { 9 - version = "10.85"; 9 + version = "10.86"; 10 10 pname = "monkeys-audio"; 11 11 12 12 src = fetchzip { 13 13 url = "https://monkeysaudio.com/files/MAC_${builtins.concatStringsSep "" (lib.strings.splitString "." finalAttrs.version)}_SDK.zip"; 14 - hash = "sha256-072ZFJ+cmT9rXxQmG3tDbnxnbRmvTxbZ6JtOhONe5n0="; 14 + hash = "sha256-kT44DHD1XcIcijQ2LM69kvDfTfxiNYTQS/JFn0kEHgY="; 15 15 stripRoot = false; 16 16 }; 17 17
+13 -9
pkgs/by-name/n8/n8n/package.nix
··· 7 7 pnpm, 8 8 python3, 9 9 node-gyp, 10 - cacert, 11 10 xcbuild, 12 11 libkrb5, 13 12 libmongocrypt, 14 13 postgresql, 15 14 makeWrapper, 16 - nix-update-script, 17 15 }: 18 16 19 17 stdenv.mkDerivation (finalAttrs: { ··· 21 23 src = fetchFromGitHub { 22 24 owner = "n8n-io"; 23 25 repo = "n8n"; 24 - rev = "n8n@${finalAttrs.version}"; 26 + tag = "n8n@${finalAttrs.version}"; 25 27 hash = "sha256-GIA2y81nuKWe1zuZQ99oczQtQWStyT1Qh3bZ1oe8me4="; 26 28 }; 27 29 ··· 34 36 pnpm.configHook 35 37 python3 # required to build sqlite3 bindings 36 38 node-gyp # required to build sqlite3 bindings 37 - cacert # required for rustls-native-certs (dependency of turbo build tool) 38 39 makeWrapper 39 40 ] ++ lib.optional stdenv.hostPlatform.isDarwin [ xcbuild ]; 40 41 ··· 58 61 ''; 59 62 60 63 preInstall = '' 61 - echo "Removing non-deterministic files" 64 + echo "Removing non-deterministic and unnecessary files" 62 65 63 - rm -r $(find -type d -name .turbo) 66 + find -type d -name .turbo -exec rm -rf {} + 64 67 rm node_modules/.modules.yaml 65 68 rm packages/nodes-base/dist/types/nodes.json 66 69 67 - echo "Removed non-deterministic files" 70 + pnpm --ignore-scripts prune --prod 71 + find -type f \( -name "*.ts" -o -name "*.map" \) -exec rm -rf {} + 72 + rm -rf node_modules/.pnpm/{typescript*,prettier*} 73 + 74 + echo "Removed non-deterministic and unnecessary files" 68 75 ''; 69 76 70 77 installPhase = '' ··· 85 84 86 85 passthru = { 87 86 tests = nixosTests.n8n; 88 - updateScript = nix-update-script { }; 87 + updateScript = ./update.sh; 89 88 }; 90 89 90 + # this package has ~80000 files, these take too long and seem to be unnecessary 91 91 dontStrip = true; 92 + dontPatchELF = true; 93 + dontRewriteSymlinks = true; 92 94 93 95 meta = { 94 96 description = "Free and source-available fair-code licensed workflow automation tool"; ··· 100 96 Easily automate tasks across different services. 101 97 ''; 102 98 homepage = "https://n8n.io"; 103 - changelog = "https://github.com/n8n-io/n8n/releases/tag/${finalAttrs.src.rev}"; 99 + changelog = "https://github.com/n8n-io/n8n/releases/tag/n8n@${finalAttrs.version}"; 104 100 maintainers = with lib.maintainers; [ 105 101 gepbird 106 102 ];
+6
pkgs/by-name/n8/n8n/update.sh
··· 1 + #!/usr/bin/env nix-shell 2 + #!nix-shell --pure -i bash -p bash curl jq nix-update cacert git 3 + set -euo pipefail 4 + 5 + new_version="$(curl -s "https://api.github.com/repos/n8n-io/n8n/releases/latest" | jq --raw-output '.tag_name | ltrimstr("n8n@")')" 6 + nix-update n8n --version "$new_version"
+3 -3
pkgs/by-name/na/namespace-cli/package.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "namespace-cli"; 9 - version = "0.0.397"; 9 + version = "0.0.398"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "namespacelabs"; 13 13 repo = "foundation"; 14 14 rev = "v${version}"; 15 - hash = "sha256-rfJr8kcfqaKEnOzO53NxvjBKYnDOTDCX0TTtrLoCPfM="; 15 + hash = "sha256-wSRlasUxHb4ukmQRZcuLqjcIwN/vat4kWet2R8Cyxt0="; 16 16 }; 17 17 18 - vendorHash = "sha256-T4uyL9izxV747SuQfp94g0VMQo0g8MvBXL97OinYa2Q="; 18 + vendorHash = "sha256-b8er/iF7Dqq+BAulzE/tUebNeKmTMilc+a0yCAJ5E/0="; 19 19 20 20 subPackages = [ 21 21 "cmd/nsc"
+14 -12
pkgs/by-name/nv/nvitop/package.nix
··· 2 2 lib, 3 3 python3Packages, 4 4 fetchFromGitHub, 5 + versionCheckHook, 5 6 }: 6 7 7 8 python3Packages.buildPythonApplication rec { 8 9 pname = "nvitop"; 9 - version = "1.3.2"; 10 + version = "1.4.0"; 10 11 11 12 src = fetchFromGitHub { 12 13 owner = "XuehaiPan"; 13 - repo = pname; 14 - rev = "refs/tags/v${version}"; 15 - hash = "sha256-TunGtNe+lgx/hk8kNtB8yaCdbkiJ3d4JJ8NKB+6urJA="; 14 + repo = "nvitop"; 15 + tag = "v${version}"; 16 + hash = "sha256-Z0JGW7vcZFxguQqhqhpPpOvcOct7B9z8RoEFu5NsOl0="; 16 17 }; 17 18 18 19 pythonRelaxDeps = [ "nvidia-ml-py" ]; 19 20 20 - propagatedBuildInputs = with python3Packages; [ 21 + dependencies = with python3Packages; [ 21 22 cachetools 22 23 psutil 23 24 termcolor 24 25 nvidia-ml-py 25 26 ]; 26 27 27 - checkPhase = '' 28 - $out/bin/nvitop --help 29 - ''; 28 + nativeCheckInputs = [ 29 + versionCheckHook 30 + ]; 31 + versionCheckProgramArg = [ "--version" ]; 30 32 31 - meta = with lib; { 33 + meta = { 32 34 description = "Interactive NVIDIA-GPU process viewer, the one-stop solution for GPU process management"; 33 35 homepage = "https://github.com/XuehaiPan/nvitop"; 34 36 changelog = "https://github.com/XuehaiPan/nvitop/releases/tag/v${version}"; 35 - license = licenses.gpl3; 36 - maintainers = with maintainers; [ GaetanLepage ]; 37 - platforms = with platforms; linux; 37 + license = lib.licenses.gpl3; 38 + maintainers = with lib.maintainers; [ GaetanLepage ]; 39 + platforms = with lib.platforms; linux; 38 40 }; 39 41 }
+12 -7
pkgs/by-name/op/open-webui/package.nix
··· 7 7 }: 8 8 let 9 9 pname = "open-webui"; 10 - version = "0.4.8"; 10 + version = "0.5.2"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "open-webui"; 14 14 repo = "open-webui"; 15 - rev = "refs/tags/v${version}"; 16 - hash = "sha256-9N/t8hxODM6Dk/eMKS26/2Sh1lJVkq9pNkPcEtbXqb4="; 15 + tag = "v${version}"; 16 + hash = "sha256-QQSJaef/0G8elj3c3uVWq9Yh7puNhe0vZc+IVH3rDpE="; 17 17 }; 18 18 19 19 frontend = buildNpmPackage { 20 20 inherit pname version src; 21 21 22 - npmDepsHash = "sha256-ThOGBurFjndBZcdpiGugdXpv1YCwCN7s3l2JjSk/hY0="; 22 + npmDepsHash = "sha256-SUrI5nKtW/NoqT2BNRjBM9Aw9KIZL/T6SEtEbazhvPQ="; 23 23 24 24 # Disabling `pyodide:fetch` as it downloads packages during `buildPhase` 25 25 # Until this is solved, running python packages from the browser will not work. ··· 81 81 docx2txt 82 82 duckduckgo-search 83 83 einops 84 - emoji # This dependency is missing in upstream's pyproject.toml 85 84 extract-msg 86 85 fake-useragent 87 86 fastapi ··· 89 90 flask-cors 90 91 fpdf2 91 92 ftfy 93 + google-api-python-client 94 + google-auth-httplib2 95 + google-auth-oauthlib 92 96 google-generativeai 93 97 googleapis-common-protos 94 98 iso-639 ··· 158 156 }; 159 157 160 158 meta = { 161 - changelog = "https://github.com/open-webui/open-webui/blob/${src.rev}/CHANGELOG.md"; 159 + changelog = "https://github.com/open-webui/open-webui/blob/${src.tag}/CHANGELOG.md"; 162 160 description = "Comprehensive suite for LLMs with a user-friendly WebUI"; 163 161 homepage = "https://github.com/open-webui/open-webui"; 164 162 license = lib.licenses.mit; 165 163 mainProgram = "open-webui"; 166 - maintainers = with lib.maintainers; [ shivaraj-bh ]; 164 + maintainers = with lib.maintainers; [ 165 + drupol 166 + shivaraj-bh 167 + ]; 167 168 }; 168 169 }
+3 -3
pkgs/by-name/or/ord/package.nix
··· 10 10 11 11 rustPlatform.buildRustPackage rec { 12 12 pname = "ord"; 13 - version = "0.22.0"; 13 + version = "0.22.1"; 14 14 15 15 src = fetchFromGitHub { 16 16 owner = "ordinals"; 17 17 repo = "ord"; 18 18 rev = version; 19 - hash = "sha256-E2u9qXcenpnoivAOiRG2CoRO3zWzdqswRYR2p/Fzcaw="; 19 + hash = "sha256-95da/aoBhrQ/GaM4fojFufs6+OI2KLF6SGsSw6qtYUc="; 20 20 }; 21 21 22 - cargoHash = "sha256-+qEvXQkg4TtdzVpGEF0ZzROxwgPGZ8qerHsCIhGcMUo="; 22 + cargoHash = "sha256-yATfAPBA96ozqhdekklFCgHr9Oj2YIKws/m4hc70i6E="; 23 23 24 24 nativeBuildInputs = [ 25 25 pkg-config
+2 -2
pkgs/by-name/pl/plemoljp-nf/package.nix
··· 6 6 7 7 stdenvNoCC.mkDerivation rec { 8 8 pname = "plemoljp-nf"; 9 - version = "1.7.1"; 9 + version = "2.0.0"; 10 10 11 11 src = fetchzip { 12 12 url = "https://github.com/yuru7/PlemolJP/releases/download/v${version}/PlemolJP_NF_v${version}.zip"; 13 - hash = "sha256-nxGvaHLs65z4CSy/smy+koQyuYcDXJKjPZt5NusUN3E="; 13 + hash = "sha256-+RFUQv/OjHFfYdodcGpnGJQ6r99q2gHKNFynFm4C8Lo="; 14 14 }; 15 15 16 16 installPhase = ''
+2 -2
pkgs/by-name/pl/plemoljp/package.nix
··· 6 6 7 7 stdenvNoCC.mkDerivation rec { 8 8 pname = "plemoljp"; 9 - version = "1.7.1"; 9 + version = "2.0.0"; 10 10 11 11 src = fetchzip { 12 12 url = "https://github.com/yuru7/PlemolJP/releases/download/v${version}/PlemolJP_v${version}.zip"; 13 - hash = "sha256-YH1c/2jk8QZNyPvzRZjxNHyNeci9tjn+oOW8xLd8kjk="; 13 + hash = "sha256-6u7JfU5fYGGKcvLocKaT5rRun/CYhzk80rmlvP+utuM="; 14 14 }; 15 15 16 16 installPhase = ''
+11 -8
pkgs/by-name/ra/ranger/package.nix
··· 12 12 neoVimSupport ? true, 13 13 improvedEncodingDetection ? true, 14 14 rightToLeftTextSupport ? false, 15 + gitUpdater, 15 16 }: 16 17 17 18 python3Packages.buildPythonApplication rec { 18 19 pname = "ranger"; 19 - version = "1.9.3-unstable-2023-08-23"; 20 + version = "1.9.4"; 20 21 21 22 src = fetchFromGitHub { 22 23 owner = "ranger"; 23 24 repo = "ranger"; 24 - rev = "38bb8901004b75a407ffee4b9e176bc0a436cb15"; 25 - hash = "sha256-NpsrABk95xHNvhlRjKFh326IW83mYj1cmK3aE9JQSRo="; 25 + tag = "v${version}"; 26 + hash = "sha256-9ehxMXwQj7oVhlotTc3mzCKCkoMSbB9cliPg/NMEoWM="; 26 27 }; 27 28 28 29 LC_ALL = "en_US.UTF-8"; ··· 68 67 --replace "set preview_images false" "set preview_images true" 69 68 ''; 70 69 71 - meta = with lib; { 70 + passthru.updateScript = gitUpdater { rev-prefix = "v"; }; 71 + 72 + meta = { 72 73 description = "File manager with minimalistic curses interface"; 73 74 homepage = "https://ranger.github.io/"; 74 - license = licenses.gpl3Only; 75 - platforms = platforms.unix; 76 - maintainers = with maintainers; [ 75 + license = lib.licenses.gpl3Only; 76 + platforms = lib.platforms.unix; 77 + maintainers = with lib.maintainers; [ 77 78 toonn 78 - magnetophon 79 + lucasew 79 80 ]; 80 81 mainProgram = "ranger"; 81 82 };
+31 -9
pkgs/by-name/ra/raycast/package.nix
··· 3 3 stdenvNoCC, 4 4 fetchurl, 5 5 writeShellApplication, 6 + cacert, 6 7 curl, 7 8 jq, 8 - common-updater-scripts, 9 + openssl, 9 10 undmg, 10 11 }: 11 12 12 13 stdenvNoCC.mkDerivation (finalAttrs: { 13 14 pname = "raycast"; 14 - version = "1.88.3"; 15 + version = "1.88.4"; 15 16 16 - src = fetchurl { 17 - name = "Raycast.dmg"; 18 - url = "https://releases.raycast.com/releases/${finalAttrs.version}/download?build=universal"; 19 - hash = "sha256-MOJlEUQHLDw8YeQC9sG5QLSO8qhgcWG8HtyRZCPHb+M="; 20 - }; 17 + src = 18 + { 19 + aarch64-darwin = fetchurl { 20 + name = "Raycast.dmg"; 21 + url = "https://releases.raycast.com/releases/${finalAttrs.version}/download?build=arm"; 22 + hash = "sha256-q3pX/mOl/u9KMcAfvXm4giYKjnTB903N1ibubvaO9Uw="; 23 + }; 24 + x86_64-darwin = fetchurl { 25 + name = "Raycast.dmg"; 26 + url = "https://releases.raycast.com/releases/${finalAttrs.version}/download?build=x86_64"; 27 + hash = "sha256-l61AVKx+aYmgnVK8d+by2pKiu1cIAueLipRjOzCvib4="; 28 + }; 29 + } 30 + .${stdenvNoCC.system} or (throw "raycast: ${stdenvNoCC.system} is unsupported."); 21 31 22 32 dontPatch = true; 23 33 dontConfigure = true; ··· 50 40 passthru.updateScript = lib.getExe (writeShellApplication { 51 41 name = "raycast-update-script"; 52 42 runtimeInputs = [ 43 + cacert 53 44 curl 54 45 jq 55 - common-updater-scripts 46 + openssl 56 47 ]; 57 48 text = '' 58 49 url=$(curl --silent "https://releases.raycast.com/releases/latest?build=universal") 59 50 version=$(echo "$url" | jq -r '.version') 60 - update-source-version raycast "$version" --file=./pkgs/by-name/ra/raycast/package.nix 51 + 52 + arm_url="https://releases.raycast.com/releases/$version/download?build=arm" 53 + x86_url="https://releases.raycast.com/releases/$version/download?build=x86_64" 54 + 55 + arm_hash="sha256-$(curl -sL "$arm_url" | openssl dgst -sha256 -binary | openssl base64)" 56 + x86_hash="sha256-$(curl -sL "$x86_url" | openssl dgst -sha256 -binary | openssl base64)" 57 + 58 + sed -i -E \ 59 + -e 's|(version = )"[0-9]+\.[0-9]+\.[0-9]+";|\1"'"$version"'";|' \ 60 + -e '/aarch64-darwin = fetchurl/,/};/ s|(hash = )"sha256-[A-Za-z0-9+/]+=";|\1"'"$arm_hash"'";|' \ 61 + -e '/x86_64-darwin = fetchurl/,/};/ s|(hash = )"sha256-[A-Za-z0-9+/]+=";|\1"'"$x86_hash"'";|' \ 62 + ./pkgs/by-name/ra/raycast/package.nix 61 63 ''; 62 64 }); 63 65
+3 -3
pkgs/by-name/re/release-plz/package.nix
··· 11 11 12 12 rustPlatform.buildRustPackage rec { 13 13 pname = "release-plz"; 14 - version = "0.3.111"; 14 + version = "0.3.112"; 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "MarcoIeni"; 18 18 repo = "release-plz"; 19 19 rev = "release-plz-v${version}"; 20 - hash = "sha256-k9QuYskc3lhqfjOY6vhCuzHq3+l5q3EfOEbrWz4yb4M="; 20 + hash = "sha256-qoaFZTKtQSmFuCJ8c9ShhnzVHrFFKVOdEn5rXVN2TL0="; 21 21 }; 22 22 23 - cargoHash = "sha256-l1fltHsqV0zS3EdAYLO9uTTi6iMu+ZD8zGwW9/uULoQ="; 23 + cargoHash = "sha256-sY732QvV9hVwPdi3llUol/DP017/mlCCivRF9by8HH0="; 24 24 25 25 nativeBuildInputs = [ 26 26 installShellFiles
+4 -4
pkgs/by-name/rp/rpcs3/package.nix
··· 34 34 35 35 let 36 36 # Keep these separate so the update script can regex them 37 - rpcs3GitVersion = "17206-9d4ff13c2"; 38 - rpcs3Version = "0.0.34-17206-9d4ff13c2"; 39 - rpcs3Revision = "9d4ff13c2bbcb85d8fa63b479d0f4c28f9472147"; 40 - rpcs3Hash = "sha256-FZItMeClPxwzwLVH5YPLV7NQZ5kFn6SjdduMI9P2kWQ="; 37 + rpcs3GitVersion = "17265-418a99a62"; 38 + rpcs3Version = "0.0.34-17265-418a99a62"; 39 + rpcs3Revision = "418a99a62b814b7f831072610c9e7d7b5e90610c"; 40 + rpcs3Hash = "sha256-NN7gEtt/18JCAHFZNQ8OqpATWx50qXda2Kk7NVq5T9Y="; 41 41 42 42 inherit (qt6Packages) 43 43 qtbase
+3 -3
pkgs/by-name/ru/rust-analyzer-unwrapped/package.nix
··· 12 12 13 13 rustPlatform.buildRustPackage rec { 14 14 pname = "rust-analyzer-unwrapped"; 15 - version = "2024-12-16"; 16 - cargoHash = "sha256-RUFhNJTLP1xOr+qpRVYZipk9rZ/c9kqJE9wuqmwFFPE="; 15 + version = "2024-12-23"; 16 + cargoHash = "sha256-9fPKd94erhUIBIeg8gDaCvJmKHwwNuLUMiEwCMdVeFE="; 17 17 18 18 src = fetchFromGitHub { 19 19 owner = "rust-lang"; 20 20 repo = "rust-analyzer"; 21 21 rev = version; 22 - hash = "sha256-7DBZsPlP/9ZpYk+k6dLFG6SEH848HuGaY7ri/gdye4M="; 22 + hash = "sha256-NlsVD/fI32wsHFua9Xvc7IFHCUpQIOs6D6RS/3AhMT8="; 23 23 }; 24 24 25 25 cargoBuildFlags = [
+6 -1
pkgs/by-name/ry/ryzenadj/package.nix
··· 17 17 }; 18 18 19 19 nativeBuildInputs = [ 20 - pciutils 21 20 cmake 22 21 ]; 22 + 23 + buildInputs = [ 24 + pciutils 25 + ]; 26 + 27 + strictDeps = true; 23 28 24 29 installPhase = '' 25 30 install -D libryzenadj.so $out/lib/libryzenadj.so
+3 -3
pkgs/by-name/sn/snoop/package.nix
··· 20 20 21 21 stdenv.mkDerivation (finalAttrs: { 22 22 pname = "snoop"; 23 - version = "0.4.1"; 23 + version = "0.4.2"; 24 24 25 25 src = fetchFromGitLab { 26 26 domain = "gitlab.gnome.org"; 27 27 owner = "philippun1"; 28 28 repo = "snoop"; 29 - rev = "refs/tags/${finalAttrs.version}"; 30 - hash = "sha256-v4+A0q04+THBJ+U5izICVhofXPEC3db73MzYonXcDvU="; 29 + tag = finalAttrs.version; 30 + hash = "sha256-M+wV6WYPtTbKXgBCOD/qN3LYAbpucwSAuKZQBVUjZo8="; 31 31 }; 32 32 33 33 patchPhase = ''
+2 -2
pkgs/by-name/st/stats/package.nix
··· 8 8 9 9 stdenvNoCC.mkDerivation (finalAttrs: { 10 10 pname = "stats"; 11 - version = "2.11.21"; 11 + version = "2.11.22"; 12 12 13 13 src = fetchurl { 14 14 url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg"; 15 - hash = "sha256-EqgWHxiSpMpzxQkogfMX8wTlzIhlfcUIlTARlihjwgw="; 15 + hash = "sha256-b8Yj8YRoiE37cj4NDDdreoPH5BokBBTReFihUnHQ1wU="; 16 16 }; 17 17 18 18 sourceRoot = ".";
+2 -2
pkgs/by-name/st/stevenblack-blocklist/package.nix
··· 6 6 }: 7 7 stdenvNoCC.mkDerivation (finalAttrs: { 8 8 pname = "stevenblack-blocklist"; 9 - version = "3.15.0"; 9 + version = "3.15.5"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "StevenBlack"; 13 13 repo = "hosts"; 14 14 rev = "refs/tags/${finalAttrs.version}"; 15 - hash = "sha256-CMafExAcNPDOjFd518MHK1rWYhapP6eBIXKk6YAjJqc="; 15 + hash = "sha256-bBQu5n/rMT8bEsBMmv3CtGUZ/ybCTuDw5E2GYZI5woU="; 16 16 }; 17 17 18 18 outputs = [
+3 -3
pkgs/by-name/su/subxt/package.nix
··· 8 8 9 9 rustPlatform.buildRustPackage rec { 10 10 pname = "subxt"; 11 - version = "0.37.1"; 11 + version = "0.38.0"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "paritytech"; 15 15 repo = "subxt"; 16 16 rev = "v${version}"; 17 - hash = "sha256-lCDjqvdjiQktyFAp3KuFHehwapd3BiLxMSLsNK+wDDo="; 17 + hash = "sha256-mUW1foT3JkpsnieJutL+GZZXiTcRUklnjfoaWcH8ccE="; 18 18 }; 19 19 20 - cargoHash = "sha256-RmeV2EYHGbMMAeerQkHcYav+RIVY68Tj66zjcFgjUfQ="; 20 + cargoHash = "sha256-+psdikles6ICg2eSBGxJoiG5EZG8voR2fs6PGnOWvDc="; 21 21 22 22 # Only build the command line client 23 23 cargoBuildFlags = [ "--bin" "subxt" ];
+84
pkgs/by-name/su/supergee/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + meson, 6 + ninja, 7 + vala, 8 + gtk3, 9 + beets, 10 + libgee, 11 + glib, 12 + libxml2, 13 + unstableGitUpdater, 14 + pkg-config, 15 + cmake, 16 + }: 17 + 18 + stdenv.mkDerivation (finalAttrs: { 19 + pname = "supergee"; 20 + version = "0-unstable-2023-11-21"; 21 + 22 + src = fetchFromGitHub { 23 + owner = "DannyGB"; 24 + repo = "SuperGee"; 25 + rev = "c1232f6a8a9d4161644d728df793ffd3cb5cc4af"; 26 + hash = "sha256-lv7C4ku3MdiHxg1LfmnzT5Sx3DTtvP9g3XPOQlNBDkg="; 27 + }; 28 + 29 + nativeBuildInputs = [ 30 + meson 31 + ninja 32 + libxml2.bin 33 + vala 34 + pkg-config 35 + cmake 36 + glib.bin 37 + ]; 38 + 39 + buildInputs = [ 40 + gtk3 41 + libgee 42 + glib 43 + ]; 44 + 45 + postPatch = '' 46 + substituteInPlace BeetService.vala \ 47 + --replace-fail '"beet"' '"${lib.getExe beets}"' 48 + ''; 49 + 50 + preConfigure = '' 51 + pushd .. 52 + find -exec chmod +w {} \; 53 + mkdir build 54 + cd build 55 + mkdir SuperG@exe 56 + glib-compile-resources --sourcedir ../resources --generate-source --target SuperG@exe/resources.c ../resources/superg.gresource.xml 57 + popd 58 + ''; 59 + 60 + installPhase = '' 61 + runHook preInstall 62 + 63 + install -Dm755 SuperG $out/bin/SuperG 64 + 65 + runHook postInstall 66 + ''; 67 + 68 + sourceRoot = "${finalAttrs.src.name}/src"; 69 + 70 + dontUseCmakeConfigure = true; 71 + 72 + passthru = { 73 + updateScript = unstableGitUpdater { hardcodeZeroVersion = true; }; 74 + }; 75 + 76 + meta = { 77 + description = "Vala based UI for beets"; 78 + homepage = "https://github.com/DannyGB/SuperGee"; 79 + license = lib.licenses.gpl3Only; 80 + platforms = lib.platforms.linux; 81 + mainProgram = "SuperG"; 82 + maintainers = with lib.maintainers; [ bot-wxt1221 ]; 83 + }; 84 + })
+2 -2
pkgs/by-name/ta/tabby-agent/package.nix
··· 9 9 }: 10 10 stdenv.mkDerivation (finalAttrs: { 11 11 pname = "tabby-agent"; 12 - version = "0.21.2"; 12 + version = "0.22.0"; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "TabbyML"; 16 16 repo = "tabby"; 17 17 rev = "refs/tags/v${finalAttrs.version}"; 18 - hash = "sha256-1mvONz1Pl79qIro8UHvE3ReSHqNxJJOUAKh/lXUeQKs="; 18 + hash = "sha256-TP0KEGH8w9kdTj5yxCsAn4LRS1gj3Dnz96GA8DDSJJU="; 19 19 }; 20 20 21 21 nativeBuildInputs = [
+3 -3
pkgs/by-name/ta/talosctl/package.nix
··· 8 8 9 9 buildGoModule rec { 10 10 pname = "talosctl"; 11 - version = "1.9.0"; 11 + version = "1.9.1"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "siderolabs"; 15 15 repo = "talos"; 16 16 tag = "v${version}"; 17 - hash = "sha256-j/GqAUP3514ROf64+ouvCg//9QuGoVDgxkNFqi4r+WE="; 17 + hash = "sha256-Qvt9/okT37J3ge/lb17OX4aaiXbSFU1j7drdiJDqFnA="; 18 18 }; 19 19 20 - vendorHash = "sha256-XvOMNyiHnemqnbOzWmzZXkr3+/ZgJDg8vjCtWFkCtLs="; 20 + vendorHash = "sha256-vZFXqU9tgnL8odBpOcvRig1KKVH20CM0ze0+pypaRKE="; 21 21 22 22 ldflags = [ 23 23 "-s"
+3 -3
pkgs/by-name/te/terramate/package.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "terramate"; 9 - version = "0.11.4"; 9 + version = "0.11.5"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "terramate-io"; 13 13 repo = "terramate"; 14 14 rev = "v${version}"; 15 - hash = "sha256-RZBafDaSGW01EdvDg8RUynrSO84/pkh3OcVXlSsZ+ao="; 15 + hash = "sha256-xEV72bswFW7ie3FWa07vmffIXMIi0A5ZSpg6wRS7o5g="; 16 16 }; 17 17 18 - vendorHash = "sha256-PwMxmls7sL9RhgvGKKDwxAeObk7HVBtYLOsIYt90dVU="; 18 + vendorHash = "sha256-6nnUyNOdG1QmaHeRXRWvyjLhYPXA3Xs9062ZkF82Kzo="; 19 19 20 20 # required for version info 21 21 nativeBuildInputs = [ git ];
+3 -3
pkgs/by-name/tp/tpnote/package.nix
··· 14 14 15 15 rustPlatform.buildRustPackage rec { 16 16 pname = "tpnote"; 17 - version = "1.24.11"; 17 + version = "1.24.12"; 18 18 19 19 src = fetchFromGitHub { 20 20 owner = "getreu"; 21 21 repo = "tp-note"; 22 22 rev = "v${version}"; 23 - hash = "sha256-k3Vz57YSfMppDaXocsCABfm/d0b51udUS2nI2mX9+b8="; 23 + hash = "sha256-1Y7Sw9wiUno4A6i0lYDJpqfIT/HV5rxXfuJnJ+FJTBU="; 24 24 }; 25 25 26 - cargoHash = "sha256-S4gUw628hBWDiCK199dVQMe10Q7sztt7YgwtE0X5c80="; 26 + cargoHash = "sha256-ZOE2D8GXrJ7BQK7iMoUnqyrj4zc+ODJxZ1jgH7xYMI0="; 27 27 28 28 nativeBuildInputs = [ 29 29 cmake
+2 -2
pkgs/by-name/tu/tuxguitar/package.nix
··· 16 16 }: 17 17 18 18 stdenv.mkDerivation (finalAttrs: { 19 - version = "1.6.5"; 19 + version = "1.6.6"; 20 20 pname = "tuxguitar"; 21 21 22 22 src = fetchurl { 23 23 url = "https://github.com/helge17/tuxguitar/releases/download/${finalAttrs.version}/tuxguitar-${finalAttrs.version}-linux-swt-amd64.tar.gz"; 24 - hash = "sha256-wxiLqNc20/AROZZWghzbrUz/VK++fEIKyP5ipomy1Po="; 24 + hash = "sha256-kfPk+IIg5Q4Fc9HMS0kxxCarlbJjVKluIvz8KpDjJLM="; 25 25 }; 26 26 27 27 nativeBuildInputs = [
+3 -3
pkgs/by-name/ty/typos-lsp/package.nix
··· 6 6 pname = "typos-lsp"; 7 7 # Please update the corresponding VSCode extension too. 8 8 # See pkgs/applications/editors/vscode/extensions/tekumara.typos-vscode/default.nix 9 - version = "0.1.31"; 9 + version = "0.1.32"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "tekumara"; 13 13 repo = "typos-lsp"; 14 14 rev = "refs/tags/v${version}"; 15 - hash = "sha256-rr6ZleJa6ECzFNHtqh08YyQAbHvRtYdjzh1uFPPZ3sU="; 15 + hash = "sha256-ezRyitmdcOki/thQGJ11+UYMIG2fYJ9HMcvD++s/ewM="; 16 16 }; 17 17 18 - cargoHash = "sha256-PgvD2RWGXa7A9NNX0oYQtQ3Bq9yAe+XyRiORVsICJWg="; 18 + cargoHash = "sha256-J1XbhCP2EMFIHs2U9kTtNNdGF4UnZWNgIO7L3YlYkqo="; 19 19 20 20 # fix for compilation on aarch64 21 21 # see https://github.com/NixOS/nixpkgs/issues/145726
+3 -3
pkgs/by-name/ur/url-parser/package.nix
··· 6 6 7 7 buildGoModule rec { 8 8 pname = "url-parser"; 9 - version = "2.1.1"; 9 + version = "2.1.2"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "thegeeklab"; 13 13 repo = "url-parser"; 14 14 rev = "refs/tags/v${version}"; 15 - hash = "sha256-XXTa/FtvxXU34avQA+ykJjBRndMaOYTJDlJLbqzFqvM="; 15 + hash = "sha256-IGA+T0Qv3l32UmWciCH2J5G+YGWu0plqSG7yfEtuswM="; 16 16 }; 17 17 18 - vendorHash = "sha256-kXVNJgaA2Oon0+fTxk4WtN3P4PlaQszbaXEvSyS2lWU="; 18 + vendorHash = "sha256-Znt8C7B+tSZnzq+3DaycEu0VtkltKhODG9sB5aO99rc="; 19 19 20 20 ldflags = [ 21 21 "-s"
+99
pkgs/by-name/us/usbkvm/package.nix
··· 1 + { 2 + buildGoModule, 3 + fetchzip, 4 + gst_all_1, 5 + gtkmm3, 6 + hidapi, 7 + lib, 8 + makeWrapper, 9 + meson, 10 + ninja, 11 + pkg-config, 12 + python3, 13 + stdenv, 14 + wrapGAppsHook3, 15 + }: 16 + 17 + let 18 + version = "0.1.0"; 19 + 20 + src = fetchzip { 21 + url = "https://github.com/carrotIndustries/usbkvm/releases/download/v${version}/usbkvm-v${version}.tar.gz"; 22 + sha256 = "sha256-OuZ7+IjsvK7/PaiTRwssaQFJDFWJ8HX+kqV13CUyTZA="; 23 + }; 24 + 25 + ms-tools-lib = buildGoModule { 26 + pname = "usbkvm-ms-tools-lib"; 27 + inherit version; 28 + 29 + inherit src; 30 + sourceRoot = "source/ms-tools"; 31 + vendorHash = "sha256-imHpsos7RDpATSZFWRxug67F7VgjRTT1SkLt7cWk6tU="; 32 + 33 + buildInputs = [ 34 + hidapi 35 + ]; 36 + 37 + buildPhase = '' 38 + mkdir -p $out/ 39 + go build -C lib/ -o $out/ -buildmode=c-archive mslib.go 40 + ''; 41 + }; 42 + in 43 + stdenv.mkDerivation { 44 + pname = "usbkvm"; 45 + inherit version src; 46 + 47 + nativeBuildInputs = [ 48 + pkg-config 49 + python3 50 + meson 51 + ninja 52 + makeWrapper 53 + wrapGAppsHook3 54 + ]; 55 + 56 + buildInputs = [ 57 + gst_all_1.gstreamer 58 + gtkmm3 59 + hidapi 60 + ]; 61 + 62 + # The package includes instructions to build the "mslib.{a,h}" files using a 63 + # Go compiler, but that doesn't work in the Nix sandbox. We patch out this 64 + # build step to instead copy those files from the Nix store: 65 + patches = [ 66 + ./precompiled-mslib.patch 67 + ]; 68 + postPatch = '' 69 + substituteInPlace meson.build \ 70 + --replace-fail "@MSLIB_A_PRECOMPILED@" "${ms-tools-lib}/mslib.a" \ 71 + --replace-fail "@MSLIB_H_PRECOMPILED@" "${ms-tools-lib}/mslib.h" 72 + ''; 73 + 74 + postFixup = 75 + let 76 + GST_PLUGIN_PATH = lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" [ 77 + gst_all_1.gst-plugins-base 78 + (gst_all_1.gst-plugins-good.override { gtkSupport = true; }) 79 + ]; 80 + in 81 + lib.optionalString stdenv.hostPlatform.isLinux '' 82 + wrapProgram $out/bin/usbkvm \ 83 + --prefix GST_PLUGIN_PATH : "${GST_PLUGIN_PATH}" 84 + ''; 85 + 86 + postInstall = '' 87 + mkdir -p $out/lib/udev/rules.d/ 88 + cp ../70-usbkvm.rules $out/lib/udev/rules.d/ 89 + ''; 90 + 91 + meta = { 92 + homepage = "https://github.com/carrotIndustries/usbkvm"; 93 + description = "An open-source USB KVM (Keyboard, Video and Mouse) adapter"; 94 + changelog = "https://github.com/carrotIndustries/usbkvm/releases/tag/v${version}"; 95 + license = lib.licenses.gpl3; 96 + maintainers = with lib.maintainers; [ lschuermann ]; 97 + mainProgram = "usbkvm"; 98 + }; 99 + }
+13
pkgs/by-name/us/usbkvm/precompiled-mslib.patch
··· 1 + diff --git a/meson.build b/meson.build 2 + index 6e60b0b..b25da9d 100644 3 + --- a/meson.build 4 + +++ b/meson.build 5 + @@ -125,7 +125,7 @@ mslib = custom_target( 6 + 'mslib', 7 + output: ['mslib.a', 'mslib.h'], 8 + input: 'ms-tools/lib/mslib.go', 9 + - command: ['go', 'build', '-C', join_paths(meson.current_source_dir(), 'ms-tools/lib'), '-o', join_paths(meson.current_build_dir(), '@OUTPUT0@'), '-buildmode=c-archive', 'mslib.go'] 10 + + command: ['cp', '@MSLIB_A_PRECOMPILED@', '@MSLIB_H_PRECOMPILED@', join_paths(meson.current_build_dir(), '@OUTDIR@')] 11 + 12 + ) 13 +
+45
pkgs/by-name/ut/utpm/package.nix
··· 1 + { 2 + lib, 3 + fetchFromGitHub, 4 + rustPlatform, 5 + openssl, 6 + pkg-config, 7 + }: 8 + rustPlatform.buildRustPackage rec { 9 + pname = "utpm"; 10 + version = "0-unstable-2024-12-17"; 11 + 12 + useFetchCargoVendor = true; 13 + cargoHash = "sha256-fqGxor2PgsQemnPNoZkgNUNc7yRg2eqHTLzJAVpt6+8="; 14 + 15 + src = fetchFromGitHub { 16 + owner = "Thumuss"; 17 + repo = pname; 18 + rev = "6c2cabc8e7e696ea129f55aa7732a6be63bc2319"; 19 + hash = "sha256-uuET0BG2kBFEEWSSZ35h6+tnqTTjEHOP50GR3IkL+CE="; 20 + }; 21 + 22 + env.OPENSSL_NO_VENDOR = 1; 23 + 24 + buildInputs = [ 25 + openssl 26 + ]; 27 + nativeBuildInputs = [ 28 + pkg-config 29 + ]; 30 + 31 + doCheck = false; # no tests 32 + 33 + meta = { 34 + description = "Package manager for typst"; 35 + longDescription = '' 36 + UTPM is a package manager for local and remote packages. Create quickly 37 + new projects and templates from a singular tool, and then publish it directly 38 + to Typst! 39 + ''; 40 + homepage = "https://github.com/Thumuss/utpm"; 41 + license = lib.licenses.mit; 42 + mainProgram = "utpm"; 43 + maintainers = with lib.maintainers; [ louis-thevenet ]; 44 + }; 45 + }
+2 -2
pkgs/by-name/vi/video-downloader/package.nix
··· 18 18 19 19 python3Packages.buildPythonApplication rec { 20 20 pname = "video-downloader"; 21 - version = "0.12.20"; 21 + version = "0.12.21"; 22 22 pyproject = false; # Built with meson 23 23 24 24 src = fetchFromGitHub { 25 25 owner = "Unrud"; 26 26 repo = "video-downloader"; 27 27 tag = "v${version}"; 28 - hash = "sha256-UaSEcqD4hYRacQfLHgkXgO+/lIV5GxMX9NDOTLhTw+o="; 28 + hash = "sha256-rlhb2FaNkUivrN08kERXyoEzRIMdByr5foiQJ80OlT8="; 29 29 }; 30 30 31 31 propagatedBuildInputs = with python3Packages; [
+2 -2
pkgs/by-name/wa/waycheck/package.nix
··· 14 14 15 15 stdenv.mkDerivation (finalAttrs: { 16 16 pname = "waycheck"; 17 - version = "1.4.0"; 17 + version = "1.5.0"; 18 18 19 19 src = fetchFromGitLab { 20 20 domain = "gitlab.freedesktop.org"; 21 21 owner = "serebit"; 22 22 repo = "waycheck"; 23 23 rev = "v${finalAttrs.version}"; 24 - hash = "sha256-wawz7QCzpeQgdxwFQaZ/yV//AepEE+FLNG7ho/lHtFE="; 24 + hash = "sha256-uicwbAIEQh457eYerpC0C4adjRNtmJMsOg+xe5KaIRg="; 25 25 }; 26 26 27 27 nativeBuildInputs = [
+4 -4
pkgs/by-name/wa/wayfreeze/package.nix
··· 8 8 9 9 rustPlatform.buildRustPackage { 10 10 pname = "wayfreeze"; 11 - version = "0-unstable-2024-09-20"; 11 + version = "0-unstable-2024-12-26"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "Jappie3"; 15 15 repo = "wayfreeze"; 16 - rev = "dcbe2690ce41a286ef1eed54747bac47cee6dc2c"; 17 - hash = "sha256-XlZSVN/kTSA5X/kTpD/Hr5YBXdfh8gJPq5Da4tL0Gpk="; 16 + rev = "5f7b7f50b69962b41a685c82fc9e82370d02275a"; 17 + hash = "sha256-ARnA0R5wZqHDIY+0le0F9okpJS4OI9XpLjN3vsmqUkY="; 18 18 }; 19 19 20 20 passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; 21 21 22 - cargoHash = "sha256-DOG/IMtHYjdzfPVyFDN20+VB4oEzdSle28F07DydETc="; 22 + cargoHash = "sha256-khbayCb0M3vOx00a7M0tOTQ+AKumioCBtoJs2/Ca0+g="; 23 23 24 24 buildInputs = [ 25 25 libxkbcommon
+3 -3
pkgs/by-name/we/webdav/package.nix
··· 2 2 3 3 buildGo123Module rec { 4 4 pname = "webdav"; 5 - version = "5.4.4"; 5 + version = "5.7.0"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "hacdias"; 9 9 repo = "webdav"; 10 10 rev = "v${version}"; 11 - sha256 = "sha256-8T/CRIVB4jW9kJ26om6fcm/khfzqdYCWbhJIIRZlMC0="; 11 + sha256 = "sha256-vQLYg7qqNO3b/93fO6/zydsakfvyfYSsCUGwNPF6PXY="; 12 12 }; 13 13 14 - vendorHash = "sha256-f/Og0FkuaeUJ4bjqeUXVacIWnp6uiod7s146iKDSMgU="; 14 + vendorHash = "sha256-x5CUy46c4SunzMw/v2DWpdahuXFZnJdGInQ0lSho/es="; 15 15 16 16 __darwinAllowLocalNetworking = true; 17 17
-1
pkgs/by-name/xc/xcaddy/package.nix
··· 37 37 license = licenses.asl20; 38 38 maintainers = with maintainers; [ 39 39 tjni 40 - emilylange 41 40 ]; 42 41 }; 43 42 }
+3 -1
pkgs/by-name/xc/xcb-imdkit/package.nix
··· 21 21 hash = "sha256-QfuetGPY6u4OhFiE5/CoVEpdODWnd1PHWBtM3ymsZ98="; 22 22 }; 23 23 24 + strictDeps = true; 25 + 24 26 nativeBuildInputs = [ 25 27 cmake 26 - extra-cmake-modules 27 28 xorgproto 28 29 uthash 29 30 ]; 30 31 31 32 buildInputs = [ 33 + extra-cmake-modules 32 34 xcbutil 33 35 xcbutilkeysyms 34 36 ];
+8 -12
pkgs/by-name/xh/xh/package.nix
··· 6 6 pkg-config, 7 7 withNativeTls ? true, 8 8 stdenv, 9 - darwin, 10 9 openssl, 11 10 }: 12 11 ··· 29 30 pkg-config 30 31 ]; 31 32 32 - buildInputs = lib.optionals withNativeTls ( 33 - if stdenv.hostPlatform.isDarwin then 34 - [ darwin.apple_sdk.frameworks.SystemConfiguration ] 35 - else 36 - [ openssl ] 37 - ); 33 + buildInputs = lib.optionals (withNativeTls && !stdenv.hostPlatform.isDarwin) [ openssl ]; 38 34 39 - # Get openssl-sys to use pkg-config 40 - OPENSSL_NO_VENDOR = 1; 35 + env = { 36 + # Get openssl-sys to use pkg-config 37 + OPENSSL_NO_VENDOR = 1; 38 + }; 41 39 42 40 postInstall = '' 43 41 installShellCompletion \ ··· 58 62 $out/bin/xhs --help > /dev/null 59 63 ''; 60 64 61 - meta = with lib; { 65 + meta = { 62 66 description = "Friendly and fast tool for sending HTTP requests"; 63 67 homepage = "https://github.com/ducaale/xh"; 64 68 changelog = "https://github.com/ducaale/xh/blob/v${version}/CHANGELOG.md"; 65 - license = licenses.mit; 66 - maintainers = with maintainers; [ 69 + license = lib.licenses.mit; 70 + maintainers = with lib.maintainers; [ 67 71 figsoda 68 72 aaronjheng 69 73 ];
+9 -9
pkgs/data/fonts/hackgen/default.nix
··· 4 4 fetchzip, 5 5 }: 6 6 7 - stdenvNoCC.mkDerivation rec { 7 + stdenvNoCC.mkDerivation (finalAttrs: { 8 8 pname = "hackgen-font"; 9 - version = "2.9.1"; 9 + version = "2.10.0"; 10 10 11 11 src = fetchzip { 12 - url = "https://github.com/yuru7/HackGen/releases/download/v${version}/HackGen_v${version}.zip"; 13 - hash = "sha256-PkCaidfPcUBGjPu36Jza175jCu6WJ06YhVFDENzd+Z4="; 12 + url = "https://github.com/yuru7/HackGen/releases/download/v${finalAttrs.version}/HackGen_v${finalAttrs.version}.zip"; 13 + hash = "sha256-cIFrYfjPLspXYfaiITmlIMes6dP9fwjJ59wD9FLO0OU="; 14 14 }; 15 15 16 16 installPhase = '' ··· 21 21 runHook postInstall 22 22 ''; 23 23 24 - meta = with lib; { 24 + meta = { 25 25 description = "Composite font of Hack and GenJyuu-Goghic"; 26 26 homepage = "https://github.com/yuru7/HackGen"; 27 - license = licenses.ofl; 28 - platforms = platforms.all; 29 - maintainers = with maintainers; [ natsukium ]; 27 + license = lib.licenses.ofl; 28 + platforms = lib.platforms.all; 29 + maintainers = with lib.maintainers; [ natsukium ]; 30 30 }; 31 - } 31 + })
+9 -9
pkgs/data/fonts/hackgen/nerdfont.nix
··· 4 4 fetchzip, 5 5 }: 6 6 7 - stdenvNoCC.mkDerivation rec { 7 + stdenvNoCC.mkDerivation (finalAttrs: { 8 8 pname = "hackgen-nf-font"; 9 - version = "2.9.1"; 9 + version = "2.10.0"; 10 10 11 11 src = fetchzip { 12 - url = "https://github.com/yuru7/HackGen/releases/download/v${version}/HackGen_NF_v${version}.zip"; 13 - hash = "sha256-NzmCVFU1JNK0tdJyQBwMzuHxvAbOaQPV2Gbf8EYYKxI="; 12 + url = "https://github.com/yuru7/HackGen/releases/download/v${finalAttrs.version}/HackGen_NF_v${finalAttrs.version}.zip"; 13 + hash = "sha256-n0ibIzNIy5tUdC0QEWRRW4S5Byih39agW2IxCiqTLoQ="; 14 14 }; 15 15 16 16 installPhase = '' ··· 21 21 runHook postInstall 22 22 ''; 23 23 24 - meta = with lib; { 24 + meta = { 25 25 description = "Composite font of Hack, GenJyuu-Gothic and nerd-fonts"; 26 26 homepage = "https://github.com/yuru7/HackGen"; 27 - license = licenses.ofl; 28 - platforms = platforms.all; 29 - maintainers = with maintainers; [ natsukium ]; 27 + license = lib.licenses.ofl; 28 + platforms = lib.platforms.all; 29 + maintainers = with lib.maintainers; [ natsukium ]; 30 30 }; 31 - } 31 + })
+9
pkgs/desktops/gnome-2/platform/ORBit2/default.nix
··· 38 38 "dev" 39 39 ]; 40 40 41 + env.NIX_CFLAGS_COMPILE = toString ( 42 + lib.optionals (stdenv.cc.isGNU && (lib.versionAtLeast (lib.getVersion stdenv.cc.cc) "14")) [ 43 + # the ./configure script is not compatible with gcc-14, not easy to 44 + # regenerate without porting: https://github.com/NixOS/nixpkgs/issues/367694 45 + "-Wno-error=implicit-int" 46 + "-Wno-error=incompatible-pointer-types" 47 + ] 48 + ); 49 + 41 50 configureFlags = lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ 42 51 "--with-idl-compiler=${lib.getExe' buildPackages.gnome2.ORBit2 "orbit-idl-2"}" 43 52 # https://github.com/void-linux/void-packages/blob/e5856e02aa6ef7e4f2725afbff2915f89d39024b/srcpkgs/ORBit2/template#L17-L35
+1 -1
pkgs/development/libraries/ffmpeg/generic.nix
··· 75 75 , withKvazaar ? withFullDeps # HEVC encoding 76 76 , withLadspa ? withFullDeps # LADSPA audio filtering 77 77 , withLc3 ? withFullDeps && lib.versionAtLeast version "7.1" # LC3 de/encoding 78 - , withLcevcdec ? withFullDeps && lib.versionAtLeast version "7.1" # LCEVC decoding 78 + , withLcevcdec ? false && lib.versionAtLeast version "7.1" # LCEVC decoding # FIXME currently makes ffmpeg crash in any operation on non-AVX CPUs 79 79 , withLcms2 ? withFullDeps # ICC profile support via lcms2 80 80 , withLzma ? withHeadlessDeps # xz-utils 81 81 , withMetal ? false # Unfree and requires manual downloading of files
+1 -1
pkgs/development/libraries/glibc/info.nix
··· 16 16 perl 17 17 ]; 18 18 19 - makeFlags = [ "info" ]; 19 + buildFlags = [ "info" ]; 20 20 21 21 # I don't know why the info is not generated in 'build' 22 22 # Somehow building the info still does not work, because the final
+7 -2
pkgs/development/libraries/libcef/default.nix
··· 93 93 dontPatchELF = true; 94 94 95 95 installPhase = '' 96 - mkdir -p $out/lib/ $out/share/cef/ 96 + mkdir -p $out/lib/ $out/share/cef/ $out/libexec/cef/ 97 97 cp libcef_dll_wrapper/libcef_dll_wrapper.a $out/lib/ 98 98 cp ../Release/libcef.so $out/lib/ 99 99 cp ../Release/libEGL.so $out/lib/ 100 100 cp ../Release/libGLESv2.so $out/lib/ 101 + cp ../Release/libvk_swiftshader.so $out/lib/ 102 + cp ../Release/libvulkan.so.1 $out/lib/ 103 + cp ../Release/chrome-sandbox $out/libexec/cef/ 101 104 patchelf --set-rpath "${rpath}" $out/lib/libcef.so 102 105 patchelf --set-rpath "${gl_rpath}" $out/lib/libEGL.so 103 106 patchelf --set-rpath "${gl_rpath}" $out/lib/libGLESv2.so 104 - cp ../Release/*.bin $out/share/cef/ 107 + patchelf --set-rpath "${gl_rpath}" $out/lib/libvk_swiftshader.so 108 + patchelf --set-rpath "${gl_rpath}" $out/lib/libvulkan.so.1 109 + cp ../Release/*.bin ../Release/*.json $out/share/cef/ 105 110 cp -r ../Resources/* $out/share/cef/ 106 111 cp -r ../include $out/ 107 112 '';
+2 -2
pkgs/development/libraries/ngtcp2/gnutls.nix
··· 6 6 7 7 stdenv.mkDerivation rec { 8 8 pname = "ngtcp2"; 9 - version = "1.9.1"; 9 + version = "1.10.0"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "ngtcp2"; 13 13 repo = "ngtcp2"; 14 14 rev = "v${version}"; 15 - hash = "sha256-D9u54+CZYKcYZFedwgmI515s2MruZsVoJ3AZi494ohM="; 15 + hash = "sha256-MYkrdI4hGCR7QVXksznWDWSbKJtqpd4imqtQm5BxVqo="; 16 16 }; 17 17 18 18 outputs = [ "out" "dev" ];
+2 -2
pkgs/development/libraries/qt-jdenticon/default.nix
··· 8 8 9 9 stdenv.mkDerivation (finalAttrs: { 10 10 pname = "qt-jdenticon"; 11 - version = "0.3.0"; 11 + version = "0.3.1"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "Nheko-Reborn"; 15 15 repo = "qt-jdenticon"; 16 16 rev = "v${finalAttrs.version}"; 17 - hash = "sha256-Q5M7+XkY+/IS45rcFLYPfbcvQm8LDk4S9gzKigCIM7s="; 17 + hash = "sha256-3XJHBn+S6oDPfmWSyFDW7qkg69wuxj+GUqMBUCDp3n0="; 18 18 }; 19 19 20 20 nativeBuildInputs = [ qmake ];
+2 -6
pkgs/development/python-modules/brian2/default.nix
··· 19 19 20 20 buildPythonPackage rec { 21 21 pname = "brian2"; 22 - version = "2.7.1"; 22 + version = "2.8.0"; 23 23 pyproject = true; 24 24 25 25 # https://github.com/python/cpython/issues/117692 ··· 27 27 28 28 src = fetchPypi { 29 29 inherit pname version; 30 - hash = "sha256-mp1xo6ooYm21s6FYcegQdsHmVgH81usV9IfIM0GM7lc="; 30 + hash = "sha256-1JSE58y1T0YLuFMgVv2qf7bZoLddeyoyxF2dzgsbuUg="; 31 31 }; 32 32 33 33 patches = [ 34 - (fetchpatch { 35 - url = "https://github.com/brian-team/brian2/commit/8ed663cafde42cbe2e0171cb19d2217e01676d20.patch"; 36 - hash = "sha256-+s5SJdJmsnee3sWhaj/jwf8RXkfMrLp0aTWF52jLdqU="; 37 - }) 38 34 ./0001-remove-invalidxyz.patch # invalidxyz are reported as error so I remove it 39 35 ]; 40 36
+3 -3
pkgs/development/python-modules/cohere/default.nix
··· 21 21 22 22 buildPythonPackage rec { 23 23 pname = "cohere"; 24 - version = "5.11.3"; 24 + version = "5.13.4"; 25 25 pyproject = true; 26 26 27 27 src = fetchFromGitHub { 28 28 owner = "cohere-ai"; 29 29 repo = "cohere-python"; 30 - rev = "refs/tags/${version}"; 31 - hash = "sha256-0Y/zSw2pdrwsYpBctiV/tVf2xPhf3jG7c18frSjBass="; 30 + tag = version; 31 + hash = "sha256-MqcbEcB+jnRh6rTqEH56k6IDpbY5ZRoqzdvxP305J7Q="; 32 32 }; 33 33 34 34 build-system = [ poetry-core ];
+2 -2
pkgs/development/python-modules/equinox/default.nix
··· 21 21 22 22 buildPythonPackage rec { 23 23 pname = "equinox"; 24 - version = "0.11.10"; 24 + version = "0.11.11"; 25 25 pyproject = true; 26 26 27 27 src = fetchFromGitHub { 28 28 owner = "patrick-kidger"; 29 29 repo = "equinox"; 30 30 tag = "v${version}"; 31 - hash = "sha256-QoqwLdtWCDrXyqiI6Xw7jq2sxiRCmLaxk3/ZGHrvqL4="; 31 + hash = "sha256-xCAk9qac2ZmevUMMRgBokLKuGWyrF4fGpN03li49cR8="; 32 32 }; 33 33 34 34 build-system = [ hatchling ];
+66
pkgs/development/python-modules/flet-cli/default.nix
··· 1 + { 2 + lib, 3 + buildPythonPackage, 4 + flet-client-flutter, 5 + 6 + # build-system 7 + poetry-core, 8 + 9 + flet, 10 + flet-desktop, 11 + flet-web, 12 + qrcode, 13 + toml, 14 + watchdog, 15 + }: 16 + 17 + buildPythonPackage rec { 18 + pname = "flet-cli"; 19 + inherit (flet-client-flutter) version src; 20 + pyproject = true; 21 + 22 + sourceRoot = "${src.name}/sdk/python/packages/flet-cli"; 23 + 24 + build-system = [ poetry-core ]; 25 + 26 + dependencies = [ 27 + flet 28 + flet-desktop 29 + flet-web 30 + qrcode 31 + toml 32 + watchdog 33 + ]; 34 + 35 + pythonRelaxDeps = [ 36 + "qrcode" 37 + "watchdog" 38 + ]; 39 + 40 + makeWrapperArgs = [ 41 + "--prefix" 42 + "PYTHONPATH" 43 + ":" 44 + "$PYTHONPATH" 45 + ]; 46 + 47 + postInstall = '' 48 + mkdir -p $out/bin 49 + makeWrapper ${flet}/bin/flet $out/bin/flet \ 50 + --prefix PYTHONPATH : $PYTHONPATH 51 + ''; 52 + 53 + pythonImportsCheck = [ "flet_cli" ]; 54 + 55 + meta = { 56 + description = "Command-line interface tool for Flet, a framework for building interactive multi-platform applications using Python."; 57 + homepage = "https://flet.dev/"; 58 + changelog = "https://github.com/flet-dev/flet/releases/tag/v${version}"; 59 + license = lib.licenses.asl20; 60 + maintainers = with lib.maintainers; [ 61 + heyimnova 62 + lucasew 63 + ]; 64 + mainProgram = "flet"; 65 + }; 66 + }
-40
pkgs/development/python-modules/flet-core/default.nix
··· 1 - { 2 - lib, 3 - buildPythonPackage, 4 - flet-client-flutter, 5 - 6 - # build-system 7 - poetry-core, 8 - 9 - # propagates 10 - typing-extensions, 11 - repath, 12 - }: 13 - 14 - buildPythonPackage rec { 15 - pname = "flet-core"; 16 - inherit (flet-client-flutter) version src; 17 - pyproject = true; 18 - 19 - sourceRoot = "${src.name}/sdk/python/packages/flet-core"; 20 - 21 - nativeBuildInputs = [ poetry-core ]; 22 - 23 - propagatedBuildInputs = [ 24 - repath 25 - typing-extensions 26 - ]; 27 - 28 - doCheck = false; 29 - 30 - meta = { 31 - changelog = "https://github.com/flet-dev/flet/releases/tag/v${version}"; 32 - description = "Library is the foundation of Flet framework and is not intended to be used directly"; 33 - homepage = "https://flet.dev/"; 34 - license = lib.licenses.asl20; 35 - maintainers = with lib.maintainers; [ 36 - heyimnova 37 - lucasew 38 - ]; 39 - }; 40 - }
+43
pkgs/development/python-modules/flet-desktop/default.nix
··· 1 + { 2 + lib, 3 + buildPythonPackage, 4 + flet-client-flutter, 5 + 6 + # build-system 7 + poetry-core, 8 + 9 + flet, 10 + }: 11 + 12 + buildPythonPackage rec { 13 + pname = "flet-desktop"; 14 + inherit (flet-client-flutter) version src; 15 + pyproject = true; 16 + 17 + sourceRoot = "${src.name}/sdk/python/packages/flet-desktop"; 18 + 19 + build-system = [ poetry-core ]; 20 + 21 + dependencies = [ flet ]; 22 + 23 + _flet_setup_view = '' 24 + if 'FLET_VIEW_PATH' not in os.environ: 25 + os.environ['FLET_VIEW_PATH'] = '${flet-client-flutter}/bin' 26 + ''; 27 + postPatch = '' 28 + echo "$_flet_setup_view" >> src/flet_desktop/__init__.py 29 + ''; 30 + 31 + pythonImportsCheck = [ "flet_desktop" ]; 32 + 33 + meta = { 34 + description = "Compiled Flutter Flet desktop client."; 35 + homepage = "https://flet.dev/"; 36 + changelog = "https://github.com/flet-dev/flet/releases/tag/v${version}"; 37 + license = lib.licenses.asl20; 38 + maintainers = with lib.maintainers; [ 39 + heyimnova 40 + lucasew 41 + ]; 42 + }; 43 + }
-3
pkgs/development/python-modules/flet-runtime/_setup_runtime.py
··· 1 - import os 2 - if 'FLET_VIEW_PATH' not in os.environ: 3 - os.environ["FLET_VIEW_PATH"] = "@flet-client-flutter@/bin"
-47
pkgs/development/python-modules/flet-runtime/default.nix
··· 1 - { 2 - lib, 3 - buildPythonPackage, 4 - flet-client-flutter, 5 - poetry-core, 6 - flet-core, 7 - httpx, 8 - oauthlib, 9 - }: 10 - 11 - buildPythonPackage rec { 12 - pname = "flet-runtime"; 13 - inherit (flet-client-flutter) version src; 14 - 15 - pyproject = true; 16 - 17 - sourceRoot = "${src.name}/sdk/python/packages/flet-runtime"; 18 - 19 - postPatch = '' 20 - substitute ${./_setup_runtime.py} src/flet_runtime/_setup_runtime.py \ 21 - --replace @flet-client-flutter@ ${flet-client-flutter} 22 - 23 - echo -e "import flet_runtime._setup_runtime\n$(cat src/flet_runtime/__init__.py)" > src/flet_runtime/__init__.py 24 - ''; 25 - 26 - nativeBuildInputs = [ 27 - poetry-core 28 - ]; 29 - 30 - pythonRelaxDeps = [ "httpx" ]; 31 - 32 - propagatedBuildInputs = [ 33 - flet-core 34 - httpx 35 - oauthlib 36 - ]; 37 - 38 - pythonImportsCheck = [ "flet_runtime" ]; 39 - 40 - meta = { 41 - changelog = "https://github.com/flet-dev/flet/releases/tag/v${version}"; 42 - description = "Base package for Flet desktop and Flet mobile"; 43 - homepage = "https://flet.dev/"; 44 - license = lib.licenses.asl20; 45 - maintainers = with lib.maintainers; [ lucasew ]; 46 - }; 47 - }
+50
pkgs/development/python-modules/flet-web/default.nix
··· 1 + { 2 + lib, 3 + buildPythonPackage, 4 + flet-client-flutter, 5 + 6 + # build-system 7 + poetry-core, 8 + 9 + flet, 10 + fastapi, 11 + uvicorn, 12 + python, 13 + }: 14 + 15 + buildPythonPackage rec { 16 + pname = "flet-web"; 17 + inherit (flet-client-flutter) version src; 18 + pyproject = true; 19 + 20 + sourceRoot = "${src.name}/sdk/python/packages/flet-web"; 21 + 22 + build-system = [ poetry-core ]; 23 + 24 + dependencies = [ 25 + flet 26 + fastapi 27 + uvicorn 28 + ]; 29 + 30 + pythonImportsCheck = [ "flet_web" ]; 31 + 32 + web = flet-client-flutter.override { 33 + fletTarget = "web"; 34 + }; 35 + 36 + postInstall = '' 37 + ln -s $web $out/${python.sitePackages}/flet_web/web 38 + ''; 39 + 40 + meta = { 41 + description = "Flet web client in Flutter."; 42 + homepage = "https://flet.dev/"; 43 + changelog = "https://github.com/flet-dev/flet/releases/tag/v${version}"; 44 + license = lib.licenses.asl20; 45 + maintainers = with lib.maintainers; [ 46 + heyimnova 47 + lucasew 48 + ]; 49 + }; 50 + }
+22 -19
pkgs/development/python-modules/flet/default.nix
··· 5 5 6 6 # build-system 7 7 poetry-core, 8 + pytestCheckHook, 8 9 9 10 # propagates 10 11 fastapi, 11 - flet-core, 12 - flet-runtime, 13 12 httpx, 14 13 oauthlib, 15 14 packaging, 16 15 qrcode, 16 + repath, 17 17 cookiecutter, 18 18 uvicorn, 19 19 watchdog, 20 20 websocket-client, 21 21 websockets, 22 - 23 22 }: 24 23 25 24 buildPythonPackage rec { 26 25 pname = "flet"; 27 26 inherit (flet-client-flutter) version src; 28 - 29 27 pyproject = true; 30 28 31 29 sourceRoot = "${src.name}/sdk/python/packages/flet"; 32 30 33 - nativeBuildInputs = [ 34 - poetry-core 35 - ]; 31 + build-system = [ poetry-core ]; 32 + 33 + nativeCheckInputs = [ pytestCheckHook ]; 36 34 37 35 makeWrapperArgs = [ 38 36 "--prefix" ··· 39 41 "$PYTHONPATH" 40 42 ]; 41 43 42 - pythonRelaxDeps = [ 43 - "cookiecutter" 44 - "packaging" 45 - "qrcode" 46 - "watchdog" 47 - "websockets" 48 - ]; 44 + _flet_version = '' 45 + version = "${version}" 46 + def update_version(): 47 + pass 48 + ''; 49 + _flet_utils_pip = '' 50 + def install_flet_package(name: str): 51 + pass 52 + ''; 49 53 50 - propagatedBuildInputs = [ 54 + postPatch = '' 55 + # nerf out nagging about pip 56 + echo "$_flet_version" > src/flet/version.py 57 + echo "$_flet_utils_pip" >> src/flet/utils/pip.py 58 + ''; 59 + 60 + dependencies = [ 51 61 fastapi 52 - flet-core 53 - flet-runtime 54 62 uvicorn 55 63 websocket-client 56 64 watchdog ··· 64 60 websockets 65 61 httpx 66 62 packaging 63 + repath 67 64 qrcode 68 65 cookiecutter 69 66 fastapi 70 67 uvicorn 71 68 ]; 72 - 73 - doCheck = false; 74 69 75 70 pythonImportsCheck = [ "flet" ]; 76 71
+111
pkgs/development/python-modules/jax-cuda12-pjrt/default.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + buildPythonPackage, 5 + fetchurl, 6 + autoAddDriverRunpath, 7 + autoPatchelfHook, 8 + pypaInstallHook, 9 + wheelUnpackHook, 10 + cudaPackages, 11 + python, 12 + jaxlib, 13 + }: 14 + let 15 + inherit (jaxlib) version; 16 + inherit (cudaPackages) cudaVersion; 17 + 18 + cudaLibPath = lib.makeLibraryPath ( 19 + with cudaPackages; 20 + [ 21 + (lib.getLib cuda_cudart) # libcudart.so 22 + (lib.getLib cuda_cupti) # libcupti.so 23 + (lib.getLib cudnn) # libcudnn.so 24 + (lib.getLib libcufft) # libcufft.so 25 + (lib.getLib libcusolver) # libcusolver.so 26 + (lib.getLib libcusparse) # libcusparse.so 27 + ] 28 + ); 29 + 30 + # Find new releases at https://storage.googleapis.com/jax-releases 31 + # When upgrading, you can get these hashes from prefetch.sh. See 32 + # https://github.com/google/jax/issues/12879 as to why this specific URL is the correct index. 33 + 34 + # upstream does not distribute jax-cuda12-pjrt 0.4.38 binaries for aarch64-linux 35 + srcs = { 36 + "x86_64-linux" = fetchurl { 37 + url = "https://storage.googleapis.com/jax-releases/cuda12_plugin/jax_cuda12_pjrt-${version}-py3-none-manylinux2014_x86_64.whl"; 38 + hash = "sha256-g75MWfvPMAd6YAhdmOfVncc4sckeDWKOSsF3n94VrCs="; 39 + }; 40 + "aarch64-linux" = fetchurl { 41 + url = "https://storage.googleapis.com/jax-releases/cuda12_plugin/jax_cuda12_pjrt-${version}-py3-none-manylinux2014_aarch64.whl"; 42 + hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; 43 + }; 44 + }; 45 + in 46 + buildPythonPackage { 47 + pname = "jax-cuda12-pjrt"; 48 + inherit version; 49 + pyproject = false; 50 + 51 + src = 52 + srcs.${stdenv.hostPlatform.system} 53 + or (throw "jax-cuda12-pjrt: No src for ${stdenv.hostPlatform.system}"); 54 + 55 + nativeBuildInputs = [ 56 + autoAddDriverRunpath 57 + autoPatchelfHook 58 + pypaInstallHook 59 + wheelUnpackHook 60 + ]; 61 + 62 + # The following attributes (buildInputs, postInstall and preInstallCheck) are copied from jaxlib-0.4.28 63 + # but it does not recognize GPUs as of 2024-12-29 64 + # Dynamic link dependencies 65 + buildInputs = [ (lib.getLib stdenv.cc.cc) ]; 66 + 67 + # jaxlib looks for ptxas at runtime, eg when running `jax.random.PRNGKey(0)`. 68 + # Linking into $out is the least bad solution. See 69 + # * https://github.com/NixOS/nixpkgs/pull/164176#discussion_r828801621 70 + # * https://github.com/NixOS/nixpkgs/pull/288829#discussion_r1493852211 71 + # for more info. 72 + postInstall = '' 73 + mkdir -p $out/${python.sitePackages}/jaxlib/cuda/bin 74 + ln -s ${lib.getExe' cudaPackages.cuda_nvcc "ptxas"} $out/${python.sitePackages}/jaxlib/cuda/bin/ptxas 75 + ''; 76 + 77 + # jaxlib contains shared libraries that open other shared libraries via dlopen 78 + # and these implicit dependencies are not recognized by ldd or 79 + # autoPatchelfHook. That means we need to sneak them into rpath. This step 80 + # must be done after autoPatchelfHook and the automatic stripping of 81 + # artifacts. autoPatchelfHook runs in postFixup and auto-stripping runs in the 82 + # patchPhase. 83 + preInstallCheck = '' 84 + shopt -s globstar 85 + 86 + for file in $out/**/*.so; do 87 + echo $file 88 + patchelf --add-rpath "${cudaLibPath}" "$file" 89 + done 90 + ''; 91 + 92 + # no tests 93 + doCheck = false; 94 + 95 + pythonImportsCheck = [ "jax_plugins.xla_cuda12" ]; 96 + 97 + meta = { 98 + description = "JAX XLA PJRT Plugin for NVIDIA GPUs"; 99 + homepage = "https://github.com/jax-ml/jax/tree/main/jax_plugins/cuda"; 100 + sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; 101 + license = lib.licenses.asl20; 102 + maintainers = with lib.maintainers; [ natsukium ]; 103 + platforms = lib.attrNames srcs; 104 + # see CUDA compatibility matrix 105 + # https://jax.readthedocs.io/en/latest/installation.html#pip-installation-nvidia-gpu-cuda-installed-locally-harder 106 + broken = 107 + !(lib.versionAtLeast cudaVersion "12.1") 108 + || !(lib.versionAtLeast cudaPackages.cudnn.version "9.1") 109 + || true; 110 + }; 111 + }
+117
pkgs/development/python-modules/jax-cuda12-plugin/default.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + buildPythonPackage, 5 + fetchPypi, 6 + autoAddDriverRunpath, 7 + autoPatchelfHook, 8 + pypaInstallHook, 9 + wheelUnpackHook, 10 + cudaPackages, 11 + python, 12 + jaxlib, 13 + jax-cuda12-pjrt, 14 + }: 15 + let 16 + inherit (cudaPackages) cudaVersion; 17 + inherit (jaxlib) version; 18 + 19 + getSrcFromPypi = 20 + { 21 + platform, 22 + dist, 23 + hash, 24 + }: 25 + fetchPypi { 26 + inherit 27 + version 28 + platform 29 + dist 30 + hash 31 + ; 32 + pname = "jax_cuda12_plugin"; 33 + format = "wheel"; 34 + python = dist; 35 + abi = dist; 36 + }; 37 + 38 + # upstream does not distribute jax-cuda12-plugin 0.4.38 binaries for aarch64-linux 39 + srcs = { 40 + "3.10-x86_64-linux" = getSrcFromPypi { 41 + platform = "manylinux2014_x86_64"; 42 + dist = "cp310"; 43 + hash = "sha256-nULpmc1k3VZ8FJ7Wj3k5K6iGRDZCGLtjbNzvoBl8kv4="; 44 + }; 45 + "3.10-aarch64-linux" = getSrcFromPypi { 46 + platform = "manylinux2014_aarch64"; 47 + dist = "cp310"; 48 + hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; 49 + }; 50 + "3.11-x86_64-linux" = getSrcFromPypi { 51 + platform = "manylinux2014_x86_64"; 52 + dist = "cp311"; 53 + hash = "sha256-cEZUOG8OYAoCgdquqViCqmekfttoOTthsbFzx+jKdKg="; 54 + }; 55 + "3.11-aarch64-linux" = getSrcFromPypi { 56 + platform = "manylinux2014_aarch64"; 57 + dist = "cp311"; 58 + hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; 59 + }; 60 + "3.12-x86_64-linux" = getSrcFromPypi { 61 + platform = "manylinux2014_x86_64"; 62 + dist = "cp312"; 63 + hash = "sha256-Ufas/3Ew63LrsCU039NYGg9eoGlx3lLX68Ia1Nh/5x4="; 64 + }; 65 + "3.12-aarch64-linux" = getSrcFromPypi { 66 + platform = "manylinux2014_aarch64"; 67 + dist = "cp312"; 68 + hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; 69 + }; 70 + "3.13-x86_64-linux" = getSrcFromPypi { 71 + platform = "manylinux2014_x86_64"; 72 + dist = "cp313"; 73 + hash = "sha256-CSKKTCtEO3aozZqOwikGAInEzINuBiSWh1ptb9xm0x8="; 74 + }; 75 + "3.13-aarch64-linux" = getSrcFromPypi { 76 + platform = "manylinux2014_aarch64"; 77 + dist = "cp313"; 78 + hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; 79 + }; 80 + }; 81 + in 82 + buildPythonPackage { 83 + pname = "jax-cuda12-plugin"; 84 + inherit version; 85 + pyproject = false; 86 + 87 + src = ( 88 + srcs."${python.pythonVersion}-${stdenv.hostPlatform.system}" 89 + or (throw "python${python.pythonVersion}Packages.jax-cuda12-plugin is not supported on ${stdenv.hostPlatform.system}") 90 + ); 91 + 92 + nativeBuildInputs = [ 93 + autoAddDriverRunpath 94 + autoPatchelfHook 95 + pypaInstallHook 96 + wheelUnpackHook 97 + ]; 98 + 99 + dependencies = [ jax-cuda12-pjrt ]; 100 + 101 + pythonImportsCheck = [ "jax_cuda12_plugin" ]; 102 + 103 + meta = { 104 + description = "JAX Plugin for CUDA12"; 105 + homepage = "https://github.com/jax-ml/jax/tree/main/jax_plugins/cuda"; 106 + sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; 107 + license = lib.licenses.asl20; 108 + maintainers = with lib.maintainers; [ natsukium ]; 109 + platforms = lib.platforms.linux; 110 + # see CUDA compatibility matrix 111 + # https://jax.readthedocs.io/en/latest/installation.html#pip-installation-nvidia-gpu-cuda-installed-locally-harder 112 + broken = 113 + !(lib.versionAtLeast cudaVersion "12.1") 114 + || !(lib.versionAtLeast cudaPackages.cudnn.version "9.1") 115 + || true; 116 + }; 117 + }
+79 -45
pkgs/development/python-modules/jax/default.nix
··· 1 1 { 2 2 lib, 3 + config, 4 + stdenv, 3 5 blas, 4 - buildPythonPackage, 5 - callPackage, 6 - setuptools, 7 - importlib-metadata, 8 - fetchFromGitHub, 9 - jaxlib, 10 - jaxlib-bin, 11 - jaxlib-build, 12 - hypothesis, 13 6 lapack, 14 - matplotlib, 7 + buildPythonPackage, 8 + fetchFromGitHub, 9 + cudaSupport ? config.cudaSupport, 10 + 11 + # build-system 12 + setuptools, 13 + 14 + # dependencies 15 + jaxlib, 15 16 ml-dtypes, 16 17 numpy, 17 18 opt-einsum, 19 + scipy, 20 + 21 + # optional-dependencies 22 + jax-cuda12-plugin, 23 + 24 + # tests 25 + cloudpickle, 26 + hypothesis, 27 + matplotlib, 18 28 pytestCheckHook, 19 29 pytest-xdist, 20 - pythonOlder, 21 - scipy, 22 - stdenv, 30 + 31 + # passthru 32 + callPackage, 33 + jax, 34 + jaxlib-build, 35 + jaxlib-bin, 23 36 }: 24 37 25 38 let ··· 40 27 in 41 28 buildPythonPackage rec { 42 29 pname = "jax"; 43 - version = "0.4.28"; 30 + version = "0.4.38"; 44 31 pyproject = true; 45 - 46 - disabled = pythonOlder "3.9"; 47 32 48 33 src = fetchFromGitHub { 49 34 owner = "google"; 50 35 repo = "jax"; 51 36 # google/jax contains tags for jax and jaxlib. Only use jax tags! 52 - rev = "refs/tags/jax-v${version}"; 53 - hash = "sha256-qSHPwi3is6Ts7pz5s4KzQHBMbcjGp+vAOsejW3o36Ek="; 37 + tag = "jax-v${version}"; 38 + hash = "sha256-H8I9Mkz6Ia1RxJmnuJOSevLGHN2J8ey59ZTlFx8YfnA="; 54 39 }; 55 40 56 - nativeBuildInputs = [ setuptools ]; 41 + build-system = [ setuptools ]; 57 42 58 43 # The version is automatically set to ".dev" if this variable is not set. 59 44 # https://github.com/google/jax/commit/e01f2617b85c5bdffc5ffb60b3d8d8ca9519a1f3 60 45 JAX_RELEASE = "1"; 61 46 62 - # jaxlib is _not_ included in propagatedBuildInputs because there are 63 - # different versions of jaxlib depending on the desired target hardware. The 64 - # JAX project ships separate wheels for CPU, GPU, and TPU. 65 - propagatedBuildInputs = [ 47 + dependencies = [ 48 + jaxlib 66 49 ml-dtypes 67 50 numpy 68 51 opt-einsum 69 52 scipy 70 - ] ++ lib.optional (pythonOlder "3.10") importlib-metadata; 53 + ] ++ lib.optionals cudaSupport optional-dependencies.cuda; 54 + 55 + optional-dependencies = rec { 56 + cuda = [ jax-cuda12-plugin ]; 57 + cuda12 = cuda; 58 + cuda12_pip = cuda; 59 + cuda12_local = cuda; 60 + }; 71 61 72 62 nativeCheckInputs = [ 63 + cloudpickle 73 64 hypothesis 74 - jaxlib 75 65 matplotlib 76 66 pytestCheckHook 77 67 pytest-xdist ··· 87 71 # which creates a circular dependency. See https://discourse.nixos.org/t/how-to-nix-ify-python-packages-with-circular-dependencies/14648/2. 88 72 # Not a big deal, this is how the JAX docs suggest running the test suite 89 73 # anyhow. 90 - pytestFlagsArray = [ 91 - "--numprocesses=4" 92 - "-W ignore::DeprecationWarning" 93 - "tests/" 94 - ]; 74 + pytestFlagsArray = 75 + [ 76 + "--numprocesses=4" 77 + "-W ignore::DeprecationWarning" 78 + "tests/" 79 + ] 80 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 81 + # SystemError: nanobind::detail::nb_func_error_except(): exception could not be translated! 82 + "--deselect tests/shape_poly_test.py::ShapePolyTest" 83 + "--deselect tests/tree_util_test.py::TreeTest" 84 + ]; 95 85 96 86 # Prevents `tests/export_back_compat_test.py::CompatTest::test_*` tests from failing on darwin with 97 87 # PermissionError: [Errno 13] Permission denied: '/tmp/back_compat_testdata/test_*.py' ··· 147 125 # Fails on some hardware due to some numerical error 148 126 # See https://github.com/google/jax/issues/18535 149 127 "testQdwhWithOnRankDeficientInput5" 128 + ] 129 + ++ lib.optionals stdenv.hostPlatform.isDarwin [ 130 + # SystemError: nanobind::detail::nb_func_error_except(): exception could not be translated! 131 + "testInAxesPyTreePrefixMismatchError" 132 + "testInAxesPyTreePrefixMismatchErrorKwargs" 133 + "testOutAxesPyTreePrefixMismatchError" 134 + "test_tree_map" 135 + "test_vjp_rule_inconsistent_pytree_structures_error" 136 + "test_vmap_in_axes_tree_prefix_error" 137 + "test_vmap_mismatched_axis_sizes_error_message_issue_705" 150 138 ]; 151 139 152 - disabledTestPaths = [ 153 - # Segmentation fault. See https://gist.github.com/zimbatm/e9b61891f3bcf5e4aaefd13f94344fba 154 - "tests/linalg_test.py" 155 - ] 156 - ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ 157 - # RuntimeWarning: invalid value encountered in cast 158 - "tests/lax_test.py" 159 - ]; 140 + disabledTestPaths = 141 + [ 142 + # Segmentation fault. See https://gist.github.com/zimbatm/e9b61891f3bcf5e4aaefd13f94344fba 143 + "tests/linalg_test.py" 144 + ] 145 + ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ 146 + # RuntimeWarning: invalid value encountered in cast 147 + "tests/lax_test.py" 148 + ]; 160 149 161 150 pythonImportsCheck = [ "jax" ]; 162 151 ··· 180 147 # 181 148 # NIXPKGS_ALLOW_UNFREE=1 nixglhost -- nix run --impure .#python3Packages.jax.passthru.tests.test_cuda_jaxlibBin 182 149 passthru.tests = { 183 - test_cuda_jaxlibSource = callPackage ./test-cuda.nix { 184 - jaxlib = jaxlib-build.override { cudaSupport = true; }; 185 - }; 150 + # jaxlib-build is broken as of 2024-12-20 151 + # test_cuda_jaxlibSource = callPackage ./test-cuda.nix { 152 + # jax = jax.override { jaxlib = jaxlib-build; }; 153 + # }; 186 154 test_cuda_jaxlibBin = callPackage ./test-cuda.nix { 187 - jaxlib = jaxlib-bin.override { cudaSupport = true; }; 155 + jax = jax.override { jaxlib = jaxlib-bin; }; 188 156 }; 189 157 }; 190 158 191 159 # updater fails to pick the correct branch 192 160 passthru.skipBulkUpdate = true; 193 161 194 - meta = with lib; { 162 + meta = { 195 163 description = "Source-built JAX frontend: differentiate, compile, and transform Numpy code"; 196 164 longDescription = '' 197 165 This is the JAX frontend package, it's meant to be used together with one of the jaxlib implementations, 198 166 e.g. `python3Packages.jaxlib`, `python3Packages.jaxlib-bin`, or `python3Packages.jaxlibWithCuda`. 199 167 ''; 200 168 homepage = "https://github.com/google/jax"; 201 - license = licenses.asl20; 202 - maintainers = with maintainers; [ samuela ]; 169 + license = lib.licenses.asl20; 170 + maintainers = with lib.maintainers; [ samuela ]; 203 171 }; 204 172 }
+1 -3
pkgs/development/python-modules/jax/test-cuda.nix
··· 1 1 { 2 2 jax, 3 - jaxlib, 4 3 pkgs, 5 4 }: 6 5 ··· 7 8 { 8 9 libraries = [ 9 10 jax 10 - jaxlib 11 - ]; 11 + ] ++ jax.optional-dependencies.cuda; 12 12 } 13 13 '' 14 14 import jax
+61 -136
pkgs/development/python-modules/jaxlib/bin.nix
··· 6 6 7 7 { 8 8 absl-py, 9 - autoAddDriverRunpath, 10 9 autoPatchelfHook, 11 10 buildPythonPackage, 12 - config, 13 11 fetchPypi, 14 - fetchurl, 15 12 flatbuffers, 16 - jaxlib-build, 17 13 lib, 18 14 ml-dtypes, 19 15 python, 20 16 scipy, 21 17 stdenv, 22 - # Options: 23 - cudaSupport ? config.cudaSupport, 24 - cudaPackages, 25 18 }: 26 19 27 20 let 28 - inherit (cudaPackages) cudaVersion; 29 - 30 - version = "0.4.28"; 31 - 21 + version = "0.4.38"; 32 22 inherit (python) pythonVersion; 33 - 34 - cudaLibPath = lib.makeLibraryPath ( 35 - with cudaPackages; 36 - [ 37 - (lib.getLib cuda_cudart) # libcudart.so 38 - (lib.getLib cuda_cupti) # libcupti.so 39 - (lib.getLib cudnn) # libcudnn.so 40 - (lib.getLib libcufft) # libcufft.so 41 - (lib.getLib libcusolver) # libcusolver.so 42 - (lib.getLib libcusparse) # libcusparse.so 43 - ] 44 - ); 45 23 46 24 # As of 2023-06-06, google/jax upstream is no longer publishing CPU-only wheels to their GCS bucket. Instead the 47 25 # official instructions recommend installing CPU-only versions via PyPI. 48 - cpuSrcs = 26 + srcs = 49 27 let 50 28 getSrcFromPypi = 51 29 { ··· 46 68 }; 47 69 in 48 70 { 49 - "3.9-x86_64-linux" = getSrcFromPypi { 50 - platform = "manylinux2014_x86_64"; 51 - dist = "cp39"; 52 - hash = "sha256-Slbr8FtKTBeRaZ2HTgcvP4CPCYa0AQsU+1SaackMqdw="; 53 - }; 54 - "3.9-aarch64-darwin" = getSrcFromPypi { 55 - platform = "macosx_11_0_arm64"; 56 - dist = "cp39"; 57 - hash = "sha256-sBVi7IrXVxm30DiXUkiel+trTctMjBE75JFjTVKCrTw="; 58 - }; 59 - "3.9-x86_64-darwin" = getSrcFromPypi { 60 - platform = "macosx_10_14_x86_64"; 61 - dist = "cp39"; 62 - hash = "sha256-T5jMg3srbG3P4Kt/+esQkxSSCUYRmqOvn6oTlxj/J4c="; 63 - }; 64 - 65 71 "3.10-x86_64-linux" = getSrcFromPypi { 66 72 platform = "manylinux2014_x86_64"; 67 73 dist = "cp310"; 68 - hash = "sha256-47zcb45g+FVPQVwU2TATTmAuPKM8OOVGJ0/VRfh1dps="; 74 + hash = "sha256-Ya7MuaJ8Z/24RQ9jVyQAGc1FEcudYqROR2R1bThIU60="; 75 + }; 76 + "3.10-aarch64-linux" = getSrcFromPypi { 77 + platform = "manylinux2014_aarch64"; 78 + dist = "cp310"; 79 + hash = "sha256-7hnBY6j98IOdTBi4il+/tOcxunxDdBbT5Ug+Vwu3ZOQ="; 69 80 }; 70 81 "3.10-aarch64-darwin" = getSrcFromPypi { 71 82 platform = "macosx_11_0_arm64"; 72 83 dist = "cp310"; 73 - hash = "sha256-8Djmi9ENGjVUcisLvjbmpEg4RDenWqnSg/aW8O2fjAk="; 84 + hash = "sha256-MLL1LLUNdHNK8vR3wlM6elg+O7eyyKzes2Hud9lAV3o="; 74 85 }; 75 86 "3.10-x86_64-darwin" = getSrcFromPypi { 76 87 platform = "macosx_10_14_x86_64"; 77 88 dist = "cp310"; 78 - hash = "sha256-pCHSN/jCXShQFm0zRgPGc925tsJvUrxJZwS4eCKXvWY="; 89 + hash = "sha256-VcGbnT8zpvxZ9kSqWiH7oCY5zN13bLSptVJmJfV4Of8="; 79 90 }; 80 91 81 92 "3.11-x86_64-linux" = getSrcFromPypi { 82 93 platform = "manylinux2014_x86_64"; 83 94 dist = "cp311"; 84 - hash = "sha256-Rc4PPIQM/4I2z/JsN/Jsn/B4aV+T4MFiwyDCgfUEEnU="; 95 + hash = "sha256-J1H/cDfWqZfQvg53zEvjgcWp+buLMU7bdVwTpv2Wn0U="; 96 + }; 97 + "3.11-aarch64-linux" = getSrcFromPypi { 98 + platform = "manylinux2014_aarch64"; 99 + dist = "cp311"; 100 + hash = "sha256-Q9tYxMQnYnKWNmpWwQMY4fAPUDaQ4X+Uu0NEKT4ZleA="; 85 101 }; 86 102 "3.11-aarch64-darwin" = getSrcFromPypi { 87 103 platform = "macosx_11_0_arm64"; 88 104 dist = "cp311"; 89 - hash = "sha256-eThX+vN/Nxyv51L+pfyBH0NeQ7j7S1AgWERKf17M+Ck="; 105 + hash = "sha256-P7DqrnNpFXr+y+rVCq8p5z/936d6IzXXIb2XlPPFEOQ="; 90 106 }; 91 107 "3.11-x86_64-darwin" = getSrcFromPypi { 92 108 platform = "macosx_10_14_x86_64"; 93 109 dist = "cp311"; 94 - hash = "sha256-L/gpDtx7ksfq5SUX9lSSYz4mey6QZ7rT5MMj0hPnfPU="; 110 + hash = "sha256-tn/eq9bf7Qi3do873/tSEWAIX4MFZpvRl77vYdCN4Is="; 95 111 }; 96 112 97 113 "3.12-x86_64-linux" = getSrcFromPypi { 98 114 platform = "manylinux2014_x86_64"; 99 115 dist = "cp312"; 100 - hash = "sha256-RqGqhX9P7uikP8upXA4Kti1AwmzJcwtsaWVZCLo1n40="; 116 + hash = "sha256-2tbAqWVnwG0IPARp/sQPIBIQsJk2W9aYvjGm0uyI/Vk="; 117 + }; 118 + "3.12-aarch64-linux" = getSrcFromPypi { 119 + platform = "manylinux2014_aarch64"; 120 + dist = "cp312"; 121 + hash = "sha256-SW9FsOABojQTCc0MdK8LZwU33O15wWjLIwz8x3PwqoY"; 101 122 }; 102 123 "3.12-aarch64-darwin" = getSrcFromPypi { 103 124 platform = "macosx_11_0_arm64"; 104 125 dist = "cp312"; 105 - hash = "sha256-jdi//jhTcC9jzZJNoO4lc0pNGc1ckmvgM9dyun0cF10="; 126 + hash = "sha256-8zvK/jLJelYuz2iU18QWdMgMCs3t+lQj1Jr1EUcUmHQ="; 106 127 }; 107 128 "3.12-x86_64-darwin" = getSrcFromPypi { 108 129 platform = "macosx_10_14_x86_64"; 109 130 dist = "cp312"; 110 - hash = "sha256-1sCaVFMpciRhrwVuc1FG0sjHTCKsdCaoRetp8ya096A="; 131 + hash = "sha256-P+/qmF8EFYFvO7r9PwOkNwUCde+brJpywTFOFkSsV8E="; 132 + }; 133 + 134 + "3.13-x86_64-linux" = getSrcFromPypi { 135 + platform = "manylinux2014_x86_64"; 136 + dist = "cp313"; 137 + hash = "sha256-LOd7qM2pJZpLypevwcci5CkabEY6Y/jTcsbtyFEX1iU="; 138 + }; 139 + "3.13-aarch64-linux" = getSrcFromPypi { 140 + platform = "manylinux2014_aarch64"; 141 + dist = "cp313"; 142 + hash = "sha256-JIzKN3Hr8ksHD0lwE2TOraM+YTlEWwbHgsylrFrZK/Q="; 143 + }; 144 + "3.13-aarch64-darwin" = getSrcFromPypi { 145 + platform = "macosx_11_0_arm64"; 146 + dist = "cp313"; 147 + hash = "sha256-b+MmuK82Y4fdR8zzElg7Kxf+0ScSybdKZIsYoTy9ur8="; 148 + }; 149 + "3.13-x86_64-darwin" = getSrcFromPypi { 150 + platform = "macosx_10_14_x86_64"; 151 + dist = "cp313"; 152 + hash = "sha256-QeVa5YGKiC5XiehI9vFmh6wTK8+7Wl+hFKXRi3jQXy0="; 111 153 }; 112 154 }; 113 - 114 - # Note that the prebuilt jaxlib binary requires specific version of CUDA to 115 - # work. The cuda12 jaxlib binaries only works with CUDA 12.2, and cuda11 116 - # jaxlib binaries only works with CUDA 11.8. This is why we need to find a 117 - # binary that matches the provided cudaVersion. 118 - gpuSrcVersionString = "cuda${cudaVersion}-${pythonVersion}"; 119 - 120 - # Find new releases at https://storage.googleapis.com/jax-releases 121 - # When upgrading, you can get these hashes from prefetch.sh. See 122 - # https://github.com/google/jax/issues/12879 as to why this specific URL is the correct index. 123 - gpuSrcs = { 124 - "cuda12.2-3.9" = fetchurl { 125 - url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp39-cp39-manylinux2014_x86_64.whl"; 126 - hash = "sha256-d8LIl22gIvmWfoyKfXKElZJXicPQIZxdS4HumhwQGCw="; 127 - }; 128 - "cuda12.2-3.10" = fetchurl { 129 - url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp310-cp310-manylinux2014_x86_64.whl"; 130 - hash = "sha256-PXtWv+UEcMWF8LhWe6Z1UGkf14PG3dkJ0Iop0LiimnQ="; 131 - }; 132 - "cuda12.2-3.11" = fetchurl { 133 - url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp311-cp311-manylinux2014_x86_64.whl"; 134 - hash = "sha256-QO2WSOzmJ48VaCha596mELiOfPsAGLpGctmdzcCHE/o="; 135 - }; 136 - "cuda12.2-3.12" = fetchurl { 137 - url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp312-cp312-manylinux2014_x86_64.whl"; 138 - hash = "sha256-ixWMaIChy4Ammsn23/3cCoala0lFibuUxyUr3tjfFKU="; 139 - }; 140 - }; 141 155 in 142 156 buildPythonPackage { 143 157 pname = "jaxlib"; 144 158 inherit version; 145 159 format = "wheel"; 146 160 147 - disabled = 148 - !( 149 - pythonVersion == "3.9" 150 - || pythonVersion == "3.10" 151 - || pythonVersion == "3.11" 152 - || pythonVersion == "3.12" 153 - ); 154 - 155 161 # See https://discourse.nixos.org/t/ofborg-does-not-respect-meta-platforms/27019/6. 156 - src = 157 - if !cudaSupport then 158 - (cpuSrcs."${pythonVersion}-${stdenv.hostPlatform.system}" 159 - or (throw "jaxlib-bin is not supported on ${stdenv.hostPlatform.system}") 160 - ) 161 - else 162 - gpuSrcs."${gpuSrcVersionString}" or (throw "jaxlib-bin: No gpuSrc for ${gpuSrcVersionString}"); 162 + src = ( 163 + srcs."${pythonVersion}-${stdenv.hostPlatform.system}" 164 + or (throw "jaxlib-bin is not supported on ${stdenv.hostPlatform.system}") 165 + ); 163 166 164 167 # Prebuilt wheels are dynamically linked against things that nix can't find. 165 168 # Run `autoPatchelfHook` to automagically fix them. 166 - nativeBuildInputs = 167 - lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ] 168 - ++ lib.optionals cudaSupport [ autoAddDriverRunpath ]; 169 + nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]; 169 170 # Dynamic link dependencies 170 171 buildInputs = [ (lib.getLib stdenv.cc.cc) ]; 171 172 172 - # jaxlib contains shared libraries that open other shared libraries via dlopen 173 - # and these implicit dependencies are not recognized by ldd or 174 - # autoPatchelfHook. That means we need to sneak them into rpath. This step 175 - # must be done after autoPatchelfHook and the automatic stripping of 176 - # artifacts. autoPatchelfHook runs in postFixup and auto-stripping runs in the 177 - # patchPhase. 178 - preInstallCheck = lib.optional cudaSupport '' 179 - shopt -s globstar 180 - 181 - for file in $out/**/*.so; do 182 - patchelf --add-rpath "${cudaLibPath}" "$file" 183 - done 184 - ''; 185 - 186 - propagatedBuildInputs = [ 173 + dependencies = [ 187 174 absl-py 188 175 flatbuffers 189 176 ml-dtypes 190 177 scipy 191 178 ]; 192 179 193 - # jaxlib looks for ptxas at runtime, eg when running `jax.random.PRNGKey(0)`. 194 - # Linking into $out is the least bad solution. See 195 - # * https://github.com/NixOS/nixpkgs/pull/164176#discussion_r828801621 196 - # * https://github.com/NixOS/nixpkgs/pull/288829#discussion_r1493852211 197 - # for more info. 198 - postInstall = lib.optional cudaSupport '' 199 - mkdir -p $out/${python.sitePackages}/jaxlib/cuda/bin 200 - ln -s ${lib.getExe' cudaPackages.cuda_nvcc "ptxas"} $out/${python.sitePackages}/jaxlib/cuda/bin/ptxas 201 - ''; 180 + pythonImportsCheck = [ "jaxlib" ]; 202 181 203 - inherit (jaxlib-build) pythonImportsCheck; 204 - 205 - meta = with lib; { 182 + meta = { 206 183 description = "Prebuilt jaxlib backend from PyPi"; 207 184 homepage = "https://github.com/google/jax"; 208 - sourceProvenance = with sourceTypes; [ binaryNativeCode ]; 209 - license = licenses.asl20; 210 - maintainers = with maintainers; [ samuela ]; 211 - platforms = [ 212 - "aarch64-darwin" 213 - "x86_64-linux" 214 - "x86_64-darwin" 215 - ]; 216 - broken = 217 - !(cudaSupport -> lib.versionAtLeast cudaVersion "11.1") 218 - || !(cudaSupport -> lib.versionAtLeast cudaPackages.cudnn.version "8.2") 219 - || !(cudaSupport -> stdenv.hostPlatform.isLinux) 220 - || !(cudaSupport -> (gpuSrcs ? "cuda${cudaVersion}-${pythonVersion}")) 185 + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; 186 + license = lib.licenses.asl20; 187 + maintainers = with lib.maintainers; [ samuela ]; 188 + badPlatforms = [ 221 189 # Fails at pythonImportsCheckPhase: 222 190 # ...-python-imports-check-hook.sh/nix-support/setup-hook: line 10: 28017 Illegal instruction: 4 223 191 # /nix/store/5qpssbvkzfh73xih07xgmpkj5r565975-python3-3.11.9/bin/python3.11 -c 224 192 # 'import os; import importlib; list(map(lambda mod: importlib.import_module(mod), os.environ["pythonImportsCheck"].split()))' 225 - || (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64); 193 + "x86_64-darwin" 194 + ]; 226 195 }; 227 196 }
+13 -7
pkgs/development/python-modules/jaxlib/prefetch.sh
··· 2 2 #! nix-shell -i sh -p jq 3 3 4 4 prefetch () { 5 - expr="(import <nixpkgs> { system = \"$2\"; config.cudaSupport = $3; }).python$1.pkgs.jaxlib-bin.src.url" 5 + expr="(import <nixpkgs> { system = \"$2\"; config.cudaSupport = true; }).python$1.pkgs.$3.src.url" 6 6 url=$(NIX_PATH=.. nix-instantiate --eval -E "$expr" | jq -r) 7 7 echo "$url" 8 8 sha256=$(nix-prefetch-url "$url") 9 - nix hash to-sri --type sha256 "$sha256" 9 + nix hash convert --to sri --hash-algo sha256 "$sha256" 10 10 echo 11 11 } 12 12 13 - for py in "39" "310" "311" "312"; do 14 - prefetch "$py" "x86_64-linux" "false" 15 - prefetch "$py" "aarch64-darwin" "false" 16 - prefetch "$py" "x86_64-darwin" "false" 17 - prefetch "$py" "x86_64-linux" "true" 13 + for py in "310" "311" "312" "313"; do 14 + prefetch "$py" "x86_64-linux" "jaxlib-bin" 15 + prefetch "$py" "aarch64-linux" "jaxlib-bin" 16 + prefetch "$py" "aarch64-darwin" "jaxlib-bin" 17 + prefetch "$py" "x86_64-darwin" "jaxlib-bin" 18 + prefetch "$py" "x86_64-linux" "jax-cuda12-plugin" 19 + prefetch "$py" "aarch64-linux" "jax-cuda12-plugin" 20 + done 21 + 22 + for arch in "x86_64-linux" "aarch64-linux"; do 23 + prefetch "312" "$arch" "jax-cuda12-pjrt" 18 24 done
+40
pkgs/development/python-modules/jinja2-strcase/default.nix
··· 1 + { 2 + lib, 3 + buildPythonPackage, 4 + fetchPypi, 5 + freezegun, 6 + jinja2, 7 + pytestCheckHook, 8 + setuptools, 9 + }: 10 + 11 + buildPythonPackage rec { 12 + pname = "jinja2-strcase"; 13 + version = "0.0.2"; 14 + pyproject = true; 15 + 16 + src = fetchPypi { 17 + inherit pname version; 18 + hash = "sha256-2Qw3971A00WqzI94sIf2bmxapMloqyOnkVc/z3VsM3k="; 19 + }; 20 + 21 + build-system = [ setuptools ]; 22 + 23 + dependencies = [ jinja2 ]; 24 + 25 + nativeCheckInputs = [ 26 + freezegun 27 + pytestCheckHook 28 + ]; 29 + 30 + pythonImportsCheck = [ "jinja2_strcase" ]; 31 + 32 + doCheck = false; # no tests 33 + 34 + meta = { 35 + homepage = "https://github.com/marchmiel/jinja2-strcase"; 36 + description = "Library for converting string case in Jinja2 templates"; 37 + license = lib.licenses.mit; 38 + maintainers = with lib.maintainers; [ crimeminister ]; 39 + }; 40 + }
+21 -8
pkgs/development/python-modules/librosa/default.nix
··· 8 8 # build-system 9 9 setuptools, 10 10 11 - # runtime 11 + # dependencies 12 12 audioread, 13 13 decorator, 14 14 joblib, ··· 41 41 src = fetchFromGitHub { 42 42 owner = "librosa"; 43 43 repo = "librosa"; 44 - rev = "refs/tags/${version}"; 44 + tag = version; 45 45 fetchSubmodules = true; # for test data 46 46 hash = "sha256-0FbKVAFWmcFTW2dR27nif6hPZeIxFWYF1gTm4BEJZ/Q="; 47 47 }; 48 48 49 - nativeBuildInputs = [ setuptools ]; 49 + build-system = [ setuptools ]; 50 50 51 51 patches = [ 52 52 (fetchpatch2 { ··· 55 55 url = "https://github.com/librosa/librosa/commit/d0a12c87cdff715ffb8ac1c7383bba1031aa71e4.patch"; 56 56 hash = "sha256-NHuGo4U1FRikb5OIkycQBvuZ+0OdG/VykTcuhXkLUug="; 57 57 }) 58 + # Fix numpy2 test incompatibilities 59 + # TODO: remove when updating to the next release 60 + (fetchpatch2 { 61 + name = "numpy2-support-tests"; 62 + url = "https://github.com/librosa/librosa/commit/7eb0a09e703a72a5979049ec546a522c70285aff.patch"; 63 + hash = "sha256-m9UpSDKOAr7qzTtahVQktu259cp8QDYjDChpQV0xuY0="; 64 + }) 58 65 ]; 59 66 60 67 postPatch = '' ··· 69 62 --replace-fail "--cov-report term-missing --cov librosa --cov-report=xml " "" 70 63 ''; 71 64 72 - propagatedBuildInputs = [ 65 + dependencies = [ 73 66 audioread 74 67 decorator 75 68 joblib ··· 100 93 ] ++ optional-dependencies.matplotlib; 101 94 102 95 preCheck = '' 103 - export HOME=$TMPDIR 96 + export HOME=$(mktemp -d) 104 97 ''; 105 98 106 99 disabledTests = ··· 124 117 "test_unknown_axis" 125 118 "test_axis_bound_warning" 126 119 "test_auto_aspect" 120 + ] 121 + ++ lib.optionals (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) [ 122 + # Flaky (numerical comparison fails) 123 + "test_istft_multi" 124 + "test_pitch_shift_multi" 125 + "test_time_stretch_multi" 127 126 ]; 128 127 129 - meta = with lib; { 128 + meta = { 130 129 description = "Python library for audio and music analysis"; 131 130 homepage = "https://github.com/librosa/librosa"; 132 131 changelog = "https://github.com/librosa/librosa/releases/tag/${version}"; 133 - license = licenses.isc; 134 - maintainers = with maintainers; [ GuillaumeDesforges ]; 132 + license = lib.licenses.isc; 133 + maintainers = with lib.maintainers; [ GuillaumeDesforges ]; 135 134 }; 136 135 }
+105
pkgs/development/python-modules/locust/default.nix
··· 1 + { 2 + lib, 3 + buildPythonPackage, 4 + python, 5 + callPackage, 6 + fetchFromGitHub, 7 + poetry-core, 8 + poetry-dynamic-versioning, 9 + pytestCheckHook, 10 + configargparse, 11 + cryptography, 12 + flask, 13 + flask-cors, 14 + flask-login, 15 + gevent, 16 + geventhttpclient, 17 + msgpack, 18 + psutil, 19 + pyquery, 20 + pyzmq, 21 + requests, 22 + retry, 23 + tomli, 24 + werkzeug, 25 + }: 26 + 27 + buildPythonPackage rec { 28 + pname = "locust"; 29 + version = "2.31.2"; 30 + pyproject = true; 31 + 32 + src = fetchFromGitHub { 33 + owner = "locustio"; 34 + repo = "locust"; 35 + rev = "refs/tags/${version}"; 36 + hash = "sha256-xDquVQjkWVER9h0a6DHWRZH6KtRf0jsThycSojDEdh4="; 37 + }; 38 + 39 + postPatch = '' 40 + substituteInPlace pyproject.toml \ 41 + --replace-fail 'script = "pre_build.py"' "" 42 + 43 + substituteInPlace locust/test/test_main.py \ 44 + --replace-fail '"locust"' '"${placeholder "out"}/bin/locust"' 45 + 46 + substituteInPlace locust/test/test_log.py \ 47 + --replace-fail '"locust"' '"${placeholder "out"}/bin/locust"' 48 + ''; 49 + 50 + webui = callPackage ./webui.nix { 51 + inherit version; 52 + src = "${src}/locust/webui"; 53 + }; 54 + 55 + preBuild = '' 56 + mkdir -p $out/${python.sitePackages}/${pname} 57 + ln -sf ${webui} $out/${python.sitePackages}/${pname}/webui 58 + ''; 59 + 60 + build-system = [ 61 + poetry-core 62 + poetry-dynamic-versioning 63 + ]; 64 + 65 + pythonRelaxDeps = [ 66 + # version 0.7.0.dev0 is not considered to be >= 0.6.3 67 + "flask-login" 68 + ]; 69 + 70 + dependencies = [ 71 + configargparse 72 + flask 73 + flask-cors 74 + flask-login 75 + gevent 76 + geventhttpclient 77 + msgpack 78 + psutil 79 + pyzmq 80 + requests 81 + tomli 82 + werkzeug 83 + ]; 84 + 85 + pythonImportsCheck = [ "locust" ]; 86 + 87 + nativeCheckInputs = [ 88 + cryptography 89 + pyquery 90 + pytestCheckHook 91 + retry 92 + ]; 93 + 94 + # locust's test suite is very flaky, due to heavy reliance on timing-based tests and access to the 95 + # network. 96 + doCheck = false; 97 + 98 + meta = { 99 + description = "Developer-friendly load testing framework"; 100 + homepage = "https://docs.locust.io/"; 101 + changelog = "https://github.com/locustio/locust/blob/${version}/CHANGELOG.md"; 102 + license = lib.licenses.mit; 103 + maintainers = with lib.maintainers; [ jokatzke ]; 104 + }; 105 + }
+32
pkgs/development/python-modules/locust/webui.nix
··· 1 + { 2 + stdenv, 3 + fetchYarnDeps, 4 + yarnConfigHook, 5 + yarnBuildHook, 6 + nodejs, 7 + version, 8 + src, 9 + }: 10 + 11 + stdenv.mkDerivation (finalAttrs: { 12 + pname = "locust-ui"; 13 + inherit version src; 14 + 15 + yarnOfflineCache = fetchYarnDeps { 16 + yarnLock = "${finalAttrs.src}/yarn.lock"; 17 + hash = "sha256-ek02mjB8DsBUOR28WSuqj6oVvxTq8EKTNXWFFI3OhuU="; 18 + }; 19 + 20 + nativeBuildInputs = [ 21 + yarnConfigHook 22 + yarnBuildHook 23 + nodejs 24 + ]; 25 + 26 + dontNpmPrune = true; 27 + yarnBuildScript = "build"; 28 + postInstall = '' 29 + mkdir -p $out/dist 30 + cp -r dist/** $out/dist 31 + ''; 32 + })
+1 -4
pkgs/development/python-modules/nifty8/default.nix
··· 1 1 { 2 - config, 3 2 lib, 4 3 stdenv, 5 4 buildPythonPackage, 6 5 fetchFromGitLab, 7 - 8 - cudaSupport ? config.cudaSupport, 9 6 10 7 # build-system 11 8 setuptools, ··· 45 48 ducc0 46 49 h5py 47 50 jax 48 - (jaxlib.override { inherit cudaSupport; }) 51 + jaxlib 49 52 matplotlib 50 53 mpi4py 51 54 mpi
+4 -2
pkgs/development/python-modules/ollama/default.nix
··· 5 5 httpx, 6 6 pillow, 7 7 poetry-core, 8 + pydantic, 8 9 pytest-asyncio, 9 10 pytest-httpserver, 10 11 pytestCheckHook, ··· 14 13 15 14 buildPythonPackage rec { 16 15 pname = "ollama"; 17 - version = "0.3.3"; 16 + version = "0.4.4"; 18 17 pyproject = true; 19 18 20 19 disabled = pythonOlder "3.8"; ··· 23 22 owner = "ollama"; 24 23 repo = "ollama-python"; 25 24 rev = "refs/tags/v${version}"; 26 - hash = "sha256-27OJwPvHBxCdaiHk8EQ2s1OeBzgsrzp1MjgKHNgvz+A="; 25 + hash = "sha256-GW/4adrU6/4cM96U6A8Btgv7Qt1jtSFJr9F8+zwTEpk="; 27 26 }; 28 27 29 28 postPatch = '' ··· 39 38 40 39 nativeCheckInputs = [ 41 40 pillow 41 + pydantic 42 42 pytest-asyncio 43 43 pytest-httpserver 44 44 pytestCheckHook
+10 -6
pkgs/development/python-modules/pymunk/default.nix
··· 4 4 buildPythonPackage, 5 5 fetchPypi, 6 6 python, 7 + setuptools, 7 8 cffi, 8 9 pytestCheckHook, 9 10 pythonOlder, ··· 13 12 14 13 buildPythonPackage rec { 15 14 pname = "pymunk"; 16 - version = "6.5.2"; 17 - format = "setuptools"; 15 + version = "6.9.0"; 16 + pyproject = true; 18 17 19 - disabled = pythonOlder "3.7"; 18 + disabled = pythonOlder "3.8"; 20 19 21 20 src = fetchPypi { 22 21 inherit pname version; 23 - extension = "zip"; 24 - hash = "sha256-AV6upaZcnbKmQm9tTItRB6LpckappjdHvMH/awn/KeE="; 22 + hash = "sha256-dl98VhqFmhtWW8UXpHzDmS1iWOhg+RdMUzAzwhivY8M="; 25 23 }; 26 24 27 - propagatedBuildInputs = [ cffi ]; 25 + nativeBuildInputs = [ cffi ]; 26 + 27 + build-system = [ setuptools ]; 28 + 29 + dependencies = [ cffi ]; 28 30 29 31 buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ ApplicationServices ]; 30 32
+3 -3
pkgs/development/python-modules/tree-sitter-html/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "tree-sitter-html"; 11 - version = "0.20.3"; 11 + version = "0.23.2"; 12 12 pyproject = true; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "tree-sitter"; 16 16 repo = "tree-sitter-html"; 17 - rev = "v${version}"; 18 - hash = "sha256-sHy3fVWemJod18HCQ8zBC/LpeCCPH0nzhI1wrkCg8nw="; 17 + tag = "v${version}"; 18 + hash = "sha256-Pd5Me1twLGOrRB3pSMVX9M8VKenTK0896aoLznjNkGo="; 19 19 }; 20 20 21 21 build-system = [
+3 -3
pkgs/development/python-modules/tree-sitter-json/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "tree-sitter-json"; 11 - version = "0.21.0"; 11 + version = "0.24.8"; 12 12 pyproject = true; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "tree-sitter"; 16 16 repo = "tree-sitter-json"; 17 - rev = "v${version}"; 18 - hash = "sha256-waejAbS7MjrE7w03MPqvBRpEpqTcKc6RgKCVSYaDV1Y="; 17 + tag = "v${version}"; 18 + hash = "sha256-DNZC2cTy1C8OaMOpEHM6NoRtOIbLaBf0CLXXWCKODlw="; 19 19 }; 20 20 21 21 build-system = [
+3 -3
pkgs/development/python-modules/tree-sitter-python/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "tree-sitter-python"; 11 - version = "0.23.2"; 11 + version = "0.23.6"; 12 12 pyproject = true; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "tree-sitter"; 16 16 repo = "tree-sitter-python"; 17 - rev = "v${version}"; 18 - hash = "sha256-cOBG2xfFJ0PpR1RIKW1GeeNeOBA9DAP/N4RXRGYp3yw="; 17 + tag = "v${version}"; 18 + hash = "sha256-71Od4sUsxGEvTwmXX8hBvzqD55hnXkVJublrhp1GICg="; 19 19 }; 20 20 21 21 build-system = [
+3 -3
pkgs/development/python-modules/tree-sitter-rust/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "tree-sitter-rust"; 11 - version = "0.21.2"; 11 + version = "0.23.2"; 12 12 pyproject = true; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "tree-sitter"; 16 16 repo = "tree-sitter-rust"; 17 - rev = "v${version}"; 18 - hash = "sha256-4CTh6fKSV8TuMHLAfEKWsAeCqeCM2uo6hVmF5KWhyPY="; 17 + tag = "v${version}"; 18 + hash = "sha256-aT+tlrEKMgWqTEq/NHh8Vj92h6i1aU6uPikDyaP2vfc="; 19 19 }; 20 20 21 21 build-system = [
+3 -3
pkgs/development/python-modules/whenever/default.nix
··· 20 20 21 21 buildPythonPackage rec { 22 22 pname = "whenever"; 23 - version = "0.6.15"; 23 + version = "0.6.16"; 24 24 pyproject = true; 25 25 26 26 disabled = pythonOlder "3.9"; ··· 29 29 owner = "ariebovenberg"; 30 30 repo = "whenever"; 31 31 rev = "refs/tags/${version}"; 32 - hash = "sha256-zCtHvgAQ05zmT6U7CAspG65fE4tPyS/+/gId048DbeA="; 32 + hash = "sha256-aTFbO3mBcX+a9Zqp7SXjEx2+ix+J8g4n8V3KEyatAXY="; 33 33 }; 34 34 35 35 cargoDeps = rustPlatform.fetchCargoTarball { 36 36 inherit src; 37 - hash = "sha256-sCwjo3KU4u+2FsWz8CJiqXKSaIKX6DFe1eCkIzRXF3s="; 37 + hash = "sha256-8xSw7VEfRKXMpwn7HKhrvgLV3Sy3TAmLHjm0WZF/2aY="; 38 38 }; 39 39 40 40 build-system = [
+35 -1
pkgs/development/tools/electron/common.nix
··· 4 4 chromium, 5 5 nodejs, 6 6 python3, 7 + fetchpatch, 7 8 fetchYarnDeps, 8 9 fetchNpmDeps, 9 10 fixup-yarn-lock, ··· 60 59 61 60 src = null; 62 61 63 - patches = base.patches; 62 + patches = 63 + base.patches 64 + ++ lib.optionals (lib.versionOlder info.version "32") [ 65 + # Backport a few fixes for -Wmissing-template-arg-list-after-template-kw 66 + # which only effects the soon-to-be-EOLed electron 31 (chromium M126). 67 + # https://issues.chromium.org/issues/344680447 68 + 69 + # https://chromium-review.googlesource.com/c/chromium/src/+/5604664 70 + (fetchpatch { 71 + url = "https://github.com/chromium/chromium/commit/b0088fa60970412160535c367e2ff53b25b8538e.patch"; 72 + hash = "sha256-eEYO+IN1062iCqVr6eO3UZlGLN376lMXc6UQunJGpdQ="; 73 + }) 74 + 75 + # https://android-review.googlesource.com/c/platform/external/perfetto/+/3114454 76 + (fetchpatch { 77 + name = "perfetto-e2f661907a717551235563389977b7468da6d45e.patch"; 78 + url = "https://android.googlesource.com/platform/external/perfetto/+/e2f661907a717551235563389977b7468da6d45e^!?format=TEXT"; 79 + decode = "base64 -d"; 80 + stripLen = 1; 81 + extraPrefix = "third_party/perfetto/"; 82 + hash = "sha256-5zSAZZI1tR7O4Aui22T/6uyk0RpuIy7XqDD0nwlDySQ="; 83 + }) 84 + 85 + ./electron-31-perfetto-missing-template-arg-list.patch 86 + 87 + # And a finally fix for -Winvalid-constexpr that is happening within the electron patchset. 88 + # https://github.com/electron/electron/pull/42413/commits/394a26f94a3fbce91e15e80e8e73b9a3ec1f04d1 89 + (fetchpatch { 90 + url = "https://github.com/electron/electron/commit/394a26f94a3fbce91e15e80e8e73b9a3ec1f04d1.patch"; 91 + stripLen = 1; 92 + extraPrefix = "electron/"; 93 + hash = "sha256-lllUUDm1thnC+rH8hBtPBVLRx6Pis5TPEUeQli9z1Mk="; 94 + }) 95 + ]; 64 96 65 97 unpackPhase = 66 98 ''
+13
pkgs/development/tools/electron/electron-31-perfetto-missing-template-arg-list.patch
··· 1 + diff --git a/include/perfetto/tracing/internal/track_event_data_source.h b/include/perfetto/tracing/internal/track_event_data_source.h 2 + index 1d924b271..dba896262 100644 3 + --- a/third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h 4 + +++ b/third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h 5 + @@ -1061,7 +1061,7 @@ class TrackEventDataSource 6 + const TrackType& track, 7 + std::function<void(protos::pbzero::TrackDescriptor*)> callback) { 8 + TrackRegistry::Get()->UpdateTrack(track, std::move(callback)); 9 + - Base::template Trace([&](typename Base::TraceContext ctx) { 10 + + Base::Trace([&](typename Base::TraceContext ctx) { 11 + TrackEventInternal::WriteTrackDescriptor( 12 + track, ctx.tls_inst_->trace_writer.get(), ctx.GetIncrementalState(), 13 + *ctx.GetCustomTlsState(), TrackEventInternal::GetTraceTime());
+3 -3
pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix
··· 6 6 7 7 buildNpmPackage rec { 8 8 pname = "universal-remote-card"; 9 - version = "4.3.1"; 9 + version = "4.3.3"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "Nerwyn"; 13 13 repo = "android-tv-card"; 14 14 rev = version; 15 - hash = "sha256-w8bA+Jzs72RWPw26YoBYz1YtY7a1zXEA1+gWpSVjVNI="; 15 + hash = "sha256-MNEu/2GyRqyaLgaEtDQT53Bjjxbd+ZUJtLJNmSTriig="; 16 16 }; 17 17 18 18 patches = [ ./dont-call-git.patch ]; 19 19 20 - npmDepsHash = "sha256-ha/P47C88HVrSZK5vQXdMUhIoqnP0cspwoLYzVM+mVI="; 20 + npmDepsHash = "sha256-gYXF7yqpjas797v74HTEw7qv8b7ZLb956qqJzbsGUXg="; 21 21 22 22 installPhase = '' 23 23 runHook preInstall
+3 -3
pkgs/servers/mautrix-signal/default.nix
··· 16 16 17 17 buildGoModule rec { 18 18 pname = "mautrix-signal"; 19 - version = "0.7.3"; 19 + version = "0.7.4"; 20 20 21 21 src = fetchFromGitHub { 22 22 owner = "mautrix"; 23 23 repo = "signal"; 24 24 rev = "v${version}"; 25 - hash = "sha256-VU0VZkh1sjOuSI+/JXZKWQF5pZ3NebBFbDdsOgaocg4="; 25 + hash = "sha256-1UI2oYDnmwy9+URBMA2yTBMEoFsE8qnkhn7E0l/lOTs="; 26 26 }; 27 27 28 28 buildInputs = ··· 38 38 39 39 CGO_LDFLAGS = lib.optional withGoolm [ "-lstdc++" ]; 40 40 41 - vendorHash = "sha256-fERAigormEy6+240AOkMyrjMDj5/eU0Lo4wD0AuAn+4="; 41 + vendorHash = "sha256-ADuW6KMNUwJeGqFlQsJ8qSI0alPQpSAFx1zrhwsAmsI="; 42 42 43 43 doCheck = true; 44 44 preCheck =
+6
pkgs/servers/web-apps/wordpress/packages/plugins.json
··· 197 197 "sha256": "1svp2a3xr6ajfhabz2n4rqcf9bzfr9dilc2n27ral9akc86lj1ii", 198 198 "version": "5.3.2" 199 199 }, 200 + "wp-fail2ban-addon-contact-form-7": { 201 + "path": "wp-fail2ban-addon-contact-form-7/tags/2.0.0", 202 + "rev": "3069647", 203 + "sha256": "05qfh64dja3dbzs4z7y0gn9b0bm2a03babr3qkjn6g9v4wa6m36i", 204 + "version": "2.0.0" 205 + }, 200 206 "wp-fastest-cache": { 201 207 "path": "wp-fastest-cache/tags/1.3.2", 202 208 "rev": "3181365",
+1
pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
··· 32 32 , "worker": "gpl3Plus" 33 33 , "wp-change-email-sender": "gpl2Plus" 34 34 , "wp-fail2ban": "gpl3Plus" 35 + , "wp-fail2ban-addon-contact-form-7": "gpl3Plus" 35 36 , "wp-fastest-cache": "gpl2Plus" 36 37 , "wp-gdpr-compliance": "gpl2Plus" 37 38 , "wp-import-export-lite": "gpl3Plus"
-161
pkgs/tools/archivers/arj/default.nix
··· 1 - { 2 - stdenv, 3 - lib, 4 - fetchurl, 5 - fetchpatch, 6 - autoreconfHook, 7 - }: 8 - 9 - stdenv.mkDerivation rec { 10 - pname = "arj"; 11 - version = "3.10.22"; 12 - 13 - src = fetchurl { 14 - url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz"; 15 - sha256 = "1nx7jqxwqkihhdmdbahhzqhjqshzw1jcsvwddmxrwrn8rjdlr7jq"; 16 - }; 17 - 18 - patches = [ 19 - (fetchpatch { 20 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/001_arches_align.patch"; 21 - sha256 = "0i3qclm2mh98c04rqpx1r4qagd3wpxlkj7lvq0ddpkmr8bm0fh0m"; 22 - }) 23 - 24 - (fetchpatch { 25 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/002_no_remove_static_const.patch"; 26 - sha256 = "0zfjqmjsj0y1kfzxbp29v6nxq5qwgazhb9clqc544sm5zn0bdp8n"; 27 - }) 28 - 29 - (fetchpatch { 30 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/003_64_bit_clean.patch"; 31 - sha256 = "0mda9fkaqf2s1xl6vlbkbq20362h3is9dpml9kfmacpbifl4dx3n"; 32 - }) 33 - 34 - (fetchpatch { 35 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/004_parallel_build.patch"; 36 - sha256 = "0gam6k7jknzmbjlf1r6c9kjh5s5h76pd31v59cnaqiycwiy8z6q9"; 37 - }) 38 - 39 - (fetchpatch { 40 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/005_use_system_strnlen.patch"; 41 - sha256 = "0q0ypm8mdsxd0rl1k0id6fdx5m7mvqgwcla4r250cmc6zqzpib6d"; 42 - }) 43 - 44 - (fetchpatch { 45 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/006_use_safe_strcpy.patch"; 46 - sha256 = "1garad95s34cix3kd77lz37andrcnz19glzkfdnkjaq7ldvzwikc"; 47 - }) 48 - 49 - (fetchpatch { 50 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/hurd_no_fcntl_getlk.patch"; 51 - sha256 = "0b3hpn4qypimrw9ar2n4h24886sl6pmim4lb4ly1wqcq0f73arva"; 52 - }) 53 - 54 - (fetchpatch { 55 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/security_format.patch"; 56 - sha256 = "0q67cvln55p38bm0xwd2cgppqmkp2nfar2pg1zj78f7ncn35lbvf"; 57 - }) 58 - 59 - (fetchpatch { 60 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/doc_refer_robert_k_jung.patch"; 61 - sha256 = "1wxdx0m6a9vdvjlaycwsissn75l1ni7grg8n6qmkynz2vrcvgzb1"; 62 - }) 63 - 64 - (fetchpatch { 65 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_fix.patch"; 66 - sha256 = "19ycp1rak7l6ql28m50v95ls621w3sl8agw5r5va73svkgh8hc3g"; 67 - }) 68 - 69 - (fetchpatch { 70 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_flags.patch"; 71 - sha256 = "1jw1y9i9lw1idgi4l9cycwsql1hcz1m4f3k2iybwsgx0acaw695q"; 72 - }) 73 - 74 - (fetchpatch { 75 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_strip.patch"; 76 - sha256 = "1b18khj6cxnjyqk2ycygwqlcs20hrsbf4h6bckl99dxnpbq5blxi"; 77 - }) 78 - 79 - (fetchpatch { 80 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_pie.patch"; 81 - sha256 = "1jqswxgc1plipblf055n9175fbanfi6fb67lnzk8dcvxjn227fs3"; 82 - }) 83 - 84 - (fetchpatch { 85 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/self_integrity_64bit.patch"; 86 - sha256 = "0s5zdq81a0f83hdg9hy6lqn3xvckx9y9r20awczm9mbf11vi01cb"; 87 - }) 88 - 89 - (fetchpatch { 90 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/security-afl.patch"; 91 - sha256 = "0yajcwpghij8wg21a0kkp3f9x7anz5m121jx2vnkyn04bvi9541a"; 92 - }) 93 - 94 - (fetchpatch { 95 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/security-traversal-dir.patch"; 96 - sha256 = "10lv3867k0wm2s0cyf40hkxfqbjaxm4aph5ivk2q2rjkracrn2y4"; 97 - }) 98 - 99 - (fetchpatch { 100 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/security-traversal-symlink.patch"; 101 - sha256 = "095pdfskxwh0jnyy31dpz10s2ppv8n7lvvn4q722y3g71d0c79qq"; 102 - }) 103 - 104 - (fetchpatch { 105 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/out-of-bounds-read.patch"; 106 - sha256 = "0ps9lqkbqzlhzr2bnr47sir431z1nywr7nagkmk42iki4d96v0jq"; 107 - }) 108 - 109 - (fetchpatch { 110 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/remove_build_date.patch"; 111 - sha256 = "1vjlfq6firxpj068l9acyqs77mfydn1rwgr2jmxgsy9mq0fw1dsc"; 112 - }) 113 - 114 - (fetchpatch { 115 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/reproducible_help_archive.patch"; 116 - sha256 = "0l3qi9f140pwc6fk8qdbxx4g9d8zlf45asimmr8wfpbi4pf59n8i"; 117 - }) 118 - 119 - (fetchpatch { 120 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_cross.patch"; 121 - sha256 = "1vb0vbh3jbxj192q47vg3f41l343ghcz2ypbrrm2bkbpwm5cl8qr"; 122 - }) 123 - 124 - (fetchpatch { 125 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/fix-time_t-usage.patch"; 126 - sha256 = "012c6pnf5y4jwn715kxn3vjy088rm905959j6yh8bslyx84qaijv"; 127 - }) 128 - 129 - (fetchpatch { 130 - url = "https://sources.debian.org/data/main/a/arj/3.10.22-24/debian/patches/gnu_build_fix_autoreconf.patch"; 131 - sha256 = "0yhxbdasnbqcg1nyx2379fpbr7fmdlv4n2nlxrv1z1vbc7rlvw9d"; 132 - }) 133 - ]; 134 - 135 - nativeBuildInputs = [ autoreconfHook ]; 136 - 137 - postPatch = lib.optionalString stdenv.hostPlatform.isDarwin '' 138 - substituteInPlace environ.c \ 139 - --replace " #include <sys/statfs.h>" " #include <sys/mount.h>" 140 - ''; 141 - 142 - preAutoreconf = '' 143 - cd gnu 144 - ''; 145 - 146 - postConfigure = '' 147 - cd .. 148 - ''; 149 - 150 - meta = with lib; { 151 - description = "Open-source implementation of the world-famous ARJ archiver"; 152 - longDescription = '' 153 - This version of ARJ has been created with an intent to preserve maximum 154 - compatibility and retain the feature set of the original ARJ archiver as 155 - provided by ARJ Software, Inc. 156 - ''; 157 - license = licenses.gpl2Plus; 158 - maintainers = [ maintainers.sander ]; 159 - platforms = platforms.unix; 160 - }; 161 - }
+21 -8
pkgs/tools/package-management/apt-dater/default.nix pkgs/by-name/ap/apt-dater/package.nix
··· 10 10 libxml2, 11 11 ncurses, 12 12 popt, 13 + libxslt, 13 14 screen, 14 15 }: 15 16 16 17 stdenv.mkDerivation rec { 17 18 pname = "apt-dater"; 18 - version = "1.0.4"; 19 + version = "1.0.4-unstable-2024-10-04"; 19 20 20 21 src = fetchFromGitHub { 21 22 owner = "DE-IBH"; 22 23 repo = "apt-dater"; 23 - rev = "v${version}"; 24 - sha256 = "1r6gz9jkh1wxi11mcq5p9mqg0szclsaq8ic79vnfnbjdrmmdfi4y"; 24 + rev = "113ea9b72d318f316ea7cac8ddad5be004787a22"; 25 + hash = "sha256-/Ufa/pEbqD25kp+k0zm9MuLS1zG+xWqhpBkL7ng2+Bo="; 25 26 }; 26 27 27 28 nativeBuildInputs = [ ··· 44 43 45 44 prePatch = '' 46 45 substituteInPlace etc/Makefile.am \ 47 - --replace 02770 0770 46 + --replace-fail 02770 0770 48 47 ''; 49 48 50 49 postPatch = '' 51 50 substituteInPlace configure.ac \ 52 - --replace "/usr/bin/screen" "${screen}/bin/screen" 51 + --replace-fail "/usr/bin/screen" "${screen}/bin/screen" \ 52 + --replace-fail "/usr/bin/xsltproc" "${libxslt}/bin/xsltproc" \ 53 + --replace-fail "man/Makefile" "" # Need /usr/share/xml/docbook/stylesheet/nwalsh can't find in nixpkgs 54 + substituteInPlace Makefile.am \ 55 + --replace-fail "man" "" 56 + substituteInPlace build/screen_sockpath \ 57 + --replace-fail "/usr/bin/screen" "${screen}/bin/screen" 58 + ''; 59 + 60 + postInstall = '' 61 + substituteInPlace $out/bin/adsh \ 62 + --replace-fail "apt-dater" "$out/bin/apt-dater" 53 63 ''; 54 64 55 65 doCheck = true; 56 66 57 - meta = with lib; { 67 + meta = { 58 68 homepage = "https://github.com/DE-IBH/apt-dater"; 59 69 description = "Terminal-based remote package update manager"; 60 70 longDescription = '' ··· 73 61 number of remote hosts using SSH. It supports Debian-based managed hosts 74 62 as well as rug (e.g. openSUSE) and yum (e.g. CentOS) based systems. 75 63 ''; 76 - license = licenses.gpl2Plus; 77 - maintainers = with maintainers; [ c0bw3b ]; 64 + license = lib.licenses.gpl2Plus; 65 + mainProgram = "apt-dater"; 66 + maintainers = with lib.maintainers; [ c0bw3b ]; 78 67 }; 79 68 }
+1
pkgs/top-level/aliases.nix
··· 438 438 gcj = gcj6; # Added 2024-09-13 439 439 gcj6 = throw "gcj6 has been removed from Nixpkgs, as it is unmaintained and obsolete"; # Added 2024-09-13 440 440 gcolor2 = throw "'gcolor2' has been removed due to lack of maintenance upstream and depending on gtk2. Consider using 'gcolor3' or 'eyedropper' instead"; # Added 2024-09-15 441 + gdome2 = throw "'gdome2' has been removed from nixpkgs, as it is umaintained and obsolete"; # Added 2024-12-29 441 442 geos_3_11 = throw "geos_3_11 has been removed from nixpgks. Please use a more recent 'geos' instead."; 442 443 gfortran48 = throw "'gfortran48' has been removed from nixpkgs"; # Added 2024-09-10 443 444 gfortran49 = throw "'gfortran49' has been removed from nixpkgs"; # Added 2024-09-11
-15
pkgs/top-level/all-packages.nix
··· 1647 1647 1648 1648 apitrace = libsForQt5.callPackage ../applications/graphics/apitrace { }; 1649 1649 1650 - arj = callPackage ../tools/archivers/arj { 1651 - stdenv = gccStdenv; 1652 - }; 1653 - 1654 1650 arpack-mpi = arpack.override { useMpi = true; }; 1655 1651 1656 1652 inherit (callPackages ../data/fonts/arphic {}) ··· 1722 1726 amule-web = amule.override { 1723 1727 monolithic = false; 1724 1728 httpServer = true; 1725 - }; 1726 - 1727 - apt-dater = callPackage ../tools/package-management/apt-dater { 1728 - autoreconfHook = buildPackages.autoreconfHook269; 1729 1729 }; 1730 1730 1731 1731 bashate = python3Packages.callPackage ../development/tools/bashate { ··· 3405 3413 }; 3406 3414 3407 3415 uniscribe = callPackage ../tools/text/uniscribe { }; 3408 - 3409 - gallery-dl = python3Packages.callPackage ../applications/misc/gallery-dl { }; 3410 3416 3411 3417 gandi-cli = python3Packages.callPackage ../tools/networking/gandi-cli { }; 3412 3418 ··· 15972 15982 15973 15983 wordnet = callPackage ../applications/misc/wordnet { 15974 15984 inherit (darwin.apple_sdk.frameworks) Cocoa; 15975 - }; 15976 - 15977 - workrave = callPackage ../applications/misc/workrave { 15978 - inherit (python3Packages) jinja2; 15979 - inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good; 15980 15985 }; 15981 15986 15982 15987 worldengine-cli = python3Packages.worldengine;
+3 -3
pkgs/top-level/perl-packages.nix
··· 18741 18741 18742 18742 NetDNS = buildPerlPackage { 18743 18743 pname = "Net-DNS"; 18744 - version = "1.44"; 18744 + version = "1.48"; 18745 18745 src = fetchurl { 18746 - url = "mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-1.44.tar.gz"; 18747 - hash = "sha256-E9ftxLjOoBMhR/qsNXH2s8cdHQz9hExTDFoET0o+wx4="; 18746 + url = "mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-1.48.tar.gz"; 18747 + hash = "sha256-5V8+caMcK4VgJL9QYbEWCwP4edgBNUFPONgiBHaUR1M="; 18748 18748 }; 18749 18749 propagatedBuildInputs = [ DigestHMAC ]; 18750 18750 makeMakerFlags = [ "--noonline-tests" ];
+14 -15
pkgs/top-level/python-packages.nix
··· 4776 4776 4777 4777 flet = callPackage ../development/python-modules/flet { }; 4778 4778 4779 - flet-core = callPackage ../development/python-modules/flet-core { }; 4779 + flet-cli = callPackage ../development/python-modules/flet-cli { }; 4780 4780 4781 - flet-runtime = callPackage ../development/python-modules/flet-runtime { }; 4781 + flet-desktop = callPackage ../development/python-modules/flet-desktop { }; 4782 + 4783 + flet-web = callPackage ../development/python-modules/flet-web { }; 4782 4784 4783 4785 flexcache = callPackage ../development/python-modules/flexcache { }; 4784 4786 ··· 6562 6560 6563 6561 jax = callPackage ../development/python-modules/jax { }; 6564 6562 6563 + jax-cuda12-pjrt = callPackage ../development/python-modules/jax-cuda12-pjrt { }; 6564 + 6565 + jax-cuda12-plugin = callPackage ../development/python-modules/jax-cuda12-plugin { }; 6566 + 6565 6567 jax-jumpy = callPackage ../development/python-modules/jax-jumpy { }; 6566 6568 6567 - jaxlib-bin = callPackage ../development/python-modules/jaxlib/bin.nix { 6568 - inherit (pkgs.config) cudaSupport; 6569 - }; 6569 + jaxlib-bin = callPackage ../development/python-modules/jaxlib/bin.nix { }; 6570 6570 6571 6571 jaxlib-build = callPackage ../development/python-modules/jaxlib rec { 6572 6572 # Some platforms don't have `cudaSupport` defined, hence the need for 'or false'. ··· 6576 6572 IOKit = pkgs.darwin.apple_sdk_11_0.IOKit; 6577 6573 }; 6578 6574 6579 - # Use the -bin on macOS since the source build doesn't support it (see #323154) 6580 - jaxlib = if jaxlib-build.meta.unsupported then jaxlib-bin else jaxlib-build; 6581 - 6582 - jaxlibWithCuda = self.jaxlib.override { 6583 - cudaSupport = true; 6584 - }; 6585 - 6586 - jaxlibWithoutCuda = self.jaxlib.override { 6587 - cudaSupport = false; 6588 - }; 6575 + jaxlib = jaxlib-bin; 6589 6576 6590 6577 jaxopt = callPackage ../development/python-modules/jaxopt { }; 6591 6578 ··· 6619 6624 jinja2-git = callPackage ../development/python-modules/jinja2-git { }; 6620 6625 6621 6626 jinja2-pluralize = callPackage ../development/python-modules/jinja2-pluralize { }; 6627 + 6628 + jinja2-strcase = callPackage ../development/python-modules/jinja2-strcase { }; 6622 6629 6623 6630 jinja2-time = callPackage ../development/python-modules/jinja2-time { }; 6624 6631 ··· 7644 7647 locket = callPackage ../development/python-modules/locket { }; 7645 7648 7646 7649 lockfile = callPackage ../development/python-modules/lockfile { }; 7650 + 7651 + locust = callPackage ../development/python-modules/locust { }; 7647 7652 7648 7653 log-symbols = callPackage ../development/python-modules/log-symbols { }; 7649 7654