lol
0
fork

Configure Feed

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

Merge remote-tracking branch 'origin/staging-next' into staging

K900 678cac2a 951a4be3

+2708 -4111
+8
maintainers/maintainer-list.nix
··· 6722 6722 drakon64 = { 6723 6723 name = "Adam Chance"; 6724 6724 email = "nixpkgs@drakon.cloud"; 6725 + github = "drakon64"; 6725 6726 githubId = 6444703; 6726 6727 }; 6727 6728 dramaturg = { ··· 23224 23225 name = "Zhifan"; 23225 23226 email = "nonno.felice69uwu@gmail.com"; 23226 23227 matrix = "@c3n21:matrix.org"; 23228 + github = "c3n21"; 23227 23229 githubId = 37077738; 23228 23230 }; 23229 23231 sinjin2300 = { ··· 24954 24956 github = "theobori"; 24955 24957 githubId = 71843723; 24956 24958 keys = [ { fingerprint = "EEFB CC3A C529 CFD1 943D A75C BDD5 7BE9 9D55 5965"; } ]; 24959 + }; 24960 + theonlymrcat = { 24961 + name = "Max Guppy"; 24962 + email = "theonly@mrcat.au"; 24963 + github = "TheOnlyMrCat"; 24964 + githubId = 23222857; 24957 24965 }; 24958 24966 theoparis = { 24959 24967 email = "theo@tinted.dev";
+2
nixos/doc/manual/release-notes/rl-2511.section.md
··· 48 48 49 49 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> 50 50 51 + - The Perl implementation of the `switch-to-configuration` program is removed. All switchable systems now use the Rust rewrite. Any prior usage of `system.switch.enableNg` must now be removed. If you have any outstanding issues with the new implementation, please open an issue on GitHub. 52 + 51 53 - The `no-broken-symlink` build hook now also fails builds whose output derivation contains links to $TMPDIR (typically /build, which contains the build directory). 52 54 53 55 - The `services.polipo` module has been removed as `polipo` is unmaintained and archived upstream.
+10
nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma6.nix
··· 24 24 pkgs.maliit-keyboard 25 25 ]; 26 26 27 + environment.plasma6.excludePackages = [ 28 + # Optional wallpapers that add 126 MiB to the graphical installer 29 + # closure. They will still need to be downloaded when installing a 30 + # Plasma system, though. 31 + pkgs.kdePackages.plasma-workspace-wallpapers 32 + ]; 33 + 34 + # Avoid bundling an entire MariaDB installation on the ISO. 35 + programs.kde-pim.enable = false; 36 + 27 37 system.activationScripts.installerDesktop = 28 38 let 29 39
+1 -1
nixos/modules/misc/nixpkgs/read-only.nix
··· 63 63 # find mistaken definitions 64 64 builtins.seq cfg.config builtins.seq cfg.overlays builtins.seq cfg.hostPlatform builtins.seq 65 65 cfg.buildPlatform 66 - cfg.pkgs; 66 + cfg.pkgs.__splicedPackages; 67 67 nixpkgs.config = cfg.pkgs.config; 68 68 nixpkgs.overlays = cfg.pkgs.overlays; 69 69 nixpkgs.hostPlatform = cfg.pkgs.stdenv.hostPlatform;
+2
nixos/modules/services/desktop-managers/cosmic.nix
··· 13 13 14 14 let 15 15 cfg = config.services.desktopManager.cosmic; 16 + notExcluded = pkg: utils.disablePackageByName pkg config.environment.cosmic.excludePackages; 16 17 excludedCorePkgs = lib.lists.intersectLists corePkgs config.environment.cosmic.excludePackages; 17 18 # **ONLY ADD PACKAGES WITHOUT WHICH COSMIC CRASHES, NOTHING ELSE** 18 19 corePkgs = ··· 162 163 services.avahi.enable = lib.mkDefault true; 163 164 services.gnome.gnome-keyring.enable = lib.mkDefault true; 164 165 services.gvfs.enable = lib.mkDefault true; 166 + services.orca.enable = lib.mkDefault (notExcluded pkgs.orca); 165 167 services.power-profiles-daemon.enable = lib.mkDefault ( 166 168 !config.hardware.system76.power-daemon.enable 167 169 );
+1 -1
nixos/modules/services/desktop-managers/plasma6.nix
··· 136 136 breeze-icons 137 137 breeze-gtk 138 138 ocean-sound-theme 139 - plasma-workspace-wallpapers 140 139 pkgs.hicolor-icon-theme # fallback icons 141 140 qqc2-breeze-style 142 141 qqc2-desktop-style ··· 158 157 [ 159 158 aurorae 160 159 plasma-browser-integration 160 + plasma-workspace-wallpapers 161 161 konsole 162 162 kwin-x11 163 163 (lib.getBin qttools) # Expose qdbus in PATH
+1
nixos/modules/services/hardware/nvidia-optimus.nix
··· 29 29 "nvidia" 30 30 "nvidiafb" 31 31 "nvidia-drm" 32 + "nvidia-uvm" 32 33 "nvidia-modeset" 33 34 ]; 34 35 boot.kernelModules = [ "bbswitch" ];
+1 -1
nixos/modules/system/activation/activation-script.nix
··· 256 256 description = '' 257 257 A program that writes a bootloader installation script to the path passed in the first command line argument. 258 258 259 - See `nixos/modules/system/activation/switch-to-configuration.pl`. 259 + See `pkgs/by-name/sw/switch-to-configuration-ng/src/src/main.rs`. 260 260 ''; 261 261 type = types.unique { 262 262 message = ''
-1027
nixos/modules/system/activation/switch-to-configuration.pl
··· 1 - #! @perl@/bin/perl 2 - 3 - # NOTE: This script has an alternative implementation at 4 - # <nixpkgs/pkgs/by-name/sw/switch-to-configuration-ng>. Any behavioral 5 - # modifications to this script should also be made to that implementation. 6 - 7 - 8 - # Issue #166838 uncovered a situation in which a configuration not suitable 9 - # for the target architecture caused a cryptic error message instead of 10 - # a clean failure. Due to this mismatch, the perl interpreter in the shebang 11 - # line wasn't able to be executed, causing this script to be misinterpreted 12 - # as a shell script. 13 - # 14 - # Let's detect this situation to give a more meaningful error 15 - # message. The following two lines are carefully written to be both valid Perl 16 - # and Bash. 17 - printf "Perl script erroneously interpreted as shell script,\ndoes target platform match nixpkgs.crossSystem platform?\n" && exit 1 18 - if 0; 19 - 20 - use strict; 21 - use warnings; 22 - use Config::IniFiles; 23 - use File::Path qw(make_path); 24 - use File::Basename; 25 - use File::Slurp qw(read_file write_file edit_file); 26 - use JSON::PP; 27 - use IPC::Cmd; 28 - use Sys::Syslog qw(:standard :macros); 29 - use Cwd qw(abs_path); 30 - use Fcntl ':flock'; 31 - 32 - ## no critic(ControlStructures::ProhibitDeepNests) 33 - ## no critic(ErrorHandling::RequireCarping) 34 - ## no critic(CodeLayout::ProhibitParensWithBuiltins) 35 - ## no critic(Variables::ProhibitPunctuationVars, Variables::RequireLocalizedPunctuationVars) 36 - ## no critic(InputOutput::RequireCheckedSyscalls, InputOutput::RequireBracedFileHandleWithPrint, InputOutput::RequireBriefOpen) 37 - ## no critic(ValuesAndExpressions::ProhibitNoisyQuotes, ValuesAndExpressions::ProhibitMagicNumbers, ValuesAndExpressions::ProhibitEmptyQuotes, ValuesAndExpressions::ProhibitInterpolationOfLiterals) 38 - ## no critic(RegularExpressions::ProhibitEscapedMetacharacters) 39 - 40 - # Location of activation scripts 41 - my $out = "@out@"; 42 - # System closure path to switch to 43 - my $toplevel = "@toplevel@"; 44 - 45 - # To be robust against interruption, record what units need to be started etc. 46 - # We read these files again every time this script starts to make sure we continue 47 - # where the old (interrupted) script left off. 48 - my $start_list_file = "/run/nixos/start-list"; 49 - my $restart_list_file = "/run/nixos/restart-list"; 50 - my $reload_list_file = "/run/nixos/reload-list"; 51 - 52 - # Parse restart/reload requests by the activation script. 53 - # Activation scripts may write newline-separated units to the restart 54 - # file and switch-to-configuration will handle them. While 55 - # `stopIfChanged = true` is ignored, switch-to-configuration will 56 - # handle `restartIfChanged = false` and `reloadIfChanged = true`. 57 - # This is the same as specifying a restart trigger in the NixOS module. 58 - # 59 - # The reload file asks the script to reload a unit. This is the same as 60 - # specifying a reload trigger in the NixOS module and can be ignored if 61 - # the unit is restarted in this activation. 62 - my $restart_by_activation_file = "/run/nixos/activation-restart-list"; 63 - my $reload_by_activation_file = "/run/nixos/activation-reload-list"; 64 - my $dry_restart_by_activation_file = "/run/nixos/dry-activation-restart-list"; 65 - my $dry_reload_by_activation_file = "/run/nixos/dry-activation-reload-list"; 66 - 67 - # The action that is to be performed (like switch, boot, test, dry-activate) 68 - # Also exposed via environment variable from now on 69 - my $action = shift(@ARGV); 70 - $ENV{NIXOS_ACTION} = $action; 71 - 72 - # Expose the locale archive as an environment variable for systemctl and the activation script 73 - if ("@localeArchive@" ne "") { 74 - $ENV{LOCALE_ARCHIVE} = "@localeArchive@"; 75 - } 76 - 77 - if (!defined($action) || ($action ne "switch" && $action ne "boot" && $action ne "test" && $action ne "dry-activate" && $action ne "check")) { 78 - print STDERR <<"EOF"; 79 - Usage: $0 [check|switch|boot|test|dry-activate] 80 - 81 - check: run pre-switch checks and exit 82 - switch: make the configuration the boot default and activate now 83 - boot: make the configuration the boot default 84 - test: activate the configuration, but don\'t make it the boot default 85 - dry-activate: show what would be done if this configuration were activated 86 - EOF 87 - exit(1); 88 - } 89 - 90 - # This is a NixOS installation if it has /etc/NIXOS or a proper 91 - # /etc/os-release. 92 - if (!-f "/etc/NIXOS" && (read_file("/etc/os-release", err_mode => "quiet") // "") !~ /^ID="?@distroId@"?/msx) { 93 - die("This is not a NixOS installation!\n"); 94 - } 95 - 96 - make_path("/run/nixos", { mode => oct(755) }); 97 - open(my $stc_lock, '>>', '/run/nixos/switch-to-configuration.lock') or die "Could not open lock - $!"; 98 - flock($stc_lock, LOCK_EX|LOCK_NB) or die "Could not acquire lock - $!"; 99 - openlog("nixos", "", LOG_USER); 100 - 101 - # run pre-switch checks 102 - if (($ENV{"NIXOS_NO_CHECK"} // "") ne "1") { 103 - chomp(my $pre_switch_checks = <<'EOFCHECKS'); 104 - @preSwitchCheck@ 105 - EOFCHECKS 106 - system("$pre_switch_checks $out $action") == 0 or exit 1; 107 - if ($action eq "check") { 108 - exit 0; 109 - } 110 - } 111 - 112 - # Install or update the bootloader. 113 - if ($action eq "switch" || $action eq "boot") { 114 - chomp(my $install_boot_loader = <<'EOFBOOTLOADER'); 115 - @installBootLoader@ 116 - EOFBOOTLOADER 117 - system("$install_boot_loader $toplevel") == 0 or exit 1; 118 - } 119 - 120 - # Just in case the new configuration hangs the system, do a sync now. 121 - if (($ENV{"NIXOS_NO_SYNC"} // "") ne "1") { 122 - system("@coreutils@/bin/sync", "-f", "/nix/store"); 123 - } 124 - 125 - if ($action eq "boot") { 126 - exit(0); 127 - } 128 - 129 - # Path to the directory containing systemd tools of the old system 130 - # Needs to be after the "boot" action exits, as this directory will not exist when doing a NIXOS_LUSTRATE install 131 - my $cur_systemd = abs_path("/run/current-system/sw/bin"); 132 - # Path to the systemd store path of the new system 133 - my $new_systemd = "@systemd@"; 134 - 135 - # Check if we can activate the new configuration. 136 - my $cur_init_interface_version = read_file("/run/current-system/init-interface-version", err_mode => "quiet") // ""; 137 - my $new_init_interface_version = read_file("$toplevel/init-interface-version"); 138 - 139 - if ($new_init_interface_version ne $cur_init_interface_version) { 140 - print STDERR <<'EOF'; 141 - Warning: the new NixOS configuration has an ‘init’ that is 142 - incompatible with the current configuration. The new configuration 143 - won't take effect until you reboot the system. 144 - EOF 145 - exit(100); 146 - } 147 - 148 - # Ignore SIGHUP so that we're not killed if we're running on (say) 149 - # virtual console 1 and we restart the "tty1" unit. 150 - $SIG{PIPE} = "IGNORE"; 151 - 152 - # Replacement for Net::DBus that calls busctl of the current systemd, parses 153 - # it's json output and returns the response using only core modules to reduce 154 - # dependencies on perlPackages in baseSystem 155 - sub busctl_call_systemd1_mgr { 156 - my (@args) = @_; 157 - my $cmd = [ 158 - "$cur_systemd/busctl", "--json=short", "call", "org.freedesktop.systemd1", 159 - "/org/freedesktop/systemd1", "org.freedesktop.systemd1.Manager", 160 - @args 161 - ]; 162 - 163 - my ($ok, $err, undef, $stdout) = IPC::Cmd::run(command => $cmd); 164 - die $err unless $ok; 165 - 166 - my $res = decode_json(join "", @$stdout); 167 - return $res; 168 - } 169 - 170 - # Asks the currently running systemd instance via dbus which units are active. 171 - # Returns a hash where the key is the name of each unit and the value a hash 172 - # of load, state, substate. 173 - sub get_active_units { 174 - my $units = busctl_call_systemd1_mgr("ListUnitsByPatterns", "asas", 0, 0)->{data}->[0]; 175 - my $res = {}; 176 - for my $item (@{$units}) { 177 - my ($id, $description, $load_state, $active_state, $sub_state, 178 - $following, $unit_path, $job_id, $job_type, $job_path) = @{$item}; 179 - if ($following ne "") { 180 - next; 181 - } 182 - if ($job_id == 0 and $active_state eq "inactive") { 183 - next; 184 - } 185 - $res->{$id} = { load => $load_state, state => $active_state, substate => $sub_state }; 186 - } 187 - return $res; 188 - } 189 - 190 - # Asks the currently running systemd instance whether a unit is currently active. 191 - # Takes the name of the unit as an argument and returns a bool whether the unit is active or not. 192 - sub unit_is_active { 193 - my ($unit_name) = @_; 194 - my $units = busctl_call_systemd1_mgr("ListUnitsByNames", "as", 1, , "--", $unit_name)->{data}->[0]; 195 - if (scalar(@{$units}) == 0) { 196 - return 0; 197 - } 198 - my $active_state = $units->[0]->[3]; 199 - return $active_state eq "active" || $active_state eq "activating"; 200 - } 201 - 202 - # Parse a fstab file, given its path. 203 - # Returns a tuple of filesystems and swaps. 204 - # 205 - # Filesystems is a hash of mountpoint and { device, fsType, options } 206 - # Swaps is a hash of device and { options } 207 - sub parse_fstab { 208 - my ($filename) = @_; 209 - my ($fss, $swaps); 210 - foreach my $line (read_file($filename, err_mode => "quiet")) { 211 - chomp($line); 212 - $line =~ s/^\s*\#.*//msx; 213 - if ($line =~ /^\s*$/msx) { 214 - next; 215 - } 216 - my @xs = split(/\s+/msx, $line); 217 - if ($xs[2] eq "swap") { 218 - $swaps->{$xs[0]} = { options => $xs[3] // "" }; 219 - } else { 220 - $fss->{$xs[1]} = { device => $xs[0], fsType => $xs[2], options => $xs[3] // "" }; 221 - } 222 - } 223 - return ($fss, $swaps); 224 - } 225 - 226 - # This subroutine takes a single ini file that specified systemd configuration 227 - # like unit configuration and parses it into a hash where the keys are the sections 228 - # of the unit file and the values are hashes themselves. These hashes have the unit file 229 - # keys as their keys (left side of =) and an array of all values that were set as their 230 - # values. If a value is empty (for example `ExecStart=`), then all current definitions are 231 - # removed. 232 - # 233 - # Instead of returning the hash, this subroutine takes a hashref to return the data in. This 234 - # allows calling the subroutine multiple times with the same hash to parse override files. 235 - sub parse_systemd_ini { 236 - my ($unit_contents, $path) = @_; 237 - # Tie the ini file to a hash for easier access 238 - tie(my %file_contents, "Config::IniFiles", (-file => $path, -allowempty => 1, -allowcontinue => 1)); ## no critic(Miscellanea::ProhibitTies) 239 - 240 - # Copy over all sections 241 - foreach my $section_name (keys(%file_contents)) { 242 - if ($section_name eq "Install") { 243 - # Skip the [Install] section because it has no relevant keys for us 244 - next; 245 - } 246 - # Copy over all keys 247 - foreach my $ini_key (keys(%{$file_contents{$section_name}})) { 248 - # Ensure the value is an array so it's easier to work with 249 - my $ini_value = $file_contents{$section_name}{$ini_key}; 250 - my @ini_values; 251 - if (ref($ini_value) eq "ARRAY") { 252 - @ini_values = @{$ini_value}; 253 - } else { 254 - @ini_values = $ini_value; 255 - } 256 - # Go over all values 257 - for my $ini_value (@ini_values) { 258 - # If a value is empty, it's an override that tells us to clean the value 259 - if ($ini_value eq "") { 260 - delete $unit_contents->{$section_name}->{$ini_key}; 261 - next; 262 - } 263 - push(@{$unit_contents->{$section_name}->{$ini_key}}, $ini_value); 264 - } 265 - } 266 - } 267 - return; 268 - } 269 - 270 - # This subroutine takes the path to a systemd configuration file (like a unit configuration), 271 - # parses it, and returns a hash that contains the contents. The contents of this hash are 272 - # explained in the `parse_systemd_ini` subroutine. Neither the sections nor the keys inside 273 - # the sections are consistently sorted. 274 - # 275 - # If a directory with the same basename ending in .d exists next to the unit file, it will be 276 - # assumed to contain override files which will be parsed as well and handled properly. 277 - sub parse_unit { 278 - my ($unit_path, $base_unit_path) = @_; 279 - 280 - # Parse the main unit and all overrides 281 - my %unit_data; 282 - # Replace \ with \\ so glob() still works with units that have a \ in them 283 - # Valid characters in unit names are ASCII letters, digits, ":", "-", "_", ".", and "\" 284 - $base_unit_path =~ s/\\/\\\\/gmsx; 285 - $unit_path =~ s/\\/\\\\/gmsx; 286 - 287 - foreach (glob("${base_unit_path}{,.d/*.conf}")) { 288 - parse_systemd_ini(\%unit_data, "$_") 289 - } 290 - # Handle drop-in template-unit instance overrides 291 - if ($unit_path ne $base_unit_path) { 292 - foreach (glob("${unit_path}.d/*.conf")) { 293 - parse_systemd_ini(\%unit_data, "$_") 294 - } 295 - } 296 - return %unit_data; 297 - } 298 - 299 - # Checks whether a specified boolean in a systemd unit is true 300 - # or false, with a default that is applied when the value is not set. 301 - sub parse_systemd_bool { 302 - my ($unit_config, $section_name, $bool_name, $default) = @_; 303 - 304 - my @values = @{$unit_config->{$section_name}{$bool_name} // []}; 305 - # Return default if value is not set 306 - if ((scalar(@values) < 1) || (not defined($values[-1]))) { 307 - return $default; 308 - } 309 - # If value is defined multiple times, use the last definition 310 - my $last_value = $values[-1]; 311 - # These are valid values as of systemd.syntax(7) 312 - return $last_value eq "1" || $last_value eq "yes" || $last_value eq "true" || $last_value eq "on"; 313 - } 314 - 315 - # Writes a unit name into a given file to be more resilient against 316 - # crashes of the script. Does nothing when the action is dry-activate. 317 - sub record_unit { 318 - my ($fn, $unit) = @_; 319 - if ($action ne "dry-activate") { 320 - write_file($fn, { append => 1 }, "$unit\n"); 321 - } 322 - return; 323 - } 324 - 325 - # The opposite of record_unit, removes a unit name from a file 326 - sub unrecord_unit { 327 - my ($fn, $unit) = @_; 328 - if ($action ne "dry-activate") { 329 - edit_file(sub { s/^$unit\n//msx }, $fn); 330 - } 331 - return; 332 - } 333 - 334 - # Compare the contents of two unit files and return whether the unit 335 - # needs to be restarted or reloaded. If the units differ, the service 336 - # is restarted unless the only difference is `X-Reload-Triggers` in the 337 - # `Unit` section. If this is the only modification, the unit is reloaded 338 - # instead of restarted. If the only difference is `Options` in the 339 - # `[Mount]` section, the unit is reloaded rather than restarted. 340 - # Returns: 341 - # - 0 if the units are equal 342 - # - 1 if the units are different and a restart action is required 343 - # - 2 if the units are different and a reload action is required 344 - sub compare_units { ## no critic(Subroutines::ProhibitExcessComplexity) 345 - my ($cur_unit, $new_unit) = @_; 346 - my $ret = 0; 347 - # Keys to ignore in the [Unit] section 348 - my %unit_section_ignores = map { $_ => 1 } qw( 349 - X-Reload-Triggers 350 - Description Documentation 351 - OnFailure OnSuccess OnFailureJobMode 352 - IgnoreOnIsolate StopWhenUnneeded 353 - RefuseManualStart RefuseManualStop 354 - AllowIsolate CollectMode 355 - SourcePath 356 - ); 357 - 358 - my $comp_array = sub { 359 - my ($a, $b) = @_; 360 - return join("\0", @{$a}) eq join("\0", @{$b}); 361 - }; 362 - 363 - # Comparison hash for the sections 364 - my %section_cmp = map { $_ => 1 } keys(%{$new_unit}); 365 - # Iterate over the sections 366 - foreach my $section_name (keys(%{$cur_unit})) { 367 - # Missing section in the new unit? 368 - if (not exists($section_cmp{$section_name})) { 369 - # If the [Unit] section was removed, make sure that only keys 370 - # were in it that are ignored 371 - if ($section_name eq "Unit") { 372 - foreach my $ini_key (keys(%{$cur_unit->{"Unit"}})) { 373 - if (not defined($unit_section_ignores{$ini_key})) { 374 - return 1; 375 - } 376 - } 377 - next; # check the next section 378 - } else { 379 - return 1; 380 - } 381 - if ($section_name eq "Unit" and %{$cur_unit->{"Unit"}} == 1 and defined(%{$cur_unit->{"Unit"}}{"X-Reload-Triggers"})) { 382 - # If a new [Unit] section was removed that only contained X-Reload-Triggers, 383 - # do nothing. 384 - next; 385 - } else { 386 - return 1; 387 - } 388 - } 389 - delete $section_cmp{$section_name}; 390 - # Comparison hash for the section contents 391 - my %ini_cmp = map { $_ => 1 } keys(%{$new_unit->{$section_name}}); 392 - # Iterate over the keys of the section 393 - foreach my $ini_key (keys(%{$cur_unit->{$section_name}})) { 394 - delete $ini_cmp{$ini_key}; 395 - my @cur_value = @{$cur_unit->{$section_name}{$ini_key}}; 396 - # If the key is missing in the new unit, they are different... 397 - if (not $new_unit->{$section_name}{$ini_key}) { 398 - # ... unless the key that is now missing is one of the ignored keys 399 - if ($section_name eq "Unit" and defined($unit_section_ignores{$ini_key})) { 400 - next; 401 - } 402 - return 1; 403 - } 404 - my @new_value = @{$new_unit->{$section_name}{$ini_key}}; 405 - # If the contents are different, the units are different 406 - if (not $comp_array->(\@cur_value, \@new_value)) { 407 - # Check if only the reload triggers changed or one of the ignored keys 408 - if ($section_name eq "Unit") { 409 - if ($ini_key eq "X-Reload-Triggers") { 410 - $ret = 2; 411 - next; 412 - } elsif (defined($unit_section_ignores{$ini_key})) { 413 - next; 414 - } 415 - } 416 - # If this is a mount unit, check if it was only `Options` 417 - if ($section_name eq "Mount" and $ini_key eq "Options") { 418 - $ret = 2; 419 - next; 420 - } 421 - return 1; 422 - } 423 - } 424 - # A key was introduced that was missing in the previous unit 425 - if (%ini_cmp) { 426 - if ($section_name eq "Unit") { 427 - foreach my $ini_key (keys(%ini_cmp)) { 428 - if ($ini_key eq "X-Reload-Triggers") { 429 - $ret = 2; 430 - } elsif (defined($unit_section_ignores{$ini_key})) { 431 - next; 432 - } else { 433 - return 1; 434 - } 435 - } 436 - } else { 437 - return 1; 438 - } 439 - }; 440 - } 441 - # A section was introduced that was missing in the previous unit 442 - if (%section_cmp) { 443 - if (%section_cmp == 1 and defined($section_cmp{"Unit"})) { 444 - foreach my $ini_key (keys(%{$new_unit->{"Unit"}})) { 445 - if (not defined($unit_section_ignores{$ini_key})) { 446 - return 1; 447 - } elsif ($ini_key eq "X-Reload-Triggers") { 448 - $ret = 2; 449 - } 450 - } 451 - } else { 452 - return 1; 453 - } 454 - } 455 - 456 - return $ret; 457 - } 458 - 459 - # Called when a unit exists in both the old systemd and the new system and the units 460 - # differ. This figures out of what units are to be stopped, restarted, reloaded, started, and skipped. 461 - sub handle_modified_unit { ## no critic(Subroutines::ProhibitManyArgs, Subroutines::ProhibitExcessComplexity) 462 - my ($unit, $base_name, $new_unit_file, $new_base_unit_file, $new_unit_info, $active_cur, $units_to_stop, $units_to_start, $units_to_reload, $units_to_restart, $units_to_skip) = @_; 463 - 464 - if ($unit eq "sysinit.target" || $unit eq "basic.target" || $unit eq "multi-user.target" || $unit eq "graphical.target" || $unit =~ /\.path$/msx || $unit =~ /\.slice$/msx) { 465 - # Do nothing. These cannot be restarted directly. 466 - 467 - # Slices and Paths don't have to be restarted since 468 - # properties (resource limits and inotify watches) 469 - # seem to get applied on daemon-reload. 470 - } elsif ($unit =~ /\.mount$/msx) { 471 - # Just restart the unit. We wouldn't have gotten into this subroutine 472 - # if only `Options` was changed, in which case the unit would be reloaded. 473 - # The only exception is / and /nix because it's very unlikely we can safely 474 - # unmount them so we reload them instead. This means that we may not get 475 - # all changes into the running system but it's better than crashing it. 476 - if ($unit eq "-.mount" or $unit eq "nix.mount") { 477 - $units_to_reload->{$unit} = 1; 478 - record_unit($reload_list_file, $unit); 479 - } else { 480 - $units_to_restart->{$unit} = 1; 481 - record_unit($restart_list_file, $unit); 482 - } 483 - } elsif ($unit =~ /\.socket$/msx) { 484 - # FIXME: do something? 485 - # Attempt to fix this: https://github.com/NixOS/nixpkgs/pull/141192 486 - # Revert of the attempt: https://github.com/NixOS/nixpkgs/pull/147609 487 - # More details: https://github.com/NixOS/nixpkgs/issues/74899#issuecomment-981142430 488 - } else { 489 - my %new_unit_info = $new_unit_info ? %{$new_unit_info} : parse_unit($new_unit_file, $new_base_unit_file); 490 - if (parse_systemd_bool(\%new_unit_info, "Service", "X-ReloadIfChanged", 0) and not $units_to_restart->{$unit} and not $units_to_stop->{$unit}) { 491 - $units_to_reload->{$unit} = 1; 492 - record_unit($reload_list_file, $unit); 493 - } 494 - elsif ($unit eq "dbus.service" || $unit eq "dbus-broker.service") { 495 - # dbus service should only ever be reloaded, not started/stoped/restarted as that would break the system. 496 - } 497 - elsif (!parse_systemd_bool(\%new_unit_info, "Service", "X-RestartIfChanged", 1) || parse_systemd_bool(\%new_unit_info, "Unit", "RefuseManualStop", 0) || parse_systemd_bool(\%new_unit_info, "Unit", "X-OnlyManualStart", 0)) { 498 - $units_to_skip->{$unit} = 1; 499 - } else { 500 - # It doesn't make sense to stop and start non-services because 501 - # they can't have ExecStop= 502 - if (!parse_systemd_bool(\%new_unit_info, "Service", "X-StopIfChanged", 1) || $unit !~ /\.service$/msx) { 503 - # This unit should be restarted instead of 504 - # stopped and started. 505 - $units_to_restart->{$unit} = 1; 506 - record_unit($restart_list_file, $unit); 507 - # Remove from units to reload so we don't restart and reload 508 - if ($units_to_reload->{$unit}) { 509 - delete $units_to_reload->{$unit}; 510 - unrecord_unit($reload_list_file, $unit); 511 - } 512 - } else { 513 - # If this unit is socket-activated, then stop the 514 - # socket unit(s) as well, and restart the 515 - # socket(s) instead of the service. 516 - my $socket_activated = 0; 517 - if ($unit =~ /\.service$/msx) { 518 - my @sockets = split(/\s+/msx, join(" ", @{$new_unit_info{Service}{Sockets} // []})); 519 - if (scalar(@sockets) == 0) { 520 - @sockets = ("$base_name.socket"); 521 - } 522 - foreach my $socket (@sockets) { 523 - if (defined($active_cur->{$socket})) { 524 - # We can now be sure this is a socket-activate unit 525 - 526 - $units_to_stop->{$socket} = 1; 527 - # Only restart sockets that actually 528 - # exist in new configuration: 529 - if (-e "$toplevel/etc/systemd/system/$socket") { 530 - $units_to_start->{$socket} = 1; 531 - if ($units_to_start eq $units_to_restart) { 532 - record_unit($restart_list_file, $socket); 533 - } else { 534 - record_unit($start_list_file, $socket); 535 - } 536 - $socket_activated = 1; 537 - } 538 - # Remove from units to reload so we don't restart and reload 539 - if ($units_to_reload->{$unit}) { 540 - delete $units_to_reload->{$unit}; 541 - unrecord_unit($reload_list_file, $unit); 542 - } 543 - } 544 - } 545 - } 546 - 547 - if (parse_systemd_bool(\%new_unit_info, "Service", "X-NotSocketActivated", 0)) { 548 - # If the unit explicitly opts out of socket 549 - # activation, restart it as if it weren't (but do 550 - # restart its sockets, that's fine): 551 - $socket_activated = 0; 552 - } 553 - 554 - # If the unit is not socket-activated, record 555 - # that this unit needs to be started below. 556 - # We write this to a file to ensure that the 557 - # service gets restarted if we're interrupted. 558 - if (!$socket_activated) { 559 - $units_to_start->{$unit} = 1; 560 - if ($units_to_start eq $units_to_restart) { 561 - record_unit($restart_list_file, $unit); 562 - } else { 563 - record_unit($start_list_file, $unit); 564 - } 565 - } 566 - 567 - $units_to_stop->{$unit} = 1; 568 - # Remove from units to reload so we don't restart and reload 569 - if ($units_to_reload->{$unit}) { 570 - delete $units_to_reload->{$unit}; 571 - unrecord_unit($reload_list_file, $unit); 572 - } 573 - } 574 - } 575 - } 576 - return; 577 - } 578 - 579 - # Figure out what units need to be stopped, started, restarted or reloaded. 580 - my (%units_to_stop, %units_to_skip, %units_to_start, %units_to_restart, %units_to_reload); 581 - 582 - my %units_to_filter; # units not shown 583 - 584 - %units_to_start = map { $_ => 1 } 585 - split(/\n/msx, read_file($start_list_file, err_mode => "quiet") // ""); 586 - 587 - %units_to_restart = map { $_ => 1 } 588 - split(/\n/msx, read_file($restart_list_file, err_mode => "quiet") // ""); 589 - 590 - %units_to_reload = map { $_ => 1 } 591 - split(/\n/msx, read_file($reload_list_file, err_mode => "quiet") // ""); 592 - 593 - my $active_cur = get_active_units(); 594 - while (my ($unit, $state) = each(%{$active_cur})) { 595 - my $cur_unit_file = "/etc/systemd/system/$unit"; 596 - my $new_unit_file = "$toplevel/etc/systemd/system/$unit"; 597 - 598 - my $base_unit = $unit; 599 - my $cur_base_unit_file = $cur_unit_file; 600 - my $new_base_unit_file = $new_unit_file; 601 - 602 - # Detect template instances. 603 - if (!-e $cur_unit_file && !-e $new_unit_file && $unit =~ /^(.*)@[^\.]*\.(.*)$/msx) { 604 - $base_unit = "$1\@.$2"; 605 - $cur_base_unit_file = "/etc/systemd/system/$base_unit"; 606 - $new_base_unit_file = "$toplevel/etc/systemd/system/$base_unit"; 607 - } 608 - 609 - my $base_name = $base_unit; 610 - $base_name =~ s/\.[[:lower:]]*$//msx; 611 - 612 - if (-e $cur_base_unit_file && ($state->{state} eq "active" || $state->{state} eq "activating")) { 613 - if (! -e $new_base_unit_file || abs_path($new_base_unit_file) eq "/dev/null") { 614 - my %cur_unit_info = parse_unit($cur_unit_file, $cur_base_unit_file); 615 - if (parse_systemd_bool(\%cur_unit_info, "Unit", "X-StopOnRemoval", 1)) { 616 - $units_to_stop{$unit} = 1; 617 - } 618 - } 619 - 620 - elsif ($unit =~ /\.target$/msx) { 621 - my %new_unit_info = parse_unit($new_unit_file, $new_base_unit_file); 622 - 623 - # Cause all active target units to be restarted below. 624 - # This should start most changed units we stop here as 625 - # well as any new dependencies (including new mounts and 626 - # swap devices). FIXME: the suspend target is sometimes 627 - # active after the system has resumed, which probably 628 - # should not be the case. Just ignore it. 629 - if ($unit ne "suspend.target" && $unit ne "hibernate.target" && $unit ne "hybrid-sleep.target") { 630 - if (!(parse_systemd_bool(\%new_unit_info, "Unit", "RefuseManualStart", 0) || parse_systemd_bool(\%new_unit_info, "Unit", "X-OnlyManualStart", 0))) { 631 - $units_to_start{$unit} = 1; 632 - record_unit($start_list_file, $unit); 633 - # Don't spam the user with target units that always get started. 634 - if (($ENV{"STC_DISPLAY_ALL_UNITS"} // "") ne "1") { 635 - $units_to_filter{$unit} = 1; 636 - } 637 - } 638 - } 639 - 640 - # Stop targets that have X-StopOnReconfiguration set. 641 - # This is necessary to respect dependency orderings 642 - # involving targets: if unit X starts after target Y and 643 - # target Y starts after unit Z, then if X and Z have both 644 - # changed, then X should be restarted after Z. However, 645 - # if target Y is in the "active" state, X and Z will be 646 - # restarted at the same time because X's dependency on Y 647 - # is already satisfied. Thus, we need to stop Y first. 648 - # Stopping a target generally has no effect on other units 649 - # (unless there is a PartOf dependency), so this is just a 650 - # bookkeeping thing to get systemd to do the right thing. 651 - if (parse_systemd_bool(\%new_unit_info, "Unit", "X-StopOnReconfiguration", 0)) { 652 - $units_to_stop{$unit} = 1; 653 - } 654 - } 655 - 656 - else { 657 - my %cur_unit_info = parse_unit($cur_unit_file, $cur_base_unit_file); 658 - my %new_unit_info = parse_unit($new_unit_file, $new_base_unit_file); 659 - my $diff = compare_units(\%cur_unit_info, \%new_unit_info); 660 - if ($diff == 1) { 661 - handle_modified_unit($unit, $base_name, $new_unit_file, $new_base_unit_file, \%new_unit_info, $active_cur, \%units_to_stop, \%units_to_start, \%units_to_reload, \%units_to_restart, \%units_to_skip); 662 - } elsif ($diff == 2 and not $units_to_restart{$unit}) { 663 - $units_to_reload{$unit} = 1; 664 - record_unit($reload_list_file, $unit); 665 - } 666 - } 667 - } 668 - } 669 - 670 - # Converts a path to the name of a systemd mount unit that would be responsible 671 - # for mounting this path. 672 - sub path_to_unit_name { 673 - my ($path) = @_; 674 - # Use current version of systemctl binary before daemon is reexeced. 675 - open(my $cmd, "-|", "$cur_systemd/systemd-escape", "--suffix=mount", "-p", $path) 676 - or die "Unable to escape $path!\n"; 677 - my $escaped = do { local $/ = undef; <$cmd> }; 678 - chomp($escaped); 679 - close($cmd) or die("Unable to close systemd-escape pipe"); 680 - return $escaped; 681 - } 682 - 683 - # Compare the previous and new fstab to figure out which filesystems 684 - # need a remount or need to be unmounted. New filesystems are mounted 685 - # automatically by starting local-fs.target. FIXME: might be nicer if 686 - # we generated units for all mounts; then we could unify this with the 687 - # unit checking code above. 688 - my ($cur_fss, $cur_swaps) = parse_fstab("/etc/fstab"); 689 - my ($new_fss, $new_swaps) = parse_fstab("$toplevel/etc/fstab"); 690 - foreach my $mount_point (keys(%{$cur_fss})) { 691 - my $cur = $cur_fss->{$mount_point}; 692 - my $new = $new_fss->{$mount_point}; 693 - my $unit = path_to_unit_name($mount_point); 694 - if (!defined($new)) { 695 - # Filesystem entry disappeared, so unmount it. 696 - $units_to_stop{$unit} = 1; 697 - } elsif ($cur->{fsType} ne $new->{fsType} || $cur->{device} ne $new->{device}) { 698 - if ($mount_point eq '/' or $mount_point eq '/nix') { 699 - if ($cur->{options} ne $new->{options}) { 700 - # Mount options changed, so remount it. 701 - $units_to_reload{$unit} = 1; 702 - record_unit($reload_list_file, $unit); 703 - } else { 704 - # Don't unmount / or /nix if the device changed 705 - $units_to_skip{$unit} = 1; 706 - } 707 - } else { 708 - # Filesystem type or device changed, so unmount and mount it. 709 - $units_to_restart{$unit} = 1; 710 - record_unit($restart_list_file, $unit); 711 - } 712 - } elsif ($cur->{options} ne $new->{options}) { 713 - # Mount options changes, so remount it. 714 - $units_to_reload{$unit} = 1; 715 - record_unit($reload_list_file, $unit); 716 - } 717 - } 718 - 719 - # Also handles swap devices. 720 - foreach my $device (keys(%{$cur_swaps})) { 721 - my $cur = $cur_swaps->{$device}; 722 - my $new = $new_swaps->{$device}; 723 - if (!defined($new)) { 724 - # Swap entry disappeared, so turn it off. Can't use 725 - # "systemctl stop" here because systemd has lots of alias 726 - # units that prevent a stop from actually calling 727 - # "swapoff". 728 - if ($action eq "dry-activate") { 729 - print STDERR "would stop swap device: $device\n"; 730 - } else { 731 - print STDERR "stopping swap device: $device\n"; 732 - system("@utillinux@/sbin/swapoff", $device); 733 - } 734 - } 735 - # FIXME: update swap options (i.e. its priority). 736 - } 737 - 738 - 739 - # Should we have systemd re-exec itself? 740 - my $cur_pid1_path = abs_path("/proc/1/exe") // "/unknown"; 741 - my $cur_systemd_system_config = abs_path("/etc/systemd/system.conf") // "/unknown"; 742 - my $new_pid1_path = abs_path("$new_systemd/lib/systemd/systemd") or die; 743 - my $new_systemd_system_config = abs_path("$toplevel/etc/systemd/system.conf") // "/unknown"; 744 - 745 - my $restart_systemd = $cur_pid1_path ne $new_pid1_path; 746 - if ($cur_systemd_system_config ne $new_systemd_system_config) { 747 - $restart_systemd = 1; 748 - } 749 - 750 - # Takes an array of unit names and returns an array with the same elements, 751 - # except all units that are also in the global variable `unitsToFilter`. 752 - sub filter_units { 753 - my ($units) = @_; 754 - my @res; 755 - foreach my $unit (sort(keys(%{$units}))) { 756 - if (!defined($units_to_filter{$unit})) { 757 - push(@res, $unit); 758 - } 759 - } 760 - return @res; 761 - } 762 - 763 - my @units_to_stop_filtered = filter_units(\%units_to_stop); 764 - 765 - 766 - # Show dry-run actions. 767 - if ($action eq "dry-activate") { 768 - if (scalar(@units_to_stop_filtered) > 0) { 769 - print STDERR "would stop the following units: ", join(", ", @units_to_stop_filtered), "\n"; 770 - } 771 - if (scalar(keys(%units_to_skip)) > 0) { 772 - print STDERR "would NOT stop the following changed units: ", join(", ", sort(keys(%units_to_skip))), "\n"; 773 - } 774 - 775 - print STDERR "would activate the configuration...\n"; 776 - system("$out/dry-activate", "$out"); 777 - 778 - # Handle the activation script requesting the restart or reload of a unit. 779 - foreach (split(/\n/msx, read_file($dry_restart_by_activation_file, err_mode => "quiet") // "")) { 780 - my $unit = $_; 781 - my $new_unit_file = "$toplevel/etc/systemd/system/$unit"; 782 - my $base_unit = $unit; 783 - my $new_base_unit_file = $new_unit_file; 784 - 785 - # Detect template instances. 786 - if (!-e $new_unit_file && $unit =~ /^(.*)@[^\.]*\.(.*)$/msx) { 787 - $base_unit = "$1\@.$2"; 788 - $new_base_unit_file = "$toplevel/etc/systemd/system/$base_unit"; 789 - } 790 - 791 - my $base_name = $base_unit; 792 - $base_name =~ s/\.[[:lower:]]*$//msx; 793 - 794 - # Start units if they were not active previously 795 - if (not defined($active_cur->{$unit})) { 796 - $units_to_start{$unit} = 1; 797 - next; 798 - } 799 - 800 - handle_modified_unit($unit, $base_name, $new_unit_file, $new_base_unit_file, undef, $active_cur, \%units_to_restart, \%units_to_restart, \%units_to_reload, \%units_to_restart, \%units_to_skip); 801 - } 802 - unlink($dry_restart_by_activation_file); 803 - 804 - foreach (split(/\n/msx, read_file($dry_reload_by_activation_file, err_mode => "quiet") // "")) { 805 - my $unit = $_; 806 - 807 - if (defined($active_cur->{$unit}) and not $units_to_restart{$unit} and not $units_to_stop{$unit}) { 808 - $units_to_reload{$unit} = 1; 809 - record_unit($reload_list_file, $unit); 810 - } 811 - } 812 - unlink($dry_reload_by_activation_file); 813 - 814 - if ($restart_systemd) { 815 - print STDERR "would restart systemd\n"; 816 - } 817 - if (scalar(keys(%units_to_reload)) > 0) { 818 - print STDERR "would reload the following units: ", join(", ", sort(keys(%units_to_reload))), "\n"; 819 - } 820 - if (scalar(keys(%units_to_restart)) > 0) { 821 - print STDERR "would restart the following units: ", join(", ", sort(keys(%units_to_restart))), "\n"; 822 - } 823 - my @units_to_start_filtered = filter_units(\%units_to_start); 824 - if (scalar(@units_to_start_filtered)) { 825 - print STDERR "would start the following units: ", join(", ", @units_to_start_filtered), "\n"; 826 - } 827 - exit 0; 828 - } 829 - 830 - 831 - syslog(LOG_NOTICE, "switching to system configuration $toplevel"); 832 - 833 - if (scalar(keys(%units_to_stop)) > 0) { 834 - if (scalar(@units_to_stop_filtered)) { 835 - print STDERR "stopping the following units: ", join(", ", @units_to_stop_filtered), "\n"; 836 - } 837 - # Use current version of systemctl binary before daemon is reexeced. 838 - system("$cur_systemd/systemctl", "stop", "--", sort(keys(%units_to_stop))); 839 - } 840 - 841 - if (scalar(keys(%units_to_skip)) > 0) { 842 - print STDERR "NOT restarting the following changed units: ", join(", ", sort(keys(%units_to_skip))), "\n"; 843 - } 844 - 845 - # Activate the new configuration (i.e., update /etc, make accounts, 846 - # and so on). 847 - my $res = 0; 848 - print STDERR "activating the configuration...\n"; 849 - system("$out/activate", "$out") == 0 or $res = 2; 850 - 851 - # Handle the activation script requesting the restart or reload of a unit. 852 - foreach (split(/\n/msx, read_file($restart_by_activation_file, err_mode => "quiet") // "")) { 853 - my $unit = $_; 854 - my $new_unit_file = "$toplevel/etc/systemd/system/$unit"; 855 - my $base_unit = $unit; 856 - my $new_base_unit_file = $new_unit_file; 857 - 858 - # Detect template instances. 859 - if (!-e $new_unit_file && $unit =~ /^(.*)@[^\.]*\.(.*)$/msx) { 860 - $base_unit = "$1\@.$2"; 861 - $new_base_unit_file = "$toplevel/etc/systemd/system/$base_unit"; 862 - } 863 - 864 - my $base_name = $base_unit; 865 - $base_name =~ s/\.[[:lower:]]*$//msx; 866 - 867 - # Start units if they were not active previously 868 - if (not defined($active_cur->{$unit})) { 869 - $units_to_start{$unit} = 1; 870 - record_unit($start_list_file, $unit); 871 - next; 872 - } 873 - 874 - handle_modified_unit($unit, $base_name, $new_unit_file, $new_base_unit_file, undef, $active_cur, \%units_to_restart, \%units_to_restart, \%units_to_reload, \%units_to_restart, \%units_to_skip); 875 - } 876 - # We can remove the file now because it has been propagated to the other restart/reload files 877 - unlink($restart_by_activation_file); 878 - 879 - foreach (split(/\n/msx, read_file($reload_by_activation_file, err_mode => "quiet") // "")) { 880 - my $unit = $_; 881 - 882 - if (defined($active_cur->{$unit}) and not $units_to_restart{$unit} and not $units_to_stop{$unit}) { 883 - $units_to_reload{$unit} = 1; 884 - record_unit($reload_list_file, $unit); 885 - } 886 - } 887 - # We can remove the file now because it has been propagated to the other reload file 888 - unlink($reload_by_activation_file); 889 - 890 - # Restart systemd if necessary. Note that this is done using the 891 - # current version of systemd, just in case the new one has trouble 892 - # communicating with the running pid 1. 893 - if ($restart_systemd) { 894 - print STDERR "restarting systemd...\n"; 895 - system("$cur_systemd/systemctl", "daemon-reexec") == 0 or $res = 2; 896 - } 897 - 898 - # Forget about previously failed services. 899 - system("$new_systemd/bin/systemctl", "reset-failed"); 900 - 901 - # Make systemd reload its units. 902 - system("$new_systemd/bin/systemctl", "daemon-reload") == 0 or $res = 3; 903 - 904 - # Reload user units 905 - open(my $list_active_users, "-|", "$new_systemd/bin/loginctl", "list-users", "--no-legend") || die("Unable to call loginctl"); 906 - while (my $f = <$list_active_users>) { 907 - if ($f !~ /^\s*(?<uid>\d+)\s+(?<user>\S+)/msx) { 908 - next; 909 - } 910 - my ($uid, $name) = ($+{uid}, $+{user}); 911 - print STDERR "reloading user units for $name...\n"; 912 - 913 - system("@su@", "-s", "@shell@", "-l", $name, "-c", 914 - "export XDG_RUNTIME_DIR=/run/user/$uid; " . 915 - "$cur_systemd/systemctl --user daemon-reexec; " . 916 - "$new_systemd/bin/systemctl --user start nixos-activation.service"); 917 - } 918 - 919 - close($list_active_users) || die("Unable to close the file handle to loginctl"); 920 - 921 - # Restart sysinit-reactivation.target. 922 - # This target only exists to restart services ordered before sysinit.target. We 923 - # cannot use X-StopOnReconfiguration to restart sysinit.target because then ALL 924 - # services of the system would be restarted since all normal services have a 925 - # default dependency on sysinit.target. sysinit-reactivation.target ensures 926 - # that services ordered BEFORE sysinit.target get re-started in the correct 927 - # order. Ordering between these services is respected. 928 - print STDERR "restarting sysinit-reactivation.target\n"; 929 - system("$new_systemd/bin/systemctl", "restart", "sysinit-reactivation.target") == 0 or $res = 4; 930 - 931 - # Before reloading we need to ensure that the units are still active. They may have been 932 - # deactivated because one of their requirements got stopped. If they are inactive 933 - # but should have been reloaded, the user probably expects them to be started. 934 - if (scalar(keys(%units_to_reload)) > 0) { 935 - for my $unit (keys(%units_to_reload)) { 936 - if (!unit_is_active($unit)) { 937 - # Figure out if we need to start the unit 938 - my %unit_info = parse_unit("$toplevel/etc/systemd/system/$unit", "$toplevel/etc/systemd/system/$unit"); 939 - if (!(parse_systemd_bool(\%unit_info, "Unit", "RefuseManualStart", 0) || parse_systemd_bool(\%unit_info, "Unit", "X-OnlyManualStart", 0))) { 940 - $units_to_start{$unit} = 1; 941 - record_unit($start_list_file, $unit); 942 - } 943 - # Don't reload the unit, reloading would fail 944 - delete %units_to_reload{$unit}; 945 - unrecord_unit($reload_list_file, $unit); 946 - } 947 - } 948 - } 949 - # Reload units that need it. This includes remounting changed mount 950 - # units. 951 - if (scalar(keys(%units_to_reload)) > 0) { 952 - print STDERR "reloading the following units: ", join(", ", sort(keys(%units_to_reload))), "\n"; 953 - system("$new_systemd/bin/systemctl", "reload", "--", sort(keys(%units_to_reload))) == 0 or $res = 4; 954 - unlink($reload_list_file); 955 - } 956 - 957 - # Restart changed services (those that have to be restarted rather 958 - # than stopped and started). 959 - if (scalar(keys(%units_to_restart)) > 0) { 960 - print STDERR "restarting the following units: ", join(", ", sort(keys(%units_to_restart))), "\n"; 961 - system("$new_systemd/bin/systemctl", "restart", "--", sort(keys(%units_to_restart))) == 0 or $res = 4; 962 - unlink($restart_list_file); 963 - } 964 - 965 - # Start all active targets, as well as changed units we stopped above. 966 - # The latter is necessary because some may not be dependencies of the 967 - # targets (i.e., they were manually started). FIXME: detect units 968 - # that are symlinks to other units. We shouldn't start both at the 969 - # same time because we'll get a "Failed to add path to set" error from 970 - # systemd. 971 - my @units_to_start_filtered = filter_units(\%units_to_start); 972 - if (scalar(@units_to_start_filtered)) { 973 - print STDERR "starting the following units: ", join(", ", @units_to_start_filtered), "\n" 974 - } 975 - system("$new_systemd/bin/systemctl", "start", "--", sort(keys(%units_to_start))) == 0 or $res = 4; 976 - unlink($start_list_file); 977 - 978 - 979 - # Print failed and new units. 980 - my (@failed, @new); 981 - my $active_new = get_active_units(); 982 - while (my ($unit, $state) = each(%{$active_new})) { 983 - if ($state->{state} eq "failed") { 984 - push(@failed, $unit); 985 - next; 986 - } 987 - 988 - if ($state->{substate} eq "auto-restart") { 989 - # A unit in auto-restart substate is a failure *if* it previously failed to start 990 - open(my $main_status_fd, "-|", "$new_systemd/bin/systemctl", "show", "--value", "--property=ExecMainStatus", $unit) || die("Unable to call 'systemctl show'"); 991 - my $main_status = do { local $/ = undef; <$main_status_fd> }; 992 - close($main_status_fd) || die("Unable to close 'systemctl show' fd"); 993 - chomp($main_status); 994 - 995 - if ($main_status ne "0") { 996 - push(@failed, $unit); 997 - next; 998 - } 999 - } 1000 - 1001 - # Ignore scopes since they are not managed by this script but rather 1002 - # created and managed by third-party services via the systemd dbus API. 1003 - # This only lists units that are not failed (including ones that are in auto-restart but have not failed previously) 1004 - if ($state->{state} ne "failed" && !defined($active_cur->{$unit}) && $unit !~ /\.scope$/msx) { 1005 - push(@new, $unit); 1006 - } 1007 - } 1008 - 1009 - if (scalar(@new) > 0) { 1010 - print STDERR "the following new units were started: ", join(", ", sort(@new)), "\n" 1011 - } 1012 - 1013 - if (scalar(@failed) > 0) { 1014 - my @failed_sorted = sort(@failed); 1015 - print STDERR "warning: the following units failed: ", join(", ", @failed_sorted), "\n\n"; 1016 - system("$new_systemd/bin/systemctl status --no-pager --full '" . join("' '", @failed_sorted) . "' >&2"); 1017 - $res = 4; 1018 - } 1019 - 1020 - if ($res == 0) { 1021 - syslog(LOG_NOTICE, "finished switching to system configuration $toplevel"); 1022 - } else { 1023 - syslog(LOG_ERR, "switching to system configuration $toplevel failed (status $res)"); 1024 - } 1025 - 1026 - close($stc_lock) or die "Could not close lock - $!"; 1027 - exit($res);
+37 -89
nixos/modules/system/activation/switchable-system.nix
··· 5 5 ... 6 6 }: 7 7 8 - let 9 - perlWrapped = pkgs.perl.withPackages ( 10 - p: with p; [ 11 - ConfigIniFiles 12 - FileSlurp 13 - ] 14 - ); 15 - in 16 8 { 17 - options.system.switch = { 18 - enable = lib.mkOption { 19 - type = lib.types.bool; 20 - default = true; 21 - description = '' 22 - Whether to include the capability to switch configurations. 9 + imports = [ 10 + (lib.mkRemovedOptionModule [ "system" "switch" "enableNg" ] '' 11 + This option controlled the usage of the new switch-to-configuration-ng, 12 + which is now the only switch-to-configuration implementation. This option 13 + can be removed from configuration. If there are outstanding issues 14 + preventing you from using the new implementation, please open an issue on 15 + GitHub. 16 + '') 17 + ]; 23 18 24 - Disabling this makes the system unable to be reconfigured via `nixos-rebuild`. 19 + options.system.switch.enable = lib.mkOption { 20 + type = lib.types.bool; 21 + default = true; 22 + description = '' 23 + Whether to include the capability to switch configurations. 25 24 26 - This is good for image based appliances where updates are handled 27 - outside the image. Reducing features makes the image lighter and 28 - slightly more secure. 29 - ''; 30 - }; 25 + Disabling this makes the system unable to be reconfigured via `nixos-rebuild`. 31 26 32 - enableNg = lib.mkOption { 33 - type = lib.types.bool; 34 - default = config.system.switch.enable; 35 - defaultText = lib.literalExpression "config.system.switch.enable"; 36 - description = '' 37 - Whether to use `switch-to-configuration-ng`, the Rust-based 38 - re-implementation of the original Perl `switch-to-configuration`. 39 - ''; 40 - }; 27 + This is good for image based appliances where updates are handled 28 + outside the image. Reducing features makes the image lighter and 29 + slightly more secure. 30 + ''; 41 31 }; 42 32 43 - config = lib.mkMerge [ 44 - (lib.mkIf (config.system.switch.enable && !config.system.switch.enableNg) { 45 - warnings = [ 46 - '' 47 - The Perl implementation of switch-to-configuration will be deprecated 48 - and removed in the 25.05 release of NixOS. Please migrate to the 49 - newer implementation by removing `system.switch.enableNg = false` 50 - from your configuration. If you are unable to migrate due to any 51 - issues with the new implementation, please create an issue and tag 52 - the maintainers of `switch-to-configuration-ng`. 53 - '' 54 - ]; 33 + config = lib.mkIf config.system.switch.enable { 34 + # Use a subshell so we can source makeWrapper's setup hook without 35 + # affecting the rest of activatableSystemBuilderCommands. 36 + system.activatableSystemBuilderCommands = '' 37 + ( 38 + source ${pkgs.buildPackages.makeWrapper}/nix-support/setup-hook 55 39 56 - system.activatableSystemBuilderCommands = '' 57 40 mkdir $out/bin 58 - substitute ${./switch-to-configuration.pl} $out/bin/switch-to-configuration \ 59 - --subst-var out \ 60 - --subst-var-by toplevel ''${!toplevelVar} \ 61 - --subst-var-by coreutils "${pkgs.coreutils}" \ 62 - --subst-var-by distroId ${lib.escapeShellArg config.system.nixos.distroId} \ 63 - --subst-var-by installBootLoader ${lib.escapeShellArg config.system.build.installBootLoader} \ 64 - --subst-var-by preSwitchCheck ${lib.escapeShellArg config.system.preSwitchChecksScript} \ 65 - --subst-var-by localeArchive "${config.i18n.glibcLocales}/lib/locale/locale-archive" \ 66 - --subst-var-by perl "${perlWrapped}" \ 67 - --subst-var-by shell "${pkgs.bash}/bin/sh" \ 68 - --subst-var-by su "${pkgs.shadow.su}/bin/su" \ 69 - --subst-var-by systemd "${config.systemd.package}" \ 70 - --subst-var-by utillinux "${pkgs.util-linux}" \ 71 - ; 72 - 73 - chmod +x $out/bin/switch-to-configuration 74 - ${lib.optionalString (pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform) '' 75 - if ! output=$(${perlWrapped}/bin/perl -c $out/bin/switch-to-configuration 2>&1); then 76 - echo "switch-to-configuration syntax is not valid:" 77 - echo "$output" 78 - exit 1 79 - fi 80 - ''} 81 - ''; 82 - }) 83 - (lib.mkIf config.system.switch.enableNg { 84 - # Use a subshell so we can source makeWrapper's setup hook without 85 - # affecting the rest of activatableSystemBuilderCommands. 86 - system.activatableSystemBuilderCommands = '' 87 - ( 88 - source ${pkgs.buildPackages.makeWrapper}/nix-support/setup-hook 89 - 90 - mkdir $out/bin 91 - ln -sf ${lib.getExe pkgs.switch-to-configuration-ng} $out/bin/switch-to-configuration 92 - wrapProgram $out/bin/switch-to-configuration \ 93 - --set OUT $out \ 94 - --set TOPLEVEL ''${!toplevelVar} \ 95 - --set DISTRO_ID ${lib.escapeShellArg config.system.nixos.distroId} \ 96 - --set INSTALL_BOOTLOADER ${lib.escapeShellArg config.system.build.installBootLoader} \ 97 - --set PRE_SWITCH_CHECK ${lib.escapeShellArg config.system.preSwitchChecksScript} \ 98 - --set LOCALE_ARCHIVE ${config.i18n.glibcLocales}/lib/locale/locale-archive \ 99 - --set SYSTEMD ${config.systemd.package} 100 - ) 101 - ''; 102 - }) 103 - ]; 104 - 41 + ln -sf ${lib.getExe pkgs.switch-to-configuration-ng} $out/bin/switch-to-configuration 42 + wrapProgram $out/bin/switch-to-configuration \ 43 + --set OUT $out \ 44 + --set TOPLEVEL ''${!toplevelVar} \ 45 + --set DISTRO_ID ${lib.escapeShellArg config.system.nixos.distroId} \ 46 + --set INSTALL_BOOTLOADER ${lib.escapeShellArg config.system.build.installBootLoader} \ 47 + --set PRE_SWITCH_CHECK ${lib.escapeShellArg config.system.preSwitchChecksScript} \ 48 + --set LOCALE_ARCHIVE ${config.i18n.glibcLocales}/lib/locale/locale-archive \ 49 + --set SYSTEMD ${config.systemd.package} 50 + ) 51 + ''; 52 + }; 105 53 }
+9 -9
nixos/tests/all-tests.nix
··· 247 247 _module.args.compression = "xz"; 248 248 }; 249 249 bind = runTest ./bind.nix; 250 - bird = handleTest ./bird.nix { }; 250 + bird2 = import ./bird.nix { 251 + inherit runTest; 252 + package = pkgs.bird2; 253 + }; 254 + bird3 = import ./bird.nix { 255 + inherit runTest; 256 + package = pkgs.bird3; 257 + }; 251 258 birdwatcher = handleTest ./birdwatcher.nix { }; 252 259 bitbox-bridge = runTest ./bitbox-bridge.nix; 253 260 bitcoind = runTest ./bitcoind.nix; ··· 1283 1290 swapspace = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./swapspace.nix { }; 1284 1291 sway = runTest ./sway.nix; 1285 1292 swayfx = runTest ./swayfx.nix; 1286 - switchTest = runTest { 1287 - imports = [ ./switch-test.nix ]; 1288 - defaults.system.switch.enableNg = false; 1289 - }; 1290 - switchTestNg = runTest { 1291 - imports = [ ./switch-test.nix ]; 1292 - defaults.system.switch.enableNg = true; 1293 - }; 1293 + switchTest = runTest ./switch-test.nix; 1294 1294 sx = runTest ./sx.nix; 1295 1295 sympa = runTest ./sympa.nix; 1296 1296 syncthing = runTest ./syncthing.nix;
+31 -32
nixos/tests/bird.nix
··· 1 - # This test does a basic functionality check for all bird variants and demonstrates a use 2 - # of the preCheckConfig option. 3 - 4 1 { 5 - system ? builtins.currentSystem, 6 - pkgs ? import ../.. { 7 - inherit system; 8 - config = { }; 9 - }, 2 + runTest, 3 + package, 10 4 }: 11 5 12 6 let 13 - inherit (import ../lib/testing-python.nix { inherit system pkgs; }) makeTest; 14 - inherit (pkgs.lib) optionalString; 15 - 16 7 makeBirdHost = 17 8 hostId: 18 9 { pkgs, ... }: ··· 33 24 }; 34 25 35 26 services.bird = { 27 + inherit package; 28 + 36 29 enable = true; 37 30 38 31 config = '' ··· 106 99 ]; 107 100 }; 108 101 in 109 - makeTest { 110 - name = "bird"; 102 + { 103 + twoNodeOSPF = runTest { 104 + name = "bird-twoNodeOSPF"; 111 105 112 - nodes.host1 = makeBirdHost "1"; 113 - nodes.host2 = makeBirdHost "2"; 106 + nodes.host1 = makeBirdHost "1"; 107 + nodes.host2 = makeBirdHost "2"; 114 108 115 - testScript = '' 116 - start_all() 109 + testScript = '' 110 + start_all() 117 111 118 - host1.wait_for_unit("bird.service") 119 - host2.wait_for_unit("bird.service") 120 - host1.succeed("systemctl reload bird.service") 112 + host1.wait_for_unit("bird.service") 113 + host2.wait_for_unit("bird.service") 121 114 122 - with subtest("Waiting for advertised IPv4 routes"): 123 - host1.wait_until_succeeds("ip --json r | jq -e 'map(select(.dst == \"10.10.0.2\")) | any'") 124 - host2.wait_until_succeeds("ip --json r | jq -e 'map(select(.dst == \"10.10.0.1\")) | any'") 125 - with subtest("Waiting for advertised IPv6 routes"): 126 - host1.wait_until_succeeds("ip --json -6 r | jq -e 'map(select(.dst == \"fdff::2\")) | any'") 127 - host2.wait_until_succeeds("ip --json -6 r | jq -e 'map(select(.dst == \"fdff::1\")) | any'") 115 + host1.succeed("bird --version") 116 + host2.succeed("bird --version") 128 117 129 - with subtest("Check fake routes in preCheckConfig do not exists"): 130 - host1.fail("ip --json r | jq -e 'map(select(.dst == \"1.2.3.4\")) | any'") 131 - host2.fail("ip --json r | jq -e 'map(select(.dst == \"1.2.3.4\")) | any'") 118 + host1.succeed("systemctl reload bird.service") 132 119 133 - host1.fail("ip --json -6 r | jq -e 'map(select(.dst == \"fd00::\")) | any'") 134 - host2.fail("ip --json -6 r | jq -e 'map(select(.dst == \"fd00::\")) | any'") 135 - ''; 120 + with subtest("Waiting for advertised IPv4 routes"): 121 + host1.wait_until_succeeds("ip --json r | jq -e 'map(select(.dst == \"10.10.0.2\")) | any'") 122 + host2.wait_until_succeeds("ip --json r | jq -e 'map(select(.dst == \"10.10.0.1\")) | any'") 123 + with subtest("Waiting for advertised IPv6 routes"): 124 + host1.wait_until_succeeds("ip --json -6 r | jq -e 'map(select(.dst == \"fdff::2\")) | any'") 125 + host2.wait_until_succeeds("ip --json -6 r | jq -e 'map(select(.dst == \"fdff::1\")) | any'") 126 + 127 + with subtest("Check fake routes in preCheckConfig do not exists"): 128 + host1.fail("ip --json r | jq -e 'map(select(.dst == \"1.2.3.4\")) | any'") 129 + host2.fail("ip --json r | jq -e 'map(select(.dst == \"1.2.3.4\")) | any'") 130 + 131 + host1.fail("ip --json -6 r | jq -e 'map(select(.dst == \"fd00::\")) | any'") 132 + host2.fail("ip --json -6 r | jq -e 'map(select(.dst == \"fd00::\")) | any'") 133 + ''; 134 + }; 136 135 }
+1 -1
nixos/tests/switch-test.nix
··· 663 663 ''; 664 664 665 665 # Returns a comma separated representation of the given list in sorted 666 - # order, that matches the output format of switch-to-configuration.pl 666 + # order, that matches the output format of switch-to-configuration 667 667 sortedUnits = xs: lib.concatStringsSep ", " (builtins.sort builtins.lessThan xs); 668 668 669 669 dbusService =
+3 -6
pkgs/applications/editors/neovim/utils.nix
··· 227 227 ) vimPlugins.nvim-treesitter.grammarPlugins; 228 228 isNvimGrammar = x: builtins.elem x nvimGrammars; 229 229 230 - toNvimTreesitterGrammar = callPackage ( 231 - { }: 232 - makeSetupHook { 233 - name = "to-nvim-treesitter-grammar"; 234 - } ./to-nvim-treesitter-grammar.sh 235 - ) { }; 230 + toNvimTreesitterGrammar = makeSetupHook { 231 + name = "to-nvim-treesitter-grammar"; 232 + } ./to-nvim-treesitter-grammar.sh; 236 233 in 237 234 238 235 (toVimPlugin (
+3 -3
pkgs/applications/emulators/libretro/cores/handy.nix
··· 5 5 }: 6 6 mkLibretroCore { 7 7 core = "handy"; 8 - version = "0-unstable-2024-10-21"; 8 + version = "0-unstable-2025-06-16"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "libretro"; 12 12 repo = "libretro-handy"; 13 - rev = "4e9e072796e5552a9d57f6ab83b3f85f27b17fb6"; 14 - hash = "sha256-ThzFEqLCX2JC06n6GZgkGzX5sFY5CxFDjkeekXRmbXY="; 13 + rev = "fca239207e9c111da3e85d2faf0b1b9d7524e498"; 14 + hash = "sha256-8RpRhGgW5JWY6TZa9CEaXF66WpbjcjprorVqu+FGYu0="; 15 15 }; 16 16 17 17 makefile = "Makefile";
+9 -6
pkgs/applications/misc/yokadi/default.nix
··· 6 6 sqlalchemy, 7 7 setproctitle, 8 8 icalendar, 9 + colorama, 9 10 }: 10 11 11 12 buildPythonApplication rec { 12 13 pname = "yokadi"; 13 - version = "1.2.0"; 14 + version = "1.3.0"; 14 15 15 16 src = fetchurl { 16 17 url = "https://yokadi.github.io/download/${pname}-${version}.tar.gz"; 17 - sha256 = "681c8aa52b2e4b5255e1311e76b4b81dcb63ee7f6ca3a47178e684c06baf330f"; 18 + hash = "sha256-zF2ffHeU+i7wzu1u4DhQ5zJXr8AjXboiyFAisXNX6TM="; 18 19 }; 19 20 20 - propagatedBuildInputs = [ 21 + dependencies = [ 21 22 python-dateutil 22 23 sqlalchemy 23 24 setproctitle 24 25 icalendar 26 + colorama 25 27 ]; 26 28 27 29 # Yokadi doesn't have any tests 28 30 doCheck = false; 29 31 30 - meta = with lib; { 32 + meta = { 31 33 description = "Command line oriented, sqlite powered, todo-list"; 32 34 homepage = "https://yokadi.github.io/index.html"; 33 - license = licenses.gpl3Plus; 34 - maintainers = [ maintainers.nkpvk ]; 35 + mainProgram = "yokadi"; 36 + license = lib.licenses.gpl3Plus; 37 + maintainers = [ lib.maintainers.nkpvk ]; 35 38 }; 36 39 }
+34
pkgs/applications/networking/cluster/k3s/docs/USAGE.md
··· 64 64 K3s has a config setting `prefer-bundled-bin` (and CLI flag `--prefer-bundled-bin`) that makes k3s use binaries from the `/var/lib/rancher/k3s/data/current/bin/aux/` directory, as unpacked by the k3s binary, before the system `$PATH`. 65 65 This works with the official distribution of k3s but not with the package from nixpkgs, as it does not bundle the upstream binaries from [`k3s-root`](https://github.com/k3s-io/k3s-root) into the k3s binary. 66 66 Thus the `prefer-bundled-bin` setting **cannot** be used to work around issues (like [this `mount` regression](https://github.com/util-linux/util-linux/issues/3474)) with binaries used/called by the kubelet. 67 + 68 + ### Building from a different source 69 + 70 + Because the package is split into multiple derivations and the build process is generally more complex, it is not very obvious how to build k3s from a different source (fork or arbitrary commit). 71 + 72 + To build k3s from a different source, you must use `.override` together with `overrideBundleAttrs` (for the k3sBundle derivation) and another `.overrideAttrs` (for the final derivation): 73 + 74 + ```nix 75 + { fetchgit, k3s }: 76 + let 77 + k3sRepo = fetchgit { 78 + url = "https://github.com/k3s-io/k3s"; 79 + rev = "99d91538b1327da933356c318dc8040335fbb66c"; 80 + hash = "sha256-vVqZzVp0Tea27s8HDVq4SgqlbHBdZcFzNKmPFi0Yktk="; 81 + }; 82 + vendorHash = "sha256-jrPVY+FVZV9wlbik/I35W8ChcLrHlYbLAwUYU16mJLM="; 83 + in 84 + (k3s.override { 85 + overrideBundleAttrs = { 86 + src = k3sRepo; 87 + inherit vendorHash; 88 + }; 89 + }).overrideAttrs 90 + { 91 + src = k3sRepo; 92 + inherit vendorHash; 93 + } 94 + ``` 95 + 96 + - Additionally to `overrideBundleAttrs` there are also: `overrideCniPluginsAttrs` and `overrideContainerdAttrs`. 97 + - `k3s --version` still prints the commit SHA (`k3sCommit` passed into `builder.nix`) from the "base" package instead of the actually used `rev`. 98 + - Depending on the changes made in the fork / commit, the `k3s.override` (without the `overrideAttrs` of the final derivation) might already be enough. 99 + - If the commit is for a different version of k3s, make sure to use the correct "base" package, e.g., `k3s_1_31.override`. Otherwise the build fails with `Tagged version 'v1.33.1+k3s1' does not match expected version 'v1.31.9[+-]*'` 100 + - When adding an entirely new k3s version by calling `builder.nix`, keep in mind that the `k3sCommit` parameter is not used as the `k3sRepo` `rev` (it uses `v${k3sVersion}`). Therefore, you additionally must override the package, as shown above.
+2 -2
pkgs/applications/networking/mailreaders/thunderbird/packages.nix
··· 106 106 thunderbird-128 = common { 107 107 applicationName = "Thunderbird ESR"; 108 108 109 - version = "128.11.0esr"; 110 - sha512 = "33de73db2d5ab5152ff11c1947317081259f4e7644631b5e6b9c3b192b4473a5ae6fe897b27b3c8e240ff8c606ffaa8cc14e169c34a94b8de6e64b0c5f0f6810"; 109 + version = "128.11.1esr"; 110 + sha512 = "8fd99f68895b543bdc5bba38d7720f0e48e2a82c9fe5e8ca15534e3918cc40b5b2911666dbbbda0a7911783a03a0d8f7371ea353fd67416baca1e1dffdd25c44"; 111 111 112 112 updateScript = callPackage ./update.nix { 113 113 attrPath = "thunderbirdPackages.thunderbird-128";
+1 -1
pkgs/applications/networking/p2p/deluge/default.nix
··· 68 68 nativeCheckInputs = with pypkgs; [ 69 69 pytestCheckHook 70 70 pytest-twisted 71 - pytest-cov 71 + pytest-cov-stub 72 72 mock 73 73 mccabe 74 74 pylint
+11 -25
pkgs/applications/search/recoll/0001-no-qtgui-darwin-bundle.patch
··· 1 - From 9a0102fe1da038ebe08107ead991964df11b0271 Mon Sep 17 00:00:00 2001 2 - From: annalee <150648636+a-n-n-a-l-e-e@users.noreply.github.com> 3 - Date: Mon, 19 Feb 2024 03:31:20 +0000 4 - Subject: [PATCH] no qtgui darwin bundle 5 - 6 - --- 7 - qtgui/recoll.pro.in | 11 +++++++++-- 8 - 1 file changed, 9 insertions(+), 2 deletions(-) 9 - 10 - diff --git a/qtgui/recoll.pro.in b/qtgui/recoll.pro.in 11 - index a0ef314..6dbc3b5 100644 12 1 --- a/qtgui/recoll.pro.in 13 2 +++ b/qtgui/recoll.pro.in 14 - @@ -180,7 +180,7 @@ windows { 15 - } 3 + @@ -192,7 +192,7 @@ 4 + } 16 5 } 17 6 18 - -macx: { 7 + -macx:macxbundlebuild() { 19 8 +if (false) { 20 - QCBUILDLOC=Qt_6_4_2_for_macOS 21 - 22 - # QT += webkit webkitwidgets 23 - @@ -375,7 +375,7 @@ macx: { 9 + QCBUILDLOC=Qt_6_7_3_for_macOS 10 + RECOLLDEPS = $$PWD/../../.. 11 + QMAKE_APPLE_DEVICE_ARCHS = x86_64 arm64 12 + @@ -402,7 +402,7 @@ 24 13 QMAKE_BUNDLE_DATA = APP_EXAMPLES APP_EXAMPLES_MAC APP_FILTERS APP_IMAGES APP_DOC 25 14 } 26 15 27 - -unix:!macx { 16 + -unix:!macxbundlebuild() { 28 17 +unix { 29 18 30 19 VPATH = @srcdir@ 31 - 32 - @@ -400,6 +400,13 @@ VPATH = @srcdir@ 20 + # For SingleApplication 21 + @@ -425,6 +425,13 @@ 33 22 SOURCES += crontool.cpp \ 34 23 rtitool.cpp 35 24 36 - + macx { 25 + + macxbundlebuild() { 37 26 + SOURCES += ../utils/closefrom.cpp \ 38 27 + ../utils/execmd.cpp \ 39 28 + ../utils/netcon.cpp \ ··· 43 32 FORMS += crontool.ui \ 44 33 rtitool.ui 45 34 46 - -- 47 - 2.43.0 48 -
+2 -5
pkgs/applications/search/recoll/default.nix
··· 75 75 76 76 mkDerivation rec { 77 77 pname = "recoll"; 78 - version = "1.39.1"; 78 + version = "1.43.2"; 79 79 80 80 src = fetchurl { 81 81 url = "https://www.recoll.org/${pname}-${version}.tar.gz"; 82 - hash = "sha256-Eeadj/AnuztCb7VIYEy4hKbduH3CzK53tADvI9+PWmQ="; 82 + hash = "sha256-FbDXknumjktcikOfAe4FKtPmggJGGHasq8dpD+8mNzE="; 83 83 }; 84 84 85 85 mesonFlags = ··· 107 107 ]; 108 108 109 109 env.NIX_CFLAGS_COMPILE = toString [ 110 - "-DNIXPKGS" 111 110 "-fpermissive" # libxml2-2.12 changed const qualifiers 112 111 ]; 113 112 114 113 patches = [ 115 - # fix "No/bad main configuration file" error 116 - ./fix-datadir.patch 117 114 # use the same configure based build for darwin as linux 118 115 ./0001-no-qtgui-darwin-bundle.patch 119 116 ];
-13
pkgs/applications/search/recoll/fix-datadir.patch
··· 1 - diff --git a/utils/rclutil.cpp b/utils/rclutil.cpp 2 - index 6bafc119..d997cd17 100644 3 - --- a/utils/rclutil.cpp 4 - +++ b/utils/rclutil.cpp 5 - @@ -279,7 +279,7 @@ const string& path_pkgdatadir() 6 - "a subfolder of the installation directory. \n" 7 - "Please set the RECOLL_DATADIR environment variable to point to it\n" 8 - "(e.g. setx RECOLL_DATADIR \"C:/Program Files (X86)/Recoll/Share)\"\n"; 9 - -#elif defined(__APPLE__) && defined(RECOLL_AS_MAC_BUNDLE) 10 - +#elif defined(__APPLE__) && defined(RECOLL_AS_MAC_BUNDLE) && defined(NIXPKGS) 11 - // The package manager builds (Macports, Homebrew, Nixpkgs ...) all arrange to set a proper 12 - // compiled value for RECOLL_DATADIR. We can't do this when building a native bundle with 13 - // QCreator, in which case we use the executable location.
+2 -2
pkgs/applications/window-managers/i3/bumblebee-status/plugins.nix
··· 1 1 { 2 2 pkgs, 3 - python, 3 + python3, 4 4 ... 5 5 }: 6 6 # propagatedBuildInputs are for Python libraries and executables 7 7 # buildInputs are for libraries 8 8 let 9 - py = python.pkgs; 9 + py = python3.pkgs; 10 10 in 11 11 { 12 12 amixer.propagatedBuildInputs = [ pkgs.alsa-utils ];
+100 -124
pkgs/build-support/rust/hooks/default.nix
··· 1 1 { 2 - buildPackages, 3 - callPackage, 4 - cargo, 5 2 cargo-nextest, 6 3 clang, 7 4 diffutils, 8 5 lib, 9 6 makeSetupHook, 10 - maturin, 11 7 rust, 12 - rustc, 13 8 stdenv, 9 + pkgsHostTarget, 14 10 pkgsTargetTarget, 15 11 16 12 # This confusingly-named parameter indicates the *subdirectory of ··· 21 17 pkgsCross, 22 18 }: 23 19 { 24 - cargoBuildHook = callPackage ( 25 - { }: 26 - makeSetupHook { 27 - name = "cargo-build-hook.sh"; 28 - substitutions = { 29 - inherit (stdenv.targetPlatform.rust) rustcTarget; 30 - inherit (rust.envVars) setEnv; 20 + cargoBuildHook = makeSetupHook { 21 + name = "cargo-build-hook.sh"; 22 + substitutions = { 23 + inherit (stdenv.targetPlatform.rust) rustcTarget; 24 + inherit (rust.envVars) setEnv; 31 25 26 + }; 27 + passthru.tests = 28 + { 29 + test = tests.rust-hooks.cargoBuildHook; 30 + } 31 + // lib.optionalAttrs (stdenv.isLinux) { 32 + testCross = pkgsCross.riscv64.tests.rust-hooks.cargoBuildHook; 32 33 }; 33 - passthru.tests = 34 - { 35 - test = tests.rust-hooks.cargoBuildHook; 36 - } 37 - // lib.optionalAttrs (stdenv.isLinux) { 38 - testCross = pkgsCross.riscv64.tests.rust-hooks.cargoBuildHook; 39 - }; 40 - } ./cargo-build-hook.sh 41 - ) { }; 34 + } ./cargo-build-hook.sh; 42 35 43 - cargoCheckHook = callPackage ( 44 - { }: 45 - makeSetupHook { 46 - name = "cargo-check-hook.sh"; 47 - substitutions = { 48 - inherit (stdenv.targetPlatform.rust) rustcTarget; 49 - inherit (rust.envVars) setEnv; 36 + cargoCheckHook = makeSetupHook { 37 + name = "cargo-check-hook.sh"; 38 + substitutions = { 39 + inherit (stdenv.targetPlatform.rust) rustcTarget; 40 + inherit (rust.envVars) setEnv; 41 + }; 42 + passthru.tests = 43 + { 44 + test = tests.rust-hooks.cargoCheckHook; 45 + } 46 + // lib.optionalAttrs (stdenv.isLinux) { 47 + testCross = pkgsCross.riscv64.tests.rust-hooks.cargoCheckHook; 50 48 }; 51 - passthru.tests = 52 - { 53 - test = tests.rust-hooks.cargoCheckHook; 54 - } 55 - // lib.optionalAttrs (stdenv.isLinux) { 56 - testCross = pkgsCross.riscv64.tests.rust-hooks.cargoCheckHook; 57 - }; 58 - } ./cargo-check-hook.sh 59 - ) { }; 49 + } ./cargo-check-hook.sh; 60 50 61 - cargoInstallHook = callPackage ( 62 - { }: 63 - makeSetupHook { 64 - name = "cargo-install-hook.sh"; 65 - substitutions = { 66 - targetSubdirectory = target; 51 + cargoInstallHook = makeSetupHook { 52 + name = "cargo-install-hook.sh"; 53 + substitutions = { 54 + targetSubdirectory = target; 55 + }; 56 + passthru.tests = 57 + { 58 + test = tests.rust-hooks.cargoInstallHook; 59 + } 60 + // lib.optionalAttrs (stdenv.isLinux) { 61 + testCross = pkgsCross.riscv64.tests.rust-hooks.cargoInstallHook; 67 62 }; 68 - passthru.tests = 69 - { 70 - test = tests.rust-hooks.cargoInstallHook; 71 - } 72 - // lib.optionalAttrs (stdenv.isLinux) { 73 - testCross = pkgsCross.riscv64.tests.rust-hooks.cargoInstallHook; 74 - }; 75 - } ./cargo-install-hook.sh 76 - ) { }; 63 + } ./cargo-install-hook.sh; 77 64 78 - cargoNextestHook = callPackage ( 79 - { }: 80 - makeSetupHook { 81 - name = "cargo-nextest-hook.sh"; 82 - propagatedBuildInputs = [ cargo-nextest ]; 83 - substitutions = { 84 - inherit (stdenv.targetPlatform.rust) rustcTarget; 65 + cargoNextestHook = makeSetupHook { 66 + name = "cargo-nextest-hook.sh"; 67 + propagatedBuildInputs = [ cargo-nextest ]; 68 + substitutions = { 69 + inherit (stdenv.targetPlatform.rust) rustcTarget; 70 + }; 71 + passthru.tests = 72 + { 73 + test = tests.rust-hooks.cargoNextestHook; 74 + } 75 + // lib.optionalAttrs (stdenv.isLinux) { 76 + testCross = pkgsCross.riscv64.tests.rust-hooks.cargoNextestHook; 85 77 }; 86 - passthru.tests = 87 - { 88 - test = tests.rust-hooks.cargoNextestHook; 89 - } 90 - // lib.optionalAttrs (stdenv.isLinux) { 91 - testCross = pkgsCross.riscv64.tests.rust-hooks.cargoNextestHook; 92 - }; 93 - } ./cargo-nextest-hook.sh 94 - ) { }; 78 + } ./cargo-nextest-hook.sh; 95 79 96 - cargoSetupHook = callPackage ( 97 - { }: 98 - makeSetupHook { 99 - name = "cargo-setup-hook.sh"; 100 - propagatedBuildInputs = [ ]; 101 - substitutions = { 102 - defaultConfig = ../fetchcargo-default-config.toml; 80 + cargoSetupHook = makeSetupHook { 81 + name = "cargo-setup-hook.sh"; 82 + propagatedBuildInputs = [ ]; 83 + substitutions = { 84 + defaultConfig = ../fetchcargo-default-config.toml; 103 85 104 - # Specify the stdenv's `diff` by abspath to ensure that the user's build 105 - # inputs do not cause us to find the wrong `diff`. 106 - diff = "${lib.getBin diffutils}/bin/diff"; 86 + # Specify the stdenv's `diff` by abspath to ensure that the user's build 87 + # inputs do not cause us to find the wrong `diff`. 88 + diff = "${lib.getBin diffutils}/bin/diff"; 107 89 108 - cargoConfig = 109 - lib.optionalString (stdenv.hostPlatform.config != stdenv.targetPlatform.config) '' 110 - [target."${stdenv.targetPlatform.rust.rustcTarget}"] 111 - "linker" = "${pkgsTargetTarget.stdenv.cc}/bin/${pkgsTargetTarget.stdenv.cc.targetPrefix}cc" 112 - "rustflags" = [ "-C", "target-feature=${ 113 - if pkgsTargetTarget.stdenv.targetPlatform.isStatic then "+" else "-" 114 - }crt-static" ] 115 - '' 116 - + '' 117 - [target."${stdenv.hostPlatform.rust.rustcTarget}"] 118 - "linker" = "${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc" 119 - ''; 90 + cargoConfig = 91 + lib.optionalString (stdenv.hostPlatform.config != stdenv.targetPlatform.config) '' 92 + [target."${stdenv.targetPlatform.rust.rustcTarget}"] 93 + "linker" = "${pkgsTargetTarget.stdenv.cc}/bin/${pkgsTargetTarget.stdenv.cc.targetPrefix}cc" 94 + "rustflags" = [ "-C", "target-feature=${ 95 + if pkgsTargetTarget.stdenv.targetPlatform.isStatic then "+" else "-" 96 + }crt-static" ] 97 + '' 98 + + '' 99 + [target."${stdenv.hostPlatform.rust.rustcTarget}"] 100 + "linker" = "${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc" 101 + ''; 102 + }; 103 + 104 + passthru.tests = 105 + { 106 + test = tests.rust-hooks.cargoSetupHook; 107 + } 108 + // lib.optionalAttrs (stdenv.isLinux) { 109 + testCross = pkgsCross.riscv64.tests.rust-hooks.cargoSetupHook; 120 110 }; 121 - passthru.tests = 122 - { 123 - test = tests.rust-hooks.cargoSetupHook; 124 - } 125 - // lib.optionalAttrs (stdenv.isLinux) { 126 - testCross = pkgsCross.riscv64.tests.rust-hooks.cargoSetupHook; 127 - }; 128 - } ./cargo-setup-hook.sh 129 - ) { }; 111 + } ./cargo-setup-hook.sh; 130 112 131 - maturinBuildHook = callPackage ( 132 - { pkgsHostTarget }: 133 - makeSetupHook { 134 - name = "maturin-build-hook.sh"; 135 - propagatedBuildInputs = [ 136 - pkgsHostTarget.maturin 137 - pkgsHostTarget.cargo 138 - pkgsHostTarget.rustc 139 - ]; 140 - substitutions = { 141 - inherit (stdenv.targetPlatform.rust) rustcTarget; 142 - inherit (rust.envVars) setEnv; 113 + maturinBuildHook = makeSetupHook { 114 + name = "maturin-build-hook.sh"; 115 + propagatedBuildInputs = [ 116 + pkgsHostTarget.maturin 117 + pkgsHostTarget.cargo 118 + pkgsHostTarget.rustc 119 + ]; 120 + substitutions = { 121 + inherit (stdenv.targetPlatform.rust) rustcTarget; 122 + inherit (rust.envVars) setEnv; 143 123 144 - }; 145 - } ./maturin-build-hook.sh 146 - ) { }; 124 + }; 125 + } ./maturin-build-hook.sh; 147 126 148 - bindgenHook = callPackage ( 149 - { }: 150 - makeSetupHook { 151 - name = "rust-bindgen-hook"; 152 - substitutions = { 153 - libclang = (lib.getLib clang.cc); 154 - inherit clang; 155 - }; 156 - } ./rust-bindgen-hook.sh 157 - ) { }; 127 + bindgenHook = makeSetupHook { 128 + name = "rust-bindgen-hook"; 129 + substitutions = { 130 + libclang = (lib.getLib clang.cc); 131 + inherit clang; 132 + }; 133 + } ./rust-bindgen-hook.sh; 158 134 }
+33
pkgs/by-name/an/annotation-mono/package.nix
··· 1 + { 2 + lib, 3 + stdenvNoCC, 4 + fetchzip, 5 + }: 6 + stdenvNoCC.mkDerivation (finalAttrs: { 7 + pname = "annotation-mono"; 8 + version = "0.2"; 9 + 10 + src = fetchzip { 11 + url = "https://github.com/qwerasd205/AnnotationMono/releases/download/v${finalAttrs.version}/AnnotationMono_v${finalAttrs.version}.zip"; 12 + hash = "sha256-81BcPYE4C9kuetiCzgGPl59WO4QkBML7dwAkD1DCCZo="; 13 + stripRoot = false; 14 + }; 15 + 16 + installPhase = '' 17 + runHook preInstall 18 + 19 + install -D -m444 -t $out/share/fonts/truetype $src/dist/ttf/*.ttf 20 + install -D -m444 -t $out/share/fonts/truetype $src/dist/variable/AnnotationMono-VF.ttf 21 + install -D -m444 -t $out/share/fonts/opentype $src/dist/otf/*.otf 22 + 23 + runHook postInstall 24 + ''; 25 + 26 + meta = { 27 + homepage = "https://github.com/qwerasd205/AnnotationMono"; 28 + description = "Lovingly crafted handwriting-style monospace font"; 29 + license = lib.licenses.ofl; 30 + platforms = lib.platforms.all; 31 + maintainers = [ lib.maintainers.theonlymrcat ]; 32 + }; 33 + })
+33 -18
pkgs/by-name/ba/bash-language-server/package.nix
··· 1 1 { 2 2 lib, 3 - stdenv, 3 + stdenvNoCC, 4 4 fetchFromGitHub, 5 - pnpm_8, 5 + pnpm_10, 6 6 nodejs, 7 7 makeBinaryWrapper, 8 8 shellcheck, 9 9 versionCheckHook, 10 10 }: 11 11 12 - stdenv.mkDerivation (finalAttrs: { 12 + stdenvNoCC.mkDerivation (finalAttrs: { 13 13 pname = "bash-language-server"; 14 - version = "5.4.0"; 14 + version = "5.6.0"; 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "bash-lsp"; 18 18 repo = "bash-language-server"; 19 - rev = "server-${finalAttrs.version}"; 20 - hash = "sha256-yJ81oGd9aNsWQMLvDSgMVVH1//Mw/SVFYFIPsJTQYzE="; 19 + tag = "server-${finalAttrs.version}"; 20 + hash = "sha256-Pe32lQSlyWcyUbqwhfoulwNwhrnWdRcKFIl3Jj0Skac="; 21 21 }; 22 22 23 23 pnpmWorkspaces = [ "bash-language-server" ]; 24 - pnpmDeps = pnpm_8.fetchDeps { 24 + pnpmDeps = pnpm_10.fetchDeps { 25 25 inherit (finalAttrs) 26 26 pname 27 27 version 28 28 src 29 29 pnpmWorkspaces 30 30 ; 31 - hash = "sha256-W25xehcxncBs9QgQBt17F5YHK0b+GDEmt27XzTkyYWg="; 31 + hash = "sha256-NvyqPv5OKgZi3hW98Da8LhsYatmrzrPX8kLOfLr+BrI="; 32 32 }; 33 33 34 34 nativeBuildInputs = [ 35 35 nodejs 36 - pnpm_8.configHook 36 + pnpm_10.configHook 37 37 makeBinaryWrapper 38 38 versionCheckHook 39 39 ]; ··· 45 45 runHook postBuild 46 46 ''; 47 47 48 + preInstall = '' 49 + # remove unnecessary files 50 + rm node_modules/.modules.yaml 51 + pnpm --ignore-scripts --prod prune 52 + rm -r node_modules/.pnpm/@mixmark-io*/node_modules/@mixmark-io/domino/{test,.yarn} 53 + find -type f \( -name "*.ts" -o -name "*.map" \) -exec rm -rf {} + 54 + # https://github.com/pnpm/pnpm/issues/3645 55 + find node_modules server/node_modules -xtype l -delete 56 + 57 + # remove non-deterministic files 58 + rm node_modules/{.modules.yaml,.pnpm-workspace-state.json} 59 + ''; 60 + 48 61 installPhase = '' 49 62 runHook preInstall 50 63 51 - pnpm --offline \ 52 - --frozen-lockfile --ignore-script \ 53 - --filter=bash-language-server \ 54 - deploy --prod $out/lib/bash-language-server 64 + mkdir -p $out/{bin,lib/bash-language-server} 65 + cp -r {node_modules,server} $out/lib/bash-language-server/ 55 66 56 67 # Create the executable, based upon what happens in npmHooks.npmInstallHook 57 68 makeWrapper ${lib.getExe nodejs} $out/bin/bash-language-server \ 58 69 --suffix PATH : ${lib.makeBinPath [ shellcheck ]} \ 59 70 --inherit-argv0 \ 60 - --add-flags $out/lib/bash-language-server/out/cli.js 71 + --add-flags $out/lib/bash-language-server/server/out/cli.js 61 72 62 73 runHook postInstall 63 74 ''; 64 75 65 76 doInstallCheck = true; 66 77 67 - meta = with lib; { 78 + meta = { 68 79 description = "Language server for Bash"; 69 80 homepage = "https://github.com/bash-lsp/bash-language-server"; 70 - license = licenses.mit; 71 - maintainers = with maintainers; [ doronbehar ]; 81 + changelog = "https://github.com/bash-lsp/bash-language-server/releases/tag/${finalAttrs.src.tag}"; 82 + license = lib.licenses.mit; 83 + maintainers = with lib.maintainers; [ 84 + doronbehar 85 + gepbird 86 + ]; 72 87 mainProgram = "bash-language-server"; 73 - platforms = platforms.all; 88 + platforms = lib.platforms.all; 74 89 }; 75 90 })
+1 -1
pkgs/by-name/be/bepasty/package.nix
··· 57 57 build 58 58 flake8 59 59 pytestCheckHook 60 - pytest-cov 60 + pytest-cov-stub 61 61 selenium 62 62 tox 63 63 twine
+1 -1
pkgs/by-name/bi/bird2/package.nix
··· 44 44 "--runstatedir=/run/bird" 45 45 ]; 46 46 47 - passthru.tests = nixosTests.bird; 47 + passthru.tests = nixosTests.bird2; 48 48 49 49 meta = { 50 50 changelog = "https://gitlab.nic.cz/labs/bird/-/blob/v${version}/NEWS";
+1 -1
pkgs/by-name/bi/bird3/package.nix
··· 43 43 "--runstatedir=/run/bird" 44 44 ]; 45 45 46 - passthru.tests = nixosTests.bird; 46 + passthru.tests = nixosTests.bird3; 47 47 48 48 meta = { 49 49 changelog = "https://gitlab.nic.cz/labs/bird/-/blob/v${version}/NEWS";
+2 -2
pkgs/by-name/bu/buku/package.nix
··· 40 40 41 41 nativeCheckInputs = [ 42 42 hypothesis 43 - pytest 43 + pytestCheckHook 44 44 pytest-recording 45 45 pyyaml 46 46 mypy-extensions 47 47 click 48 48 pylint 49 49 flake8 50 - pytest-cov 50 + pytest-cov-stub 51 51 pyyaml 52 52 ]; 53 53
+3 -3
pkgs/by-name/bu/burpsuite/package.nix
··· 9 9 }: 10 10 11 11 let 12 - version = "2025.6"; 12 + version = "2025.6.1"; 13 13 14 14 product = 15 15 if proEdition then 16 16 { 17 17 productName = "pro"; 18 18 productDesktop = "Burp Suite Professional Edition"; 19 - hash = "sha256-UtxyhXaXpVp9Ynm6vnHYxr+TEnRau1ZHU563xcUmu/0="; 19 + hash = "sha256-At3+tScMbNrZI2qF+kwt41khou8aP5Qn33v6IT7n9HI="; 20 20 } 21 21 else 22 22 { 23 23 productName = "community"; 24 24 productDesktop = "Burp Suite Community Edition"; 25 - hash = "sha256-5kpmLkdnGxnt6bSUgAIJaXdFSmmvOffdQaAOlm9sNlo="; 25 + hash = "sha256-1reZGan6hmXTg7RUjaian6Q5VAsR5iuye4kGWkpREM4="; 26 26 }; 27 27 28 28 src = fetchurl {
+1 -1
pkgs/by-name/ca/canaille/package.nix
··· 58 58 coverage 59 59 flask-webtest 60 60 pyquery 61 - pytest-cov 61 + pytest-cov-stub 62 62 pytest-httpserver 63 63 pytest-lazy-fixtures 64 64 pytest-smtpd
+1 -1
pkgs/by-name/ca/cargo-llvm-cov/package.nix
··· 52 52 # pull in fixtures needed for the test suite 53 53 src = fetchFromGitHub { 54 54 inherit owner; 55 - repo = pname; 55 + repo = "cargo-llvm-cov"; 56 56 rev = "v${version}"; 57 57 sha256 = "sha256-iJrnNDSMich5OzEbPgnQWLVz6Zj/MUIzEsaBzqVdoDg="; 58 58 };
+1 -1
pkgs/by-name/ca/cargo-xbuild/package.nix
··· 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "rust-osdev"; 13 - repo = pname; 13 + repo = "cargo-xbuild"; 14 14 rev = "v${version}"; 15 15 hash = "sha256-29rCjmzxxIjR5nBN2J3xxP+r8NnPIJV90FkSQQEBbo4="; 16 16 };
+6 -20
pkgs/by-name/ca/casilda/package.nix
··· 2 2 lib, 3 3 stdenv, 4 4 fetchFromGitLab, 5 - fetchpatch, 6 5 meson, 7 6 ninja, 8 7 pkg-config, ··· 19 18 20 19 stdenv.mkDerivation (finalAttrs: { 21 20 pname = "casilda"; 22 - version = "0.2.0"; 21 + version = "0.3.0-unstable-2025-06-16"; 23 22 24 23 outputs = [ 25 24 "out" ··· 30 29 domain = "gitlab.gnome.org"; 31 30 owner = "jpu"; 32 31 repo = "casilda"; 33 - tag = finalAttrs.version; 34 - hash = "sha256-wTYx4Wj8u52+yNc/A5Lg0zqmhKh8X0q99e+TilpUrC4="; 32 + rev = "5b5933d32f0221341c98a25dea1ce5ef78199a79"; 33 + hash = "sha256-LrXoVK7KMjIko6jUkrKY06QdZMQaVrHhG7/C5ickdJA="; 35 34 }; 36 35 37 - patches = [ 38 - # Fix missing clock_gettime function 39 - # https://gitlab.gnome.org/jpu/casilda/-/merge_requests/4 40 - (fetchpatch { 41 - url = "https://gitlab.gnome.org/jpu/casilda/-/commit/dcebb8e67d6dc7c47332d1c76a1d5bf60eaee7b1.patch"; 42 - hash = "sha256-l3zu29PPRwzDuoeoqUs4Gi3JziyZ9vDdqvRfz7GQ4Sw="; 43 - }) 44 - ]; 45 - 46 - depsBuildBuild = [ 47 - pkg-config 48 - ]; 36 + depsBuildBuild = [ pkg-config ]; 49 37 50 38 nativeBuildInputs = [ 51 39 meson ··· 61 49 wayland-protocols 62 50 wayland # for wayland-server 63 51 libxkbcommon 52 + wlroots_0_18 64 53 ]; 65 54 66 - propagatedBuildInputs = [ 67 - gtk4 68 - wlroots_0_18 # todo: move to buildInputs after https://gitlab.gnome.org/jpu/casilda/-/merge_requests/7 69 - ]; 55 + propagatedBuildInputs = [ gtk4 ]; 70 56 71 57 strictDeps = true; 72 58
+7 -7
pkgs/by-name/ch/chawan/package.nix
··· 11 11 pkg-config, 12 12 brotli, 13 13 zlib, 14 - unstableGitUpdater, 14 + gitUpdater, 15 15 }: 16 16 17 - stdenv.mkDerivation { 17 + stdenv.mkDerivation (finalAttrs: { 18 18 pname = "chawan"; 19 - version = "0-unstable-2025-06-14"; 19 + version = "0.2.0"; 20 20 21 21 src = fetchFromSourcehut { 22 22 owner = "~bptato"; 23 23 repo = "chawan"; 24 - rev = "288896b6f3da9bb6e4e24190d4163e031f8a2751"; 25 - hash = "sha256-/8pp1E4YAXXh8ORRHseIe48BIG14u8gNkmotA+CXPYY="; 24 + rev = "v${finalAttrs.version}"; 25 + hash = "sha256-DiA7SEXPJTScdoFeGzH45wZP6gZRU8t/fvJLOufuNmU="; 26 26 }; 27 27 28 28 patches = [ ./mancha-augment-path.diff ]; ··· 73 73 wrapProgram $out/bin/mancha ${makeWrapperArgs} 74 74 ''; 75 75 76 - passthru.updateScript = unstableGitUpdater { }; 76 + passthru.updateScript = gitUpdater { rev-prefix = "v"; }; 77 77 78 78 meta = { 79 79 description = "Lightweight and featureful terminal web browser"; ··· 83 83 maintainers = with lib.maintainers; [ ]; 84 84 mainProgram = "cha"; 85 85 }; 86 - } 86 + })
+1 -1
pkgs/by-name/cl/cloudsmith-cli/package.nix
··· 51 51 52 52 nativeCheckInputs = with python3.pkgs; [ 53 53 pytestCheckHook 54 - pytest-cov 54 + pytest-cov-stub 55 55 ]; 56 56 57 57 checkInputs = with python3.pkgs; [
+1 -1
pkgs/by-name/cl/clps2c-compiler/package.nix
··· 31 31 (fetchFromGitHub { 32 32 name = pname; 33 33 inherit owner; 34 - repo = pname; 34 + repo = "CLPS2C-Compiler"; 35 35 rev = "CLPS2C-Compiler-${version}"; 36 36 sha256 = "sha256-4gLdrIxyw9BFSxF+EXZqTgUf9Kik6oK7eO9HBUzk4QM="; 37 37 })
+4 -1
pkgs/by-name/co/cosmic-session/package.nix
··· 50 50 "target/${stdenv.hostPlatform.rust.cargoShortTarget}" 51 51 ]; 52 52 53 - env.XDP_COSMIC = "${xdg-desktop-portal-cosmic}/libexec/xdg-desktop-portal-cosmic"; 53 + env = { 54 + XDP_COSMIC = lib.getExe xdg-desktop-portal-cosmic; 55 + ORCA = "orca"; # get orca from $PATH 56 + }; 54 57 55 58 passthru = { 56 59 providedSessions = [ "cosmic" ];
+51
pkgs/by-name/cp/cpptrace/0001-Use-libdwarf-2-as-the-base-include-path.patch
··· 1 + From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 2 + From: Philip Taron <philip.taron@gmail.com> 3 + Date: Thu, 19 Jun 2025 09:24:32 -0700 4 + Subject: [PATCH] Use libdwarf-2 as the base include path 5 + 6 + Signed-off-by: Philip Taron <philip.taron@gmail.com> 7 + --- 8 + CMakeLists.txt | 6 +++--- 9 + src/symbols/dwarf/dwarf.hpp | 4 ++-- 10 + 2 files changed, 5 insertions(+), 5 deletions(-) 11 + 12 + diff --git a/CMakeLists.txt b/CMakeLists.txt 13 + index 1c607bd44e528a41ccd637f5293b4f56049f5770..53e1aedf463c5eb95dcfd77fa40de66f51381b47 100644 14 + --- a/CMakeLists.txt 15 + +++ b/CMakeLists.txt 16 + @@ -419,7 +419,7 @@ if(CPPTRACE_GET_SYMBOLS_WITH_LIBDWARF) 17 + target_link_libraries(${target_name} PRIVATE ${LIBDWARF_LIBRARIES}) 18 + endif() 19 + # There seems to be no consistency at all about where libdwarf decides to place its headers........ Figure out if 20 + - # it's libdwarf/libdwarf.h and libdwarf/dwarf.h or just libdwarf.h and dwarf.h 21 + + # it's libdwarf-2/libdwarf.h and libdwarf-2/dwarf.h or just libdwarf.h and dwarf.h 22 + include(CheckIncludeFileCXX) 23 + # libdwarf's cmake doesn't properly set variables to indicate where its libraries live 24 + if(NOT CPPTRACE_FIND_LIBDWARF_WITH_PKGCONFIG) 25 + @@ -428,9 +428,9 @@ if(CPPTRACE_GET_SYMBOLS_WITH_LIBDWARF) 26 + target_include_directories(${target_name} PRIVATE ${LIBDWARF_INCLUDE_DIRS}) 27 + endif() 28 + set(CMAKE_REQUIRED_INCLUDES ${LIBDWARF_INCLUDE_DIRS}) 29 + - CHECK_INCLUDE_FILE_CXX("libdwarf/libdwarf.h" LIBDWARF_IS_NESTED) 30 + + CHECK_INCLUDE_FILE_CXX("libdwarf-2/libdwarf.h" LIBDWARF_IS_NESTED) 31 + CHECK_INCLUDE_FILE_CXX("libdwarf.h" LIBDWARF_IS_NOT_NESTED) 32 + - # check_include_file("libdwarf/libdwarf.h" LIBDWARF_IS_NESTED) 33 + + # check_include_file("libdwarf-2/libdwarf.h" LIBDWARF_IS_NESTED) 34 + # check_support(LIBDWARF_IS_NESTED nested_libdwarf_include.cpp "" "" "") 35 + if(${LIBDWARF_IS_NESTED}) 36 + target_compile_definitions(${target_name} PRIVATE CPPTRACE_USE_NESTED_LIBDWARF_HEADER_PATH) 37 + diff --git a/src/symbols/dwarf/dwarf.hpp b/src/symbols/dwarf/dwarf.hpp 38 + index 50b2696148584b7a16da602017793797ba98cb58..53fe275492f4fd7e8e905064696e86f837a55f72 100644 39 + --- a/src/symbols/dwarf/dwarf.hpp 40 + +++ b/src/symbols/dwarf/dwarf.hpp 41 + @@ -10,8 +10,8 @@ 42 + #include <type_traits> 43 + 44 + #ifdef CPPTRACE_USE_NESTED_LIBDWARF_HEADER_PATH 45 + - #include <libdwarf/libdwarf.h> 46 + - #include <libdwarf/dwarf.h> 47 + + #include <libdwarf-2/libdwarf.h> 48 + + #include <libdwarf-2/dwarf.h> 49 + #else 50 + #include <libdwarf.h> 51 + #include <dwarf.h>
+9 -3
pkgs/by-name/cp/cpptrace/package.nix
··· 14 14 15 15 stdenv.mkDerivation (finalAttrs: { 16 16 pname = "cpptrace"; 17 - version = "0.8.3"; 17 + version = "1.0.1"; 18 18 19 19 src = fetchFromGitHub { 20 20 owner = "jeremy-rifkin"; 21 21 repo = "cpptrace"; 22 22 tag = "v${finalAttrs.version}"; 23 - hash = "sha256-oFwRFFDLl4/3szVj/ge8cSrpuuHEzf4VsCPGTE0dxRc="; 23 + hash = "sha256-HUUyH9N+e98Gp6TPeT6TCGpdzd09knHVDaQ3KeDp8LY="; 24 24 }; 25 25 26 + patches = [ 27 + ./0001-Use-libdwarf-2-as-the-base-include-path.patch 28 + ]; 29 + 26 30 nativeBuildInputs = [ 27 31 cmake 28 32 pkg-config 29 33 ]; 30 34 31 - buildInputs = [ libdwarf ]; 35 + buildInputs = [ (lib.getDev libdwarf) ]; 36 + 32 37 propagatedBuildInputs = [ zstd ] ++ (lib.optionals static [ libdwarf ]); 33 38 34 39 cmakeFlags = [ ··· 40 45 ]; 41 46 42 47 checkInputs = [ gtest ]; 48 + 43 49 doCheck = true; 44 50 45 51 passthru = {
+1063
pkgs/by-name/cr/crc64fast-nvme/Cargo.lock
··· 1 + # This file is automatically @generated by Cargo. 2 + # It is not intended for manual editing. 3 + version = 3 4 + 5 + [[package]] 6 + name = "aho-corasick" 7 + version = "1.1.3" 8 + source = "registry+https://github.com/rust-lang/crates.io-index" 9 + checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" 10 + dependencies = [ 11 + "memchr", 12 + ] 13 + 14 + [[package]] 15 + name = "anes" 16 + version = "0.1.6" 17 + source = "registry+https://github.com/rust-lang/crates.io-index" 18 + checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" 19 + 20 + [[package]] 21 + name = "anstream" 22 + version = "0.6.18" 23 + source = "registry+https://github.com/rust-lang/crates.io-index" 24 + checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" 25 + dependencies = [ 26 + "anstyle", 27 + "anstyle-parse", 28 + "anstyle-query", 29 + "anstyle-wincon", 30 + "colorchoice", 31 + "is_terminal_polyfill", 32 + "utf8parse", 33 + ] 34 + 35 + [[package]] 36 + name = "anstyle" 37 + version = "1.0.10" 38 + source = "registry+https://github.com/rust-lang/crates.io-index" 39 + checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" 40 + 41 + [[package]] 42 + name = "anstyle-parse" 43 + version = "0.2.6" 44 + source = "registry+https://github.com/rust-lang/crates.io-index" 45 + checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" 46 + dependencies = [ 47 + "utf8parse", 48 + ] 49 + 50 + [[package]] 51 + name = "anstyle-query" 52 + version = "1.1.2" 53 + source = "registry+https://github.com/rust-lang/crates.io-index" 54 + checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" 55 + dependencies = [ 56 + "windows-sys", 57 + ] 58 + 59 + [[package]] 60 + name = "anstyle-wincon" 61 + version = "3.0.8" 62 + source = "registry+https://github.com/rust-lang/crates.io-index" 63 + checksum = "6680de5231bd6ee4c6191b8a1325daa282b415391ec9d3a37bd34f2060dc73fa" 64 + dependencies = [ 65 + "anstyle", 66 + "once_cell_polyfill", 67 + "windows-sys", 68 + ] 69 + 70 + [[package]] 71 + name = "autocfg" 72 + version = "1.4.0" 73 + source = "registry+https://github.com/rust-lang/crates.io-index" 74 + checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" 75 + 76 + [[package]] 77 + name = "bit-set" 78 + version = "0.8.0" 79 + source = "registry+https://github.com/rust-lang/crates.io-index" 80 + checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" 81 + dependencies = [ 82 + "bit-vec", 83 + ] 84 + 85 + [[package]] 86 + name = "bit-vec" 87 + version = "0.8.0" 88 + source = "registry+https://github.com/rust-lang/crates.io-index" 89 + checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" 90 + 91 + [[package]] 92 + name = "bitflags" 93 + version = "2.9.1" 94 + source = "registry+https://github.com/rust-lang/crates.io-index" 95 + checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" 96 + 97 + [[package]] 98 + name = "bumpalo" 99 + version = "3.17.0" 100 + source = "registry+https://github.com/rust-lang/crates.io-index" 101 + checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" 102 + 103 + [[package]] 104 + name = "cast" 105 + version = "0.3.0" 106 + source = "registry+https://github.com/rust-lang/crates.io-index" 107 + checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" 108 + 109 + [[package]] 110 + name = "cbindgen" 111 + version = "0.27.0" 112 + source = "registry+https://github.com/rust-lang/crates.io-index" 113 + checksum = "3fce8dd7fcfcbf3a0a87d8f515194b49d6135acab73e18bd380d1d93bb1a15eb" 114 + dependencies = [ 115 + "clap", 116 + "heck", 117 + "indexmap", 118 + "log", 119 + "proc-macro2", 120 + "quote", 121 + "serde", 122 + "serde_json", 123 + "syn", 124 + "tempfile", 125 + "toml", 126 + ] 127 + 128 + [[package]] 129 + name = "cfg-if" 130 + version = "1.0.0" 131 + source = "registry+https://github.com/rust-lang/crates.io-index" 132 + checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 133 + 134 + [[package]] 135 + name = "ciborium" 136 + version = "0.2.2" 137 + source = "registry+https://github.com/rust-lang/crates.io-index" 138 + checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" 139 + dependencies = [ 140 + "ciborium-io", 141 + "ciborium-ll", 142 + "serde", 143 + ] 144 + 145 + [[package]] 146 + name = "ciborium-io" 147 + version = "0.2.2" 148 + source = "registry+https://github.com/rust-lang/crates.io-index" 149 + checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" 150 + 151 + [[package]] 152 + name = "ciborium-ll" 153 + version = "0.2.2" 154 + source = "registry+https://github.com/rust-lang/crates.io-index" 155 + checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" 156 + dependencies = [ 157 + "ciborium-io", 158 + "half", 159 + ] 160 + 161 + [[package]] 162 + name = "clap" 163 + version = "4.5.38" 164 + source = "registry+https://github.com/rust-lang/crates.io-index" 165 + checksum = "ed93b9805f8ba930df42c2590f05453d5ec36cbb85d018868a5b24d31f6ac000" 166 + dependencies = [ 167 + "clap_builder", 168 + ] 169 + 170 + [[package]] 171 + name = "clap_builder" 172 + version = "4.5.38" 173 + source = "registry+https://github.com/rust-lang/crates.io-index" 174 + checksum = "379026ff283facf611b0ea629334361c4211d1b12ee01024eec1591133b04120" 175 + dependencies = [ 176 + "anstream", 177 + "anstyle", 178 + "clap_lex", 179 + "strsim", 180 + ] 181 + 182 + [[package]] 183 + name = "clap_lex" 184 + version = "0.7.4" 185 + source = "registry+https://github.com/rust-lang/crates.io-index" 186 + checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" 187 + 188 + [[package]] 189 + name = "colorchoice" 190 + version = "1.0.3" 191 + source = "registry+https://github.com/rust-lang/crates.io-index" 192 + checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" 193 + 194 + [[package]] 195 + name = "crc" 196 + version = "3.3.0" 197 + source = "registry+https://github.com/rust-lang/crates.io-index" 198 + checksum = "9710d3b3739c2e349eb44fe848ad0b7c8cb1e42bd87ee49371df2f7acaf3e675" 199 + dependencies = [ 200 + "crc-catalog", 201 + ] 202 + 203 + [[package]] 204 + name = "crc-catalog" 205 + version = "2.4.0" 206 + source = "registry+https://github.com/rust-lang/crates.io-index" 207 + checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" 208 + 209 + [[package]] 210 + name = "crc64fast-nvme" 211 + version = "1.2.0" 212 + dependencies = [ 213 + "cbindgen", 214 + "crc", 215 + "criterion", 216 + "lazy_static", 217 + "proptest", 218 + "rand", 219 + ] 220 + 221 + [[package]] 222 + name = "criterion" 223 + version = "0.5.1" 224 + source = "registry+https://github.com/rust-lang/crates.io-index" 225 + checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f" 226 + dependencies = [ 227 + "anes", 228 + "cast", 229 + "ciborium", 230 + "clap", 231 + "criterion-plot", 232 + "is-terminal", 233 + "itertools", 234 + "num-traits", 235 + "once_cell", 236 + "oorandom", 237 + "plotters", 238 + "rayon", 239 + "regex", 240 + "serde", 241 + "serde_derive", 242 + "serde_json", 243 + "tinytemplate", 244 + "walkdir", 245 + ] 246 + 247 + [[package]] 248 + name = "criterion-plot" 249 + version = "0.5.0" 250 + source = "registry+https://github.com/rust-lang/crates.io-index" 251 + checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" 252 + dependencies = [ 253 + "cast", 254 + "itertools", 255 + ] 256 + 257 + [[package]] 258 + name = "crossbeam-deque" 259 + version = "0.8.6" 260 + source = "registry+https://github.com/rust-lang/crates.io-index" 261 + checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" 262 + dependencies = [ 263 + "crossbeam-epoch", 264 + "crossbeam-utils", 265 + ] 266 + 267 + [[package]] 268 + name = "crossbeam-epoch" 269 + version = "0.9.18" 270 + source = "registry+https://github.com/rust-lang/crates.io-index" 271 + checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" 272 + dependencies = [ 273 + "crossbeam-utils", 274 + ] 275 + 276 + [[package]] 277 + name = "crossbeam-utils" 278 + version = "0.8.21" 279 + source = "registry+https://github.com/rust-lang/crates.io-index" 280 + checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" 281 + 282 + [[package]] 283 + name = "crunchy" 284 + version = "0.2.3" 285 + source = "registry+https://github.com/rust-lang/crates.io-index" 286 + checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" 287 + 288 + [[package]] 289 + name = "either" 290 + version = "1.15.0" 291 + source = "registry+https://github.com/rust-lang/crates.io-index" 292 + checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" 293 + 294 + [[package]] 295 + name = "equivalent" 296 + version = "1.0.2" 297 + source = "registry+https://github.com/rust-lang/crates.io-index" 298 + checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" 299 + 300 + [[package]] 301 + name = "errno" 302 + version = "0.3.12" 303 + source = "registry+https://github.com/rust-lang/crates.io-index" 304 + checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18" 305 + dependencies = [ 306 + "libc", 307 + "windows-sys", 308 + ] 309 + 310 + [[package]] 311 + name = "fastrand" 312 + version = "2.3.0" 313 + source = "registry+https://github.com/rust-lang/crates.io-index" 314 + checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 315 + 316 + [[package]] 317 + name = "fnv" 318 + version = "1.0.7" 319 + source = "registry+https://github.com/rust-lang/crates.io-index" 320 + checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 321 + 322 + [[package]] 323 + name = "getrandom" 324 + version = "0.2.16" 325 + source = "registry+https://github.com/rust-lang/crates.io-index" 326 + checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" 327 + dependencies = [ 328 + "cfg-if", 329 + "libc", 330 + "wasi 0.11.0+wasi-snapshot-preview1", 331 + ] 332 + 333 + [[package]] 334 + name = "getrandom" 335 + version = "0.3.3" 336 + source = "registry+https://github.com/rust-lang/crates.io-index" 337 + checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" 338 + dependencies = [ 339 + "cfg-if", 340 + "libc", 341 + "r-efi", 342 + "wasi 0.14.2+wasi-0.2.4", 343 + ] 344 + 345 + [[package]] 346 + name = "half" 347 + version = "2.6.0" 348 + source = "registry+https://github.com/rust-lang/crates.io-index" 349 + checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" 350 + dependencies = [ 351 + "cfg-if", 352 + "crunchy", 353 + ] 354 + 355 + [[package]] 356 + name = "hashbrown" 357 + version = "0.15.3" 358 + source = "registry+https://github.com/rust-lang/crates.io-index" 359 + checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" 360 + 361 + [[package]] 362 + name = "heck" 363 + version = "0.4.1" 364 + source = "registry+https://github.com/rust-lang/crates.io-index" 365 + checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" 366 + 367 + [[package]] 368 + name = "hermit-abi" 369 + version = "0.5.1" 370 + source = "registry+https://github.com/rust-lang/crates.io-index" 371 + checksum = "f154ce46856750ed433c8649605bf7ed2de3bc35fd9d2a9f30cddd873c80cb08" 372 + 373 + [[package]] 374 + name = "indexmap" 375 + version = "2.9.0" 376 + source = "registry+https://github.com/rust-lang/crates.io-index" 377 + checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" 378 + dependencies = [ 379 + "equivalent", 380 + "hashbrown", 381 + ] 382 + 383 + [[package]] 384 + name = "is-terminal" 385 + version = "0.4.16" 386 + source = "registry+https://github.com/rust-lang/crates.io-index" 387 + checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" 388 + dependencies = [ 389 + "hermit-abi", 390 + "libc", 391 + "windows-sys", 392 + ] 393 + 394 + [[package]] 395 + name = "is_terminal_polyfill" 396 + version = "1.70.1" 397 + source = "registry+https://github.com/rust-lang/crates.io-index" 398 + checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" 399 + 400 + [[package]] 401 + name = "itertools" 402 + version = "0.10.5" 403 + source = "registry+https://github.com/rust-lang/crates.io-index" 404 + checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" 405 + dependencies = [ 406 + "either", 407 + ] 408 + 409 + [[package]] 410 + name = "itoa" 411 + version = "1.0.15" 412 + source = "registry+https://github.com/rust-lang/crates.io-index" 413 + checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" 414 + 415 + [[package]] 416 + name = "js-sys" 417 + version = "0.3.77" 418 + source = "registry+https://github.com/rust-lang/crates.io-index" 419 + checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" 420 + dependencies = [ 421 + "once_cell", 422 + "wasm-bindgen", 423 + ] 424 + 425 + [[package]] 426 + name = "lazy_static" 427 + version = "1.5.0" 428 + source = "registry+https://github.com/rust-lang/crates.io-index" 429 + checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" 430 + 431 + [[package]] 432 + name = "libc" 433 + version = "0.2.172" 434 + source = "registry+https://github.com/rust-lang/crates.io-index" 435 + checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" 436 + 437 + [[package]] 438 + name = "linux-raw-sys" 439 + version = "0.9.4" 440 + source = "registry+https://github.com/rust-lang/crates.io-index" 441 + checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" 442 + 443 + [[package]] 444 + name = "log" 445 + version = "0.4.27" 446 + source = "registry+https://github.com/rust-lang/crates.io-index" 447 + checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" 448 + 449 + [[package]] 450 + name = "memchr" 451 + version = "2.7.4" 452 + source = "registry+https://github.com/rust-lang/crates.io-index" 453 + checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" 454 + 455 + [[package]] 456 + name = "num-traits" 457 + version = "0.2.19" 458 + source = "registry+https://github.com/rust-lang/crates.io-index" 459 + checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" 460 + dependencies = [ 461 + "autocfg", 462 + ] 463 + 464 + [[package]] 465 + name = "once_cell" 466 + version = "1.21.3" 467 + source = "registry+https://github.com/rust-lang/crates.io-index" 468 + checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 469 + 470 + [[package]] 471 + name = "once_cell_polyfill" 472 + version = "1.70.1" 473 + source = "registry+https://github.com/rust-lang/crates.io-index" 474 + checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" 475 + 476 + [[package]] 477 + name = "oorandom" 478 + version = "11.1.5" 479 + source = "registry+https://github.com/rust-lang/crates.io-index" 480 + checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" 481 + 482 + [[package]] 483 + name = "plotters" 484 + version = "0.3.7" 485 + source = "registry+https://github.com/rust-lang/crates.io-index" 486 + checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" 487 + dependencies = [ 488 + "num-traits", 489 + "plotters-backend", 490 + "plotters-svg", 491 + "wasm-bindgen", 492 + "web-sys", 493 + ] 494 + 495 + [[package]] 496 + name = "plotters-backend" 497 + version = "0.3.7" 498 + source = "registry+https://github.com/rust-lang/crates.io-index" 499 + checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" 500 + 501 + [[package]] 502 + name = "plotters-svg" 503 + version = "0.3.7" 504 + source = "registry+https://github.com/rust-lang/crates.io-index" 505 + checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" 506 + dependencies = [ 507 + "plotters-backend", 508 + ] 509 + 510 + [[package]] 511 + name = "ppv-lite86" 512 + version = "0.2.21" 513 + source = "registry+https://github.com/rust-lang/crates.io-index" 514 + checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" 515 + dependencies = [ 516 + "zerocopy", 517 + ] 518 + 519 + [[package]] 520 + name = "proc-macro2" 521 + version = "1.0.95" 522 + source = "registry+https://github.com/rust-lang/crates.io-index" 523 + checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" 524 + dependencies = [ 525 + "unicode-ident", 526 + ] 527 + 528 + [[package]] 529 + name = "proptest" 530 + version = "1.6.0" 531 + source = "registry+https://github.com/rust-lang/crates.io-index" 532 + checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" 533 + dependencies = [ 534 + "bit-set", 535 + "bit-vec", 536 + "bitflags", 537 + "lazy_static", 538 + "num-traits", 539 + "rand", 540 + "rand_chacha", 541 + "rand_xorshift", 542 + "regex-syntax", 543 + "rusty-fork", 544 + "tempfile", 545 + "unarray", 546 + ] 547 + 548 + [[package]] 549 + name = "quick-error" 550 + version = "1.2.3" 551 + source = "registry+https://github.com/rust-lang/crates.io-index" 552 + checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" 553 + 554 + [[package]] 555 + name = "quote" 556 + version = "1.0.40" 557 + source = "registry+https://github.com/rust-lang/crates.io-index" 558 + checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" 559 + dependencies = [ 560 + "proc-macro2", 561 + ] 562 + 563 + [[package]] 564 + name = "r-efi" 565 + version = "5.2.0" 566 + source = "registry+https://github.com/rust-lang/crates.io-index" 567 + checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" 568 + 569 + [[package]] 570 + name = "rand" 571 + version = "0.8.5" 572 + source = "registry+https://github.com/rust-lang/crates.io-index" 573 + checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 574 + dependencies = [ 575 + "libc", 576 + "rand_chacha", 577 + "rand_core", 578 + ] 579 + 580 + [[package]] 581 + name = "rand_chacha" 582 + version = "0.3.1" 583 + source = "registry+https://github.com/rust-lang/crates.io-index" 584 + checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 585 + dependencies = [ 586 + "ppv-lite86", 587 + "rand_core", 588 + ] 589 + 590 + [[package]] 591 + name = "rand_core" 592 + version = "0.6.4" 593 + source = "registry+https://github.com/rust-lang/crates.io-index" 594 + checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 595 + dependencies = [ 596 + "getrandom 0.2.16", 597 + ] 598 + 599 + [[package]] 600 + name = "rand_xorshift" 601 + version = "0.3.0" 602 + source = "registry+https://github.com/rust-lang/crates.io-index" 603 + checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" 604 + dependencies = [ 605 + "rand_core", 606 + ] 607 + 608 + [[package]] 609 + name = "rayon" 610 + version = "1.10.0" 611 + source = "registry+https://github.com/rust-lang/crates.io-index" 612 + checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" 613 + dependencies = [ 614 + "either", 615 + "rayon-core", 616 + ] 617 + 618 + [[package]] 619 + name = "rayon-core" 620 + version = "1.12.1" 621 + source = "registry+https://github.com/rust-lang/crates.io-index" 622 + checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" 623 + dependencies = [ 624 + "crossbeam-deque", 625 + "crossbeam-utils", 626 + ] 627 + 628 + [[package]] 629 + name = "regex" 630 + version = "1.11.1" 631 + source = "registry+https://github.com/rust-lang/crates.io-index" 632 + checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" 633 + dependencies = [ 634 + "aho-corasick", 635 + "memchr", 636 + "regex-automata", 637 + "regex-syntax", 638 + ] 639 + 640 + [[package]] 641 + name = "regex-automata" 642 + version = "0.4.9" 643 + source = "registry+https://github.com/rust-lang/crates.io-index" 644 + checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" 645 + dependencies = [ 646 + "aho-corasick", 647 + "memchr", 648 + "regex-syntax", 649 + ] 650 + 651 + [[package]] 652 + name = "regex-syntax" 653 + version = "0.8.5" 654 + source = "registry+https://github.com/rust-lang/crates.io-index" 655 + checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" 656 + 657 + [[package]] 658 + name = "rustix" 659 + version = "1.0.7" 660 + source = "registry+https://github.com/rust-lang/crates.io-index" 661 + checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" 662 + dependencies = [ 663 + "bitflags", 664 + "errno", 665 + "libc", 666 + "linux-raw-sys", 667 + "windows-sys", 668 + ] 669 + 670 + [[package]] 671 + name = "rustversion" 672 + version = "1.0.21" 673 + source = "registry+https://github.com/rust-lang/crates.io-index" 674 + checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" 675 + 676 + [[package]] 677 + name = "rusty-fork" 678 + version = "0.3.0" 679 + source = "registry+https://github.com/rust-lang/crates.io-index" 680 + checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" 681 + dependencies = [ 682 + "fnv", 683 + "quick-error", 684 + "tempfile", 685 + "wait-timeout", 686 + ] 687 + 688 + [[package]] 689 + name = "ryu" 690 + version = "1.0.20" 691 + source = "registry+https://github.com/rust-lang/crates.io-index" 692 + checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" 693 + 694 + [[package]] 695 + name = "same-file" 696 + version = "1.0.6" 697 + source = "registry+https://github.com/rust-lang/crates.io-index" 698 + checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 699 + dependencies = [ 700 + "winapi-util", 701 + ] 702 + 703 + [[package]] 704 + name = "serde" 705 + version = "1.0.219" 706 + source = "registry+https://github.com/rust-lang/crates.io-index" 707 + checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" 708 + dependencies = [ 709 + "serde_derive", 710 + ] 711 + 712 + [[package]] 713 + name = "serde_derive" 714 + version = "1.0.219" 715 + source = "registry+https://github.com/rust-lang/crates.io-index" 716 + checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" 717 + dependencies = [ 718 + "proc-macro2", 719 + "quote", 720 + "syn", 721 + ] 722 + 723 + [[package]] 724 + name = "serde_json" 725 + version = "1.0.140" 726 + source = "registry+https://github.com/rust-lang/crates.io-index" 727 + checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" 728 + dependencies = [ 729 + "itoa", 730 + "memchr", 731 + "ryu", 732 + "serde", 733 + ] 734 + 735 + [[package]] 736 + name = "serde_spanned" 737 + version = "0.6.8" 738 + source = "registry+https://github.com/rust-lang/crates.io-index" 739 + checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" 740 + dependencies = [ 741 + "serde", 742 + ] 743 + 744 + [[package]] 745 + name = "strsim" 746 + version = "0.11.1" 747 + source = "registry+https://github.com/rust-lang/crates.io-index" 748 + checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" 749 + 750 + [[package]] 751 + name = "syn" 752 + version = "2.0.101" 753 + source = "registry+https://github.com/rust-lang/crates.io-index" 754 + checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" 755 + dependencies = [ 756 + "proc-macro2", 757 + "quote", 758 + "unicode-ident", 759 + ] 760 + 761 + [[package]] 762 + name = "tempfile" 763 + version = "3.20.0" 764 + source = "registry+https://github.com/rust-lang/crates.io-index" 765 + checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" 766 + dependencies = [ 767 + "fastrand", 768 + "getrandom 0.3.3", 769 + "once_cell", 770 + "rustix", 771 + "windows-sys", 772 + ] 773 + 774 + [[package]] 775 + name = "tinytemplate" 776 + version = "1.2.1" 777 + source = "registry+https://github.com/rust-lang/crates.io-index" 778 + checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" 779 + dependencies = [ 780 + "serde", 781 + "serde_json", 782 + ] 783 + 784 + [[package]] 785 + name = "toml" 786 + version = "0.8.22" 787 + source = "registry+https://github.com/rust-lang/crates.io-index" 788 + checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" 789 + dependencies = [ 790 + "serde", 791 + "serde_spanned", 792 + "toml_datetime", 793 + "toml_edit", 794 + ] 795 + 796 + [[package]] 797 + name = "toml_datetime" 798 + version = "0.6.9" 799 + source = "registry+https://github.com/rust-lang/crates.io-index" 800 + checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" 801 + dependencies = [ 802 + "serde", 803 + ] 804 + 805 + [[package]] 806 + name = "toml_edit" 807 + version = "0.22.26" 808 + source = "registry+https://github.com/rust-lang/crates.io-index" 809 + checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" 810 + dependencies = [ 811 + "indexmap", 812 + "serde", 813 + "serde_spanned", 814 + "toml_datetime", 815 + "toml_write", 816 + "winnow", 817 + ] 818 + 819 + [[package]] 820 + name = "toml_write" 821 + version = "0.1.1" 822 + source = "registry+https://github.com/rust-lang/crates.io-index" 823 + checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" 824 + 825 + [[package]] 826 + name = "unarray" 827 + version = "0.1.4" 828 + source = "registry+https://github.com/rust-lang/crates.io-index" 829 + checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" 830 + 831 + [[package]] 832 + name = "unicode-ident" 833 + version = "1.0.18" 834 + source = "registry+https://github.com/rust-lang/crates.io-index" 835 + checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" 836 + 837 + [[package]] 838 + name = "utf8parse" 839 + version = "0.2.2" 840 + source = "registry+https://github.com/rust-lang/crates.io-index" 841 + checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" 842 + 843 + [[package]] 844 + name = "wait-timeout" 845 + version = "0.2.1" 846 + source = "registry+https://github.com/rust-lang/crates.io-index" 847 + checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" 848 + dependencies = [ 849 + "libc", 850 + ] 851 + 852 + [[package]] 853 + name = "walkdir" 854 + version = "2.5.0" 855 + source = "registry+https://github.com/rust-lang/crates.io-index" 856 + checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" 857 + dependencies = [ 858 + "same-file", 859 + "winapi-util", 860 + ] 861 + 862 + [[package]] 863 + name = "wasi" 864 + version = "0.11.0+wasi-snapshot-preview1" 865 + source = "registry+https://github.com/rust-lang/crates.io-index" 866 + checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 867 + 868 + [[package]] 869 + name = "wasi" 870 + version = "0.14.2+wasi-0.2.4" 871 + source = "registry+https://github.com/rust-lang/crates.io-index" 872 + checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" 873 + dependencies = [ 874 + "wit-bindgen-rt", 875 + ] 876 + 877 + [[package]] 878 + name = "wasm-bindgen" 879 + version = "0.2.100" 880 + source = "registry+https://github.com/rust-lang/crates.io-index" 881 + checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" 882 + dependencies = [ 883 + "cfg-if", 884 + "once_cell", 885 + "rustversion", 886 + "wasm-bindgen-macro", 887 + ] 888 + 889 + [[package]] 890 + name = "wasm-bindgen-backend" 891 + version = "0.2.100" 892 + source = "registry+https://github.com/rust-lang/crates.io-index" 893 + checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" 894 + dependencies = [ 895 + "bumpalo", 896 + "log", 897 + "proc-macro2", 898 + "quote", 899 + "syn", 900 + "wasm-bindgen-shared", 901 + ] 902 + 903 + [[package]] 904 + name = "wasm-bindgen-macro" 905 + version = "0.2.100" 906 + source = "registry+https://github.com/rust-lang/crates.io-index" 907 + checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" 908 + dependencies = [ 909 + "quote", 910 + "wasm-bindgen-macro-support", 911 + ] 912 + 913 + [[package]] 914 + name = "wasm-bindgen-macro-support" 915 + version = "0.2.100" 916 + source = "registry+https://github.com/rust-lang/crates.io-index" 917 + checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" 918 + dependencies = [ 919 + "proc-macro2", 920 + "quote", 921 + "syn", 922 + "wasm-bindgen-backend", 923 + "wasm-bindgen-shared", 924 + ] 925 + 926 + [[package]] 927 + name = "wasm-bindgen-shared" 928 + version = "0.2.100" 929 + source = "registry+https://github.com/rust-lang/crates.io-index" 930 + checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" 931 + dependencies = [ 932 + "unicode-ident", 933 + ] 934 + 935 + [[package]] 936 + name = "web-sys" 937 + version = "0.3.77" 938 + source = "registry+https://github.com/rust-lang/crates.io-index" 939 + checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" 940 + dependencies = [ 941 + "js-sys", 942 + "wasm-bindgen", 943 + ] 944 + 945 + [[package]] 946 + name = "winapi-util" 947 + version = "0.1.9" 948 + source = "registry+https://github.com/rust-lang/crates.io-index" 949 + checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" 950 + dependencies = [ 951 + "windows-sys", 952 + ] 953 + 954 + [[package]] 955 + name = "windows-sys" 956 + version = "0.59.0" 957 + source = "registry+https://github.com/rust-lang/crates.io-index" 958 + checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" 959 + dependencies = [ 960 + "windows-targets", 961 + ] 962 + 963 + [[package]] 964 + name = "windows-targets" 965 + version = "0.52.6" 966 + source = "registry+https://github.com/rust-lang/crates.io-index" 967 + checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" 968 + dependencies = [ 969 + "windows_aarch64_gnullvm", 970 + "windows_aarch64_msvc", 971 + "windows_i686_gnu", 972 + "windows_i686_gnullvm", 973 + "windows_i686_msvc", 974 + "windows_x86_64_gnu", 975 + "windows_x86_64_gnullvm", 976 + "windows_x86_64_msvc", 977 + ] 978 + 979 + [[package]] 980 + name = "windows_aarch64_gnullvm" 981 + version = "0.52.6" 982 + source = "registry+https://github.com/rust-lang/crates.io-index" 983 + checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" 984 + 985 + [[package]] 986 + name = "windows_aarch64_msvc" 987 + version = "0.52.6" 988 + source = "registry+https://github.com/rust-lang/crates.io-index" 989 + checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" 990 + 991 + [[package]] 992 + name = "windows_i686_gnu" 993 + version = "0.52.6" 994 + source = "registry+https://github.com/rust-lang/crates.io-index" 995 + checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" 996 + 997 + [[package]] 998 + name = "windows_i686_gnullvm" 999 + version = "0.52.6" 1000 + source = "registry+https://github.com/rust-lang/crates.io-index" 1001 + checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" 1002 + 1003 + [[package]] 1004 + name = "windows_i686_msvc" 1005 + version = "0.52.6" 1006 + source = "registry+https://github.com/rust-lang/crates.io-index" 1007 + checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" 1008 + 1009 + [[package]] 1010 + name = "windows_x86_64_gnu" 1011 + version = "0.52.6" 1012 + source = "registry+https://github.com/rust-lang/crates.io-index" 1013 + checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" 1014 + 1015 + [[package]] 1016 + name = "windows_x86_64_gnullvm" 1017 + version = "0.52.6" 1018 + source = "registry+https://github.com/rust-lang/crates.io-index" 1019 + checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" 1020 + 1021 + [[package]] 1022 + name = "windows_x86_64_msvc" 1023 + version = "0.52.6" 1024 + source = "registry+https://github.com/rust-lang/crates.io-index" 1025 + checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 1026 + 1027 + [[package]] 1028 + name = "winnow" 1029 + version = "0.7.10" 1030 + source = "registry+https://github.com/rust-lang/crates.io-index" 1031 + checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" 1032 + dependencies = [ 1033 + "memchr", 1034 + ] 1035 + 1036 + [[package]] 1037 + name = "wit-bindgen-rt" 1038 + version = "0.39.0" 1039 + source = "registry+https://github.com/rust-lang/crates.io-index" 1040 + checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" 1041 + dependencies = [ 1042 + "bitflags", 1043 + ] 1044 + 1045 + [[package]] 1046 + name = "zerocopy" 1047 + version = "0.8.25" 1048 + source = "registry+https://github.com/rust-lang/crates.io-index" 1049 + checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" 1050 + dependencies = [ 1051 + "zerocopy-derive", 1052 + ] 1053 + 1054 + [[package]] 1055 + name = "zerocopy-derive" 1056 + version = "0.8.25" 1057 + source = "registry+https://github.com/rust-lang/crates.io-index" 1058 + checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" 1059 + dependencies = [ 1060 + "proc-macro2", 1061 + "quote", 1062 + "syn", 1063 + ]
+40
pkgs/by-name/cr/crc64fast-nvme/package.nix
··· 1 + { 2 + lib, 3 + fetchFromGitHub, 4 + rustPlatform, 5 + }: 6 + rustPlatform.buildRustPackage (finalAttrs: { 7 + pname = "crc64fast-nvme"; 8 + version = "1.2.0"; 9 + 10 + src = fetchFromGitHub { 11 + owner = "awesomized"; 12 + repo = "crc64fast-nvme"; 13 + tag = finalAttrs.version; 14 + hash = "sha256-BEFdVspQU2exj6ndULCs0TfH7aIx/NvfUkTSL32bIPk="; 15 + }; 16 + 17 + postPatch = '' 18 + cp -L ${./Cargo.lock} Cargo.lock 19 + ''; 20 + 21 + cargoLock = { 22 + lockFile = ./Cargo.lock; 23 + }; 24 + 25 + postInstall = '' 26 + mv $out/bin/build_table $out/bin/pclmulqdq_build_table 27 + install -Dm644 crc64fast_nvme.h -t $out/include/ 28 + ''; 29 + 30 + meta = { 31 + description = "SIMD accelerated carryless-multiplication CRC-64/NVME checksum computation (based on Intel's PCLMULQDQ paper)"; 32 + homepage = "https://github.com/awesomized/crc64fast-nvme"; 33 + mainProgram = "crc_64_nvme_checksum"; 34 + license = with lib.licenses; [ 35 + asl20 36 + mit 37 + ]; 38 + maintainers = with lib.maintainers; [ powwu ]; 39 + }; 40 + })
+1 -1
pkgs/by-name/de/defaultbrowser/package.nix
··· 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "kerma"; 13 - repo = pname; 13 + repo = "defaultbrowser"; 14 14 rev = "d2860c00dd7fbb5d615232cc819d7d492a6a6ddb"; 15 15 sha256 = "sha256-SelUQXoKtShcDjq8uKg3wM0kG2opREa2DGQCDd6IsOQ="; 16 16 };
+1 -1
pkgs/by-name/de/dep-tree/package.nix
··· 39 39 40 40 src = fetchFromGitHub { 41 41 owner = "gabotechs"; 42 - repo = pname; 42 + repo = "dep-tree"; 43 43 rev = "v${version}"; 44 44 hash = "sha256-m+afcnwVvPrD+S7c/kfE8mqlD7kO+VPI6sSXCCjXWZM="; 45 45 };
+5 -5
pkgs/by-name/dr/drawterm/package.nix
··· 13 13 wayland, 14 14 wayland-protocols, 15 15 libxkbcommon, 16 - wlr-protocols, 16 + libdecor, 17 17 pulseaudio, 18 18 nixosTests, 19 19 withWayland ? false, ··· 23 23 in 24 24 stdenv.mkDerivation { 25 25 pname = "drawterm"; 26 - version = "0-unstable-2025-05-18"; 26 + version = "0-unstable-2025-06-13"; 27 27 28 28 src = fetchFrom9Front { 29 29 owner = "plan9front"; 30 30 repo = "drawterm"; 31 - rev = "a6c1ce4e0244ca70403dc4e795a9cee548159560"; 32 - hash = "sha256-W9IsFnJE4Bpdc2K9DcRq+zRPMU9Wd4xpM0lHkh5SirQ="; 31 + rev = "4e32a9fa6e58c1474f747a99083303c4a2f14ea7"; 32 + hash = "sha256-j0s6xB8c8vQoOzL34Gu84elec0ig4z75NzlUx6PsW4E="; 33 33 }; 34 34 35 35 enableParallelBuilding = true; ··· 50 50 wayland 51 51 wayland-protocols 52 52 libxkbcommon 53 - wlr-protocols 53 + libdecor 54 54 ] 55 55 ++ lib.optionals withXorg [ 56 56 xorg.libX11
+1 -1
pkgs/by-name/du/duti/package.nix
··· 10 10 version = "1.5.5pre"; 11 11 src = fetchFromGitHub { 12 12 owner = "moretension"; 13 - repo = pname; 13 + repo = "duti"; 14 14 rev = "fe3d3dc411bcea6af7a8cbe53c0e08ed5ecacdb2"; 15 15 sha256 = "1pg4i6ghpib2gy1sqpml7dbnhr1vbr43fs2pqkd09i4w3nmgpic9"; 16 16 };
+15 -7
pkgs/by-name/dw/dwarf2json/package.nix
··· 2 2 lib, 3 3 fetchFromGitHub, 4 4 buildGoModule, 5 + versionCheckHook, 5 6 }: 6 7 7 - buildGoModule { 8 + buildGoModule (finalAttrs: { 8 9 pname = "dwarf2json"; 9 - version = "unstable-2021-04-15"; 10 + version = "0.9.0"; 10 11 11 12 src = fetchFromGitHub { 12 13 owner = "volatilityfoundation"; 13 14 repo = "dwarf2json"; 14 - rev = "e8a1ce85dc33bf2039adc7f8a5f47f3016153720"; 15 - sha256 = "sha256-hnS00glAcj78mZp5as63CsEn+dcr+GNEkz8iC3KM0h0="; 15 + rev = "v${finalAttrs.version}"; 16 + sha256 = "sha256-M5KKtn5kly23TwbjD5MVLzIum58exXqCFs6jxsg6oGM="; 16 17 }; 17 18 18 - vendorHash = "sha256-tgs0l+sYdAxMHwVTew++keNpDyrHmevpmOBVIiuL+34="; 19 + vendorHash = "sha256-3PnXB8AfZtgmYEPJuh0fwvG38dtngoS/lxyx3H+rvFs="; 20 + 21 + doInstallCheck = true; 22 + nativeInstallCheckInputs = [ versionCheckHook ]; 23 + versionCheckProgramArg = "--version"; 19 24 20 25 meta = with lib; { 21 26 homepage = "https://github.com/volatilityfoundation/dwarf2json"; 22 27 description = "Convert ELF/DWARF symbol and type information into vol3's intermediate JSON"; 23 28 license = licenses.vol-sl; 24 - maintainers = with maintainers; [ arkivm ]; 29 + maintainers = with maintainers; [ 30 + arkivm 31 + asauzeau 32 + ]; 25 33 mainProgram = "dwarf2json"; 26 34 }; 27 - } 35 + })
+1 -2
pkgs/by-name/ed/edk2/package.nix
··· 29 29 "LOONGARCH64" 30 30 else 31 31 throw "Unsupported architecture"; 32 - 33 - buildType = if stdenv.hostPlatform.isDarwin then "CLANGPDB" else "GCC5"; 34 32 in 35 33 36 34 stdenv.mkDerivation (finalAttrs: { ··· 172 170 finalAttrsInner: 173 171 let 174 172 attrs = lib.toFunction attrsOrFun finalAttrsInner; 173 + buildType = attrs.buildType or (if stdenv.hostPlatform.isDarwin then "CLANGPDB" else "GCC5"); 175 174 in 176 175 { 177 176 inherit (finalAttrs) src;
+3
pkgs/by-name/em/embellish/package.nix
··· 15 15 gjs, 16 16 gnome-autoar, 17 17 libsoup_3, 18 + nix-update-script, 18 19 }: 19 20 stdenv.mkDerivation (finalAttrs: { 20 21 pname = "embellish"; ··· 46 47 gnome-autoar 47 48 libsoup_3 48 49 ]; 50 + 51 + passthru.updateScript = nix-update-script { }; 49 52 50 53 meta = { 51 54 description = "User-friendly application designed for managing Nerd Fonts on your system";
+1 -1
pkgs/by-name/fa/fastcov/package.nix
··· 32 32 dontUseCmakeConfigure = true; # cmake is used for testing 33 33 34 34 nativeCheckInputs = with python3Packages; [ 35 - pytest 35 + pytestCheckHook 36 36 pytest-cov-stub 37 37 ]; 38 38
+2 -2
pkgs/by-name/fl/flexget/package.nix
··· 7 7 8 8 python3Packages.buildPythonApplication rec { 9 9 pname = "flexget"; 10 - version = "3.16.3"; 10 + version = "3.16.5"; 11 11 pyproject = true; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "Flexget"; 15 15 repo = "Flexget"; 16 16 tag = "v${version}"; 17 - hash = "sha256-07dCSwRLIf/cmNsFuNHs9XXFGuJvwUNWgLuxRsMOXo4="; 17 + hash = "sha256-tmxVk74eqN4qIe7cJF5IIWe7aXIH3Q2vi1galTF+FbI="; 18 18 }; 19 19 20 20 pythonRelaxDeps = true;
+1 -1
pkgs/by-name/gi/git-machete/package.nix
··· 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "virtuslab"; 16 - repo = pname; 16 + repo = "git-machete"; 17 17 rev = "v${version}"; 18 18 hash = "sha256-iSuOiQC+dKqcDCS4nTPMrNFpo3ipPUQhfoofM11UInI="; 19 19 };
+1 -1
pkgs/by-name/gi/git-pw/package.nix
··· 36 36 37 37 nativeCheckInputs = with python3.pkgs; [ 38 38 pytest-cov-stub 39 - pytest 39 + pytestCheckHook 40 40 git 41 41 ]; 42 42
+6 -4
pkgs/by-name/gi/gitfs/package.nix
··· 27 27 ''; 28 28 29 29 nativeCheckInputs = with python3Packages; [ 30 - pytest 31 - pytest-cov 30 + pytestCheckHook 31 + pytest-cov-stub 32 32 mock 33 33 ]; 34 34 propagatedBuildInputs = with python3Packages; [ ··· 38 38 six 39 39 ]; 40 40 41 - checkPhase = "py.test"; 42 - doCheck = false; 41 + pythonImportsCheck = [ "gitfs" ]; 43 42 44 43 meta = { 45 44 description = "FUSE filesystem that fully integrates with git"; ··· 53 52 platforms = lib.platforms.unix; 54 53 maintainers = [ lib.maintainers.robbinch ]; 55 54 mainProgram = "gitfs"; 55 + # requires <=python39, otherwise you get this at runtime: 56 + # AttributeError: module 'collections' has no attribute 'MutableMapping' 57 + broken = true; 56 58 }; 57 59 }
+3 -3
pkgs/by-name/gi/gitify/package.nix
··· 95 95 desktopName = "Gitify"; 96 96 exec = "gitify %U"; 97 97 icon = "gitify"; 98 - comment = "GitHub Notifications on your menu bar."; 98 + comment = "GitHub notifications on your menu bar"; 99 99 categories = [ "Development" ]; 100 100 startupWMClass = "Gitify"; 101 101 }) ··· 104 104 passthru.updateScript = nix-update-script { }; 105 105 106 106 meta = { 107 - homepage = "https://www.gitify.io/"; 107 + homepage = "https://gitify.io/"; 108 108 changelog = "https://github.com/gitify-app/gitify/releases/tag/v${finalAttrs.version}"; 109 - description = "GitHub Notifications on your menu bar"; 109 + description = "GitHub notifications on your menu bar"; 110 110 license = lib.licenses.mit; 111 111 maintainers = with lib.maintainers; [ pineapplehunter ]; 112 112 platforms = lib.platforms.all;
+44 -32
pkgs/by-name/gk/gk-cli/package.nix
··· 5 5 coreutils, 6 6 installShellFiles, 7 7 makeWrapper, 8 + gitMinimal, 8 9 writeShellScript, 9 10 curl, 10 11 jq, ··· 13 14 14 15 stdenv.mkDerivation (finalAttrs: { 15 16 pname = "gk-cli"; 16 - version = "2.1.2"; 17 + version = "3.0.9"; 17 18 18 19 src = ( 19 20 finalAttrs.passthru.sources.${stdenv.system} ··· 28 29 installPhase = '' 29 30 runHook preInstall 30 31 31 - install -Dm555 gk -t $out/bin/ 32 + install -Dm555 gk*/gk -t $out/bin/ 32 33 33 - installShellCompletion --bash ./**/gk.bash 34 - installShellCompletion --fish ./**/gk.fish 35 - installShellCompletion --zsh ./**/_gk 34 + wrapProgram $out/bin/gk \ 35 + --prefix PATH : "${lib.makeBinPath [ gitMinimal ]}" 36 36 37 37 runHook postInstall 38 38 ''; 39 39 40 - postFixup = '' 41 - wrapProgram $out/bin/gk \ 42 - --prefix PATH : "${lib.makeBinPath [ coreutils ]}" 40 + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' 41 + # Use timeout because gk hangs instead of closing in the sandbox 42 + installShellCompletion --cmd gk \ 43 + --bash <(HOME="$(mktemp --directory)" timeout 3 $out/bin/gk completion bash) \ 44 + --fish <(HOME="$(mktemp --directory)" timeout 3 $out/bin/gk completion fish) \ 45 + --zsh <(HOME="$(mktemp --directory)" timeout 3 $out/bin/gk completion zsh) 46 + ''; 47 + 48 + doInstallCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; 49 + installCheckPhase = '' 50 + OUTPUT="$( 51 + HOME="$(mktemp --directory)" \ 52 + timeout 3 `# Use timeout because gk hangs instead of closing in the sandbox` \ 53 + $out/bin/gk setup \ 54 + 2>/dev/null \ 55 + || true # Command fails because not logged in 56 + )" 57 + 58 + echo "$OUTPUT" | grep --quiet '^Git binary found: ✓$' 59 + echo "$OUTPUT" | grep --quiet '^CLI version: ${finalAttrs.version}$' 43 60 ''; 44 61 45 62 passthru = { ··· 48 65 base_url = "https://github.com/gitkraken/gk-cli/releases/download/v${finalAttrs.version}/gk_${finalAttrs.version}_"; 49 66 in 50 67 { 51 - armv6l-linux = fetchzip { 52 - url = "${base_url}Linux_arm6.zip"; 53 - hash = "sha256-pnEFTkx1JSmQlniVCXvIB6xGD8XyDh9OLDU0V9AZBTs="; 54 - stripRoot = false; 55 - }; 56 - armv7l-linux = fetchzip { 57 - url = "${base_url}Linux_arm7.zip"; 58 - hash = "sha256-qj0++i698s4ELKHU9B2sGIqf9hUJip4+2Car+brkRkM="; 59 - stripRoot = false; 60 - }; 61 68 aarch64-linux = fetchzip { 62 - url = "${base_url}Linux_arm64.zip"; 63 - hash = "sha256-vHGhlRHbk2/s3YmBdOPDbalEydpQVFkHiCkBVywa4N0="; 69 + url = "${base_url}linux_arm64.zip"; 70 + hash = "sha256-aYgHLpG4nX3Op0+j733jYbK4ZwVKkctMkDPweNTJWso="; 64 71 stripRoot = false; 65 72 }; 66 73 x86_32-linux = fetchzip { 67 - url = "${base_url}Linux_i386.zip"; 68 - hash = "sha256-t+P9SpS9u/17kga74kbYjD6nkjiFusyIwCRGDnkP3tU="; 74 + url = "${base_url}linux_386.zip"; 75 + hash = "sha256-lVu25S7e6a/kHmiD5dxGAlHMQ5yN46+SdFpt8lghejM="; 69 76 stripRoot = false; 70 77 }; 71 78 x86_64-linux = fetchzip { 72 - url = "${base_url}Linux_x86_64.zip"; 73 - hash = "sha256-O6T27edHi20ZFHiNaZKdk/5dtCn2Tpxm0PR934SRwFk="; 79 + url = "${base_url}linux_amd64.zip"; 80 + hash = "sha256-/z2G//Zh8lTHkeJPahyld1EEXXhd/cgIvCojUmzFX8E="; 74 81 stripRoot = false; 75 82 }; 76 83 aarch64-darwin = fetchzip { 77 - url = "${base_url}macOS_arm64.zip"; 78 - hash = "sha256-LW2K+aveJiyYqfga2jpF3DvvFeHJuozqbc/afgtq2Oc="; 84 + url = "${base_url}darwin_arm64.zip"; 85 + hash = "sha256-nDVehD0TTNTvhuDU8RB4lZiVcEJpB+l6EGkzckC7JuU="; 79 86 stripRoot = false; 80 87 }; 81 88 x86_64-darwin = fetchzip { 82 - url = "${base_url}macOS_x86_64.zip"; 83 - hash = "sha256-1w8B4YWouVViTGoUh987pPQIoqdzB0S+M2bBiRI6Kfg="; 89 + url = "${base_url}darwin_amd64.zip"; 90 + hash = "sha256-Lhuqb5592T6VcTMVmAdIDfGMXaS4dSu0wbQeHheXXk4="; 91 + stripRoot = false; 92 + }; 93 + aarch64-windows = fetchzip { 94 + url = "${base_url}windows_arm64.zip"; 95 + hash = "sha256-sXHeqR4AW/sRPp74PieXI1n4VGV94CnrcMF1ovAek8E="; 84 96 stripRoot = false; 85 97 }; 86 98 i686-windows = fetchzip { 87 - url = "${base_url}Windows_i386.zip"; 88 - hash = "sha256-t81/wK1weZ/uEZ5TzivylARTUqks9rLIG7WzeoWXb1k="; 99 + url = "${base_url}windows_386.zip"; 100 + hash = "sha256-u6DyHoYIaExS2CHu20odDVJxzI4k9PpdFQf6UDPAzz0="; 89 101 stripRoot = false; 90 102 }; 91 103 x86_64-windows = fetchzip { 92 - url = "${base_url}Windows_x86_64.zip"; 93 - hash = "sha256-9yydDMI9Gz/OswRhJHF+2c3Ia0zDmXMbf7byj6PJe24="; 104 + url = "${base_url}windows_amd64.zip"; 105 + hash = "sha256-nh+JPR95IWLm7CTrS8qK2dP3c4SH/zm1oIS5GNgxcyo="; 94 106 stripRoot = false; 95 107 }; 96 108 };
+1 -1
pkgs/by-name/gn/gnome-session/ctl.nix
··· 16 16 17 17 src = fetchFromGitHub { 18 18 owner = "nix-community"; 19 - repo = pname; 19 + repo = "gnome-session-ctl"; 20 20 rev = version; 21 21 hash = "sha256-RY0+iIwwjd7268m3EYrZ1yUBLHXmaWddtSxqgUUH6qQ="; 22 22 };
+3 -3
pkgs/by-name/go/goose-cli/package.nix
··· 27 27 in 28 28 rustPlatform.buildRustPackage (finalAttrs: { 29 29 pname = "goose-cli"; 30 - version = "1.0.27"; 30 + version = "1.0.28"; 31 31 32 32 src = fetchFromGitHub { 33 33 owner = "block"; 34 34 repo = "goose"; 35 35 tag = "v${finalAttrs.version}"; 36 - hash = "sha256-+HNAOw/BJVNHiDHeEBKoAAs66IXCdYhm1VzVFIzk4m8="; 36 + hash = "sha256-ExFVgG05jlcz3nP6n94324sgXbIHpj8L30oNuqKyfto="; 37 37 }; 38 38 39 39 useFetchCargoVendor = true; 40 - cargoHash = "sha256-v+UQFbFpkwX+7oNFvKf2v2u3OSkPdgOWntXLW6XJibE="; 40 + cargoHash = "sha256-sW4rWLElTPVzD+KCOrikEFcoIRGujMz+wHOWlYBpi0o="; 41 41 42 42 nativeBuildInputs = [ 43 43 pkg-config
+1 -1
pkgs/by-name/gr/graphite-gtk-theme/package.nix
··· 66 66 67 67 src = fetchFromGitHub { 68 68 owner = "vinceliuice"; 69 - repo = pname; 69 + repo = "graphite-gtk-theme"; 70 70 rev = version; 71 71 hash = "sha256-k93l/7DF0HSKPfiIxzBLz0mBflgbdYJyGLEmWZx3q7o="; 72 72 };
+2 -2
pkgs/by-name/gt/gtk-mac-integration/package.nix
··· 18 18 src = fetchFromGitLab { 19 19 domain = "gitlab.gnome.org"; 20 20 owner = "GNOME"; 21 - repo = pname; 22 - rev = "${pname}-${version}"; 21 + repo = "gtk-mac-integration"; 22 + rev = "gtk-mac-integration-${version}"; 23 23 sha256 = "0sc0m3p8r5xfh5i4d7dg72kfixx9yi4f800y43bszyr88y52jkga"; 24 24 }; 25 25
+40
pkgs/by-name/gt/gtklock-virtkb-module/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + pkg-config, 6 + gtk3, 7 + gtklock, 8 + }: 9 + 10 + stdenv.mkDerivation (finalAttrs: { 11 + pname = "gtklock-virtkb-module"; 12 + version = "0-unstable-2025-02-27"; 13 + 14 + src = fetchFromGitHub { 15 + owner = "progandy"; 16 + repo = "gtklock-virtkb-module"; 17 + rev = "a11c2d8f14a79f271b02711b38220f927bc7fdf8"; 18 + hash = "sha256-+kEv5SlMINCORQQOOZ4Lb1dSJXLCbX2oAsD6NTbuhdE="; 19 + }; 20 + 21 + nativeBuildInputs = [ 22 + pkg-config 23 + ]; 24 + 25 + buildInputs = [ 26 + gtk3 27 + ]; 28 + 29 + makeFlags = [ "PREFIX=${placeholder "out"}" ]; 30 + 31 + passthru.tests.testModule = gtklock.passthru.testModule finalAttrs.finalPackage; 32 + 33 + meta = { 34 + description = "Gtklock module adding a keyboard to the lockscreen"; 35 + homepage = "https://github.com/progandy/gtklock-virtkb-module"; 36 + license = lib.licenses.gpl3Only; 37 + maintainers = with lib.maintainers; [ aleksana ]; 38 + platforms = lib.platforms.linux; 39 + }; 40 + })
+3
pkgs/by-name/ha/hacompanion/package.nix
··· 2 2 lib, 3 3 fetchFromGitHub, 4 4 buildGoModule, 5 + nix-update-script, 5 6 }: 6 7 7 8 buildGoModule rec { ··· 16 17 }; 17 18 18 19 vendorHash = "sha256-y2eSuMCDZTGdCs70zYdA8NKbuPPN5xmnRfMNK+AE/q8="; 20 + 21 + passthru.updateScript = nix-update-script { }; 19 22 20 23 meta = { 21 24 changelog = "https://github.com/tobias-kuendig/hacompanion/releases/tag/v${version}";
+4
pkgs/by-name/ha/hatch/package.nix
··· 129 129 # Relies on FHS 130 130 # Could not read ELF interpreter from any of the following paths: /bin/sh, /usr/bin/env, /bin/dash, /bin/ls 131 131 "test_new_selected_python" 132 + 133 + # https://github.com/pypa/hatch/issues/2006 134 + "test_project_location_basic_set_first_project" 135 + "test_project_location_complex_set_first_project" 132 136 ] 133 137 ++ lib.optionals stdenv.hostPlatform.isDarwin [ 134 138 # This test assumes it is running on macOS with a system shell on the PATH.
+3 -4
pkgs/by-name/hi/high-tide/package.nix
··· 17 17 18 18 python313Packages.buildPythonApplication rec { 19 19 pname = "high-tide"; 20 - version = "0.1.5"; 20 + version = "0.1.7"; 21 21 pyproject = false; 22 22 23 23 src = fetchFromGitHub { 24 24 owner = "Nokse22"; 25 25 repo = "high-tide"; 26 26 tag = "v${version}"; 27 - hash = "sha256-HoPyqsLPLfqyQbrhoPzr3n81yX1MHZVUVmq5RKDN5pI="; 27 + hash = "sha256-QFa9K/iSPe3cIx90PzPCkJszrygON9ijukv4px3Rob8="; 28 28 }; 29 29 30 30 nativeBuildInputs = [ ··· 45 45 gstreamer 46 46 gst-plugins-base 47 47 gst-plugins-good 48 - gst-plugins-ugly 49 - gst-plugins-bad 50 48 libsecret 51 49 ]); 52 50 ··· 55 53 tidalapi 56 54 requests 57 55 mpd2 56 + pypresence 58 57 ]; 59 58 60 59 dontWrapGApps = true;
+1 -1
pkgs/by-name/ho/holo-build/package.nix
··· 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "holocm"; 16 - repo = pname; 16 + repo = "holo-build"; 17 17 rev = "v${version}"; 18 18 sha256 = "0lypbgf96bcc4m3968xa4il1zwprsdyc0pw6pl9mqq7djxabikd0"; 19 19 };
+8 -5
pkgs/by-name/ht/htmx-lsp/package.nix
··· 2 2 lib, 3 3 rustPlatform, 4 4 fetchFromGitHub, 5 + unstableGitUpdater, 5 6 }: 6 7 7 - rustPlatform.buildRustPackage rec { 8 + rustPlatform.buildRustPackage { 8 9 pname = "htmx-lsp"; 9 - version = "0.1.0"; 10 + version = "0.1.0-unstable-2025-06-14"; 10 11 11 12 src = fetchFromGitHub { 12 13 owner = "ThePrimeagen"; 13 14 repo = "htmx-lsp"; 14 - rev = version; 15 - hash = "sha256-CvQ+vgo3+qUOj0SS6/NrapzXkP98tpiZbGhRHJxEqeo="; 15 + rev = "c45f55b2bf8be2d92489fd6d69a3db07fe5f214b"; 16 + hash = "sha256-7CAlYYwsanlOCGeY7gYE5Fzk5IEO4hThgINiJmXql7s="; 16 17 }; 17 18 18 19 useFetchCargoVendor = true; 19 - cargoHash = "sha256-EQHNFiyQ7TwY4LldMFOTX0epilU76LPOiHQIIUsNhS8="; 20 + cargoHash = "sha256-/ypaTrctJo88DHtF/hv6B0dqB06axd/qKFnuI8zs8KA="; 21 + 22 + passthru.updateScript = unstableGitUpdater { }; 20 23 21 24 meta = with lib; { 22 25 description = "Language server implementation for htmx";
+2 -2
pkgs/by-name/it/itch/package.nix
··· 15 15 version = "26.1.9"; 16 16 17 17 itch-setup = fetchzip { 18 - url = "https://broth.itch.ovh/itch-setup/linux-amd64/1.26.0/itch-setup.zip"; 18 + url = "https://broth.itch.zone/itch-setup/linux-amd64/1.26.0/itch-setup.zip"; 19 19 stripRoot = false; 20 20 hash = "sha256-5MP6X33Jfu97o5R1n6Og64Bv4ZMxVM0A8lXeQug+bNA="; 21 21 }; ··· 36 36 inherit version; 37 37 38 38 src = fetchzip { 39 - url = "https://broth.itch.ovh/itch/linux-amd64/${finalAttrs.version}/archive/default#.zip"; 39 + url = "https://broth.itch.zone/itch/linux-amd64/${finalAttrs.version}/archive/default#.zip"; 40 40 stripRoot = false; 41 41 hash = "sha256-4k6afBgOKGs7rzXAtIBpmuQeeT/Va8/0bZgNYjuJhgI="; 42 42 };
+2 -2
pkgs/by-name/ka/kanidm/generic.nix
··· 43 43 cargoDepsName = "kanidm"; 44 44 45 45 src = fetchFromGitHub { 46 - owner = pname; 47 - repo = pname; 46 + owner = "kanidm"; 47 + repo = "kanidm"; 48 48 rev = "refs/tags/v${version}"; 49 49 inherit hash; 50 50 };
+75
pkgs/by-name/ka/kapitano/package.nix
··· 1 + { 2 + lib, 3 + fetchFromGitea, 4 + meson, 5 + ninja, 6 + pkg-config, 7 + glib, 8 + gtk4, 9 + libadwaita, 10 + python3Packages, 11 + clamav, 12 + appstream-glib, 13 + desktop-file-utils, 14 + libxml2, 15 + gobject-introspection, 16 + wrapGAppsHook4, 17 + librsvg, 18 + }: 19 + python3Packages.buildPythonApplication rec { 20 + pname = "kapitano"; 21 + version = "1.1.2"; 22 + pyproject = false; 23 + 24 + src = fetchFromGitea { 25 + domain = "codeberg.org"; 26 + owner = "zynequ"; 27 + repo = "Kapitano"; 28 + tag = version; 29 + hash = "sha256-914M0VRyuzDiITUT5sjt9vNaqshn4skz/FWWMxgPTdc="; 30 + fetchLFS = true; 31 + }; 32 + 33 + nativeBuildInputs = [ 34 + meson 35 + ninja 36 + desktop-file-utils 37 + libxml2 38 + pkg-config 39 + appstream-glib 40 + wrapGAppsHook4 41 + gobject-introspection 42 + ]; 43 + 44 + buildInputs = [ 45 + glib 46 + gtk4 47 + libadwaita 48 + librsvg 49 + ]; 50 + 51 + dependencies = with python3Packages; [ pygobject3 ]; 52 + 53 + postPatch = '' 54 + substituteInPlace src/config/paths_config.py \ 55 + --replace-fail 'USER_DATA_DIR = GLib.get_user_data_dir()' 'USER_DATA_DIR = os.path.join(GLib.get_user_data_dir(), "kapitano"); os.makedirs(USER_DATA_DIR, exist_ok=True)' 56 + ''; 57 + 58 + dontWrapGApps = true; 59 + 60 + preFixup = '' 61 + makeWrapperArgs+=( 62 + ''${gappsWrapperArgs[@]} 63 + --prefix PATH : "${lib.makeBinPath [ clamav ]}" 64 + ) 65 + ''; 66 + 67 + meta = { 68 + description = "Modern ClamAV front-end that uses gtk4/libadwaita"; 69 + homepage = "https://codeberg.org/zynequ/Kapitano"; 70 + mainProgram = "kapitano"; 71 + license = lib.licenses.gpl3Plus; 72 + platforms = lib.platforms.linux; 73 + maintainers = with lib.maintainers; [ lonerOrz ]; 74 + }; 75 + }
+1 -1
pkgs/by-name/kd/kddockwidgets/package.nix
··· 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "KDAB"; 18 - repo = pname; 18 + repo = "KDDockWidgets"; 19 19 rev = "v${version}"; 20 20 sha256 = "sha256-4xaTfNwfAIQox2YcusEZJt5f9/Kld+zveFEiIVw5dRc="; 21 21 };
+1 -1
pkgs/by-name/ke/keeperrl/package.nix
··· 21 21 22 22 free_src = fetchFromGitHub { 23 23 owner = "miki151"; 24 - repo = pname; 24 + repo = "keeperrl"; 25 25 rev = version; 26 26 sha256 = "sha256-0sww+ppctXvxMouclG3OdXpcNgrrOZJw9z8s2GhJ+IE="; 27 27 };
+1 -1
pkgs/by-name/ke/keycloak/keycloak-metrics-spi/default.nix
··· 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "aerogear"; 13 - repo = pname; 13 + repo = "keycloak-metrics-spi"; 14 14 rev = "refs/tags/${version}"; 15 15 hash = "sha256-MMonBRau8FpfCqija6NEdvp4zJfEub2Kwk4MA7FYWHI="; 16 16 };
+2 -2
pkgs/by-name/lc/lcalc/package.nix
··· 9 9 }: 10 10 11 11 stdenv.mkDerivation rec { 12 - version = "2.1.0"; 12 + version = "2.1.1"; 13 13 pname = "lcalc"; 14 14 15 15 src = fetchFromGitLab { 16 16 owner = "sagemath"; 17 17 repo = "lcalc"; 18 18 tag = version; 19 - hash = "sha256-v+7Uh6tPOfb3E9dqxx//RqD22XM4S/8ejS2v+D5G5pE="; 19 + hash = "sha256-0CYrRGn5YQ07BaGu0Q5otnjwyh3sNq21EXp3M/KlRdw="; 20 20 }; 21 21 22 22 nativeBuildInputs = [
+11 -9
pkgs/by-name/li/libcollectdclient/package.nix
··· 1 1 { lib, collectd }: 2 2 3 - collectd.overrideAttrs (oldAttrs: { 3 + collectd.overrideAttrs (prevAttrs: { 4 4 pname = "libcollectdclient"; 5 + 5 6 buildInputs = [ ]; 6 7 7 - configureFlags = (oldAttrs.configureFlags or [ ]) ++ [ 8 + configureFlags = (prevAttrs.configureFlags or [ ]) ++ [ 9 + "--with-perl-bindings=no" 8 10 "--disable-daemon" 9 11 "--disable-all-plugins" 10 12 ]; 11 13 12 14 postInstall = "rm -rf $out/{bin,etc,sbin,share}"; 13 15 14 - meta = with lib; { 16 + meta = { 15 17 description = "C Library for collectd, a daemon which collects system performance statistics periodically"; 16 - homepage = "http://collectd.org"; 17 - license = licenses.gpl2; 18 - platforms = platforms.linux; # TODO: collectd may be linux but the C client may be more portable? 19 - maintainers = [ 20 - maintainers.sheenobu 21 - maintainers.bjornfor 18 + homepage = "https://collectd.org"; 19 + license = lib.licenses.gpl2Plus; 20 + platforms = lib.platforms.unix; 21 + maintainers = with lib.maintainers; [ 22 + sheenobu 23 + bjornfor 22 24 ]; 23 25 }; 24 26 })
+2 -2
pkgs/by-name/li/libcrossguid/package.nix
··· 6 6 }: 7 7 8 8 stdenv.mkDerivation rec { 9 - name = "lib" + pname + "-" + version; 9 + name = "lib" + "crossguid" + "-" + version; 10 10 pname = "crossguid"; 11 11 version = "2016-02-21"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "graeme-hill"; 15 - repo = pname; 15 + repo = "crossguid"; 16 16 rev = "8f399e8bd4252be9952f3dfa8199924cc8487ca4"; 17 17 sha256 = "1i29y207qqddvaxbn39pk2fbh3gx8zvdprfp35wasj9rw2wjk3s9"; 18 18 };
-41
pkgs/by-name/li/libdwarf/common.nix
··· 1 - { 2 - lib, 3 - stdenv, 4 - fetchurl, 5 - buildInputs, 6 - hash, 7 - version, 8 - url, 9 - knownVulnerabilities, 10 - }: 11 - 12 - stdenv.mkDerivation { 13 - pname = "libdwarf"; 14 - inherit version; 15 - 16 - src = fetchurl { 17 - inherit url hash; 18 - }; 19 - 20 - configureFlags = [ 21 - "--enable-shared" 22 - "--disable-nonshared" 23 - ]; 24 - 25 - inherit buildInputs; 26 - 27 - outputs = [ 28 - "bin" 29 - "lib" 30 - "dev" 31 - "out" 32 - ]; 33 - 34 - meta = { 35 - homepage = "https://github.com/davea42/libdwarf-code"; 36 - platforms = lib.platforms.unix; 37 - license = lib.licenses.lgpl21Plus; 38 - maintainers = [ lib.maintainers.atry ]; 39 - inherit knownVulnerabilities; 40 - }; 41 - }
+39 -7
pkgs/by-name/li/libdwarf/package.nix
··· 1 1 { 2 - callPackage, 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + meson, 6 + ninja, 3 7 zlib, 4 8 zstd, 5 9 }: 6 10 7 - callPackage ./common.nix rec { 8 - version = "0.11.1"; 9 - url = "https://www.prevanders.net/libdwarf-${version}.tar.xz"; 10 - hash = "sha512:d927b1d0e8dd1540c2f5da2a9d39b2914bb48225b2b9bdca94e7b36349358e1f537044eadc345f11d75de717fdda07ad99a8a7a5eb45e64fe4c79c37e165012f"; 11 + stdenv.mkDerivation (finalAttrs: { 12 + pname = "libdwarf"; 13 + version = "2.0.0"; 14 + 15 + src = fetchFromGitHub { 16 + owner = "davea42"; 17 + repo = "libdwarf-code"; 18 + tag = "v${finalAttrs.version}"; 19 + hash = "sha256-SsFg+7zGBEGxDSzfiIP5bxdttlBkhEiEQWaU12hINas="; 20 + }; 21 + 22 + nativeBuildInputs = [ 23 + meson 24 + ninja 25 + ]; 26 + 11 27 buildInputs = [ 12 28 zlib 13 29 zstd 14 30 ]; 15 - knownVulnerabilities = [ ]; 16 - } 31 + 32 + outputs = [ 33 + "bin" 34 + "lib" 35 + "dev" 36 + "out" 37 + ]; 38 + 39 + meta = { 40 + description = "Library for reading DWARF2 and later DWARF"; 41 + mainProgram = "dwarfdump"; 42 + homepage = "https://github.com/davea42/libdwarf-code"; 43 + changelog = "https://github.com/davea42/libdwarf-code/releases/tag/v${finalAttrs.version}/CHANGELOG.md"; 44 + platforms = lib.platforms.unix; 45 + license = lib.licenses.lgpl21Plus; 46 + maintainers = [ lib.maintainers.atry ]; 47 + }; 48 + })
+3 -3
pkgs/by-name/li/libnghttp2_asio/package.nix
··· 5 5 cmake, 6 6 nghttp2, 7 7 openssl, 8 - boost, 8 + boost186, 9 9 }: 10 10 11 11 stdenv.mkDerivation { 12 12 pname = "libnghttp2_asio"; 13 - version = "unstable-2022-08-11"; 13 + version = "0-unstable-2022-08-11"; 14 14 15 15 outputs = [ 16 16 "out" ··· 30 30 ]; 31 31 32 32 buildInputs = [ 33 - boost 33 + boost186 34 34 nghttp2 35 35 openssl 36 36 ];
+3 -3
pkgs/by-name/li/librespeed-cli/package.nix
··· 7 7 8 8 buildGoModule rec { 9 9 pname = "librespeed-cli"; 10 - version = "1.0.10"; 10 + version = "1.0.12"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "librespeed"; 14 14 repo = "speedtest-cli"; 15 15 tag = "v${version}"; 16 - hash = "sha256-LFGlKYWUaHi/byoRPD6zsdr0U5r0zWxxRa2NJNB2yb8="; 16 + hash = "sha256-njaQ/Be5rDCqkZJkij0nRi8aIO5uZYo8t3BjIcdKoCM="; 17 17 }; 18 18 19 - vendorHash = "sha256-psZyyySpY06J+ji+9uHUtX7Ks1hzZC3zINszYP75NfQ="; 19 + vendorHash = "sha256-dmaq9+0FjqYh2ZLg8bu8cPJZ9QClcvwid1nmsftmrf0="; 20 20 21 21 # Tests have additional requirements 22 22 doCheck = false;
+17 -10
pkgs/by-name/li/lite-xl/package.nix
··· 5 5 lua5_4, 6 6 meson, 7 7 ninja, 8 + cmake, 8 9 pcre2, 9 10 pkg-config, 10 - SDL2, 11 + sdl3, 11 12 stdenv, 12 13 }: 13 - 14 - stdenv.mkDerivation rec { 14 + let 15 15 pname = "lite-xl"; 16 - version = "2.1.7"; 16 + version = "2.1.8"; 17 + in 18 + stdenv.mkDerivation { 19 + inherit pname version; 17 20 18 21 src = fetchFromGitHub { 19 22 owner = "lite-xl"; 20 23 repo = "lite-xl"; 21 24 rev = "v${version}"; 22 - hash = "sha256-Ig0XDxnll/zruAwWHwuXiqumBXgAPxuK0E1ELupvcXo="; 25 + hash = "sha256-9JpD7f5vOGhLW8dBjjYUI5PSaz/XWW5sIOZCAbKhxtE="; 23 26 }; 24 27 25 28 nativeBuildInputs = [ 26 29 meson 27 30 ninja 28 31 pkg-config 32 + cmake 29 33 ]; 30 34 31 35 buildInputs = [ 32 36 freetype 33 37 lua5_4 34 38 pcre2 35 - SDL2 39 + sdl3 36 40 ]; 37 41 38 42 mesonFlags = [ 39 43 "-Duse_system_lua=true" 40 44 ]; 41 45 42 - meta = with lib; { 46 + meta = { 43 47 description = "Lightweight text editor written in Lua"; 44 48 homepage = "https://github.com/lite-xl/lite-xl"; 45 - license = licenses.mit; 46 - maintainers = with maintainers; [ sefidel ]; 47 - platforms = platforms.unix; 49 + license = lib.licenses.mit; 50 + maintainers = with lib.maintainers; [ 51 + luftmensch-luftmensch 52 + sefidel 53 + ]; 54 + platforms = lib.platforms.unix; 48 55 mainProgram = "lite-xl"; 49 56 }; 50 57 }
+3 -3
pkgs/by-name/lx/lxqt-panel-profiles/package.nix
··· 13 13 in 14 14 stdenv.mkDerivation rec { 15 15 pname = "lxqt-panel-profiles"; 16 - version = "1.1"; 16 + version = "1.2"; 17 17 18 18 src = fetchFromGitea { 19 19 domain = "codeberg.org"; 20 20 owner = "MrReplikant"; 21 21 repo = "lxqt-panel-profiles"; 22 22 rev = version; 23 - hash = "sha256-YGjgTLodVTtDzP/SOEg+Ehf1LYggTnG1H1rN5m1jaNM="; 23 + hash = "sha256-V76R3mWF/PgweMaDYTr6eJ3IDBsSJ8BSP5MYpKAWxM8="; 24 24 }; 25 25 26 26 postPatch = '' ··· 35 35 --replace-fail "python3" "${pythonWithPyqt6}/bin/python" 36 36 37 37 substituteInPlace usr/share/lxqt-panel-profiles/lxqt-panel-profiles.py \ 38 - --replace-fail "qdbus" "${qt6.qttools}/bin/qdbus" 38 + --replace-fail "qdbus6" "${qt6.qttools}/bin/qdbus" 39 39 ''; 40 40 41 41 installPhase = ''
+1 -1
pkgs/by-name/m-/m-cli/package.nix
··· 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "rgcr"; 13 - repo = pname; 13 + repo = "m-cli"; 14 14 rev = "v${version}"; 15 15 sha256 = "sha256-KzlE1DdVMLnGmcOS1a2HK4pASofD1EHpdqbzVVIxeb4="; 16 16 };
+2 -2
pkgs/by-name/ma/marge-bot/package.nix
··· 9 9 10 10 python3.pkgs.buildPythonApplication rec { 11 11 pname = "marge-bot"; 12 - version = "0.15.3"; 12 + version = "0.16.0"; 13 13 pyproject = true; 14 14 15 15 src = fetchFromGitLab { 16 16 owner = "marge-org"; 17 17 repo = "marge-bot"; 18 18 rev = version; 19 - hash = "sha256-i/hnfoBxgP1mo4RV4F10+QOOkPP/fkcwqaLKBlOuP0I="; 19 + hash = "sha256-UgdbeJegeTFP6YF6oMxAeQDI9AO2k6yk4WAFZ/Xspu8="; 20 20 }; 21 21 22 22 nativeBuildInputs = [
+3 -3
pkgs/by-name/ma/matcha-gtk-theme/package.nix
··· 28 28 29 29 src = fetchFromGitHub { 30 30 owner = "vinceliuice"; 31 - repo = pname; 31 + repo = "matcha-gtk-theme"; 32 32 rev = version; 33 33 sha256 = "sha256-vPAGEa3anWAynEg2AYme4qpHJdLDKk2CmL5iQ1mBYgM="; 34 34 }; ··· 60 60 ${lib.optionalString (themeVariants != [ ]) "--theme " + builtins.toString themeVariants} \ 61 61 --dest $out/share/themes 62 62 63 - mkdir -p $out/share/doc/${pname} 64 - cp -a src/extra/firefox $out/share/doc/${pname} 63 + mkdir -p $out/share/doc/matcha-gtk-theme 64 + cp -a src/extra/firefox $out/share/doc/matcha-gtk-theme 65 65 66 66 jdupes --quiet --link-soft --recurse $out/share 67 67
+3 -3
pkgs/by-name/ma/matrix-continuwuity/package.nix
··· 31 31 in 32 32 rustPlatform.buildRustPackage (finalAttrs: { 33 33 pname = "matrix-continuwuity"; 34 - version = "0.5.0-rc.5"; 34 + version = "0.5.0-rc.6"; 35 35 36 36 src = fetchFromGitea { 37 37 domain = "forgejo.ellis.link"; 38 38 owner = "continuwuation"; 39 39 repo = "continuwuity"; 40 40 tag = "v${finalAttrs.version}"; 41 - hash = "sha256-Oq2scBu3Ewao828BT1QGffqIqF5WoH9HMXEXKg1YU0o="; 41 + hash = "sha256-xK/jTURQzFJ1FkF1E9cItTxXAgXgTwAiA9/8aE51FvU="; 42 42 }; 43 43 44 44 useFetchCargoVendor = true; 45 - cargoHash = "sha256-bjjGR3++CaDEtlsQj9GgdViCEB5l72sI868uTFBtIwg="; 45 + cargoHash = "sha256-+7k1dtrXdonFDXa2Z/qVo4n1hZRmMWEQKKlffki8+/k="; 46 46 47 47 nativeBuildInputs = [ 48 48 pkg-config
+3 -3
pkgs/by-name/ma/mautrix-discord/package.nix
··· 10 10 11 11 buildGoModule rec { 12 12 pname = "mautrix-discord"; 13 - version = "0.7.3"; 13 + version = "0.7.4"; 14 14 15 15 src = fetchFromGitHub { 16 16 owner = "mautrix"; 17 17 repo = "discord"; 18 18 rev = "v${version}"; 19 - hash = "sha256-q6FpeGWoeIVVeomKMHpXUntMWsMJMV73FDiBfbMQ6Oc="; 19 + hash = "sha256-ygnFZ1I8sPgpKwLK+Zr6ZUStGAH2egVDxS/pXmRqXYI="; 20 20 }; 21 21 22 - vendorHash = "sha256-6R5ryzjAAAI3YtTMlHjrLOXkid2kCe8+ZICnNUjtxaQ="; 22 + vendorHash = "sha256-S3MWJi77TXs7gjPt6O2ruSIUHpsrLPIHQz3rQam1Wsg="; 23 23 24 24 ldflags = [ 25 25 "-s"
+3 -3
pkgs/by-name/ma/mautrix-gmessages/package.nix
··· 10 10 11 11 buildGoModule rec { 12 12 pname = "mautrix-gmessages"; 13 - version = "0.6.2"; 13 + version = "0.6.3"; 14 14 15 15 src = fetchFromGitHub { 16 16 owner = "mautrix"; 17 17 repo = "gmessages"; 18 18 tag = "v${version}"; 19 - hash = "sha256-NzLHCVJaYl8q5meKZDy8St8J9c8oyASLLrXhWG7K+yw="; 19 + hash = "sha256-s6d0fUH0md4oHWDGFDRR3SKbJBCH6qJIk4En6J53yIM="; 20 20 }; 21 21 22 - vendorHash = "sha256-+aX0r7IvsjXwmz5d6X0yzhG28mBYKvyDGoCbKMwkvk8="; 22 + vendorHash = "sha256-d6UVKu9Al445JqwhPXSlQDs0hOTom56p+hVZN2C4S0M="; 23 23 24 24 ldflags = [ 25 25 "-s"
+3 -3
pkgs/by-name/ma/mautrix-meta/package.nix
··· 15 15 16 16 buildGoModule rec { 17 17 pname = "mautrix-meta"; 18 - version = "0.4.6"; 18 + version = "0.5.0"; 19 19 20 20 subPackages = [ "cmd/mautrix-meta" ]; 21 21 ··· 23 23 owner = "mautrix"; 24 24 repo = "meta"; 25 25 rev = "v${version}"; 26 - hash = "sha256-FRK32NBtAro/+StacBa/jMg31xkxOKx791RBmuG61z8="; 26 + hash = "sha256-SM57PLfRVEKspqnAZz1XES6ba9Puuzvx8XZwAWKVRmw="; 27 27 }; 28 28 29 29 buildInputs = lib.optional (!withGoolm) olm; 30 30 tags = lib.optional withGoolm "goolm"; 31 31 32 - vendorHash = "sha256-nFxWPMNV0La21W03WNDZNktcHYLFVzPY/SkAyp0AVxs="; 32 + vendorHash = "sha256-+gQPlI9DHuY01JlUnEaYctOs+2XFAkw+X9SkvH0xlbc="; 33 33 34 34 passthru = { 35 35 tests = {
+3 -3
pkgs/by-name/mc/mcp-grafana/package.nix
··· 6 6 7 7 buildGoModule (finalAttrs: { 8 8 pname = "mcp-grafana"; 9 - version = "0.4.2"; 9 + version = "0.5.0"; 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "grafana"; 13 13 repo = "mcp-grafana"; 14 14 tag = "v${finalAttrs.version}"; 15 - hash = "sha256-3w6xnDAcuDMZPr6lGGh0FpcyG2fRpkeVcJlZMdszu/g="; 15 + hash = "sha256-oFtih2X3ZXKeo0xP8PBafu9HXgzcLUkLCeHm47qZhNA="; 16 16 }; 17 17 18 - vendorHash = "sha256-61nn/p6Un+uHuPK4hipJ3A2DhAEqpWTGefM8ENAOP1E="; 18 + vendorHash = "sha256-AVU1HE3RlEjkL0xO6j/Mii0B9BtUSdALUvSphCTwjrc="; 19 19 20 20 ldflags = [ 21 21 "-s"
+2 -2
pkgs/by-name/me/mediawriter/package.nix
··· 12 12 13 13 stdenv.mkDerivation rec { 14 14 pname = "mediawriter"; 15 - version = "5.2.5"; 15 + version = "5.2.6"; 16 16 17 17 src = fetchFromGitHub { 18 18 owner = "FedoraQt"; 19 19 repo = "MediaWriter"; 20 20 tag = version; 21 - hash = "sha256-acKLKnAXTp1w8+pPVXO2gCi3GELEi3skYCYN13QjWyY="; 21 + hash = "sha256-3O+b55H2/qbr8RrHNGz8dPQTt+ecVHtUWSDa24l2Dwc="; 22 22 }; 23 23 24 24 nativeBuildInputs = [
+1 -1
pkgs/by-name/me/memray/package.nix
··· 44 44 with python3Packages; 45 45 [ 46 46 ipython 47 - pytest-cov # fix Unknown pytest.mark.no_cover 47 + pytest-cov-stub # fix Unknown pytest.mark.no_cover 48 48 pytest-textual-snapshot 49 49 pytestCheckHook 50 50 ]
+3 -3
pkgs/by-name/me/meowlnir/package.nix
··· 9 9 10 10 buildGoModule rec { 11 11 pname = "meowlnir"; 12 - version = "0.5.0"; 12 + version = "0.6.0"; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "maunium"; 16 16 repo = "meowlnir"; 17 17 tag = "v${version}"; 18 - hash = "sha256-1YuSXKRiMUCRbxGIDOQKGKK7CxM3VD0LLEeULQJ/zRo="; 18 + hash = "sha256-TKt6uwj3RdhSEjGnWmYybJFaQ82qf3tXY4PPUAm6juQ="; 19 19 }; 20 20 21 21 buildInputs = [ olm ]; 22 22 23 - vendorHash = "sha256-g0be4ftBRV6Ver1kULfhnVBAF+iL3+/4e25sozpJ7+s="; 23 + vendorHash = "sha256-rFk4QUAI/Brclt/X/T7O0T6v2dTxpqbNLtoi0twYliw="; 24 24 25 25 doCheck = true; 26 26 doInstallCheck = true;
+3
pkgs/by-name/mi/microsocks/package.nix
··· 2 2 stdenv, 3 3 fetchFromGitHub, 4 4 lib, 5 + nix-update-script, 5 6 }: 6 7 7 8 stdenv.mkDerivation rec { ··· 22 23 23 24 runHook postInstall 24 25 ''; 26 + 27 + passthru.updateScript = nix-update-script { }; 25 28 26 29 meta = { 27 30 changelog = "https://github.com/rofl0r/microsocks/releases/tag/v${version}";
+3 -3
pkgs/by-name/mi/mihomo-party/package.nix
··· 16 16 17 17 stdenv.mkDerivation (finalAttrs: { 18 18 pname = "mihomo-party"; 19 - version = "1.7.5"; 19 + version = "1.7.6"; 20 20 21 21 src = 22 22 let ··· 31 31 fetchurl { 32 32 url = "https://github.com/mihomo-party-org/mihomo-party/releases/download/v${finalAttrs.version}/mihomo-party-linux-${finalAttrs.version}-${arch}.deb"; 33 33 hash = selectSystem { 34 - x86_64-linux = "sha256-Kw7VDyJ07DeinAzsilJU0vBhDLViB8zlpIA+mAPpp2M="; 35 - aarch64-linux = "sha256-OljIM8BI8umkRB1wUqcwQ/H1i1FhYtQ4d5cXMi/Lt9E="; 34 + x86_64-linux = "sha256-83RajPreGieOYBAkoR6FsFREnOGDDuMK6+Qg+R/koac="; 35 + aarch64-linux = "sha256-oWOXLUYWRKRgPtNv9ZvM1ODd44dhymVTKHJBK/xxOOs="; 36 36 }; 37 37 }; 38 38
+3 -3
pkgs/by-name/mi/mitra/package.nix
··· 6 6 7 7 rustPlatform.buildRustPackage rec { 8 8 pname = "mitra"; 9 - version = "4.4.0"; 9 + version = "4.5.0"; 10 10 11 11 src = fetchFromGitea { 12 12 domain = "codeberg.org"; 13 13 owner = "silverpill"; 14 14 repo = "mitra"; 15 15 rev = "v${version}"; 16 - hash = "sha256-ZonEMbafZWfURW7WKUAVmDq7bvi7oXBpKVudbrTF6eE="; 16 + hash = "sha256-y77wLGmSJbGmqUXURjqp6Gz9+xpMvnUEcB9OZ4uF3M8="; 17 17 }; 18 18 19 19 useFetchCargoVendor = true; 20 - cargoHash = "sha256-n96B51fVkJcBDwcbYHNP6ZWWdU8fu0a0Y72IVbNAAMQ="; 20 + cargoHash = "sha256-sfPnhB1GWIG8tA6Jqr1+03qxwS1DBbRAv4ZY+wKB/jY="; 21 21 22 22 # require running database 23 23 doCheck = false;
+2 -2
pkgs/by-name/ml/mlxbf-bootctl/package.nix
··· 10 10 11 11 src = fetchFromGitHub { 12 12 owner = "Mellanox"; 13 - repo = pname; 14 - rev = "${pname}-${version}"; 13 + repo = "mlxbf-bootctl"; 14 + rev = "mlxbf-bootctl-${version}"; 15 15 hash = "sha256-F49ZZtty+NARXA/doAFLhsQn4XkPW6GWLXGy4waIaM0="; 16 16 }; 17 17
+2 -2
pkgs/by-name/mo/mojave-gtk-theme/package.nix
··· 27 27 28 28 main_src = fetchFromGitHub { 29 29 owner = "vinceliuice"; 30 - repo = pname; 30 + repo = "mojave-gtk-theme"; 31 31 rev = version; 32 32 hash = "sha256-uL4lO6aWiDfOQkhpTnr/iVx1fI7n/fx7WYr5jDWPfYM="; 33 33 }; 34 34 35 35 wallpapers_src = fetchFromGitHub { 36 36 owner = "vinceliuice"; 37 - repo = pname; 37 + repo = "mojave-gtk-theme"; 38 38 rev = "1dc23c2b45d7e073e080cfb02f43aab0e59b6b2c"; 39 39 hash = "sha256-nkw8gXYx8fN1yn0A5M2fWwOvfUQ6izynxRw5JA61InM="; 40 40 name = "wallpapers";
+47
pkgs/by-name/mp/mpris-discord-rpc/package.nix
··· 1 + { 2 + lib, 3 + rustPlatform, 4 + fetchFromGitHub, 5 + pkg-config, 6 + dbus, 7 + openssl, 8 + stdenv, 9 + }: 10 + 11 + rustPlatform.buildRustPackage (finalAttrs: { 12 + pname = "mpris-discord-rpc"; 13 + version = "0.4.0"; 14 + 15 + src = fetchFromGitHub { 16 + owner = "patryk-ku"; 17 + repo = "mpris-discord-rpc"; 18 + tag = "v${finalAttrs.version}"; 19 + hash = "sha256-szftij29YTLzqBNirvoTgZfPIRznM1Ax5MPTKqB1nYI="; 20 + }; 21 + 22 + cargoHash = "sha256-/QYeNcmkW6cm1VJkzJfVGvZU79wGswhKUFYc54oQbGw="; 23 + 24 + nativeBuildInputs = [ 25 + pkg-config 26 + ]; 27 + 28 + buildInputs = [ 29 + dbus 30 + openssl 31 + ]; 32 + 33 + postInstall = '' 34 + mkdir --parents $out/etc/systemd/user 35 + substitute $src/mpris-discord-rpc.service $out/etc/systemd/user/mpris-discord-rpc.service \ 36 + --replace-fail /usr/bin/mpris-discord-rpc $out/bin/mpris-discord-rpc 37 + ''; 38 + 39 + meta = { 40 + description = "Linux Discord rich presence for music, using MPRIS with album cover and progress bar support"; 41 + homepage = "https://github.com/patryk-ku/mpris-discord-rpc"; 42 + changelog = "https://github.com/patryk-ku/mpris-discord-rpc/blob/${finalAttrs.src.tag}/CHANGELOG.md"; 43 + license = lib.licenses.mit; 44 + maintainers = [ lib.maintainers.lukaswrz ]; 45 + mainProgram = "mpris-discord-rpc"; 46 + }; 47 + })
+28 -16
pkgs/by-name/mu/mumps/package.nix
··· 1 1 { 2 - blas, 2 + lib, 3 + stdenv, 3 4 fetchzip, 5 + mpi, 4 6 gfortran, 7 + fixDarwinDylibNames, 8 + blas, 5 9 lapack, 6 - lib, 10 + scalapack, 11 + scotch, 7 12 metis, 8 13 parmetis, 14 + mpiCheckPhaseHook, 15 + static ? stdenv.hostPlatform.isStatic, 16 + mpiSupport ? false, 9 17 withParmetis ? false, # default to false due to unfree license 10 - scotch, 11 18 withPtScotch ? mpiSupport, 12 - stdenv, 13 - fixDarwinDylibNames, 14 - mpiSupport ? false, 15 - mpiCheckPhaseHook, 16 - scalapack, 17 19 }: 18 20 assert withParmetis -> mpiSupport; 19 21 assert withPtScotch -> mpiSupport; ··· 46 48 in 47 49 stdenv.mkDerivation (finalAttrs: { 48 50 name = "mumps"; 49 - version = "5.7.3"; 51 + version = "5.8.0"; 50 52 # makeFlags contain space and one should use makeFlagsArray+ 51 53 # Setting this magic var is an optional solution 52 54 __structuredAttrs = true; 55 + 56 + strictDeps = true; 53 57 54 58 src = fetchzip { 55 59 url = "https://mumps-solver.org/MUMPS_${finalAttrs.version}.tar.gz"; 56 - hash = "sha256-ZnIfAuvOBJDYqCtKGlWs0r39nG6X2lAVRuUmeIJenZw="; 60 + hash = "sha256-opJW7+Z/YhyUFwYTTTuWZuykz8Z4do6/XTBThHyTVCs="; 57 61 }; 58 62 59 63 postPatch = lib.optionalString stdenv.hostPlatform.isDarwin '' ··· 74 78 "LIBEXT_SHARED=.dylib" 75 79 ] 76 80 ++ [ 77 - "ISCOTCH=-I${scotch.dev}/include" 81 + "ISCOTCH=-I${lib.getDev scotch}/include" 78 82 "LMETIS=${LMETIS}" 79 83 "LSCOTCH=${LSCOTCH}" 80 84 "ORDERINGSF=${ORDERINGSF}" ··· 82 86 "OPTC=-O3" 83 87 "OPTL=-O3" 84 88 "SCALAP=-lscalapack" 85 - "allshared" 89 + "${if static then "all" else "allshared"}" 86 90 ]; 87 91 88 92 installPhase = ··· 98 102 ln -s $out/include/mumps_seq/mpi.h $out/include/mumps_mpi.h 99 103 ''; 100 104 101 - nativeBuildInputs = [ 102 - gfortran 103 - ] ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames; 105 + nativeBuildInputs = 106 + [ 107 + gfortran 108 + ] 109 + ++ lib.optional mpiSupport mpi 110 + ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames; 104 111 105 112 # Parmetis should be placed before scotch to avoid conflict of header file "parmetis.h" 106 113 buildInputs = ··· 114 121 ]; 115 122 116 123 doInstallCheck = true; 124 + 117 125 nativeInstallCheckInputs = lib.optional mpiSupport mpiCheckPhaseHook; 126 + 118 127 installCheckPhase = '' 119 128 runHook preInstallCheck 129 + 120 130 ${lib.optionalString stdenv.hostPlatform.isDarwin "export DYLD_LIBRARY_PATH=$out/lib\n"} 121 131 ${lib.optionalString mpiSupport "export MPIRUN='mpirun -n 2'\n"} 122 132 cd examples ··· 131 141 $MPIRUN ./csimpletest_save_restore <input_simpletest_cmplx 132 142 $MPIRUN ./zsimpletest_save_restore <input_simpletest_cmplx 133 143 $MPIRUN ./c_example_save_restore 144 + 134 145 runHook postInstallCheck 135 146 ''; 136 147 ··· 140 151 141 152 meta = { 142 153 description = "MUltifrontal Massively Parallel sparse direct Solver"; 143 - homepage = "http://mumps-solver.org/"; 154 + homepage = "https://mumps-solver.org/"; 155 + changelog = "https://mumps-solver.org/index.php?page=dwnld#cl"; 144 156 license = lib.licenses.cecill-c; 145 157 maintainers = with lib.maintainers; [ 146 158 nim65s
+2 -2
pkgs/by-name/mu/museeks/package.nix
··· 16 16 17 17 stdenv.mkDerivation (finalAttrs: { 18 18 pname = "museeks"; 19 - version = "0.20.9"; 19 + version = "0.21.1"; 20 20 21 21 src = fetchurl { 22 22 url = "https://github.com/martpie/museeks/releases/download/${finalAttrs.version}/Museeks_${finalAttrs.version}_amd64.deb"; 23 - hash = "sha256-7jRgMpfQTJr3yW3YAPTnPSvtrqumScN3Tr7YXQX3Fi8="; 23 + hash = "sha256-4UHMh8rZUDGNlz59EMGTgV/jfd6K9RyXVpMr2sinPUQ="; 24 24 }; 25 25 26 26 nativeBuildInputs = [
+1 -1
pkgs/by-name/ni/nix-template/package.nix
··· 17 17 src = fetchFromGitHub { 18 18 name = "${pname}-${version}-src"; 19 19 owner = "jonringer"; 20 - repo = pname; 20 + repo = "nix-template"; 21 21 rev = "v${version}"; 22 22 sha256 = "sha256-42u5FmTIKHpfQ2zZQXIrFkAN2/XvU0wWnCRrQkQzcNI="; 23 23 };
+1 -1
pkgs/by-name/nv/nvidia-container-toolkit/nvidia-docker.nix
··· 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "NVIDIA"; 12 - repo = pname; 12 + repo = "nvidia-docker"; 13 13 rev = "v${version}"; 14 14 hash = "sha256-kHzwFnN/DbpOe1sYDJkrRMxXE1bMiyuCPsbPGq07M9g="; 15 15 };
+19
pkgs/by-name/oa/oama/package.nix
··· 2 2 haskell, 3 3 lib, 4 4 stdenv, 5 + coreutils, 6 + libsecret, 7 + gnupg, 8 + makeBinaryWrapper, 9 + withLibsecret ? true, # default oama config uses libsecret 10 + withGpg ? false, 5 11 }: 6 12 let 7 13 inherit (haskell.lib.compose) overrideCabal justStaticExecutables; ··· 12 18 maintainers = with lib.maintainers; [ aidalgol ]; 13 19 14 20 passthru.updateScript = ./update.sh; 21 + 22 + buildDepends = [ 23 + makeBinaryWrapper 24 + ]; 25 + 26 + postInstall = '' 27 + wrapProgram $out/bin/oama \ 28 + --prefix PATH : ${ 29 + lib.makeBinPath ( 30 + [ coreutils ] ++ lib.optional withLibsecret libsecret ++ lib.optional withGpg gnupg 31 + ) 32 + } 33 + ''; 15 34 }; 16 35 17 36 raw-pkg = haskell.packages.ghc912.callPackage ./generated-package.nix { };
+1 -1
pkgs/by-name/oc/ocf-resource-agents/package.nix
··· 29 29 30 30 src = fetchFromGitHub { 31 31 owner = "ClusterLabs"; 32 - repo = pname; 32 + repo = "resource-agents"; 33 33 rev = "v${version}"; 34 34 sha256 = "0haryi3yrszdfpqnkfnppxj1yiy6ipah6m80snvayc7v0ss0wnir"; 35 35 };
+1 -1
pkgs/by-name/os/os-prober/package.nix
··· 21 21 src = fetchFromGitLab { 22 22 domain = "salsa.debian.org"; 23 23 owner = "installer-team"; 24 - repo = pname; 24 + repo = "os-prober"; 25 25 rev = version; 26 26 sha256 = "sha256-cTufM82YE1L7d3kIOtncICInBPEw4o4NzQXB4uDrMKI="; 27 27 };
+1 -1
pkgs/by-name/os/osx-cpu-temp/package.nix
··· 11 11 src = fetchFromGitHub { 12 12 name = "osx-cpu-temp-source"; 13 13 owner = "lavoiesl"; 14 - repo = pname; 14 + repo = "osx-cpu-temp"; 15 15 rev = "6ec951be449badcb7fb84676bbc2c521e600e844"; 16 16 sha256 = "1nlibgr55bpln6jbdf8vqcp0fj9zv9343vflb7s9w0yh33fsbg9d"; 17 17 };
+1 -1
pkgs/by-name/pa/pam-reattach/package.nix
··· 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "fabianishere"; 15 - repo = pname; 15 + repo = "pam_reattach"; 16 16 rev = "v${version}"; 17 17 sha256 = "1k77kxqszdwgrb50w7algj22pb4fy5b9649cjb08zq9fqrzxcbz7"; 18 18 };
+1 -1
pkgs/by-name/pa/patroni/package.nix
··· 44 44 flake8 45 45 mock 46 46 pytestCheckHook 47 - pytest-cov 47 + pytest-cov-stub 48 48 requests 49 49 versionCheckHook 50 50 writableTmpDirAsHomeHook
+3 -3
pkgs/by-name/ph/photoprism/package.nix
··· 21 21 pname = "photoprism"; 22 22 23 23 src = fetchFromGitHub { 24 - owner = pname; 25 - repo = pname; 24 + owner = "photoprism"; 25 + repo = "photoprism"; 26 26 rev = version; 27 27 hash = "sha256-tJA1Q8kcX4UYDCV+rmHyd5gfEU8WkoaqNfx1/0Iy3l8="; 28 28 }; ··· 54 54 hash = "sha256-zy/HcmgaHOY7FfJUY6I/yjjsMPHR2Ote9ppwqemBlfg="; 55 55 }; 56 56 57 - assets_path = "$out/share/${pname}"; 57 + assets_path = "$out/share/photoprism"; 58 58 in 59 59 stdenv.mkDerivation (finalAttrs: { 60 60 inherit pname version;
+1 -1
pkgs/by-name/po/poetry/plugins/poetry-plugin-export.nix
··· 17 17 18 18 src = fetchFromGitHub { 19 19 owner = "python-poetry"; 20 - repo = pname; 20 + repo = "poetry-plugin-export"; 21 21 tag = version; 22 22 hash = "sha256-AP3/njzbLEi2s4pOUSLLLzqNprvxwLe9LSY7qh08EWc="; 23 23 };
+1 -1
pkgs/by-name/po/poetry/plugins/poetry-plugin-up.nix
··· 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "MousaZeidBaker"; 18 - repo = pname; 18 + repo = "poetry-plugin-up"; 19 19 tag = "v${version}"; 20 20 hash = "sha256-gVhx8Vhk+yT/QjcEme8w0F+6BBpnEZOqzCkUJgM9eck="; 21 21 };
+1 -1
pkgs/by-name/pu/pulseaudio-ctl/package.nix
··· 29 29 30 30 src = fetchFromGitHub { 31 31 owner = "graysky2"; 32 - repo = pname; 32 + repo = "pulseaudio-ctl"; 33 33 rev = "v${version}"; 34 34 sha256 = "sha256-ZB1jrr31PF7+vNB+Xo5CATJmYbuDAPwewpDxCVnAowY="; 35 35 };
+1 -1
pkgs/by-name/pu/pulseaudio-module-xrdp/package.nix
··· 15 15 16 16 src = fetchFromGitHub { 17 17 owner = "neutrinolabs"; 18 - repo = pname; 18 + repo = "pulseaudio-module-xrdp"; 19 19 rev = "v${version}"; 20 20 hash = "sha256-R1ZPifEjlueTJma6a0UiGdiNwTSa5+HnW4w9qGrauxE="; 21 21 };
+3 -3
pkgs/by-name/qo/qogir-theme/package.nix
··· 36 36 37 37 src = fetchFromGitHub { 38 38 owner = "vinceliuice"; 39 - repo = pname; 39 + repo = "qogir-theme"; 40 40 rev = version; 41 41 sha256 = "Q9DWBzaLZjwXsYRa/oDIrccypO3TCbSRXTkbXWRmm70="; 42 42 }; ··· 72 72 ${lib.optionalString (tweaks != [ ]) "--tweaks " + builtins.toString tweaks} \ 73 73 --dest $out/share/themes 74 74 75 - mkdir -p $out/share/doc/${pname} 76 - cp -a src/firefox $out/share/doc/${pname} 75 + mkdir -p $out/share/doc/qogir-theme 76 + cp -a src/firefox $out/share/doc/qogir-theme 77 77 78 78 rm $out/share/themes/*/{AUTHORS,COPYING} 79 79
-45
pkgs/by-name/qu/quicksynergy/package.nix
··· 1 - { 2 - lib, 3 - stdenv, 4 - fetchurl, 5 - pkg-config, 6 - gtk2, 7 - synergy, 8 - }: 9 - 10 - stdenv.mkDerivation rec { 11 - pname = "quicksynergy"; 12 - version = "0.9.0"; 13 - src = fetchurl { 14 - url = "mirror://sourceforge/project/quicksynergy/Linux/${version}/quicksynergy-${version}.tar.gz"; 15 - sha256 = "1pi8503bg8q1psw50y6d780i33nnvfjqiy9vnr3v52pdcfip8pix"; 16 - }; 17 - 18 - nativeBuildInputs = [ pkg-config ]; 19 - buildInputs = [ 20 - gtk2 21 - synergy 22 - ]; 23 - preBuild = " 24 - sed -i 's@/usr/bin@${synergy.out}/bin@' src/synergy_config.c 25 - "; 26 - meta = { 27 - description = "GUI application to share mouse and keyboard between computers"; 28 - longDescription = " 29 - QuickSynergy is a graphical interface (GUI) for easily configuring 30 - Synergy2, an application that allows the user to share his mouse and 31 - keyboard between two or more computers. 32 - 33 - Without the need for any external hardware, Synergy2 uses the TCP-IP 34 - protocol to share the resources, even between machines with different 35 - operating systems, such as Mac OS, Linux and Windows. 36 - 37 - Remember to open port 24800 (used by synergys program) if you want to 38 - host mouse and keyboard."; 39 - homepage = "https://sourceforge.net/projects/quicksynergy/"; 40 - license = lib.licenses.gpl2; 41 - maintainers = [ lib.maintainers.spinus ]; 42 - platforms = lib.platforms.linux; 43 - mainProgram = "quicksynergy"; 44 - }; 45 - }
+1 -1
pkgs/by-name/qu/quickwit/package.nix
··· 24 24 25 25 src = fetchFromGitHub { 26 26 owner = "quickwit-oss"; 27 - repo = pname; 27 + repo = "quickwit"; 28 28 rev = "v${version}"; 29 29 hash = "sha256-OrCO0mCFmhYBdpr4Gps56KJJ37uuJpV6ZJHWspOScyw="; 30 30 };
+3 -3
pkgs/by-name/re/readest/package.nix
··· 20 20 21 21 rustPlatform.buildRustPackage (finalAttrs: { 22 22 pname = "readest"; 23 - version = "0.9.57"; 23 + version = "0.9.58"; 24 24 25 25 src = fetchFromGitHub { 26 26 owner = "readest"; 27 27 repo = "readest"; 28 28 tag = "v${finalAttrs.version}"; 29 - hash = "sha256-w4DhxjhejJ2Nh/3+/bEBJx3nRyAhr5lyzoPb/AFbVPc="; 29 + hash = "sha256-OXKYPcAugMW55TTID2iHeBPIdRiRzLJQ5pG4/kTIn/4="; 30 30 fetchSubmodules = true; 31 31 }; 32 32 ··· 39 39 40 40 pnpmDeps = pnpm_9.fetchDeps { 41 41 inherit (finalAttrs) pname version src; 42 - hash = "sha256-ejA0bUAB1CuPZMPA1a4XlbHR6CTrvKf/rPHolYjpcW8="; 42 + hash = "sha256-Tt1Gm/tlxceQnTd6eStgwboHCDetXdUNtdDShHmB5+M="; 43 43 }; 44 44 45 45 pnpmRoot = "../..";
+3 -3
pkgs/by-name/re/repomix/package.nix
··· 8 8 9 9 buildNpmPackage rec { 10 10 pname = "repomix"; 11 - version = "0.3.8"; 11 + version = "0.3.9"; 12 12 13 13 src = fetchFromGitHub { 14 14 owner = "yamadashy"; 15 15 repo = "repomix"; 16 16 tag = "v${version}"; 17 - hash = "sha256-yvzZQXBJFroSSb4j+ifzM3Qe/iIFVFDCqyfaJTH/65Q="; 17 + hash = "sha256-sM8xXBeXo3wv3Cm7jAC7t1JgUoi5JRzg8EaHnwrecjo="; 18 18 }; 19 19 20 - npmDepsHash = "sha256-VWW9JkLlk3OoMQ7yneTsUdyepe4bDezoM1t2RxF4zVY="; 20 + npmDepsHash = "sha256-ZD7AD7U+3CNx3/sQrid8xK6+t5A92xgJJgf7mnR8PRg="; 21 21 22 22 nativeInstallCheckInputs = [ versionCheckHook ]; 23 23 doInstallCheck = true;
+1 -1
pkgs/by-name/re/reversal-icon-theme/package.nix
··· 37 37 38 38 src = fetchFromGitHub { 39 39 owner = "yeyushengfan258"; 40 - repo = pname; 40 + repo = "reversal-icon-theme"; 41 41 rev = "bdae2ea365731b25a869fc2c8c6a1fb849eaf5b2"; 42 42 hash = "sha256-Cd+1ggyS+Y2Sk8w5zifc4IFOwbFrbjL6S6awES/W0EE="; 43 43 };
+2 -2
pkgs/by-name/re/rexi/package.nix
··· 27 27 ]; 28 28 29 29 nativeCheckInputs = with python3Packages; [ 30 - pytest 30 + pytestCheckHook 31 31 pytest-asyncio 32 - pytest-cov 32 + pytest-cov-stub 33 33 ]; 34 34 35 35 pythonRelaxDeps = [
+68
pkgs/by-name/s3/s3ql/0001-setup.py-remove-self-reference.patch
··· 1 + From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 2 + From: Philip Taron <philip.taron@gmail.com> 3 + Date: Wed, 11 Jun 2025 10:41:42 -0700 4 + Subject: [PATCH] setup.py: remove self-reference and DEVELOPER_MODE 5 + 6 + Signed-off-by: Philip Taron <philip.taron@gmail.com> 7 + --- 8 + setup.py | 33 ++------------------------------- 9 + 1 file changed, 2 insertions(+), 31 deletions(-) 10 + 11 + diff --git a/setup.py b/setup.py 12 + index 00f6e9b120525d63fbc17949b2804785f1286118..b5582bcc366148d9c0a442abade65a6127ef2d3c 100755 13 + --- a/setup.py 14 + +++ b/setup.py 15 + @@ -26,15 +26,7 @@ from setuptools.command.test import test as TestCommand 16 + 17 + faulthandler.enable() 18 + 19 + -basedir = os.path.abspath(os.path.dirname(sys.argv[0])) 20 + -DEVELOPER_MODE = os.path.exists(os.path.join(basedir, 'MANIFEST.in')) 21 + -if DEVELOPER_MODE: 22 + - print('MANIFEST.in exists, running in developer mode') 23 + - 24 + -# Add S3QL sources 25 + -sys.path.insert(0, os.path.join(basedir, 'src')) 26 + -sys.path.insert(0, os.path.join(basedir, 'util')) 27 + -import s3ql 28 + +basedir = "/build/source" 29 + 30 + 31 + class pytest(TestCommand): 32 + @@ -52,27 +44,6 @@ def main(): 33 + 34 + compile_args = ['-Wall', '-Wextra', '-Wconversion', '-Wsign-compare'] 35 + 36 + - # Enable all fatal warnings only when compiling from Mercurial tip. 37 + - # (otherwise we break forward compatibility because compilation with newer 38 + - # compiler may fail if additional warnings are added) 39 + - if DEVELOPER_MODE: 40 + - if os.environ.get('CI') != 'true': 41 + - compile_args.append('-Werror') 42 + - 43 + - # Value-changing conversions should always be explicit. 44 + - compile_args.append('-Werror=conversion') 45 + - 46 + - # Note that (i > -1) is false if i is unsigned (-1 will be converted to 47 + - # a large positive value). We certainly don't want to do this by 48 + - # accident. 49 + - compile_args.append('-Werror=sign-compare') 50 + - 51 + - # These warnings have always been harmless, and have always been due to 52 + - # issues in Cython code rather than S3QL. Cython itself warns if there 53 + - # are unused variables in .pyx code. 54 + - compile_args.append('-Wno-unused-parameter') 55 + - compile_args.append('-Wno-unused-function') 56 + - 57 + required_pkgs = [ 58 + 'apsw >= 3.42.0', # https://github.com/rogerbinns/apsw/issues/459 59 + 'cryptography', 60 + @@ -88,7 +59,7 @@ def main(): 61 + setuptools.setup( 62 + name='s3ql', 63 + zip_safe=False, 64 + - version=s3ql.VERSION, 65 + + version="@version@", 66 + description='a full-featured file system for online data storage', 67 + long_description=long_desc, 68 + author='Nikolaus Rath',
+40 -12
pkgs/by-name/s3/s3ql/package.nix
··· 2 2 lib, 3 3 fetchFromGitHub, 4 4 python3, 5 + replaceVars, 5 6 sqlite, 6 7 which, 7 8 nix-update-script, 9 + writableTmpDirAsHomeHook, 8 10 }: 9 11 10 - python3.pkgs.buildPythonApplication rec { 12 + let 13 + inherit (python3.pkgs) 14 + buildPythonApplication 15 + setuptools 16 + cython 17 + apsw 18 + cryptography 19 + defusedxml 20 + google-auth 21 + google-auth-oauthlib 22 + pyfuse3 23 + requests 24 + trio 25 + pytest-trio 26 + pytestCheckHook 27 + python 28 + ; 29 + in 30 + 31 + buildPythonApplication rec { 11 32 pname = "s3ql"; 12 - version = "5.2.3"; 33 + version = "5.3.0"; 13 34 pyproject = true; 14 35 15 36 src = fetchFromGitHub { 16 37 owner = "s3ql"; 17 38 repo = "s3ql"; 18 39 tag = "s3ql-${version}"; 19 - hash = "sha256-hNqKLpJd0vj96Jx4YnqYsPLq/iTbvmtvjyLrYozaxpk="; 40 + hash = "sha256-SVB+VB508hGXvdHZo5lt09yssjjwHS1tsDU8M4j+swc="; 20 41 }; 21 42 22 - build-system = with python3.pkgs; [ setuptools ]; 43 + patches = [ 44 + (replaceVars ./0001-setup.py-remove-self-reference.patch { inherit version; }) 45 + ]; 46 + 47 + build-system = [ setuptools ]; 23 48 24 - nativeBuildInputs = [ which ] ++ (with python3.pkgs; [ cython ]); 49 + nativeBuildInputs = [ 50 + which 51 + cython 52 + ]; 25 53 26 - propagatedBuildInputs = with python3.pkgs; [ 54 + dependencies = [ 27 55 apsw 28 56 cryptography 29 57 defusedxml ··· 35 63 trio 36 64 ]; 37 65 38 - nativeCheckInputs = with python3.pkgs; [ 66 + nativeCheckInputs = [ 39 67 pytest-trio 40 68 pytestCheckHook 69 + writableTmpDirAsHomeHook 41 70 ]; 42 71 43 72 preBuild = '' 44 - ${python3.pkgs.python.pythonOnBuildForHost.interpreter} ./setup.py build_cython build_ext --inplace 45 - ''; 46 - 47 - preCheck = '' 48 - export HOME=$(mktemp -d) 73 + ${python.pythonOnBuildForHost.interpreter} ./setup.py build_cython build_ext --inplace 49 74 ''; 50 75 51 76 pythonImportsCheck = [ "s3ql" ]; 52 77 53 78 enabledTestPaths = [ "tests/" ]; 79 + 80 + # SSL EOF error doesn't match connection reset error. Seems fine. 81 + disabledTests = [ "test_aborted_write2" ]; 54 82 55 83 passthru.updateScript = nix-update-script { 56 84 extraArgs = [
+2 -2
pkgs/by-name/sc/scala-next/package.nix
··· 1 1 { scala, fetchurl }: 2 2 3 3 scala.bare.overrideAttrs (oldAttrs: { 4 - version = "3.7.0"; 4 + version = "3.7.1"; 5 5 pname = "scala-next"; 6 6 src = fetchurl { 7 7 inherit (oldAttrs.src) url; 8 - hash = "sha256-T2zGqv2XSjdA3t0FaJvldcthgpgRrMTyiRznlgQOmBE="; 8 + hash = "sha256-XIeG4T7TXPVAEMteD0BSWrAv7V1f7xrkLpbdpHFuWAw="; 9 9 }; 10 10 })
+7 -7
pkgs/by-name/sc/scenic-view/package.nix
··· 21 21 22 22 src = fetchFromGitHub { 23 23 owner = "JonathanGiles"; 24 - repo = pname; 24 + repo = "scenic-view"; 25 25 rev = version; 26 26 sha256 = "1idfh9hxqs4fchr6gvhblhvjqk4mpl4rnpi84vn1l3yb700z7dwy"; 27 27 }; ··· 29 29 gradle = gradle_7; 30 30 31 31 desktopItem = makeDesktopItem { 32 - name = pname; 33 - desktopName = pname; 34 - exec = pname; 32 + name = "scenic-view"; 33 + desktopName = "scenic-view"; 34 + exec = "scenic-view"; 35 35 comment = "JavaFx application to visualize and modify the scenegraph of running JavaFx applications."; 36 36 mimeTypes = [ 37 37 "application/java" ··· 61 61 installPhase = '' 62 62 runHook preInstall 63 63 64 - mkdir -p $out/bin $out/share/${pname} 65 - cp build/libs/scenicview.jar $out/share/${pname}/${pname}.jar 66 - makeWrapper ${jdk}/bin/java $out/bin/${pname} --add-flags "-jar $out/share/${pname}/${pname}.jar" 64 + mkdir -p $out/bin $out/share/scenic-view 65 + cp build/libs/scenicview.jar $out/share/scenic-view/scenic-view.jar 66 + makeWrapper ${jdk}/bin/java $out/bin/scenic-view --add-flags "-jar $out/share/scenic-view/scenic-view.jar" 67 67 68 68 runHook postInstall 69 69 '';
+3 -3
pkgs/by-name/sd/SDL_image/package.nix
··· 15 15 16 16 stdenv.mkDerivation (finalAttrs: { 17 17 pname = "SDL_image"; 18 - version = "1.2.12-unstable-2025-04-27"; 18 + version = "1.2.12-unstable-2025-06-15"; 19 19 20 20 src = fetchFromGitHub { 21 21 owner = "libsdl-org"; 22 22 repo = "SDL_image"; 23 - rev = "a5eac02dacd8a8940ffccd1b8d0783c0b5f8ec7d"; 24 - hash = "sha256-vrV12fYGSh/vtCktsUVNvcRCn5lZ2tyBYwqhLPgNdhw="; 23 + rev = "bb266d29e19493fa48bda9bbc56c26363099372f"; 24 + hash = "sha256-I8TqZX3249/bcZtfwrJd545E5h9d9HmRy8GGDH9S+kU="; 25 25 }; 26 26 27 27 configureFlags = [
+1 -1
pkgs/by-name/se/servarr-ffmpeg/package.nix
··· 104 104 doCheck = false; 105 105 106 106 meta = { 107 - inherit (old.meta) license; 107 + inherit (old.meta) license pkgConfigModules; 108 108 mainProgram = "ffprobe"; 109 109 description = "${old.meta.description} (Servarr fork)"; 110 110 homepage = "https://github.com/Servarr/FFmpeg";
+1 -1
pkgs/by-name/si/sierra-gtk-theme/package.nix
··· 37 37 38 38 src = fetchFromGitHub { 39 39 owner = "vinceliuice"; 40 - repo = pname; 40 + repo = "sierra-gtk-theme"; 41 41 rev = "05899001c4fc2fec87c4d222cb3997c414e0affd"; 42 42 sha256 = "174l5mryc34ma1r42pk6572c6i9hmzr9vj1a6w06nqz5qcfm1hds"; 43 43 };
+1 -1
pkgs/by-name/si/sing-geoip/package.nix
··· 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "SagerNet"; 16 - repo = pname; 16 + repo = "sing-geoip"; 17 17 rev = "refs/tags/${version}"; 18 18 hash = "sha256-nIrbiECK25GyuPEFqMvPdZUShC2JC1NI60Y10SsoWyY="; 19 19 };
+13
pkgs/by-name/si/singular/package.nix
··· 1 1 { 2 2 stdenv, 3 3 fetchFromGitHub, 4 + fetchpatch, 4 5 gmp, 5 6 bison, 6 7 perl, ··· 69 70 70 71 patchShebangs . 71 72 ''; 73 + 74 + # Use fq_nmod_mat_entry instead of row pointer (removed in flint 3.3.0) 75 + patches = [ 76 + (fetchpatch { 77 + url = "https://github.com/Singular/Singular/commit/05f5116e13c8a4f5f820c78c35944dd6d197d442.patch"; 78 + hash = "sha256-4l7JaCCFzE+xINU+E92eBN5CJKIdtQHly4Ed3ZwbKTA="; 79 + }) 80 + (fetchpatch { 81 + url = "https://github.com/Singular/Singular/commit/595d7167e6e019d45d9a4f1e18ae741df1f3c41d.patch"; 82 + hash = "sha256-hpTZy/eAiHAaleasWPAenxM35aqeNAZ//o6OqqdGOJ4="; 83 + }) 84 + ]; 72 85 73 86 # For reference (last checked on commit 75f460d): 74 87 # https://github.com/Singular/Singular/blob/spielwiese/doc/Building-Singular-from-source.md
+1 -1
pkgs/by-name/so/solaar/package.nix
··· 58 58 nativeCheckInputs = with python3Packages; [ 59 59 pytestCheckHook 60 60 pytest-mock 61 - pytest-cov 61 + pytest-cov-stub 62 62 ]; 63 63 64 64 # the -cli symlink is just to maintain compabilility with older versions where
+2 -2
pkgs/by-name/so/soupault/package.nix
··· 12 12 13 13 ocamlPackages.buildDunePackage rec { 14 14 pname = "soupault"; 15 - version = "5.0.0"; 15 + version = "5.1.0"; 16 16 17 17 minimalOCamlVersion = "4.13"; 18 18 ··· 21 21 "https://github.com/PataphysicalSociety/soupault/archive/${version}.tar.gz" 22 22 "https://codeberg.org/PataphysicalSociety/soupault/archive/${version}.tar.gz" 23 23 ]; 24 - hash = "sha256-patZn5z+ZT3dONdUojSvFgaVOmG1IpVGdehCUh2uRT8="; 24 + hash = "sha256-yAkJgNwF763b2DFGA+4Ve+jafFxZbFDm3QxisDD6gYo="; 25 25 }; 26 26 27 27 nativeBuildInputs =
+1 -1
pkgs/by-name/so/source-sans-pro/package.nix
··· 30 30 31 31 meta = with lib; { 32 32 homepage = "https://adobe-fonts.github.io/source-sans/"; 33 - description = "Sans serif font family for user interface environments"; 33 + description = "Sans serif font family for user interface environments (version of Source Sans before being renamed)"; 34 34 license = licenses.ofl; 35 35 platforms = platforms.all; 36 36 maintainers = with maintainers; [ ttuegel ];
+1 -1
pkgs/by-name/sp/spacebar/package.nix
··· 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "cmacrae"; 14 - repo = pname; 14 + repo = "spacebar"; 15 15 rev = "v${version}"; 16 16 sha256 = "sha256-4LiG43kPZtsm7SQ/28RaGMpYsDshCaGvc1mouPG3jFM="; 17 17 };
+3 -1
pkgs/by-name/sw/switch-to-configuration-ng/README.md
··· 1 1 # switch-to-configuration-ng 2 2 3 - This program is a reimplementation of [switch-to-configuration](/nixos/modules/system/activation/switch-to-configuration.pl) in Rust. The goal is to be compatible in as many ways as possible to the original implementation, at least as long as the original is still in nixpkgs. Any behavioral modifications to this program should also be implemented in the original, and vice versa. 3 + This program implements the switching/updating of NixOS systems. It starts with the exising running configuration at `/run/current-system` and handles the migration to a new configuration, built from a NixOS configuration's `config.system.build.toplevel` derivation. 4 + 5 + For more information on what happens during a switch, see [what-happens-during-a-system-switch](../../../../nixos/doc/manual/development/what-happens-during-a-system-switch.chapter.md). 4 6 5 7 ## Build in a devshell 6 8
+2 -2
pkgs/by-name/ta/tauno-monitor/package.nix
··· 13 13 }: 14 14 python3Packages.buildPythonApplication rec { 15 15 pname = "tauno-monitor"; 16 - version = "0.1.28"; 16 + version = "0.1.29"; 17 17 pyproject = false; 18 18 19 19 src = fetchFromGitHub { 20 20 owner = "taunoe"; 21 21 repo = "tauno-monitor"; 22 22 tag = "v${version}"; 23 - hash = "sha256-DxWB69bkDAe35ci/e18Dji0EpZvbz7Y5y+32ZchV/m8="; 23 + hash = "sha256-U7vp0cPIRQeeuLGazoCQAnVQaKxDznC65bE31SwYU3A="; 24 24 }; 25 25 26 26 nativeBuildInputs = [
+1 -1
pkgs/by-name/tr/tracee/package.nix
··· 24 24 # src = /home/tim/repos/tracee; 25 25 src = fetchFromGitHub { 26 26 owner = "aquasecurity"; 27 - repo = pname; 27 + repo = "tracee"; 28 28 # project has branches and tags of the same name 29 29 tag = "v${version}"; 30 30 hash = "sha256-9uP0yoW+xRYv7wHuCfUMU8B2oTQjiSW5p/Ty76ni2wo=";
+77
pkgs/by-name/tu/turntable/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitea, 5 + meson, 6 + ninja, 7 + pkg-config, 8 + vala, 9 + wrapGAppsHook4, 10 + desktop-file-utils, 11 + libadwaita, 12 + libsoup_3, 13 + json-glib, 14 + libsecret, 15 + glib-networking, 16 + 17 + # Per the upstream request. Key owned by Aleksana 18 + lastfmKey ? "b5027c5178ca2abfcc31bd04397c3c0e", 19 + lastfmSecret ? "8d375bdee925a2a35f241c04272bc862", 20 + }: 21 + 22 + stdenv.mkDerivation (finalAttrs: { 23 + pname = "turntable"; 24 + version = "0.3.3"; 25 + 26 + src = fetchFromGitea { 27 + domain = "codeberg.org"; 28 + owner = "GeopJr"; 29 + repo = "Turntable"; 30 + tag = "v${finalAttrs.version}"; 31 + hash = "sha256-fBduW49eNOEzRVBb72zcB5arTjTiRUy8jE3sSMjPITE="; 32 + }; 33 + 34 + nativeBuildInputs = [ 35 + meson 36 + ninja 37 + pkg-config 38 + vala 39 + wrapGAppsHook4 40 + desktop-file-utils 41 + ]; 42 + 43 + buildInputs = [ 44 + libadwaita 45 + libsoup_3 46 + json-glib 47 + libsecret 48 + glib-networking 49 + ]; 50 + 51 + mesonFlags = [ 52 + (lib.mesonOption "lastfm_key" lastfmKey) 53 + (lib.mesonOption "lastfm_secret" lastfmSecret) 54 + ]; 55 + 56 + strictDeps = true; 57 + 58 + meta = { 59 + description = "Scrobbles your music to multiple services with playback controls for MPRIS players"; 60 + longDescription = '' 61 + Keep track of your listening habits by scrobbling them 62 + to last.fm, ListenBrainz, Libre.fm and Maloja at the 63 + same time using your favorite music app's, favorite 64 + music app! Turntable comes with a highly customizable 65 + and sleek design that displays information about the 66 + currently playing song and allows you to control your 67 + music player, allowlist it for scrobbling and manage 68 + your scrobbling accounts. All MPRIS-enabled apps are 69 + supported. 70 + ''; 71 + homepage = "https://turntable.geopjr.dev"; 72 + license = lib.licenses.gpl3Only; 73 + maintainers = with lib.maintainers; [ aleksana ]; 74 + mainProgram = "dev.geopjr.Turntable"; 75 + platforms = lib.platforms.linux; 76 + }; 77 + })
+1 -1
pkgs/by-name/un/unblob/package.nix
··· 116 116 with python3.pkgs; 117 117 [ 118 118 pytestCheckHook 119 - pytest-cov 119 + pytest-cov # cannot use stub 120 120 versionCheckHook 121 121 ] 122 122 ++ runtimeDeps;
+17 -17
pkgs/by-name/up/upbound/sources-main.json
··· 8 8 "fetchurlAttrSet": { 9 9 "docker-credential-up": { 10 10 "aarch64-darwin": { 11 - "hash": "sha256-8VKSDsmuYu/GaKo4JybWEnd+gbW9ZSjEoNlZ7SEans0=", 12 - "url": "https://cli.upbound.io/main/v0.39.0-8.gfb176095/bundle/docker-credential-up/darwin_arm64.tar.gz" 11 + "hash": "sha256-EPJXlxa4Vx7jzdX5/ekIer/EKTAFuqWBcAp4mYyS+JA=", 12 + "url": "https://cli.upbound.io/main/v0.39.0-43.g3cca6045/bundle/docker-credential-up/darwin_arm64.tar.gz" 13 13 }, 14 14 "aarch64-linux": { 15 - "hash": "sha256-WPllvTQJr5S6g2h9fe3qXKL/CH7XzADbNRoy+6rex6A=", 16 - "url": "https://cli.upbound.io/main/v0.39.0-8.gfb176095/bundle/docker-credential-up/linux_arm64.tar.gz" 15 + "hash": "sha256-cM8F+Qyg34ypdIusI2jFOzoxM3B+tLRyvmqdeUSpz0c=", 16 + "url": "https://cli.upbound.io/main/v0.39.0-43.g3cca6045/bundle/docker-credential-up/linux_arm64.tar.gz" 17 17 }, 18 18 "x86_64-darwin": { 19 - "hash": "sha256-bdKjFgJuKbFQDX1dgz6y2Ue6cFnu4Dec+I7FX+fo/pA=", 20 - "url": "https://cli.upbound.io/main/v0.39.0-8.gfb176095/bundle/docker-credential-up/darwin_amd64.tar.gz" 19 + "hash": "sha256-jvBe0GEDNMj3HlbMBFcwS1CA2y3QnDkYgv943GW0tLs=", 20 + "url": "https://cli.upbound.io/main/v0.39.0-43.g3cca6045/bundle/docker-credential-up/darwin_amd64.tar.gz" 21 21 }, 22 22 "x86_64-linux": { 23 - "hash": "sha256-ieP9uiRcgcYqYClB7vGdHF1IpjH61dXD8bqpPPy2Uik=", 24 - "url": "https://cli.upbound.io/main/v0.39.0-8.gfb176095/bundle/docker-credential-up/linux_amd64.tar.gz" 23 + "hash": "sha256-c/tjuO3j+pYFlyGRAeA3jJLit4sZqreEzMa0LRxnTv0=", 24 + "url": "https://cli.upbound.io/main/v0.39.0-43.g3cca6045/bundle/docker-credential-up/linux_amd64.tar.gz" 25 25 } 26 26 }, 27 27 "up": { 28 28 "aarch64-darwin": { 29 - "hash": "sha256-YYsgNpNVnTp2bPIp9DD1l0YwHcEpMknu7RrIUQ5scCo=", 30 - "url": "https://cli.upbound.io/main/v0.39.0-8.gfb176095/bundle/up/darwin_arm64.tar.gz" 29 + "hash": "sha256-ecNGveGSxYsKFGkAqWNkpr8RKquL1k+/8LsZBNEgWq8=", 30 + "url": "https://cli.upbound.io/main/v0.39.0-43.g3cca6045/bundle/up/darwin_arm64.tar.gz" 31 31 }, 32 32 "aarch64-linux": { 33 - "hash": "sha256-wone2UA+Z0wCISQ/PsfYdQqNkX5txVVEyx4a8JnLHXo=", 34 - "url": "https://cli.upbound.io/main/v0.39.0-8.gfb176095/bundle/up/linux_arm64.tar.gz" 33 + "hash": "sha256-70c9eE+SewPICRPzIdOmAj503xB/cL5ud2sQc4uJkJQ=", 34 + "url": "https://cli.upbound.io/main/v0.39.0-43.g3cca6045/bundle/up/linux_arm64.tar.gz" 35 35 }, 36 36 "x86_64-darwin": { 37 - "hash": "sha256-hxLZGWq94eHro4G9VJY+FLoz6AHuhm1quP/bhTzBXhE=", 38 - "url": "https://cli.upbound.io/main/v0.39.0-8.gfb176095/bundle/up/darwin_amd64.tar.gz" 37 + "hash": "sha256-DQZNsUYLM97zo7ua5xmxSqkxbC91qqLe49yI6X9ELbM=", 38 + "url": "https://cli.upbound.io/main/v0.39.0-43.g3cca6045/bundle/up/darwin_amd64.tar.gz" 39 39 }, 40 40 "x86_64-linux": { 41 - "hash": "sha256-GwAu6z6A4HUhc6vO6xiKZlITm5xiLas8zffuWnesji8=", 42 - "url": "https://cli.upbound.io/main/v0.39.0-8.gfb176095/bundle/up/linux_amd64.tar.gz" 41 + "hash": "sha256-WmsFhA5fteS3+12wPAGym0TZHax+v3zicbh+48aaW0Q=", 42 + "url": "https://cli.upbound.io/main/v0.39.0-43.g3cca6045/bundle/up/linux_amd64.tar.gz" 43 43 } 44 44 } 45 45 }, ··· 49 49 "x86_64-darwin", 50 50 "x86_64-linux" 51 51 ], 52 - "version": "0.39.0-8.gfb176095" 52 + "version": "0.39.0-43.g3cca6045" 53 53 }
+26 -1
pkgs/by-name/va/vassal/package.nix
··· 6 6 jre, 7 7 makeWrapper, 8 8 wrapGAppsHook3, 9 + makeDesktopItem, 10 + copyDesktopItems, 11 + versionCheckHook, 9 12 }: 10 13 11 14 stdenv.mkDerivation rec { ··· 24 27 nativeBuildInputs = [ 25 28 makeWrapper 26 29 wrapGAppsHook3 30 + copyDesktopItems 27 31 ]; 28 32 29 33 installPhase = '' ··· 39 43 --add-flags "-Duser.dir=$out -cp $out/share/vassal/Vengine.jar \ 40 44 VASSAL.launch.ModuleManager" 41 45 46 + install -Dm444 -t "$out/share/icons/hicolor/scalable/apps/" VASSAL.svg 47 + 42 48 runHook postInstall 43 49 ''; 44 50 51 + desktopItems = [ 52 + (makeDesktopItem { 53 + name = "VASSAL"; 54 + exec = "vassal"; 55 + icon = "VASSAL"; 56 + desktopName = "VASSAL"; 57 + comment = "The open-source boardgame engine"; 58 + categories = [ "Game" ]; 59 + startupWMClass = "VASSAL-launch-ModuleManager"; 60 + }) 61 + ]; 62 + 45 63 # Don't move doc to share/, VASSAL expects it to be in the root 46 64 forceShare = [ 47 65 "man" 48 66 "info" 49 67 ]; 50 68 69 + nativeInstallCheckInputs = [ 70 + versionCheckHook 71 + ]; 72 + doInstallCheck = true; 73 + versionCheckProgram = "${placeholder "out"}/bin/vassal"; 74 + versionCheckProgramArg = "--version"; 75 + 51 76 meta = with lib; { 52 77 description = "Free, open-source boardgame engine"; 53 78 homepage = "https://vassalengine.org/"; 54 79 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 55 80 license = licenses.lgpl21Only; 56 81 maintainers = with maintainers; [ tvestelind ]; 57 - platforms = platforms.unix; 82 + platforms = with lib.platforms; unix ++ windows; 58 83 mainProgram = "vassal"; 59 84 }; 60 85 }
+14 -9
pkgs/by-name/vi/vim-vint/package.nix
··· 1 1 { 2 2 lib, 3 3 python3Packages, 4 - fetchPypi, 4 + fetchFromGitHub, 5 5 }: 6 6 7 7 with python3Packages; ··· 10 10 pname = "vim-vint"; 11 11 version = "0.3.21"; 12 12 13 - src = fetchPypi { 14 - inherit pname version; 15 - sha256 = "15qdh8fby9xgfjxidcfv1xmrqqrxxapky7zmyn46qx1abhp9piax"; 13 + src = fetchFromGitHub { 14 + owner = "Vimjas"; 15 + repo = "vint"; 16 + tag = "v${version}"; 17 + hash = "sha256-A0yXDkB/b9kEEXSoLeqVdmdm4p2PYL2QHqbF4FgAn30="; 16 18 }; 17 19 18 20 # For python 3.5 > version > 2.7 , a nested dependency (pythonPackages.hypothesis) fails. 19 21 disabled = !pythonAtLeast "3.5"; 20 22 21 23 nativeCheckInputs = [ 22 - pytest 23 - pytest-cov 24 + pytestCheckHook 25 + pytest-cov-stub 24 26 ]; 25 27 propagatedBuildInputs = [ 26 28 ansicolor ··· 29 31 setuptools 30 32 ]; 31 33 32 - # Unpin test dependency versions. This is fixed in master but not yet released. 33 34 preCheck = '' 34 - sed -i 's/==.*//g' test-requirements.txt 35 - sed -i 's/mock == 1.0.1/mock/g' setup.py 35 + substituteInPlace \ 36 + test/acceptance/test_cli.py \ 37 + test/acceptance/test_cli_vital.py \ 38 + --replace-fail \ 39 + "cmd = ['bin/vint'" \ 40 + "cmd = ['$out/bin/vint'" 36 41 ''; 37 42 38 43 meta = with lib; {
+3 -3
pkgs/by-name/vu/vulnix/package.nix
··· 28 28 29 29 nativeCheckInputs = with python3Packages; [ 30 30 freezegun 31 - pytest 32 - pytest-cov 31 + pytestCheckHook 32 + pytest-cov-stub 33 33 ]; 34 34 35 35 propagatedBuildInputs = ··· 48 48 49 49 postBuild = "make -C doc"; 50 50 51 - checkPhase = "py.test src/vulnix"; 51 + pytestFlagsArray = [ "src/vulnix" ]; 52 52 53 53 postInstall = '' 54 54 install -D -t $doc/share/doc/vulnix README.rst CHANGES.rst
+4 -4
pkgs/by-name/we/wealthfolio/package.nix
··· 18 18 19 19 stdenv.mkDerivation (finalAttrs: { 20 20 pname = "wealthfolio"; 21 - version = "1.1.3"; 21 + version = "1.1.4"; 22 22 23 23 src = fetchFromGitHub { 24 24 owner = "afadil"; 25 25 repo = "wealthfolio"; 26 26 rev = "v${finalAttrs.version}"; 27 - hash = "sha256-HxzLGo+Tu8r58q7agagapfb69yxmFOLJFqDTQVYhpUE="; 27 + hash = "sha256-NO+cqpEUc1A7Gk0jW5ycHgggYq3hlzf5jJIUTNQD5vA="; 28 28 }; 29 29 30 30 pnpmDeps = pnpm_9.fetchDeps { 31 31 inherit (finalAttrs) src pname version; 32 - hash = "sha256-wKj1jy/TDi8Cckx9et2XzX3yPnmfXMDrqv9c4+Yyhu4="; 32 + hash = "sha256-KupqObdNrnWbbt9C4NNmgmQCfJ2O4FjJBwGy6XQhhHg="; 33 33 }; 34 34 35 35 cargoRoot = "src-tauri"; ··· 42 42 src 43 43 cargoRoot 44 44 ; 45 - hash = "sha256-9qxbgVEOmSaOBL6Vo3ZufNyn9wfs/FI+Pz38BiS91S8="; 45 + hash = "sha256-3f3b4aWUewolUI3kWpKSywvlf5WBBiewHbGK0uzdyXY="; 46 46 }; 47 47 48 48 nativeBuildInputs = [
+3 -3
pkgs/by-name/we/werf/package.nix
··· 10 10 }: 11 11 buildGoModule (finalAttrs: { 12 12 pname = "werf"; 13 - version = "2.37.1"; 13 + version = "2.38.0"; 14 14 15 15 src = fetchFromGitHub { 16 16 owner = "werf"; 17 17 repo = "werf"; 18 18 tag = "v${finalAttrs.version}"; 19 - hash = "sha256-FIahppFWQx1UCR7mo3oiFT1SDOoySmqc7Fc2E5XMglY="; 19 + hash = "sha256-cZUzkThVKgPc8bsxmDc2+gsq9YxVswokO1rORvKVIws="; 20 20 }; 21 21 22 22 proxyVendor = true; 23 - vendorHash = "sha256-u/sG/UZt76Sr3Ckiv8Nn2JnMrVsAIlSWWTvs+Yfn6eU="; 23 + vendorHash = "sha256-aQVDt6VDtQjHCkY2xcbmoKn+UUplJ+a6xfdwPSF/j9Y="; 24 24 25 25 subPackages = [ "cmd/werf" ]; 26 26
+1 -1
pkgs/by-name/zu/zulip-term/package.nix
··· 67 67 ] 68 68 ++ (with python3.pkgs; [ 69 69 pytestCheckHook 70 - pytest-cov 70 + pytest-cov-stub 71 71 pytest-mock 72 72 ]); 73 73
-3
pkgs/development/compilers/rust/make-rust-platform.nix
··· 56 56 (callPackages ../../../build-support/rust/hooks { 57 57 inherit 58 58 stdenv 59 - cargo 60 - rustc 61 - callPackage 62 59 ; 63 60 }) 64 61 cargoBuildHook
+4 -9
pkgs/development/interpreters/lua-5/hooks/default.nix
··· 1 1 # Hooks for building lua packages. 2 2 { 3 3 lua, 4 - lib, 5 4 makeSetupHook, 6 - runCommand, 7 5 }: 8 6 9 7 let ··· 21 19 22 20 # luarocks installs data in a non-overridable location. Until a proper luarocks patch, 23 21 # we move the files around ourselves 24 - luarocksMoveDataFolder = callPackage ( 25 - { }: 26 - makeSetupHook { 27 - name = "luarocks-move-rock"; 28 - propagatedBuildInputs = [ ]; 29 - } ./luarocks-move-data.sh 30 - ) { }; 22 + luarocksMoveDataFolder = makeSetupHook { 23 + name = "luarocks-move-rock"; 24 + propagatedBuildInputs = [ ]; 25 + } ./luarocks-move-data.sh; 31 26 }
+4 -10
pkgs/development/interpreters/octave/hooks/default.nix
··· 1 1 # Hooks for building Octave packages. 2 2 { 3 - octave, 4 - lib, 5 - callPackage, 6 3 makeSetupHook, 7 4 }: 8 5 9 - rec { 10 - writeRequiredOctavePackagesHook = callPackage ( 11 - { }: 12 - makeSetupHook { 13 - name = "write-required-octave-packages-hook"; 14 - } ./write-required-octave-packages-hook.sh 15 - ) { }; 6 + { 7 + writeRequiredOctavePackagesHook = makeSetupHook { 8 + name = "write-required-octave-packages-hook"; 9 + } ./write-required-octave-packages-hook.sh; 16 10 }
+2 -2
pkgs/development/libraries/flint/3.nix
··· 22 22 23 23 stdenv.mkDerivation rec { 24 24 pname = "flint3"; 25 - version = "3.2.1"; 25 + version = "3.3.1"; 26 26 27 27 src = fetchurl { 28 28 url = "https://flintlib.org/download/flint-${version}.tar.gz"; 29 - hash = "sha256-ynvkbXeXInfrb+DE92dUhDL1a7U0qhfW26LXzOFc0j8="; 29 + hash = "sha256-ZNcOUTB2z6lx4EELWMHaXTURKRPppWtE4saBtFnT6vs="; 30 30 }; 31 31 32 32 nativeBuildInputs = [
+12 -7
pkgs/development/ocaml-modules/directories/default.nix
··· 2 2 lib, 3 3 fetchFromGitHub, 4 4 buildDunePackage, 5 + fpath, 5 6 }: 6 7 7 8 buildDunePackage rec { 8 9 pname = "directories"; 9 - version = "0.5"; 10 - useDune2 = true; 10 + version = "0.6"; 11 11 12 - minimalOCamlVersion = "4.07"; 12 + minimalOCamlVersion = "4.14"; 13 13 14 14 src = fetchFromGitHub { 15 - owner = "ocamlpro"; 15 + owner = "OCamlPro"; 16 16 repo = pname; 17 - rev = version; 18 - sha256 = "sha256-31CGhmmfOORJ1ewgp+IU+p1+f2kfX/W+lxK7EGU62vc="; 17 + tag = version; 18 + hash = "sha256-c/9ChiSODD1K7YsMj65tjErAwXeWvEQ8BkAcUvsr19c="; 19 19 }; 20 20 21 + propagatedBuildInputs = [ 22 + fpath 23 + ]; 24 + 21 25 meta = { 22 - homepage = "https://github.com/ocamlpro/directories"; 26 + homepage = "https://github.com/OCamlPro/directories"; 23 27 description = "OCaml library that provides configuration, cache and data paths (and more!) following the suitable conventions on Linux, macOS and Windows"; 24 28 longDescription = '' 25 29 directories is an OCaml library that provides configuration, cache and ··· 31 35 xdg-user-dirs on Linux, Known Folders on Windows, Standard Directories on 32 36 macOS. 33 37 ''; 38 + changelog = "https://raw.githubusercontent.com/OCamlPro/directories/refs/tags/${src.tag}/CHANGES.md"; 34 39 license = lib.licenses.isc; 35 40 maintainers = with lib.maintainers; [ bcc32 ]; 36 41 };
+10 -9
pkgs/development/ocaml-modules/eigen/default.nix
··· 4 4 buildDunePackage, 5 5 fetchFromGitHub, 6 6 ctypes, 7 + dune-configurator, 7 8 }: 8 9 9 10 buildDunePackage rec { 10 11 pname = "eigen"; 11 - version = "0.2.0"; 12 - 13 - useDune2 = true; 12 + version = "0.3.3"; 14 13 15 14 src = fetchFromGitHub { 16 15 owner = "owlbarn"; 17 16 repo = pname; 18 - rev = version; 19 - sha256 = "1zaw03as14hyvfpyj6bjrfbcxp2ljdbqcqqgm53kms244mig425f"; 17 + tag = version; 18 + hash = "sha256-8V4DQ+b2rzy58NTenK1BsJEJiJKYV6hIp2fJWqczHRY="; 20 19 }; 21 20 22 21 minimalOCamlVersion = "4.02"; ··· 25 24 26 25 propagatedBuildInputs = [ ctypes ]; 27 26 28 - meta = with lib; { 27 + buildInputs = [ dune-configurator ]; 28 + 29 + meta = { 29 30 inherit (src.meta) homepage; 30 31 description = "Minimal/incomplete Ocaml interface to Eigen3, mostly for Owl"; 31 - platforms = platforms.x86_64; 32 - maintainers = [ maintainers.bcdarwin ]; 33 - license = licenses.mit; 32 + platforms = lib.platforms.x86_64; 33 + maintainers = with lib.maintainers; [ bcdarwin ]; 34 + license = lib.licenses.mit; 34 35 }; 35 36 }
+16 -16
pkgs/development/php-packages/relay/default.nix
··· 15 15 }: 16 16 17 17 let 18 - version = "0.10.1"; 18 + version = "0.11.0"; 19 19 hashes = { 20 20 "aarch64-darwin" = { 21 21 platform = "darwin-arm64"; 22 22 hash = { 23 - "8.1" = "sha256-0p24kOzj4l0wBPzmjAzTv1a0EUa4In1pjWHhNhrmsyM="; 24 - "8.2" = "sha256-mgRjWEmtCFg7711RgC2lpSDs5cCcs+ZPqks/uj1mAJo="; 25 - "8.3" = "16nESEzMRDIiVfwjXsGhJsK9UG5UKgfSunHPeyNnyz0="; 26 - "8.4" = "sha256-g8H4vRb1XTnFQo2Db1qvzsENqPYg89/0HSxsW2tDLQQ="; 27 - "8.5" = "6NAzMBqBV0BUI4/KlIbnyz0kcD/hucO4tzbuwPSptig="; 23 + "8.1" = "sha256-/yaUulwiT+y7WZHPTdOWUgMsOnSwGrzMeVuT5W0XFsY="; 24 + "8.2" = "sha256-AFisp5/LsCoVjHQ8VA9d4vUDPutYi26PzsPVton0Gjw="; 25 + "8.3" = "dAJKUU5NED6QHFNrgRTLshkdT6ZtlRlcZh10rGQTON0="; 26 + "8.4" = "sha256-cx2IcRRfD6PyQzZJaWgS4d5Mf70w0uJAwl9hTkr6cDo="; 27 + "8.5" = "8ZfP++7jKcHdm89P+LOQj+ZsXbp2E3b3yuTQx6bOkmE="; 28 28 }; 29 29 }; 30 30 "aarch64-linux" = { 31 31 platform = "debian-aarch64+libssl3"; 32 32 hash = { 33 - "8.1" = "sha256-E6GDFgRgm5I1acqLYFs9kw3TAuHq5aq7TatLnPHJseA="; 34 - "8.2" = "sha256-59Un0hAidN/Diu9utUnOgMIdt5ZtOcBFtWrLdHkdME4="; 35 - "8.3" = "sha256-ssqZ85KrQG69fZ39RKceEJPXyGfxxLPI21tnPXtPZDE="; 36 - "8.4" = "JhFUplu9zMgXX2k2RArWWf0pFweAV+1+/T3yUwblJ2A="; 37 - "8.5" = "Ii2bsG4AMMwAKopyOz/qX1RxMaGcstO8kYgup8Vb50w="; 33 + "8.1" = "sha256-VYIWr0PyEzP3HHpnLI1X8NC48Oz9VWi1D70y7xT0WMw="; 34 + "8.2" = "sha256-wF4BiiSRro0R6OUpintAas6WSFuyWiUSVc4yHjBkFRo="; 35 + "8.3" = "sha256-LvIaYShHy4S7McpRX4EoWXpfNSkg2TV587IGbLaeMfg="; 36 + "8.4" = "56Yzuu4JWwnKPabxU0stuLjz3N4AHeRuHeLc8OsdfxU="; 37 + "8.5" = "lcSpj+VgT0soIzN0NX3S9JDO/gHSugKfRL5C3oLvg2w="; 38 38 }; 39 39 }; 40 40 "x86_64-linux" = { 41 41 platform = "debian-x86-64+libssl3"; 42 42 hash = { 43 - "8.1" = "sha256-MmRAfRDcG1qV8FrZmhME3UtmXe7Mapk2vSrtE/fQRcE="; 44 - "8.2" = "sha256-2ZRxJJhQaIkWQJX7bdti6+UFk7zY9yCJ9KWTtE3uGAE="; 45 - "8.3" = "sha256-QlUk6q5LQuhWbuqWgb8/JdRfO8V+M6GcTu7rjRqJeiI="; 46 - "8.4" = "V+tl7jTrq8PWEAXXu9IsqIlFiQcZBtMBDTlltWSO9CI="; 47 - "8.5" = "w4Ba1Oh4JDsuZc5nrYH8lITP6Gk4/0i1wwOHmr4BO44="; 43 + "8.1" = "sha256-0gdkrhG/YSl6tjhrQnpIxC6YQj+NJqte6UNDdPv5YvE="; 44 + "8.2" = "sha256-8vQ3Le3ssgb0jTxY2vUmriAHSFJXFlZxcYHcTHFkXDc="; 45 + "8.3" = "sha256-VqtIugl5LZgc/VB7lmXewV3SxagD9l2C966W24sz3Qo="; 46 + "8.4" = "3LjLX+zSjsCmnSWq2xD6wfnHf1dCY/Dl5CXJ3A8DY6Y="; 47 + "8.5" = "TaJQcmxs7baH1pMnSvAoZqPaTiSujFQu1VBTB6h3fA0="; 48 48 }; 49 49 }; 50 50 };
+2 -2
pkgs/development/php-packages/xdebug/default.nix
··· 5 5 }: 6 6 7 7 let 8 - version = "3.4.3"; 8 + version = "3.4.4"; 9 9 in 10 10 buildPecl { 11 11 inherit version; ··· 16 16 owner = "xdebug"; 17 17 repo = "xdebug"; 18 18 rev = version; 19 - hash = "sha256-B0sGUwCSKh/AZ9I4rwE22EitgkQWwWh4H+p8N02YAeY="; 19 + hash = "sha256-IYyDolRfzIpIfaJPWLOKdZhGlG4TMR5v7p56fw76JOc="; 20 20 }; 21 21 22 22 doCheck = true;
+2 -2
pkgs/development/python-modules/colcon-mixin/default.nix
··· 3 3 buildPythonPackage, 4 4 fetchFromGitHub, 5 5 colcon, 6 - pytest-cov, 6 + pytest-cov-stub, 7 7 pytestCheckHook, 8 8 setuptools, 9 9 scspell, ··· 29 29 ]; 30 30 31 31 nativeCheckInputs = [ 32 - pytest-cov 32 + pytest-cov-stub 33 33 pytestCheckHook 34 34 scspell 35 35 writableTmpDirAsHomeHook
+2 -2
pkgs/development/python-modules/colcon-ros-domain-id-coordinator/default.nix
··· 4 4 colcon, 5 5 fetchFromGitHub, 6 6 pytestCheckHook, 7 - pytest-cov, 7 + pytest-cov-stub, 8 8 pytest-repeat, 9 9 pytest-rerunfailures, 10 10 scspell, ··· 30 30 31 31 nativeCheckInputs = [ 32 32 pytestCheckHook 33 - pytest-cov 33 + pytest-cov-stub 34 34 pytest-repeat 35 35 pytest-rerunfailures 36 36 scspell
+2 -2
pkgs/development/python-modules/deltalake/default.nix
··· 12 12 polars, 13 13 pytestCheckHook, 14 14 pytest-benchmark, 15 - pytest-cov, 15 + pytest-cov-stub, 16 16 pytest-mock, 17 17 pandas, 18 18 azure-storage-blob, ··· 64 64 pandas 65 65 polars 66 66 pytest-benchmark 67 - pytest-cov 67 + pytest-cov-stub 68 68 pytest-mock 69 69 azure-storage-blob 70 70 ];
+2 -2
pkgs/development/python-modules/dramatiq-abort/default.nix
··· 4 4 fetchFromGitHub, 5 5 gevent, 6 6 pytestCheckHook, 7 - pytest-cov, 7 + pytest-cov-stub, 8 8 dramatiq, 9 9 redis, 10 10 setuptools, ··· 37 37 nativeCheckInputs = [ 38 38 redis 39 39 pytestCheckHook 40 - pytest-cov 40 + pytest-cov-stub 41 41 ]; 42 42 43 43 pythonImportsCheck = [ "dramatiq_abort" ];
+2 -2
pkgs/development/python-modules/falconpy/default.nix
··· 8 8 9 9 buildPythonPackage rec { 10 10 pname = "falconpy"; 11 - version = "1.5.2"; 11 + version = "1.5.3"; 12 12 pyproject = true; 13 13 14 14 src = fetchFromGitHub { 15 15 owner = "CrowdStrike"; 16 16 repo = "falconpy"; 17 17 tag = "v${version}"; 18 - hash = "sha256-neZ0V0OpX1GTchkLdE+hKMRl9jKnJ/OCtXY0q1eAxzA="; 18 + hash = "sha256-yK6delBTDnK5cP8mWIQZRfZClRsM2IeqjqrqOjbrlnc="; 19 19 }; 20 20 21 21 build-system = [ hatchling ];
+2 -2
pkgs/development/python-modules/fastembed/default.nix
··· 23 23 24 24 buildPythonPackage rec { 25 25 pname = "fastembed"; 26 - version = "0.7.0"; 26 + version = "0.7.1"; 27 27 pyproject = true; 28 28 29 29 src = fetchFromGitHub { 30 30 owner = "qdrant"; 31 31 repo = "fastembed"; 32 32 tag = "v${version}"; 33 - hash = "sha256-CnUg6ZJ3VmKXbeWWsD0j4KTdUhqrgOP5PBnHtghugHQ="; 33 + hash = "sha256-zftNBATvb9iCjEOWIg0Q8/1+VwQ1km/iob3TgOAfJbg="; 34 34 }; 35 35 36 36 build-system = [ poetry-core ];
+2 -2
pkgs/development/python-modules/garth/default.nix
··· 13 13 14 14 buildPythonPackage rec { 15 15 pname = "garth"; 16 - version = "0.5.15"; 16 + version = "0.5.16"; 17 17 pyproject = true; 18 18 19 19 disabled = pythonOlder "3.10"; 20 20 21 21 src = fetchPypi { 22 22 inherit pname version; 23 - hash = "sha256-GAhgngt+MjvpsFc1irRKOTqlhVhyMgST7Z9GiaLBzgc="; 23 + hash = "sha256-5ZmxL5JYHZB5sFrpaCF8vrCo45LAKVYfP/yfilmHprI="; 24 24 }; 25 25 26 26 pythonRelaxDeps = [ "requests-oauthlib" ];
+2 -2
pkgs/development/python-modules/google-cloud-network-connectivity/default.nix
··· 15 15 16 16 buildPythonPackage rec { 17 17 pname = "google-cloud-network-connectivity"; 18 - version = "2.8.0"; 18 + version = "2.8.1"; 19 19 pyproject = true; 20 20 21 21 disabled = pythonOlder "3.7"; ··· 23 23 src = fetchPypi { 24 24 inherit version; 25 25 pname = "google_cloud_network_connectivity"; 26 - hash = "sha256-NHZII5BYlysvlPBxXSu9nN7uqh/Ly3dLtgEuTS9eQOw="; 26 + hash = "sha256-U8czLn5ttFuJ2VynJ0R/fJlK9r0zC43qpP1aU8coorA="; 27 27 }; 28 28 29 29 build-system = [ setuptools ];
+2 -2
pkgs/development/python-modules/haystack-ai/default.nix
··· 42 42 pylint, 43 43 pytest, 44 44 pytest-asyncio, 45 - pytest-cov-stub, 45 + pytest-cov, 46 46 # , pytest-custom-exit-code 47 47 python-multipart, 48 48 reno, ··· 167 167 pylint 168 168 pytest 169 169 pytest-asyncio 170 - pytest-cov-stub 170 + pytest-cov 171 171 # pytest-custom-exit-code 172 172 python-multipart 173 173 reno
+2 -2
pkgs/development/python-modules/iocapture/default.nix
··· 3 3 buildPythonPackage, 4 4 fetchPypi, 5 5 flexmock, 6 - pytest, 6 + pytestCheckHook, 7 7 pytest-cov-stub, 8 8 six, 9 9 }: ··· 20 20 21 21 nativeCheckInputs = [ 22 22 flexmock 23 - pytest 23 + pytestCheckHook 24 24 pytest-cov-stub 25 25 six 26 26 ];
+2 -2
pkgs/development/python-modules/langchain-perplexity/default.nix
··· 13 13 # tests 14 14 langchain-tests, 15 15 pytest-asyncio, 16 - pytest-cov, 16 + pytest-cov-stub, 17 17 pytest-mock, 18 18 pytestCheckHook, 19 19 ··· 51 51 nativeCheckInputs = [ 52 52 langchain-tests 53 53 pytest-asyncio 54 - pytest-cov 54 + pytest-cov-stub 55 55 pytest-mock 56 56 pytestCheckHook 57 57 ];
+2 -2
pkgs/development/python-modules/nonbloat-db/default.nix
··· 14 14 # tests 15 15 pytestCheckHook, 16 16 pytest-asyncio, 17 - pytest-cov, 17 + pytest-cov-stub, 18 18 pytest-mock, 19 19 pytest-randomly, 20 20 faker, ··· 45 45 nativeCheckInputs = [ 46 46 pytestCheckHook 47 47 pytest-asyncio 48 - pytest-cov 48 + pytest-cov-stub 49 49 pytest-mock 50 50 pytest-randomly 51 51 faker
+4 -2
pkgs/development/python-modules/openai/default.nix
··· 37 37 nest-asyncio, 38 38 pytest-asyncio, 39 39 pytest-mock, 40 + pytest-xdist, 40 41 respx, 41 42 42 43 # optional-dependencies toggle ··· 46 47 47 48 buildPythonPackage rec { 48 49 pname = "openai"; 49 - version = "1.86.0"; 50 + version = "1.87.0"; 50 51 pyproject = true; 51 52 52 53 disabled = pythonOlder "3.8"; ··· 55 56 owner = "openai"; 56 57 repo = "openai-python"; 57 58 tag = "v${version}"; 58 - hash = "sha256-PDYyuvCkDfQrbkSz0CPfJr++WUu5mODY2nVzTanwqjo="; 59 + hash = "sha256-KXvtAxkALZd/T5mVLkDemO7qQ7E2CLVmRpAg1+cRcdU="; 59 60 }; 60 61 61 62 postPatch = ''substituteInPlace pyproject.toml --replace-fail "hatchling==1.26.3" "hatchling"''; ··· 103 104 nest-asyncio 104 105 pytest-asyncio 105 106 pytest-mock 107 + pytest-xdist 106 108 respx 107 109 ]; 108 110
+2 -2
pkgs/development/python-modules/paddleocr/default.nix
··· 32 32 33 33 buildPythonPackage rec { 34 34 pname = "paddleocr"; 35 - version = "3.0.1"; 35 + version = "3.0.2"; 36 36 pyproject = true; 37 37 38 38 src = fetchFromGitHub { 39 39 owner = "PaddlePaddle"; 40 40 repo = "PaddleOCR"; 41 41 tag = "v${version}"; 42 - hash = "sha256-B8zIiRpvT0oa/Gg2dLXTqBZmM+XDH3sOzODvleN638E="; 42 + hash = "sha256-PatqxQQR0uwZwNFYBAeAF5JfsRNhA6fzcy7lufWZARg="; 43 43 }; 44 44 45 45 patches = [
+2 -2
pkgs/development/python-modules/pdfplumber/default.nix
··· 11 11 pdfminer-six, 12 12 pillow, 13 13 pypdfium2, 14 - pytest-cov, 14 + pytest-cov-stub, 15 15 pytest-parallel, 16 16 pytestCheckHook, 17 17 types-pillow, ··· 44 44 nbexec 45 45 pandas 46 46 pandas-stubs 47 - pytest-cov 47 + pytest-cov-stub 48 48 pytest-parallel 49 49 pytestCheckHook 50 50 types-pillow
+10 -6
pkgs/development/python-modules/plaster/default.nix
··· 1 1 { 2 + lib, 2 3 buildPythonPackage, 3 4 fetchPypi, 4 - pytest, 5 + pytestCheckHook, 5 6 pytest-cov-stub, 6 7 }: 7 8 ··· 15 16 hash = "sha256-+L78VL+MEUfBCrQCl+yEwmdvotTqXW9STZQ2qAB075g="; 16 17 }; 17 18 18 - checkPhase = '' 19 - py.test 20 - ''; 21 - 22 19 nativeCheckInputs = [ 23 - pytest 20 + pytestCheckHook 24 21 pytest-cov-stub 25 22 ]; 23 + 24 + meta = { 25 + description = "Loader interface around multiple config file formats"; 26 + homepage = "https://pypi.org/project/plaster/"; 27 + license = lib.licenses.mit; 28 + maintainers = with lib.maintainers; [ ]; 29 + }; 26 30 }
+2 -2
pkgs/development/python-modules/polars/default.nix
··· 9 9 pkgs, # zstd hidden by python3Packages.zstd 10 10 pytestCheckHook, 11 11 pytest-codspeed ? null, # Not in Nixpkgs 12 - pytest-cov, 12 + pytest-cov-stub, 13 13 pytest-xdist, 14 14 pytest-benchmark, 15 15 rustc, ··· 229 229 nativeCheckInputs = [ 230 230 pytestCheckHook 231 231 pytest-codspeed 232 - pytest-cov 232 + pytest-cov-stub 233 233 pytest-xdist 234 234 pytest-benchmark 235 235 ];
+2 -2
pkgs/development/python-modules/property-manager/default.nix
··· 5 5 humanfriendly, 6 6 verboselogs, 7 7 coloredlogs, 8 - pytest, 8 + pytestCheckHook, 9 9 pytest-cov-stub, 10 10 }: 11 11 ··· 27 27 verboselogs 28 28 ]; 29 29 nativeCheckInputs = [ 30 - pytest 30 + pytestCheckHook 31 31 pytest-cov-stub 32 32 ]; 33 33
+5 -2
pkgs/development/python-modules/pygame-ce/default.nix
··· 12 12 ninja, 13 13 meson-python, 14 14 pyproject-metadata, 15 + nix-update-script, 15 16 16 17 fontconfig, 17 18 freetype, ··· 30 31 31 32 buildPythonPackage rec { 32 33 pname = "pygame-ce"; 33 - version = "2.5.4"; 34 + version = "2.5.5"; 34 35 pyproject = true; 35 36 36 37 disabled = pythonOlder "3.8"; ··· 39 40 owner = "pygame-community"; 40 41 repo = "pygame-ce"; 41 42 tag = version; 42 - hash = "sha256-joMc3QaQNbZ65pBJ7r5D6lWAGW9eM+e0k/ozOHfQL4U="; 43 + hash = "sha256-OWC063N7G8t2ai/Qyz8DwP76BrFve5ZCbLD/mQwVbi4="; 43 44 # Unicode files cause different checksums on HFS+ vs. other filesystems 44 45 postFetch = "rm -rf $out/docs/reST"; 45 46 }; ··· 157 158 "pygame.sysfont" 158 159 "pygame.version" 159 160 ]; 161 + 162 + passthru.updateScript = nix-update-script { }; 160 163 161 164 passthru.tests = { 162 165 inherit pygame-gui;
+2 -2
pkgs/development/python-modules/pygerber/default.nix
··· 26 26 dulwich, 27 27 tzlocal, 28 28 pytest-xdist, 29 - pytest-cov, 30 29 pytest-lsp, 31 30 pytest-asyncio, 32 31 pytest-mock, ··· 77 76 78 77 nativeCheckInputs = [ 79 78 pytest-asyncio 80 - pytest-cov 81 79 pytest-xdist 82 80 pytest-lsp 83 81 pytest-mock ··· 93 91 "test/gerberx3/test_assets.py" 94 92 "test/gerberx3/test_language_server/tests.py" 95 93 ]; 94 + 95 + pytestFlagsArray = [ "--override-ini required_plugins=''" ]; 96 96 97 97 pythonImportsCheck = [ "pygerber" ]; 98 98
+2 -2
pkgs/development/python-modules/pyscaffold/default.nix
··· 23 23 certifi, 24 24 flake8, 25 25 pytest, 26 - pytest-cov-stub, 26 + pytest-cov, 27 27 pytest-randomly, 28 28 pytest-xdist, 29 29 sphinx, ··· 80 80 flake8 81 81 pre-commit 82 82 pytest 83 - pytest-cov-stub 83 + pytest-cov 84 84 pytest-randomly 85 85 pytest-xdist 86 86 setuptools
+2 -2
pkgs/development/python-modules/pyscaffoldext-cookiecutter/default.nix
··· 11 11 configupdater, 12 12 pre-commit, 13 13 pytest, 14 - pytest-cov-stub, 14 + pytest-cov, 15 15 pytest-xdist, 16 16 tox, 17 17 virtualenv, ··· 44 44 configupdater 45 45 pre-commit 46 46 pytest 47 - pytest-cov-stub 47 + pytest-cov 48 48 pytest-xdist 49 49 setuptools-scm 50 50 tox
+2 -2
pkgs/development/python-modules/pyscaffoldext-custom-extension/default.nix
··· 11 11 pyscaffold, 12 12 pre-commit, 13 13 pytest, 14 - pytest-cov-stub, 14 + pytest-cov, 15 15 pytest-xdist, 16 16 tox, 17 17 virtualenv, ··· 45 45 configupdater 46 46 pre-commit 47 47 pytest 48 - pytest-cov-stub 48 + pytest-cov 49 49 pytest-xdist 50 50 setuptools-scm 51 51 tox
+2 -2
pkgs/development/python-modules/pyscaffoldext-django/default.nix
··· 10 10 configupdater, 11 11 pre-commit, 12 12 pytest, 13 - pytest-cov-stub, 13 + pytest-cov, 14 14 pytest-xdist, 15 15 tox, 16 16 virtualenv, ··· 42 42 configupdater 43 43 pre-commit 44 44 pytest 45 - pytest-cov-stub 45 + pytest-cov 46 46 pytest-xdist 47 47 setuptools-scm 48 48 tox
+2 -2
pkgs/development/python-modules/pyscaffoldext-dsproject/default.nix
··· 11 11 configupdater, 12 12 pre-commit, 13 13 pytest, 14 - pytest-cov-stub, 14 + pytest-cov, 15 15 pytest-xdist, 16 16 tox, 17 17 virtualenv, ··· 44 44 configupdater 45 45 pre-commit 46 46 pytest 47 - pytest-cov-stub 47 + pytest-cov 48 48 pytest-xdist 49 49 setuptools-scm 50 50 tox
+2 -2
pkgs/development/python-modules/pyscaffoldext-markdown/default.nix
··· 11 11 configupdater, 12 12 pre-commit, 13 13 pytest, 14 - pytest-cov-stub, 14 + pytest-cov, 15 15 pytest-xdist, 16 16 tox, 17 17 twine, ··· 46 46 configupdater 47 47 pre-commit 48 48 pytest 49 - pytest-cov-stub 49 + pytest-cov 50 50 pytest-xdist 51 51 setuptools-scm 52 52 tox
+2 -2
pkgs/development/python-modules/pyscaffoldext-travis/default.nix
··· 10 10 configupdater, 11 11 pre-commit, 12 12 pytest, 13 - pytest-cov-stub, 13 + pytest-cov, 14 14 pytest-xdist, 15 15 tox, 16 16 virtualenv, ··· 42 42 configupdater 43 43 pre-commit 44 44 pytest 45 - pytest-cov-stub 45 + pytest-cov 46 46 pytest-xdist 47 47 setuptools-scm 48 48 tox
+2 -2
pkgs/development/python-modules/reflex-hosting-cli/default.nix
··· 18 18 19 19 buildPythonPackage rec { 20 20 pname = "reflex-hosting-cli"; 21 - version = "0.1.49"; 21 + version = "0.1.50"; 22 22 pyproject = true; 23 23 24 24 # source is not published https://github.com/reflex-dev/reflex/issues/3762 25 25 src = fetchPypi { 26 26 pname = "reflex_hosting_cli"; 27 27 inherit version; 28 - hash = "sha256-cIU2/hTxXtAsxn5twV8xGwAOcRfqBjeqL4dklXt5fkQ="; 28 + hash = "sha256-1ZTTc09P/0rTNhiqsNDB2RMLcUjKt1rIWtufakkFWkg="; 29 29 }; 30 30 31 31 pythonRelaxDeps = [
+2 -6
pkgs/development/python-modules/reikna/default.nix
··· 4 4 buildPythonPackage, 5 5 sphinx, 6 6 pytest-cov-stub, 7 - pytest, 7 + pytestCheckHook, 8 8 mako, 9 9 numpy, 10 10 funcsigs, ··· 27 27 nativeCheckInputs = [ 28 28 sphinx 29 29 pytest-cov-stub 30 - pytest 30 + pytestCheckHook 31 31 ]; 32 32 33 33 propagatedBuildInputs = ··· 38 38 ] 39 39 ++ lib.optional withCuda pycuda 40 40 ++ lib.optional withOpenCL pyopencl; 41 - 42 - checkPhase = '' 43 - py.test 44 - ''; 45 41 46 42 # Requires device 47 43 doCheck = false;
+2 -2
pkgs/development/python-modules/sanic-ext/default.nix
··· 18 18 msgspec, 19 19 pydantic, 20 20 pytest, 21 - pytest-cov, 21 + pytest-cov-stub, 22 22 pytest-asyncio, 23 23 tox, 24 24 jinja2, ··· 51 51 msgspec 52 52 pydantic 53 53 pytest 54 - pytest-cov 54 + pytest-cov-stub 55 55 pytest-asyncio 56 56 tox 57 57 jinja2
+2 -2
pkgs/development/python-modules/sklearn-compat/default.nix
··· 6 6 scikit-learn, 7 7 pandas, 8 8 pytestCheckHook, 9 - pytest-cov, 9 + pytest-cov-stub, 10 10 pytest-xdist, 11 11 pytz, 12 12 }: ··· 34 34 nativeCheckInputs = [ 35 35 pandas 36 36 pytestCheckHook 37 - pytest-cov 37 + pytest-cov-stub 38 38 pytest-xdist 39 39 pytz 40 40 ];
+2 -2
pkgs/development/python-modules/tencentcloud-sdk-python/default.nix
··· 10 10 11 11 buildPythonPackage rec { 12 12 pname = "tencentcloud-sdk-python"; 13 - version = "3.0.1403"; 13 + version = "3.0.1404"; 14 14 pyproject = true; 15 15 16 16 disabled = pythonOlder "3.9"; ··· 19 19 owner = "TencentCloud"; 20 20 repo = "tencentcloud-sdk-python"; 21 21 tag = version; 22 - hash = "sha256-t38Lx5xW1R/LkUp4WKXXSXuEN5b4zI5i6D9iLBNJw88="; 22 + hash = "sha256-3T/Y5qGbJvsqrB972iV4FkVYuv3YPRwH2B7B4SnjRhg="; 23 23 }; 24 24 25 25 build-system = [ setuptools ];
+14 -15
pkgs/development/r-modules/default.nix
··· 2523 2523 2524 2524 Rhtslib = old.Rhtslib.overrideAttrs (attrs: { 2525 2525 preConfigure = '' 2526 - substituteInPlace R/zzz.R --replace "-lcurl" "-L${pkgs.curl.out}/lib -lcurl" 2526 + substituteInPlace R/zzz.R --replace-fail "-lcurl" "-L${pkgs.curl.out}/lib -lcurl" 2527 2527 ''; 2528 2528 }); 2529 2529 ··· 2534 2534 2535 2535 # during runtime the package directory is not writable as it's in the 2536 2536 # nix store, so store the jar in the user's cache directory instead 2537 - substituteInPlace R/connection.R --replace \ 2537 + substituteInPlace R/connection.R --replace-fail \ 2538 2538 'dest_file <- file.path(dest_folder, "h2o.jar")' \ 2539 2539 'dest_file <- file.path("~/.cache/", "h2o.jar")' 2540 2540 ''; ··· 2572 2572 sparklyr = old.sparklyr.overrideAttrs (attrs: { 2573 2573 # Pyspark's spark is full featured and better maintained than pkgs.spark 2574 2574 preConfigure = '' 2575 - substituteInPlace R/zzz.R \ 2576 - --replace ".onLoad <- function(...) {" \ 2577 - ".onLoad <- function(...) { 2578 - Sys.setenv(\"SPARK_HOME\" = Sys.getenv(\"SPARK_HOME\", unset = \"${pkgs.python3Packages.pyspark}/${pkgs.python3Packages.python.sitePackages}/pyspark\")) 2579 - Sys.setenv(\"JAVA_HOME\" = Sys.getenv(\"JAVA_HOME\", unset = \"${pkgs.jdk}\"))" 2580 - ''; 2581 - }); 2575 + if grep "onLoad" R/zzz.R; then 2576 + echo "onLoad is already present, patch needs to be updated!" 2577 + exit 1 2578 + fi 2582 2579 2583 - proj4 = old.proj4.overrideAttrs (attrs: { 2584 - preConfigure = '' 2585 - substituteInPlace configure \ 2586 - --replace "-lsqlite3" "-L${lib.makeLibraryPath [ pkgs.sqlite ]} -lsqlite3" 2580 + cat >> R/zzz.R <<EOF 2581 + .onLoad <- function(...) { 2582 + Sys.setenv("SPARK_HOME" = Sys.getenv("SPARK_HOME", unset = "${pkgs.python3Packages.pyspark}/${pkgs.python3Packages.python.sitePackages}/pyspark")) 2583 + Sys.setenv("JAVA_HOME" = Sys.getenv("JAVA_HOME", unset = "${pkgs.jdk}")) 2584 + } 2585 + EOF 2587 2586 ''; 2588 2587 }); 2589 2588 ··· 2674 2673 rmarkdown = old.rmarkdown.overrideAttrs (_: { 2675 2674 preConfigure = '' 2676 2675 substituteInPlace R/pandoc.R \ 2677 - --replace '"~/opt/pandoc"' '"~/opt/pandoc", "${pkgs.pandoc}/bin"' 2676 + --replace-fail '"~/opt/pandoc"' '"~/opt/pandoc", "${pkgs.pandoc}/bin"' 2678 2677 ''; 2679 2678 }); 2680 2679 ··· 2700 2699 tesseract = old.tesseract.overrideAttrs (_: { 2701 2700 preConfigure = '' 2702 2701 substituteInPlace configure \ 2703 - --replace 'PKG_CONFIG_NAME="tesseract"' 'PKG_CONFIG_NAME="tesseract lept"' 2702 + --replace-fail 'PKG_CONFIG_NAME="tesseract"' 'PKG_CONFIG_NAME="tesseract lept"' 2704 2703 ''; 2705 2704 }); 2706 2705
+5 -5
pkgs/os-specific/linux/batman-adv/version.nix
··· 1 1 { 2 - version = "2025.1"; 2 + version = "2025.2"; 3 3 4 4 # To get these, run: 5 5 # 6 6 # ``` 7 - # for tool in alfred batctl batman-adv; do nix-prefetch-url https://downloads.open-mesh.org/batman/releases/batman-adv-2025.1/$tool-2025.1.tar.gz --type sha256 | xargs nix hash convert --hash-algo sha256 --to sri; done 7 + # for tool in alfred batctl batman-adv; do nix-prefetch-url https://downloads.open-mesh.org/batman/releases/batman-adv-2025.2/$tool-2025.2.tar.gz --type sha256 | xargs nix hash convert --hash-algo sha256 --to sri; done 8 8 # ``` 9 9 sha256 = { 10 - alfred = "sha256-f7iz8cxOxIjo1D/ZFd2gp831thG/OdYN3rRIasACXxg="; 11 - batctl = "sha256-IPii4TWgeKrBblyK1TWhKhVc8Lea8YPeX7F9qVe8JHg="; 12 - batman-adv = "sha256-A61CkpeWH7Os2cLIBkMtA3sO16rA8KHmReMq9SELmOE="; 10 + alfred = "sha256-Q0fR5LB5Svv2sXGoV7mjx9UaKR/FTxbNrZLH99HNtRo="; 11 + batctl = "sha256-q2wDRqFvER57n9XOVczd633grXdCvi9FExfrQo9qCpY="; 12 + batman-adv = "sha256-FsRfi7jzBTcc2Q6IhjDPslHCsYnlUypSepNvo1ukl/c="; 13 13 }; 14 14 }
+12 -6
pkgs/os-specific/linux/fuse/common.nix
··· 61 61 meson 62 62 ninja 63 63 pkg-config 64 - udevCheckHook 65 64 ] 65 + ++ lib.optionals (!stdenv.hostPlatform.isMusl) [ udevCheckHook ] # inf rec on musl, so skip 66 66 else 67 67 [ 68 68 autoreconfHook ··· 76 76 "man" 77 77 ] ++ lib.optional isFuse3 "udev"; 78 78 79 - mesonFlags = lib.optionals isFuse3 [ 80 - "-Dudevrulesdir=/udev/rules.d" 81 - "-Duseroot=false" 82 - "-Dinitscriptdir=" 83 - ]; 79 + mesonFlags = lib.optionals isFuse3 ( 80 + [ 81 + "-Dudevrulesdir=/udev/rules.d" 82 + "-Duseroot=false" 83 + "-Dinitscriptdir=" 84 + ] 85 + # examples fail to build on musl 86 + # error: ‘RENAME_NOREPLACE’ was not declared in this scope 87 + # lib.optionals instead of lib.mesonBool to avoid rebuilds 88 + ++ lib.optionals (stdenv.hostPlatform.isMusl) [ "-Dexamples=false" ] 89 + ); 84 90 85 91 # Ensure that FUSE calls the setuid wrapper, not 86 92 # $out/bin/fusermount. It falls back to calling fusermount in
+3 -3
pkgs/os-specific/linux/zfs/2_3.nix
··· 11 11 # this attribute is the correct one for this package. 12 12 kernelModuleAttribute = "zfs_2_3"; 13 13 # check the release notes for compatible kernels 14 - kernelCompatible = kernel: kernel.kernelOlder "6.15"; 14 + kernelCompatible = kernel: kernel.kernelOlder "6.16"; 15 15 16 16 # this package should point to the latest release. 17 - version = "2.3.2"; 17 + version = "2.3.3"; 18 18 19 19 tests = 20 20 { ··· 29 29 amarshall 30 30 ]; 31 31 32 - hash = "sha256-+DqpIgHCVi0fDOqvKwaGXIiiXw8xEnlv2tgRwgLX9G8="; 32 + hash = "sha256-NXAbyGBfpzWfm4NaP1/otTx8fOnoRV17343qUMdQp5U="; 33 33 }
+3 -3
pkgs/os-specific/linux/zfs/unstable.nix
··· 9 9 # this attribute is the correct one for this package. 10 10 kernelModuleAttribute = "zfs_unstable"; 11 11 # check the release notes for compatible kernels 12 - kernelCompatible = kernel: kernel.kernelOlder "6.15"; 12 + kernelCompatible = kernel: kernel.kernelOlder "6.16"; 13 13 14 14 # this package should point to a version / git revision compatible with the latest kernel release 15 15 # IMPORTANT: Always use a tagged release candidate or commits from the 16 16 # zfs-<version>-staging branch, because this is tested by the OpenZFS 17 17 # maintainers. 18 - version = "2.3.2"; 18 + version = "2.3.3"; 19 19 # rev = ""; 20 20 21 21 tests = { 22 22 inherit (nixosTests.zfs) unstable; 23 23 }; 24 24 25 - hash = "sha256-+DqpIgHCVi0fDOqvKwaGXIiiXw8xEnlv2tgRwgLX9G8="; 25 + hash = "sha256-NXAbyGBfpzWfm4NaP1/otTx8fOnoRV17343qUMdQp5U="; 26 26 27 27 extraLongDescription = '' 28 28 This is "unstable" ZFS, and will usually be a pre-release version of ZFS.
+2 -2
pkgs/servers/home-assistant/stubs.nix
··· 10 10 11 11 buildPythonPackage rec { 12 12 pname = "homeassistant-stubs"; 13 - version = "2025.6.0"; 13 + version = "2025.6.1"; 14 14 pyproject = true; 15 15 16 16 disabled = python.version != home-assistant.python.version; ··· 19 19 owner = "KapJI"; 20 20 repo = "homeassistant-stubs"; 21 21 tag = version; 22 - hash = "sha256-CjMNxzX2w6mFdQ0RyEq7rHUC4U+EyVeaupREwtuts3Y="; 22 + hash = "sha256-JTSIVe25EXZ7Bslkcz8/wLFJDx3f78OGsfDodtHMZ/Y="; 23 23 }; 24 24 25 25 build-system = [
+2 -6
pkgs/servers/isso/default.nix
··· 66 66 ''; 67 67 68 68 nativeCheckInputs = [ 69 - pytest 70 - pytest-cov 69 + pytestCheckHook 70 + pytest-cov-stub 71 71 ]; 72 - 73 - checkPhase = '' 74 - pytest 75 - ''; 76 72 77 73 passthru.tests = { inherit (nixosTests) isso; }; 78 74
+2 -2
pkgs/servers/monitoring/zabbix/versions.nix
··· 4 4 hash = "sha256-DQGzk90isqYLNvs3qY/PEIHGg62Ygyot3YeUOhIAg54="; 5 5 }; 6 6 v70 = generic { 7 - version = "7.0.13"; 8 - hash = "sha256-2e9/HPsL3lZY2rsigIIPnOHPMyV/rHn0DwM3Org60Xw="; 7 + version = "7.0.14"; 8 + hash = "sha256-/otU7tnjoF3UXPSxoqpjv9wRR+h0DeioeMyu+tHttv8="; 9 9 }; 10 10 v60 = generic { 11 11 version = "6.0.36";
+2 -4
pkgs/servers/nextcloud/packages/default.nix
··· 25 25 { 26 26 # Create a derivation from the official Nextcloud apps. 27 27 # This takes the data generated from the go tool. 28 - mkNextcloudDerivation = self.callPackage ( 29 - { }: 28 + mkNextcloudDerivation = 30 29 { pname, data }: 31 30 pkgs.fetchNextcloudApp { 32 31 appName = pname; ··· 39 38 description 40 39 homepage 41 40 ; 42 - } 43 - ) { }; 41 + }; 44 42 45 43 } 46 44 // lib.mapAttrs (
+1 -1
pkgs/tools/audio/beets/common.nix
··· 145 145 with python3Packages; 146 146 [ 147 147 pytestCheckHook 148 - pytest-cov 148 + pytest-cov-stub 149 149 mock 150 150 rarfile 151 151 responses
+2 -29
pkgs/tools/misc/anystyle-cli/Gemfile
··· 1 1 source 'https://rubygems.org' 2 2 gemspec 3 3 4 - 5 4 group :development, :test do 6 - #gem 'anystyle-data', github: 'inukshuk/anystyle-data' 7 - #gem 'wapiti', github: 'inukshuk/wapiti-ruby' 8 - gem 'bibtex-ruby' 9 - gem 'rake' 10 - gem 'rspec', '~>3.0' 11 - gem 'language_detector', github: 'feedbackmine/language_detector' 12 - gem 'unicode-scripts' 13 - gem 'edtf' 14 - gem 'citeproc' 15 - gem 'unicode_utils' if RUBY_VERSION < '2.4' 16 - end 17 - 18 - group :coverage do 19 - gem 'simplecov', require: false 20 - gem 'coveralls', require: false if ENV['CI'] 5 + gem 'anystyle', github: 'inukshuk/anystyle' 21 6 end 22 7 23 8 group :debug do 24 - gem 'byebug', require: false 25 - end 26 - 27 - group :profile do 28 - gem 'ruby-prof', require: false 29 - gem 'gnuplot', require: false 30 - end 31 - 32 - group :extra do 33 - gem 'lmdb' 34 - gem 'redis' 35 - gem 'redis-namespace' 36 - gem 'yard' 9 + gem 'debug', require: false 37 10 end
+49 -78
pkgs/tools/misc/anystyle-cli/Gemfile.lock
··· 1 1 GIT 2 - remote: https://github.com/feedbackmine/language_detector.git 3 - revision: 89102790194150b3a8110ce691f9989b8ce70f8d 2 + remote: https://github.com/inukshuk/anystyle.git 3 + revision: c6f5fb2fa6e8ce9456ad1e1e88d6bba5f3d7731d 4 4 specs: 5 - language_detector (0.1.2) 5 + anystyle (1.6.0) 6 + anystyle-data (~> 1.3) 7 + bibtex-ruby (~> 6.0) 8 + namae (~> 1.0) 9 + wapiti (~> 2.1) 6 10 7 11 PATH 8 12 remote: . 9 13 specs: 10 - anystyle (1.3.10) 11 - anystyle-data (~> 1.2) 12 - bibtex-ruby (~> 5.0) 14 + anystyle-cli (1.5.0) 15 + anystyle (~> 1.6) 13 16 gli (~> 2.17) 14 - namae (~> 1.0) 15 - wapiti (~> 1.0, >= 1.0.2) 16 17 17 18 GEM 18 19 remote: https://rubygems.org/ 19 20 specs: 20 - activesupport (6.0.3.2) 21 - concurrent-ruby (~> 1.0, >= 1.0.2) 22 - i18n (>= 0.7, < 2) 23 - minitest (~> 5.1) 24 - tzinfo (~> 1.1) 25 - zeitwerk (~> 2.2, >= 2.2.2) 26 - anystyle-data (1.2.0) 27 - bibtex-ruby (5.1.4) 21 + anystyle-data (1.3.0) 22 + bibtex-ruby (6.1.0) 28 23 latex-decode (~> 0.0) 29 - builder (3.2.4) 30 - byebug (11.1.3) 31 - citeproc (1.0.10) 32 - namae (~> 1.0) 33 - concurrent-ruby (1.1.7) 34 - diff-lcs (1.4.4) 35 - docile (1.3.2) 36 - edtf (3.0.5) 37 - activesupport (>= 3.0, < 7.0) 38 - gli (2.19.2) 39 - gnuplot (2.6.2) 40 - i18n (1.8.5) 41 - concurrent-ruby (~> 1.0) 42 - latex-decode (0.3.1) 43 - lmdb (0.5.3) 44 - minitest (5.14.1) 45 - namae (1.0.1) 46 - rake (13.0.1) 47 - redis (4.2.1) 48 - redis-namespace (1.8.0) 49 - redis (>= 3.0.4) 50 - rspec (3.9.0) 51 - rspec-core (~> 3.9.0) 52 - rspec-expectations (~> 3.9.0) 53 - rspec-mocks (~> 3.9.0) 54 - rspec-core (3.9.2) 55 - rspec-support (~> 3.9.3) 56 - rspec-expectations (3.9.2) 57 - diff-lcs (>= 1.2.0, < 2.0) 58 - rspec-support (~> 3.9.0) 59 - rspec-mocks (3.9.1) 60 - diff-lcs (>= 1.2.0, < 2.0) 61 - rspec-support (~> 3.9.0) 62 - rspec-support (3.9.3) 63 - ruby-prof (1.4.1) 64 - simplecov (0.19.0) 65 - docile (~> 1.1) 66 - simplecov-html (~> 0.11) 67 - simplecov-html (0.12.2) 68 - thread_safe (0.3.6) 69 - tzinfo (1.2.7) 70 - thread_safe (~> 0.1) 71 - unicode-scripts (1.6.0) 72 - wapiti (1.0.7) 24 + racc (~> 1.7) 25 + builder (3.3.0) 26 + date (3.4.1) 27 + debug (1.10.0) 28 + irb (~> 1.10) 29 + reline (>= 0.3.8) 30 + erb (5.0.1) 31 + gli (2.22.2) 32 + ostruct 33 + io-console (0.8.0) 34 + irb (1.15.2) 35 + pp (>= 0.6.0) 36 + rdoc (>= 4.0.0) 37 + reline (>= 0.4.2) 38 + latex-decode (0.4.0) 39 + namae (1.2.0) 40 + racc (~> 1.7) 41 + ostruct (0.6.1) 42 + pp (0.6.2) 43 + prettyprint 44 + prettyprint (0.2.0) 45 + psych (5.2.6) 46 + date 47 + stringio 48 + racc (1.8.1) 49 + rdoc (6.14.0) 50 + erb 51 + psych (>= 4.0.0) 52 + reline (0.6.1) 53 + io-console (~> 0.5) 54 + rexml (3.4.1) 55 + stringio (3.1.7) 56 + wapiti (2.1.0) 73 57 builder (~> 3.2) 74 - yard (0.9.25) 75 - zeitwerk (2.4.0) 58 + rexml (~> 3.0) 76 59 77 60 PLATFORMS 61 + arm64-darwin-24 78 62 ruby 79 63 80 64 DEPENDENCIES 81 65 anystyle! 82 - bibtex-ruby 83 - byebug 84 - citeproc 85 - edtf 86 - gnuplot 87 - language_detector! 88 - lmdb 89 - rake 90 - redis 91 - redis-namespace 92 - rspec (~> 3.0) 93 - ruby-prof 94 - simplecov 95 - unicode-scripts 96 - yard 66 + anystyle-cli! 67 + debug 97 68 98 69 BUNDLED WITH 99 - 2.1.4 70 + 2.5.22
+32
pkgs/tools/misc/anystyle-cli/anystyle-cli.gemspec
··· 1 + # -*- encoding: utf-8 -*- 2 + lib = File.expand_path('../lib/', __FILE__) 3 + $:.unshift lib unless $:.include?(lib) 4 + 5 + require 'anystyle/cli/version' 6 + 7 + Gem::Specification.new do |s| 8 + s.name = 'anystyle-cli' 9 + s.version = AnyStyle::CLI::VERSION.dup 10 + s.platform = Gem::Platform::RUBY 11 + s.authors = ['Sylvester Keil'] 12 + s.email = ['http://sylvester.keil.or.at'] 13 + s.homepage = 'http://anystyle.io' 14 + s.summary = 'AnyStyle CLI' 15 + s.description = 'A command line interface to the AnyStyle Parser and Finder.' 16 + s.license = 'BSD-2-Clause' 17 + s.require_path = 'lib' 18 + s.bindir = 'bin' 19 + s.executables = ['anystyle'] 20 + s.required_ruby_version = '>= 2.3' 21 + 22 + s.add_runtime_dependency('anystyle', '~>1.6') 23 + s.add_runtime_dependency('gli', '~>2.17') 24 + 25 + s.files = `git ls-files`.split("\n") - %w{ 26 + .gitignore 27 + Gemfile 28 + anystyle-cli.gemspec 29 + } 30 + end 31 + 32 + # vim: syntax=ruby
-52
pkgs/tools/misc/anystyle-cli/anystyle.gemspec
··· 1 - # -*- encoding: utf-8 -*- 2 - lib = File.expand_path('../lib/', __FILE__) 3 - $:.unshift lib unless $:.include?(lib) 4 - 5 - require 'anystyle/version' 6 - 7 - Gem::Specification.new do |s| 8 - s.name = 'anystyle' 9 - s.version = AnyStyle::VERSION.dup 10 - s.platform = Gem::Platform::RUBY 11 - s.authors = ['Sylvester Keil'] 12 - s.email = ['http://sylvester.keil.or.at'] 13 - s.homepage = 'http://anystyle.io' 14 - s.summary = 'Smart and fast bibliography parser.' 15 - s.description = 'A sophisticated parser for academic reference lists and bibliographies based on machine learning algorithms using conditional random fields.' 16 - s.license = 'BSD-2-Clause' 17 - s.executables = [] 18 - s.require_path = 'lib' 19 - 20 - s.required_ruby_version = '>= 2.2' 21 - 22 - s.add_runtime_dependency('bibtex-ruby', '~>5.0') 23 - s.add_runtime_dependency('anystyle-data', '~>1.2') 24 - s.add_runtime_dependency('gli', '~>2.17') 25 - s.add_runtime_dependency('wapiti', '~>1.0', '>=1.0.2') 26 - s.add_runtime_dependency('namae', '~>1.0') 27 - 28 - s.files = 29 - `git ls-files`.split("\n") - `git ls-files spec`.split("\n") - %w{ 30 - .coveralls.yml 31 - .gitignore 32 - .rspec 33 - .simplecov 34 - .travis.yml 35 - Gemfile 36 - Rakefile 37 - appveyor.yml 38 - anystyle.gemspec 39 - res/core.xml 40 - } 41 - 42 - s.rdoc_options = %w{ 43 - --line-numbers 44 - --inline-source 45 - --title "AnyStyle" 46 - --main README.md 47 - } 48 - s.extra_rdoc_files = %w{README.md LICENSE} 49 - 50 - end 51 - 52 - # vim: syntax=ruby
+8 -7
pkgs/tools/misc/anystyle-cli/default.nix
··· 9 9 deps = bundlerEnv rec { 10 10 name = "anystyle-cli-${version}"; 11 11 source.sha256 = lib.fakeSha256; 12 - version = "1.3.1"; 12 + version = "1.5.0"; 13 13 inherit ruby; 14 14 gemdir = ./.; 15 15 gemset = lib.recursiveUpdate (import ./gemset.nix) { 16 16 anystyle.source = { 17 17 remotes = [ "https://rubygems.org" ]; 18 - sha256 = "1w79zcia60nnnyrmyvpd10pmxrpk5c7lj9gmmblhwi8x5mfq9k0n"; 18 + sha256 = "C/OrU7guHzHdY80upEXRfhWmUYDxpI54NIvIjKv0znw="; 19 19 type = "gem"; 20 20 }; 21 21 }; ··· 25 25 inherit ruby; 26 26 gemName = "anystyle-cli"; 27 27 pname = gemName; 28 - version = "1.3.1"; 29 - source.sha256 = "1a3ifwxwqkp5dnfk9r8qq8kgfb8k1pl7jjdghbb8ixbxz9ac7awy"; 28 + version = "1.5.0"; 29 + source.sha256 = "Bkk00PBk/6noCXgAbr1XUcdBq5vpdeL0ES02eeNA594="; 30 30 31 31 propagatedBuildInputs = [ deps ]; 32 32 ··· 38 38 description = "Command line interface to the AnyStyle Parser and Finder"; 39 39 homepage = "https://anystyle.io/"; 40 40 license = licenses.bsd2; 41 - maintainers = with maintainers; [ shamilton ]; 41 + maintainers = with maintainers; [ 42 + aschleck 43 + shamilton 44 + ]; 42 45 mainProgram = "anystyle"; 43 46 platforms = platforms.unix; 44 - # error: passing argument 2 of 'rb_hash_foreach' from incompatible pointer type [-Wincompatible-pointer-types] 45 - broken = true; 46 47 }; 47 48 }
+116 -1902
pkgs/tools/misc/anystyle-cli/gemset.nix
··· 1 1 { 2 - activesupport = { 2 + anystyle = { 3 3 dependencies = [ 4 - "concurrent-ruby" 5 - "i18n" 6 - "minitest" 7 - "tzinfo" 8 - "zeitwerk" 4 + "anystyle-data" 5 + "bibtex-ruby" 6 + "namae" 7 + "wapiti" 9 8 ]; 10 9 groups = [ 11 - "default" 12 10 "development" 13 11 "test" 14 12 ]; 15 13 platforms = [ ]; 16 14 source = { 17 - remotes = [ "https://rubygems.org" ]; 18 - sha256 = "02sh4q8izyfdnh7z2nj5mn5sklfvqgx9rrag5j3l51y8aqkrg2yk"; 19 - type = "gem"; 15 + fetchSubmodules = false; 16 + rev = "c6f5fb2fa6e8ce9456ad1e1e88d6bba5f3d7731d"; 17 + sha256 = "1fshijsay20dqcvjwrdifv6z1w4xyc3j2rn3648cvq57gjrmxwl2"; 18 + type = "git"; 19 + url = "https://github.com/inukshuk/anystyle.git"; 20 20 }; 21 - version = "6.0.3.2"; 21 + version = "1.6.0"; 22 22 }; 23 - anystyle = { 23 + anystyle-cli = { 24 24 dependencies = [ 25 - "anystyle-data" 26 - "bibtex-ruby" 25 + "anystyle" 27 26 "gli" 28 - "namae" 29 - "wapiti" 30 27 ]; 31 28 groups = [ "default" ]; 32 - platforms = [ 33 - { 34 - engine = "maglev"; 35 - } 36 - { 37 - engine = "maglev"; 38 - } 39 - { 40 - engine = "maglev"; 41 - version = "1.8"; 42 - } 43 - { 44 - engine = "maglev"; 45 - version = "1.8"; 46 - } 47 - { 48 - engine = "maglev"; 49 - version = "1.9"; 50 - } 51 - { 52 - engine = "maglev"; 53 - version = "1.9"; 54 - } 55 - { 56 - engine = "maglev"; 57 - version = "2.0"; 58 - } 59 - { 60 - engine = "maglev"; 61 - version = "2.0"; 62 - } 63 - { 64 - engine = "maglev"; 65 - version = "2.1"; 66 - } 67 - { 68 - engine = "maglev"; 69 - version = "2.1"; 70 - } 71 - { 72 - engine = "maglev"; 73 - version = "2.2"; 74 - } 75 - { 76 - engine = "maglev"; 77 - version = "2.2"; 78 - } 79 - { 80 - engine = "maglev"; 81 - version = "2.3"; 82 - } 83 - { 84 - engine = "maglev"; 85 - version = "2.3"; 86 - } 87 - { 88 - engine = "maglev"; 89 - version = "2.4"; 90 - } 91 - { 92 - engine = "maglev"; 93 - version = "2.4"; 94 - } 95 - { 96 - engine = "maglev"; 97 - version = "2.5"; 98 - } 99 - { 100 - engine = "maglev"; 101 - version = "2.5"; 102 - } 103 - { 104 - engine = "maglev"; 105 - version = "2.6"; 106 - } 107 - { 108 - engine = "maglev"; 109 - version = "2.6"; 110 - } 111 - { 112 - engine = "rbx"; 113 - } 114 - { 115 - engine = "rbx"; 116 - } 117 - { 118 - engine = "rbx"; 119 - version = "1.8"; 120 - } 121 - { 122 - engine = "rbx"; 123 - version = "1.9"; 124 - } 125 - { 126 - engine = "rbx"; 127 - version = "2.0"; 128 - } 129 - { 130 - engine = "rbx"; 131 - version = "2.1"; 132 - } 133 - { 134 - engine = "rbx"; 135 - version = "2.2"; 136 - } 137 - { 138 - engine = "rbx"; 139 - version = "2.3"; 140 - } 141 - { 142 - engine = "rbx"; 143 - version = "2.4"; 144 - } 145 - { 146 - engine = "rbx"; 147 - version = "2.5"; 148 - } 149 - { 150 - engine = "rbx"; 151 - version = "2.6"; 152 - } 153 - { 154 - engine = "ruby"; 155 - } 156 - { 157 - engine = "ruby"; 158 - } 159 - { 160 - engine = "ruby"; 161 - } 162 - { 163 - engine = "ruby"; 164 - version = "1.8"; 165 - } 166 - { 167 - engine = "ruby"; 168 - version = "1.8"; 169 - } 170 - { 171 - engine = "ruby"; 172 - version = "1.9"; 173 - } 174 - { 175 - engine = "ruby"; 176 - version = "1.9"; 177 - } 178 - { 179 - engine = "ruby"; 180 - version = "2.0"; 181 - } 182 - { 183 - engine = "ruby"; 184 - version = "2.0"; 185 - } 186 - { 187 - engine = "ruby"; 188 - version = "2.1"; 189 - } 190 - { 191 - engine = "ruby"; 192 - version = "2.1"; 193 - } 194 - { 195 - engine = "ruby"; 196 - version = "2.2"; 197 - } 198 - { 199 - engine = "ruby"; 200 - version = "2.2"; 201 - } 202 - { 203 - engine = "ruby"; 204 - version = "2.3"; 205 - } 206 - { 207 - engine = "ruby"; 208 - version = "2.3"; 209 - } 210 - { 211 - engine = "ruby"; 212 - version = "2.4"; 213 - } 214 - { 215 - engine = "ruby"; 216 - version = "2.4"; 217 - } 218 - { 219 - engine = "ruby"; 220 - version = "2.5"; 221 - } 222 - { 223 - engine = "ruby"; 224 - version = "2.5"; 225 - } 226 - { 227 - engine = "ruby"; 228 - version = "2.6"; 229 - } 230 - { 231 - engine = "ruby"; 232 - version = "2.6"; 233 - } 234 - ]; 29 + platforms = [ ]; 235 30 source = { 236 31 path = ./.; 237 32 type = "path"; 238 33 }; 239 - version = "1.3.10"; 34 + version = "1.5.0"; 240 35 }; 241 36 anystyle-data = { 242 37 groups = [ "default" ]; 243 - platforms = [ 244 - { 245 - engine = "maglev"; 246 - } 247 - { 248 - engine = "maglev"; 249 - } 250 - { 251 - engine = "maglev"; 252 - version = "1.8"; 253 - } 254 - { 255 - engine = "maglev"; 256 - version = "1.8"; 257 - } 258 - { 259 - engine = "maglev"; 260 - version = "1.9"; 261 - } 262 - { 263 - engine = "maglev"; 264 - version = "1.9"; 265 - } 266 - { 267 - engine = "maglev"; 268 - version = "2.0"; 269 - } 270 - { 271 - engine = "maglev"; 272 - version = "2.0"; 273 - } 274 - { 275 - engine = "maglev"; 276 - version = "2.1"; 277 - } 278 - { 279 - engine = "maglev"; 280 - version = "2.1"; 281 - } 282 - { 283 - engine = "maglev"; 284 - version = "2.2"; 285 - } 286 - { 287 - engine = "maglev"; 288 - version = "2.2"; 289 - } 290 - { 291 - engine = "maglev"; 292 - version = "2.3"; 293 - } 294 - { 295 - engine = "maglev"; 296 - version = "2.3"; 297 - } 298 - { 299 - engine = "maglev"; 300 - version = "2.4"; 301 - } 302 - { 303 - engine = "maglev"; 304 - version = "2.4"; 305 - } 306 - { 307 - engine = "maglev"; 308 - version = "2.5"; 309 - } 310 - { 311 - engine = "maglev"; 312 - version = "2.5"; 313 - } 314 - { 315 - engine = "maglev"; 316 - version = "2.6"; 317 - } 318 - { 319 - engine = "maglev"; 320 - version = "2.6"; 321 - } 322 - { 323 - engine = "rbx"; 324 - } 325 - { 326 - engine = "rbx"; 327 - } 328 - { 329 - engine = "rbx"; 330 - version = "1.8"; 331 - } 332 - { 333 - engine = "rbx"; 334 - version = "1.9"; 335 - } 336 - { 337 - engine = "rbx"; 338 - version = "2.0"; 339 - } 340 - { 341 - engine = "rbx"; 342 - version = "2.1"; 343 - } 344 - { 345 - engine = "rbx"; 346 - version = "2.2"; 347 - } 348 - { 349 - engine = "rbx"; 350 - version = "2.3"; 351 - } 352 - { 353 - engine = "rbx"; 354 - version = "2.4"; 355 - } 356 - { 357 - engine = "rbx"; 358 - version = "2.5"; 359 - } 360 - { 361 - engine = "rbx"; 362 - version = "2.6"; 363 - } 364 - { 365 - engine = "ruby"; 366 - } 367 - { 368 - engine = "ruby"; 369 - } 370 - { 371 - engine = "ruby"; 372 - } 373 - { 374 - engine = "ruby"; 375 - version = "1.8"; 376 - } 377 - { 378 - engine = "ruby"; 379 - version = "1.8"; 380 - } 381 - { 382 - engine = "ruby"; 383 - version = "1.9"; 384 - } 385 - { 386 - engine = "ruby"; 387 - version = "1.9"; 388 - } 389 - { 390 - engine = "ruby"; 391 - version = "2.0"; 392 - } 393 - { 394 - engine = "ruby"; 395 - version = "2.0"; 396 - } 397 - { 398 - engine = "ruby"; 399 - version = "2.1"; 400 - } 401 - { 402 - engine = "ruby"; 403 - version = "2.1"; 404 - } 405 - { 406 - engine = "ruby"; 407 - version = "2.2"; 408 - } 409 - { 410 - engine = "ruby"; 411 - version = "2.2"; 412 - } 413 - { 414 - engine = "ruby"; 415 - version = "2.3"; 416 - } 417 - { 418 - engine = "ruby"; 419 - version = "2.3"; 420 - } 421 - { 422 - engine = "ruby"; 423 - version = "2.4"; 424 - } 425 - { 426 - engine = "ruby"; 427 - version = "2.4"; 428 - } 429 - { 430 - engine = "ruby"; 431 - version = "2.5"; 432 - } 433 - { 434 - engine = "ruby"; 435 - version = "2.5"; 436 - } 437 - { 438 - engine = "ruby"; 439 - version = "2.6"; 440 - } 441 - { 442 - engine = "ruby"; 443 - version = "2.6"; 444 - } 445 - ]; 38 + platforms = [ ]; 446 39 source = { 447 40 remotes = [ "https://rubygems.org" ]; 448 - sha256 = "1ry6836mq48d85hjcfp7xiw0yk3ivpiwjvmdwv5jag30ijfyaccy"; 41 + sha256 = "0l28mxgcfdbcrb4w0vn293spwxff9ahcmxfs5cws2yq0w5x656y4"; 449 42 type = "gem"; 450 43 }; 451 - version = "1.2.0"; 44 + version = "1.3.0"; 452 45 }; 453 46 bibtex-ruby = { 454 - dependencies = [ "latex-decode" ]; 455 - groups = [ 456 - "default" 457 - "development" 458 - "test" 47 + dependencies = [ 48 + "latex-decode" 49 + "racc" 459 50 ]; 460 - platforms = [ 461 - { 462 - engine = "maglev"; 463 - } 464 - { 465 - engine = "maglev"; 466 - } 467 - { 468 - engine = "maglev"; 469 - version = "1.8"; 470 - } 471 - { 472 - engine = "maglev"; 473 - version = "1.8"; 474 - } 475 - { 476 - engine = "maglev"; 477 - version = "1.9"; 478 - } 479 - { 480 - engine = "maglev"; 481 - version = "1.9"; 482 - } 483 - { 484 - engine = "maglev"; 485 - version = "2.0"; 486 - } 487 - { 488 - engine = "maglev"; 489 - version = "2.0"; 490 - } 491 - { 492 - engine = "maglev"; 493 - version = "2.1"; 494 - } 495 - { 496 - engine = "maglev"; 497 - version = "2.1"; 498 - } 499 - { 500 - engine = "maglev"; 501 - version = "2.2"; 502 - } 503 - { 504 - engine = "maglev"; 505 - version = "2.2"; 506 - } 507 - { 508 - engine = "maglev"; 509 - version = "2.3"; 510 - } 511 - { 512 - engine = "maglev"; 513 - version = "2.3"; 514 - } 515 - { 516 - engine = "maglev"; 517 - version = "2.4"; 518 - } 519 - { 520 - engine = "maglev"; 521 - version = "2.4"; 522 - } 523 - { 524 - engine = "maglev"; 525 - version = "2.5"; 526 - } 527 - { 528 - engine = "maglev"; 529 - version = "2.5"; 530 - } 531 - { 532 - engine = "maglev"; 533 - version = "2.6"; 534 - } 535 - { 536 - engine = "maglev"; 537 - version = "2.6"; 538 - } 539 - { 540 - engine = "rbx"; 541 - } 542 - { 543 - engine = "rbx"; 544 - } 545 - { 546 - engine = "rbx"; 547 - version = "1.8"; 548 - } 549 - { 550 - engine = "rbx"; 551 - version = "1.9"; 552 - } 553 - { 554 - engine = "rbx"; 555 - version = "2.0"; 556 - } 557 - { 558 - engine = "rbx"; 559 - version = "2.1"; 560 - } 561 - { 562 - engine = "rbx"; 563 - version = "2.2"; 564 - } 565 - { 566 - engine = "rbx"; 567 - version = "2.3"; 568 - } 569 - { 570 - engine = "rbx"; 571 - version = "2.4"; 572 - } 573 - { 574 - engine = "rbx"; 575 - version = "2.5"; 576 - } 577 - { 578 - engine = "rbx"; 579 - version = "2.6"; 580 - } 581 - { 582 - engine = "ruby"; 583 - } 584 - { 585 - engine = "ruby"; 586 - } 587 - { 588 - engine = "ruby"; 589 - } 590 - { 591 - engine = "ruby"; 592 - version = "1.8"; 593 - } 594 - { 595 - engine = "ruby"; 596 - version = "1.8"; 597 - } 598 - { 599 - engine = "ruby"; 600 - version = "1.9"; 601 - } 602 - { 603 - engine = "ruby"; 604 - version = "1.9"; 605 - } 606 - { 607 - engine = "ruby"; 608 - version = "2.0"; 609 - } 610 - { 611 - engine = "ruby"; 612 - version = "2.0"; 613 - } 614 - { 615 - engine = "ruby"; 616 - version = "2.1"; 617 - } 618 - { 619 - engine = "ruby"; 620 - version = "2.1"; 621 - } 622 - { 623 - engine = "ruby"; 624 - version = "2.2"; 625 - } 626 - { 627 - engine = "ruby"; 628 - version = "2.2"; 629 - } 630 - { 631 - engine = "ruby"; 632 - version = "2.3"; 633 - } 634 - { 635 - engine = "ruby"; 636 - version = "2.3"; 637 - } 638 - { 639 - engine = "ruby"; 640 - version = "2.4"; 641 - } 642 - { 643 - engine = "ruby"; 644 - version = "2.4"; 645 - } 646 - { 647 - engine = "ruby"; 648 - version = "2.5"; 649 - } 650 - { 651 - engine = "ruby"; 652 - version = "2.5"; 653 - } 654 - { 655 - engine = "ruby"; 656 - version = "2.6"; 657 - } 658 - { 659 - engine = "ruby"; 660 - version = "2.6"; 661 - } 662 - ]; 51 + groups = [ "extra" ]; 52 + platforms = [ ]; 663 53 source = { 664 54 remotes = [ "https://rubygems.org" ]; 665 - sha256 = "00zwmmmjrbrxhajdvn1d4rnv2qw00arcj021cwyx3hl6dsv22l2w"; 55 + sha256 = "1ggx2j1gi46f1a6p45l1abk3nryfg1pj0cdlyrnilnqqpr1cfc96"; 666 56 type = "gem"; 667 57 }; 668 - version = "5.1.4"; 58 + version = "6.1.0"; 669 59 }; 670 60 builder = { 671 61 groups = [ "default" ]; 672 - platforms = [ 673 - { 674 - engine = "maglev"; 675 - } 676 - { 677 - engine = "maglev"; 678 - } 679 - { 680 - engine = "maglev"; 681 - version = "1.8"; 682 - } 683 - { 684 - engine = "maglev"; 685 - version = "1.8"; 686 - } 687 - { 688 - engine = "maglev"; 689 - version = "1.9"; 690 - } 691 - { 692 - engine = "maglev"; 693 - version = "1.9"; 694 - } 695 - { 696 - engine = "maglev"; 697 - version = "2.0"; 698 - } 699 - { 700 - engine = "maglev"; 701 - version = "2.0"; 702 - } 703 - { 704 - engine = "maglev"; 705 - version = "2.1"; 706 - } 707 - { 708 - engine = "maglev"; 709 - version = "2.1"; 710 - } 711 - { 712 - engine = "maglev"; 713 - version = "2.2"; 714 - } 715 - { 716 - engine = "maglev"; 717 - version = "2.2"; 718 - } 719 - { 720 - engine = "maglev"; 721 - version = "2.3"; 722 - } 723 - { 724 - engine = "maglev"; 725 - version = "2.3"; 726 - } 727 - { 728 - engine = "maglev"; 729 - version = "2.4"; 730 - } 731 - { 732 - engine = "maglev"; 733 - version = "2.4"; 734 - } 735 - { 736 - engine = "maglev"; 737 - version = "2.5"; 738 - } 739 - { 740 - engine = "maglev"; 741 - version = "2.5"; 742 - } 743 - { 744 - engine = "maglev"; 745 - version = "2.6"; 746 - } 747 - { 748 - engine = "maglev"; 749 - version = "2.6"; 750 - } 751 - { 752 - engine = "rbx"; 753 - } 754 - { 755 - engine = "rbx"; 756 - } 757 - { 758 - engine = "rbx"; 759 - version = "1.8"; 760 - } 761 - { 762 - engine = "rbx"; 763 - version = "1.9"; 764 - } 765 - { 766 - engine = "rbx"; 767 - version = "2.0"; 768 - } 769 - { 770 - engine = "rbx"; 771 - version = "2.1"; 772 - } 773 - { 774 - engine = "rbx"; 775 - version = "2.2"; 776 - } 777 - { 778 - engine = "rbx"; 779 - version = "2.3"; 780 - } 781 - { 782 - engine = "rbx"; 783 - version = "2.4"; 784 - } 785 - { 786 - engine = "rbx"; 787 - version = "2.5"; 788 - } 789 - { 790 - engine = "rbx"; 791 - version = "2.6"; 792 - } 793 - { 794 - engine = "ruby"; 795 - } 796 - { 797 - engine = "ruby"; 798 - } 799 - { 800 - engine = "ruby"; 801 - } 802 - { 803 - engine = "ruby"; 804 - version = "1.8"; 805 - } 806 - { 807 - engine = "ruby"; 808 - version = "1.8"; 809 - } 810 - { 811 - engine = "ruby"; 812 - version = "1.9"; 813 - } 814 - { 815 - engine = "ruby"; 816 - version = "1.9"; 817 - } 818 - { 819 - engine = "ruby"; 820 - version = "2.0"; 821 - } 822 - { 823 - engine = "ruby"; 824 - version = "2.0"; 825 - } 826 - { 827 - engine = "ruby"; 828 - version = "2.1"; 829 - } 830 - { 831 - engine = "ruby"; 832 - version = "2.1"; 833 - } 834 - { 835 - engine = "ruby"; 836 - version = "2.2"; 837 - } 838 - { 839 - engine = "ruby"; 840 - version = "2.2"; 841 - } 842 - { 843 - engine = "ruby"; 844 - version = "2.3"; 845 - } 846 - { 847 - engine = "ruby"; 848 - version = "2.3"; 849 - } 850 - { 851 - engine = "ruby"; 852 - version = "2.4"; 853 - } 854 - { 855 - engine = "ruby"; 856 - version = "2.4"; 857 - } 858 - { 859 - engine = "ruby"; 860 - version = "2.5"; 861 - } 862 - { 863 - engine = "ruby"; 864 - version = "2.5"; 865 - } 866 - { 867 - engine = "ruby"; 868 - version = "2.6"; 869 - } 870 - { 871 - engine = "ruby"; 872 - version = "2.6"; 873 - } 874 - ]; 875 - source = { 876 - remotes = [ "https://rubygems.org" ]; 877 - sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr"; 878 - type = "gem"; 879 - }; 880 - version = "3.2.4"; 881 - }; 882 - byebug = { 883 - groups = [ "debug" ]; 884 62 platforms = [ ]; 885 63 source = { 886 64 remotes = [ "https://rubygems.org" ]; 887 - sha256 = "0nx3yjf4xzdgb8jkmk2344081gqr22pgjqnmjg2q64mj5d6r9194"; 888 - type = "gem"; 889 - }; 890 - version = "11.1.3"; 891 - }; 892 - citeproc = { 893 - dependencies = [ "namae" ]; 894 - groups = [ 895 - "development" 896 - "test" 897 - ]; 898 - platforms = [ ]; 899 - source = { 900 - remotes = [ "https://rubygems.org" ]; 901 - sha256 = "13vl5sjmksk5a8kjcqnjxh7kn9gn1n4f9p1rvqfgsfhs54p0m6l2"; 65 + sha256 = "0pw3r2lyagsxkm71bf44v5b74f7l9r7di22brbyji9fwz791hya9"; 902 66 type = "gem"; 903 67 }; 904 - version = "1.0.10"; 68 + version = "3.3.0"; 905 69 }; 906 - concurrent-ruby = { 70 + date = { 907 71 groups = [ 72 + "debug" 908 73 "default" 909 - "development" 910 - "test" 74 + "extra" 911 75 ]; 912 76 platforms = [ ]; 913 77 source = { 914 78 remotes = [ "https://rubygems.org" ]; 915 - sha256 = "1vnxrbhi7cq3p4y2v9iwd10v1c7l15is4var14hwnb2jip4fyjzz"; 79 + sha256 = "0kz6mc4b9m49iaans6cbx031j9y7ldghpi5fzsdh0n3ixwa8w9mz"; 916 80 type = "gem"; 917 81 }; 918 - version = "1.1.7"; 82 + version = "3.4.1"; 919 83 }; 920 - diff-lcs = { 921 - groups = [ 922 - "default" 923 - "development" 924 - "test" 84 + debug = { 85 + dependencies = [ 86 + "irb" 87 + "reline" 925 88 ]; 89 + groups = [ "debug" ]; 926 90 platforms = [ ]; 927 91 source = { 928 92 remotes = [ "https://rubygems.org" ]; 929 - sha256 = "0m925b8xc6kbpnif9dldna24q1szg4mk0fvszrki837pfn46afmz"; 93 + sha256 = "1977s95s9ns6mpbhg68pg6ggnpxxf8wly4244ihrx5vm92kqrqhi"; 930 94 type = "gem"; 931 95 }; 932 - version = "1.4.4"; 96 + version = "1.10.0"; 933 97 }; 934 - docile = { 98 + erb = { 935 99 groups = [ 936 - "coverage" 100 + "debug" 937 101 "default" 938 102 ]; 939 103 platforms = [ ]; 940 104 source = { 941 105 remotes = [ "https://rubygems.org" ]; 942 - sha256 = "0qrwiyagxzl8zlx3dafb0ay8l14ib7imb2rsmx70i5cp420v8gif"; 106 + sha256 = "08rc8pzri3g7c85c76x84j05hkk12jvalrm2m3n97k1n7f03j13n"; 943 107 type = "gem"; 944 108 }; 945 - version = "1.3.2"; 946 - }; 947 - edtf = { 948 - dependencies = [ "activesupport" ]; 949 - groups = [ 950 - "development" 951 - "test" 952 - ]; 953 - platforms = [ ]; 954 - source = { 955 - remotes = [ "https://rubygems.org" ]; 956 - sha256 = "0xknzamagsx68iq7zdiswr077sxirig77yggbcsw51m8365ajzpc"; 957 - type = "gem"; 958 - }; 959 - version = "3.0.5"; 109 + version = "5.0.1"; 960 110 }; 961 111 gli = { 112 + dependencies = [ "ostruct" ]; 962 113 groups = [ "default" ]; 963 - platforms = [ 964 - { 965 - engine = "maglev"; 966 - } 967 - { 968 - engine = "maglev"; 969 - } 970 - { 971 - engine = "maglev"; 972 - version = "1.8"; 973 - } 974 - { 975 - engine = "maglev"; 976 - version = "1.8"; 977 - } 978 - { 979 - engine = "maglev"; 980 - version = "1.9"; 981 - } 982 - { 983 - engine = "maglev"; 984 - version = "1.9"; 985 - } 986 - { 987 - engine = "maglev"; 988 - version = "2.0"; 989 - } 990 - { 991 - engine = "maglev"; 992 - version = "2.0"; 993 - } 994 - { 995 - engine = "maglev"; 996 - version = "2.1"; 997 - } 998 - { 999 - engine = "maglev"; 1000 - version = "2.1"; 1001 - } 1002 - { 1003 - engine = "maglev"; 1004 - version = "2.2"; 1005 - } 1006 - { 1007 - engine = "maglev"; 1008 - version = "2.2"; 1009 - } 1010 - { 1011 - engine = "maglev"; 1012 - version = "2.3"; 1013 - } 1014 - { 1015 - engine = "maglev"; 1016 - version = "2.3"; 1017 - } 1018 - { 1019 - engine = "maglev"; 1020 - version = "2.4"; 1021 - } 1022 - { 1023 - engine = "maglev"; 1024 - version = "2.4"; 1025 - } 1026 - { 1027 - engine = "maglev"; 1028 - version = "2.5"; 1029 - } 1030 - { 1031 - engine = "maglev"; 1032 - version = "2.5"; 1033 - } 1034 - { 1035 - engine = "maglev"; 1036 - version = "2.6"; 1037 - } 1038 - { 1039 - engine = "maglev"; 1040 - version = "2.6"; 1041 - } 1042 - { 1043 - engine = "rbx"; 1044 - } 1045 - { 1046 - engine = "rbx"; 1047 - } 1048 - { 1049 - engine = "rbx"; 1050 - version = "1.8"; 1051 - } 1052 - { 1053 - engine = "rbx"; 1054 - version = "1.9"; 1055 - } 1056 - { 1057 - engine = "rbx"; 1058 - version = "2.0"; 1059 - } 1060 - { 1061 - engine = "rbx"; 1062 - version = "2.1"; 1063 - } 1064 - { 1065 - engine = "rbx"; 1066 - version = "2.2"; 1067 - } 1068 - { 1069 - engine = "rbx"; 1070 - version = "2.3"; 1071 - } 1072 - { 1073 - engine = "rbx"; 1074 - version = "2.4"; 1075 - } 1076 - { 1077 - engine = "rbx"; 1078 - version = "2.5"; 1079 - } 1080 - { 1081 - engine = "rbx"; 1082 - version = "2.6"; 1083 - } 1084 - { 1085 - engine = "ruby"; 1086 - } 1087 - { 1088 - engine = "ruby"; 1089 - } 1090 - { 1091 - engine = "ruby"; 1092 - } 1093 - { 1094 - engine = "ruby"; 1095 - version = "1.8"; 1096 - } 1097 - { 1098 - engine = "ruby"; 1099 - version = "1.8"; 1100 - } 1101 - { 1102 - engine = "ruby"; 1103 - version = "1.9"; 1104 - } 1105 - { 1106 - engine = "ruby"; 1107 - version = "1.9"; 1108 - } 1109 - { 1110 - engine = "ruby"; 1111 - version = "2.0"; 1112 - } 1113 - { 1114 - engine = "ruby"; 1115 - version = "2.0"; 1116 - } 1117 - { 1118 - engine = "ruby"; 1119 - version = "2.1"; 1120 - } 1121 - { 1122 - engine = "ruby"; 1123 - version = "2.1"; 1124 - } 1125 - { 1126 - engine = "ruby"; 1127 - version = "2.2"; 1128 - } 1129 - { 1130 - engine = "ruby"; 1131 - version = "2.2"; 1132 - } 1133 - { 1134 - engine = "ruby"; 1135 - version = "2.3"; 1136 - } 1137 - { 1138 - engine = "ruby"; 1139 - version = "2.3"; 1140 - } 1141 - { 1142 - engine = "ruby"; 1143 - version = "2.4"; 1144 - } 1145 - { 1146 - engine = "ruby"; 1147 - version = "2.4"; 1148 - } 1149 - { 1150 - engine = "ruby"; 1151 - version = "2.5"; 1152 - } 1153 - { 1154 - engine = "ruby"; 1155 - version = "2.5"; 1156 - } 1157 - { 1158 - engine = "ruby"; 1159 - version = "2.6"; 1160 - } 1161 - { 1162 - engine = "ruby"; 1163 - version = "2.6"; 1164 - } 1165 - ]; 1166 - source = { 1167 - remotes = [ "https://rubygems.org" ]; 1168 - sha256 = "0q598mvl20isn3ja1ya0p72svmqwx3m6fjp5slnv0b2c5mh0ahvv"; 1169 - type = "gem"; 1170 - }; 1171 - version = "2.19.2"; 1172 - }; 1173 - gnuplot = { 1174 - groups = [ "profile" ]; 1175 114 platforms = [ ]; 1176 115 source = { 1177 116 remotes = [ "https://rubygems.org" ]; 1178 - sha256 = "1cvb84lahhy6qxkkgg0pfk9b85qrb1by2p3jlpqgczl6am58vhnj"; 117 + sha256 = "1c2x5wh3d3mz8vg5bs7c5is0zvc56j6a2b4biv5z1w5hi1n8s3jq"; 1179 118 type = "gem"; 1180 119 }; 1181 - version = "2.6.2"; 120 + version = "2.22.2"; 1182 121 }; 1183 - i18n = { 1184 - dependencies = [ "concurrent-ruby" ]; 122 + io-console = { 1185 123 groups = [ 124 + "debug" 1186 125 "default" 1187 - "development" 1188 - "test" 1189 126 ]; 1190 127 platforms = [ ]; 1191 128 source = { 1192 129 remotes = [ "https://rubygems.org" ]; 1193 - sha256 = "153sx77p16vawrs4qpkv7qlzf9v5fks4g7xqcj1dwk40i6g7rfzk"; 130 + sha256 = "18pgvl7lfjpichdfh1g50rpz0zpaqrpr52ybn9liv1v9pjn9ysnd"; 1194 131 type = "gem"; 1195 132 }; 1196 - version = "1.8.5"; 133 + version = "0.8.0"; 1197 134 }; 1198 - language_detector = { 1199 - groups = [ 1200 - "development" 1201 - "test" 135 + irb = { 136 + dependencies = [ 137 + "pp" 138 + "rdoc" 139 + "reline" 1202 140 ]; 1203 - platforms = [ ]; 1204 - source = { 1205 - fetchSubmodules = false; 1206 - rev = "89102790194150b3a8110ce691f9989b8ce70f8d"; 1207 - sha256 = "0wxs9i0wqmwysrz1c1i85i4f670m217y12rj5slcmd1y4ylsmvyi"; 1208 - type = "git"; 1209 - url = "https://github.com/feedbackmine/language_detector.git"; 1210 - }; 1211 - version = "0.1.2"; 1212 - }; 1213 - latex-decode = { 1214 141 groups = [ 142 + "debug" 1215 143 "default" 1216 - "development" 1217 - "test" 1218 144 ]; 1219 - platforms = [ 1220 - { 1221 - engine = "maglev"; 1222 - } 1223 - { 1224 - engine = "maglev"; 1225 - } 1226 - { 1227 - engine = "maglev"; 1228 - version = "1.8"; 1229 - } 1230 - { 1231 - engine = "maglev"; 1232 - version = "1.8"; 1233 - } 1234 - { 1235 - engine = "maglev"; 1236 - version = "1.9"; 1237 - } 1238 - { 1239 - engine = "maglev"; 1240 - version = "1.9"; 1241 - } 1242 - { 1243 - engine = "maglev"; 1244 - version = "2.0"; 1245 - } 1246 - { 1247 - engine = "maglev"; 1248 - version = "2.0"; 1249 - } 1250 - { 1251 - engine = "maglev"; 1252 - version = "2.1"; 1253 - } 1254 - { 1255 - engine = "maglev"; 1256 - version = "2.1"; 1257 - } 1258 - { 1259 - engine = "maglev"; 1260 - version = "2.2"; 1261 - } 1262 - { 1263 - engine = "maglev"; 1264 - version = "2.2"; 1265 - } 1266 - { 1267 - engine = "maglev"; 1268 - version = "2.3"; 1269 - } 1270 - { 1271 - engine = "maglev"; 1272 - version = "2.3"; 1273 - } 1274 - { 1275 - engine = "maglev"; 1276 - version = "2.4"; 1277 - } 1278 - { 1279 - engine = "maglev"; 1280 - version = "2.4"; 1281 - } 1282 - { 1283 - engine = "maglev"; 1284 - version = "2.5"; 1285 - } 1286 - { 1287 - engine = "maglev"; 1288 - version = "2.5"; 1289 - } 1290 - { 1291 - engine = "maglev"; 1292 - version = "2.6"; 1293 - } 1294 - { 1295 - engine = "maglev"; 1296 - version = "2.6"; 1297 - } 1298 - { 1299 - engine = "rbx"; 1300 - } 1301 - { 1302 - engine = "rbx"; 1303 - } 1304 - { 1305 - engine = "rbx"; 1306 - version = "1.8"; 1307 - } 1308 - { 1309 - engine = "rbx"; 1310 - version = "1.9"; 1311 - } 1312 - { 1313 - engine = "rbx"; 1314 - version = "2.0"; 1315 - } 1316 - { 1317 - engine = "rbx"; 1318 - version = "2.1"; 1319 - } 1320 - { 1321 - engine = "rbx"; 1322 - version = "2.2"; 1323 - } 1324 - { 1325 - engine = "rbx"; 1326 - version = "2.3"; 1327 - } 1328 - { 1329 - engine = "rbx"; 1330 - version = "2.4"; 1331 - } 1332 - { 1333 - engine = "rbx"; 1334 - version = "2.5"; 1335 - } 1336 - { 1337 - engine = "rbx"; 1338 - version = "2.6"; 1339 - } 1340 - { 1341 - engine = "ruby"; 1342 - } 1343 - { 1344 - engine = "ruby"; 1345 - } 1346 - { 1347 - engine = "ruby"; 1348 - } 1349 - { 1350 - engine = "ruby"; 1351 - version = "1.8"; 1352 - } 1353 - { 1354 - engine = "ruby"; 1355 - version = "1.8"; 1356 - } 1357 - { 1358 - engine = "ruby"; 1359 - version = "1.9"; 1360 - } 1361 - { 1362 - engine = "ruby"; 1363 - version = "1.9"; 1364 - } 1365 - { 1366 - engine = "ruby"; 1367 - version = "2.0"; 1368 - } 1369 - { 1370 - engine = "ruby"; 1371 - version = "2.0"; 1372 - } 1373 - { 1374 - engine = "ruby"; 1375 - version = "2.1"; 1376 - } 1377 - { 1378 - engine = "ruby"; 1379 - version = "2.1"; 1380 - } 1381 - { 1382 - engine = "ruby"; 1383 - version = "2.2"; 1384 - } 1385 - { 1386 - engine = "ruby"; 1387 - version = "2.2"; 1388 - } 1389 - { 1390 - engine = "ruby"; 1391 - version = "2.3"; 1392 - } 1393 - { 1394 - engine = "ruby"; 1395 - version = "2.3"; 1396 - } 1397 - { 1398 - engine = "ruby"; 1399 - version = "2.4"; 1400 - } 1401 - { 1402 - engine = "ruby"; 1403 - version = "2.4"; 1404 - } 1405 - { 1406 - engine = "ruby"; 1407 - version = "2.5"; 1408 - } 1409 - { 1410 - engine = "ruby"; 1411 - version = "2.5"; 1412 - } 1413 - { 1414 - engine = "ruby"; 1415 - version = "2.6"; 1416 - } 1417 - { 1418 - engine = "ruby"; 1419 - version = "2.6"; 1420 - } 1421 - ]; 1422 - source = { 1423 - remotes = [ "https://rubygems.org" ]; 1424 - sha256 = "0dqanr69as05vdyp9gx9737w3g44rhyk7x96bh9x01fnf1yalyzd"; 1425 - type = "gem"; 1426 - }; 1427 - version = "0.3.1"; 1428 - }; 1429 - lmdb = { 1430 - groups = [ "extra" ]; 1431 145 platforms = [ ]; 1432 146 source = { 1433 147 remotes = [ "https://rubygems.org" ]; 1434 - sha256 = "0qk2ycgyyk052dvbgik35mr4n9im4k1j6v7anbjqhx52y5f07sfg"; 148 + sha256 = "1fpxa2m83rb7xlzs57daqwnzqjmz6j35xr7zb15s73975sak4br2"; 1435 149 type = "gem"; 1436 150 }; 1437 - version = "0.5.3"; 151 + version = "1.15.2"; 1438 152 }; 1439 - minitest = { 153 + latex-decode = { 1440 154 groups = [ 1441 155 "default" 1442 - "development" 1443 - "test" 156 + "extra" 1444 157 ]; 1445 158 platforms = [ ]; 1446 159 source = { 1447 160 remotes = [ "https://rubygems.org" ]; 1448 - sha256 = "09bz9nsznxgaf06cx3b5z71glgl0hdw469gqx3w7bqijgrb55p5g"; 161 + sha256 = "1y5xn3zwghpqr6lvs4s0mn5knms8zw3zk7jb58zkkiagb386nq72"; 1449 162 type = "gem"; 1450 163 }; 1451 - version = "5.14.1"; 164 + version = "0.4.0"; 1452 165 }; 1453 166 namae = { 167 + dependencies = [ "racc" ]; 1454 168 groups = [ 1455 169 "default" 1456 - "development" 1457 - "test" 170 + "extra" 1458 171 ]; 1459 - platforms = [ 1460 - { 1461 - engine = "maglev"; 1462 - } 1463 - { 1464 - engine = "maglev"; 1465 - } 1466 - { 1467 - engine = "maglev"; 1468 - version = "1.8"; 1469 - } 1470 - { 1471 - engine = "maglev"; 1472 - version = "1.8"; 1473 - } 1474 - { 1475 - engine = "maglev"; 1476 - version = "1.9"; 1477 - } 1478 - { 1479 - engine = "maglev"; 1480 - version = "1.9"; 1481 - } 1482 - { 1483 - engine = "maglev"; 1484 - version = "2.0"; 1485 - } 1486 - { 1487 - engine = "maglev"; 1488 - version = "2.0"; 1489 - } 1490 - { 1491 - engine = "maglev"; 1492 - version = "2.1"; 1493 - } 1494 - { 1495 - engine = "maglev"; 1496 - version = "2.1"; 1497 - } 1498 - { 1499 - engine = "maglev"; 1500 - version = "2.2"; 1501 - } 1502 - { 1503 - engine = "maglev"; 1504 - version = "2.2"; 1505 - } 1506 - { 1507 - engine = "maglev"; 1508 - version = "2.3"; 1509 - } 1510 - { 1511 - engine = "maglev"; 1512 - version = "2.3"; 1513 - } 1514 - { 1515 - engine = "maglev"; 1516 - version = "2.4"; 1517 - } 1518 - { 1519 - engine = "maglev"; 1520 - version = "2.4"; 1521 - } 1522 - { 1523 - engine = "maglev"; 1524 - version = "2.5"; 1525 - } 1526 - { 1527 - engine = "maglev"; 1528 - version = "2.5"; 1529 - } 1530 - { 1531 - engine = "maglev"; 1532 - version = "2.6"; 1533 - } 1534 - { 1535 - engine = "maglev"; 1536 - version = "2.6"; 1537 - } 1538 - { 1539 - engine = "rbx"; 1540 - } 1541 - { 1542 - engine = "rbx"; 1543 - } 1544 - { 1545 - engine = "rbx"; 1546 - version = "1.8"; 1547 - } 1548 - { 1549 - engine = "rbx"; 1550 - version = "1.9"; 1551 - } 1552 - { 1553 - engine = "rbx"; 1554 - version = "2.0"; 1555 - } 1556 - { 1557 - engine = "rbx"; 1558 - version = "2.1"; 1559 - } 1560 - { 1561 - engine = "rbx"; 1562 - version = "2.2"; 1563 - } 1564 - { 1565 - engine = "rbx"; 1566 - version = "2.3"; 1567 - } 1568 - { 1569 - engine = "rbx"; 1570 - version = "2.4"; 1571 - } 1572 - { 1573 - engine = "rbx"; 1574 - version = "2.5"; 1575 - } 1576 - { 1577 - engine = "rbx"; 1578 - version = "2.6"; 1579 - } 1580 - { 1581 - engine = "ruby"; 1582 - } 1583 - { 1584 - engine = "ruby"; 1585 - } 1586 - { 1587 - engine = "ruby"; 1588 - } 1589 - { 1590 - engine = "ruby"; 1591 - version = "1.8"; 1592 - } 1593 - { 1594 - engine = "ruby"; 1595 - version = "1.8"; 1596 - } 1597 - { 1598 - engine = "ruby"; 1599 - version = "1.9"; 1600 - } 1601 - { 1602 - engine = "ruby"; 1603 - version = "1.9"; 1604 - } 1605 - { 1606 - engine = "ruby"; 1607 - version = "2.0"; 1608 - } 1609 - { 1610 - engine = "ruby"; 1611 - version = "2.0"; 1612 - } 1613 - { 1614 - engine = "ruby"; 1615 - version = "2.1"; 1616 - } 1617 - { 1618 - engine = "ruby"; 1619 - version = "2.1"; 1620 - } 1621 - { 1622 - engine = "ruby"; 1623 - version = "2.2"; 1624 - } 1625 - { 1626 - engine = "ruby"; 1627 - version = "2.2"; 1628 - } 1629 - { 1630 - engine = "ruby"; 1631 - version = "2.3"; 1632 - } 1633 - { 1634 - engine = "ruby"; 1635 - version = "2.3"; 1636 - } 1637 - { 1638 - engine = "ruby"; 1639 - version = "2.4"; 1640 - } 1641 - { 1642 - engine = "ruby"; 1643 - version = "2.4"; 1644 - } 1645 - { 1646 - engine = "ruby"; 1647 - version = "2.5"; 1648 - } 1649 - { 1650 - engine = "ruby"; 1651 - version = "2.5"; 1652 - } 1653 - { 1654 - engine = "ruby"; 1655 - version = "2.6"; 1656 - } 1657 - { 1658 - engine = "ruby"; 1659 - version = "2.6"; 1660 - } 1661 - ]; 1662 - source = { 1663 - remotes = [ "https://rubygems.org" ]; 1664 - sha256 = "00w0dgvmdy8lw2b5q9zvhqd5k98a192vdmka96qngi9cvnsh5snw"; 1665 - type = "gem"; 1666 - }; 1667 - version = "1.0.1"; 1668 - }; 1669 - rake = { 1670 - groups = [ 1671 - "development" 1672 - "test" 1673 - ]; 1674 - platforms = [ ]; 1675 - source = { 1676 - remotes = [ "https://rubygems.org" ]; 1677 - sha256 = "0w6qza25bq1s825faaglkx1k6d59aiyjjk3yw3ip5sb463mhhai9"; 1678 - type = "gem"; 1679 - }; 1680 - version = "13.0.1"; 1681 - }; 1682 - redis = { 1683 - groups = [ "extra" ]; 1684 172 platforms = [ ]; 1685 173 source = { 1686 174 remotes = [ "https://rubygems.org" ]; 1687 - sha256 = "19hm66kw5vx1lmlh8bj7rxlddyj0vfp11ajw9njhrmn8173d0vb5"; 175 + sha256 = "17fmp6p74ai2w984xayv3kz2nh44w81hqqvn4cfrim3g115wwh9m"; 1688 176 type = "gem"; 1689 177 }; 1690 - version = "4.2.1"; 178 + version = "1.2.0"; 1691 179 }; 1692 - redis-namespace = { 1693 - dependencies = [ "redis" ]; 1694 - groups = [ "extra" ]; 180 + ostruct = { 181 + groups = [ "default" ]; 1695 182 platforms = [ ]; 1696 183 source = { 1697 184 remotes = [ "https://rubygems.org" ]; 1698 - sha256 = "05i6s898z5w31z385cba1683pgg5nnmj4m686cbravg7j4pgbcgv"; 185 + sha256 = "05xqijcf80sza5pnlp1c8whdaay8x5dc13214ngh790zrizgp8q9"; 1699 186 type = "gem"; 1700 187 }; 1701 - version = "1.8.0"; 188 + version = "0.6.1"; 1702 189 }; 1703 - rspec = { 1704 - dependencies = [ 1705 - "rspec-core" 1706 - "rspec-expectations" 1707 - "rspec-mocks" 1708 - ]; 190 + pp = { 191 + dependencies = [ "prettyprint" ]; 1709 192 groups = [ 1710 - "development" 1711 - "test" 1712 - ]; 1713 - platforms = [ ]; 1714 - source = { 1715 - remotes = [ "https://rubygems.org" ]; 1716 - sha256 = "1hzsig4pi9ybr0xl5540m1swiyxa74c8h09225y5sdh2rjkkg84h"; 1717 - type = "gem"; 1718 - }; 1719 - version = "3.9.0"; 1720 - }; 1721 - rspec-core = { 1722 - dependencies = [ "rspec-support" ]; 1723 - groups = [ 193 + "debug" 1724 194 "default" 1725 - "development" 1726 - "test" 1727 195 ]; 1728 196 platforms = [ ]; 1729 197 source = { 1730 198 remotes = [ "https://rubygems.org" ]; 1731 - sha256 = "1xndkv5cz763wh30x7hdqw6k7zs8xfh0f86amra9agwn44pcqs0y"; 199 + sha256 = "1zxnfxjni0r9l2x42fyq0sqpnaf5nakjbap8irgik4kg1h9c6zll"; 1732 200 type = "gem"; 1733 201 }; 1734 - version = "3.9.2"; 202 + version = "0.6.2"; 1735 203 }; 1736 - rspec-expectations = { 1737 - dependencies = [ 1738 - "diff-lcs" 1739 - "rspec-support" 1740 - ]; 204 + prettyprint = { 1741 205 groups = [ 206 + "debug" 1742 207 "default" 1743 - "development" 1744 - "test" 1745 208 ]; 1746 209 platforms = [ ]; 1747 210 source = { 1748 211 remotes = [ "https://rubygems.org" ]; 1749 - sha256 = "1bxkv25qmy39jqrdx35bfgw00g24qkssail9jlljm7hywbqvr9bb"; 212 + sha256 = "14zicq3plqi217w6xahv7b8f7aj5kpxv1j1w98344ix9h5ay3j9b"; 1750 213 type = "gem"; 1751 214 }; 1752 - version = "3.9.2"; 215 + version = "0.2.0"; 1753 216 }; 1754 - rspec-mocks = { 217 + psych = { 1755 218 dependencies = [ 1756 - "diff-lcs" 1757 - "rspec-support" 219 + "date" 220 + "stringio" 1758 221 ]; 1759 222 groups = [ 223 + "debug" 1760 224 "default" 1761 - "development" 1762 - "test" 1763 225 ]; 1764 226 platforms = [ ]; 1765 227 source = { 1766 228 remotes = [ "https://rubygems.org" ]; 1767 - sha256 = "19vmdqym1v2g1zbdnq37zwmyj87y9yc9ijwc8js55igvbb9hx0mr"; 229 + sha256 = "0vii1xc7x81hicdbp7dlllhmbw5w3jy20shj696n0vfbbnm2hhw1"; 1768 230 type = "gem"; 1769 231 }; 1770 - version = "3.9.1"; 232 + version = "5.2.6"; 1771 233 }; 1772 - rspec-support = { 234 + racc = { 1773 235 groups = [ 1774 236 "default" 1775 - "development" 1776 - "test" 237 + "extra" 1777 238 ]; 1778 239 platforms = [ ]; 1779 240 source = { 1780 241 remotes = [ "https://rubygems.org" ]; 1781 - sha256 = "0dandh2fy1dfkjk8jf9v4azbbma6968bhh06hddv0yqqm8108jir"; 1782 - type = "gem"; 1783 - }; 1784 - version = "3.9.3"; 1785 - }; 1786 - ruby-prof = { 1787 - groups = [ "profile" ]; 1788 - platforms = [ ]; 1789 - source = { 1790 - remotes = [ "https://rubygems.org" ]; 1791 - sha256 = "12cd91m08ih0imfpy4k87618hd4mhyz291a6bx2hcskza4nf6d27"; 242 + sha256 = "0byn0c9nkahsl93y9ln5bysq4j31q8xkf2ws42swighxd4lnjzsa"; 1792 243 type = "gem"; 1793 244 }; 1794 - version = "1.4.1"; 245 + version = "1.8.1"; 1795 246 }; 1796 - simplecov = { 247 + rdoc = { 1797 248 dependencies = [ 1798 - "docile" 1799 - "simplecov-html" 249 + "erb" 250 + "psych" 1800 251 ]; 1801 - groups = [ "coverage" ]; 1802 - platforms = [ ]; 1803 - source = { 1804 - remotes = [ "https://rubygems.org" ]; 1805 - sha256 = "1b082xrklq6k755cc3rzpnfdjv5338rlky9him36jasw8s9q68mr"; 1806 - type = "gem"; 1807 - }; 1808 - version = "0.19.0"; 1809 - }; 1810 - simplecov-html = { 1811 252 groups = [ 1812 - "coverage" 253 + "debug" 1813 254 "default" 1814 255 ]; 1815 256 platforms = [ ]; 1816 257 source = { 1817 258 remotes = [ "https://rubygems.org" ]; 1818 - sha256 = "1v7b4mf7njw8kv4ghl4q7mwz3q0flbld7v8blp4m4m3n3aq11bn9"; 259 + sha256 = "1nyp5vc9nm46nc3aq58f2lackgbip4ynxmznzi1qg6qjsxcdwiic"; 1819 260 type = "gem"; 1820 261 }; 1821 - version = "0.12.2"; 262 + version = "6.14.0"; 1822 263 }; 1823 - thread_safe = { 264 + reline = { 265 + dependencies = [ "io-console" ]; 1824 266 groups = [ 267 + "debug" 1825 268 "default" 1826 - "development" 1827 - "test" 1828 269 ]; 1829 270 platforms = [ ]; 1830 271 source = { 1831 272 remotes = [ "https://rubygems.org" ]; 1832 - sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy"; 273 + sha256 = "1yvm0svcdk6377ng6l00g39ldkjijbqg4whdg2zcsa8hrgbwkz0s"; 1833 274 type = "gem"; 1834 275 }; 1835 - version = "0.3.6"; 276 + version = "0.6.1"; 1836 277 }; 1837 - tzinfo = { 1838 - dependencies = [ "thread_safe" ]; 1839 - groups = [ 1840 - "default" 1841 - "development" 1842 - "test" 1843 - ]; 278 + rexml = { 279 + groups = [ "default" ]; 1844 280 platforms = [ ]; 1845 281 source = { 1846 282 remotes = [ "https://rubygems.org" ]; 1847 - sha256 = "1i3jh086w1kbdj3k5l60lc3nwbanmzdf8yjj3mlrx9b2gjjxhi9r"; 283 + sha256 = "1jmbf6lf7pcyacpb939xjjpn1f84c3nw83dy3p1lwjx0l2ljfif7"; 1848 284 type = "gem"; 1849 285 }; 1850 - version = "1.2.7"; 286 + version = "3.4.1"; 1851 287 }; 1852 - unicode-scripts = { 288 + stringio = { 1853 289 groups = [ 1854 - "development" 1855 - "test" 290 + "debug" 291 + "default" 292 + "extra" 1856 293 ]; 1857 294 platforms = [ ]; 1858 295 source = { 1859 296 remotes = [ "https://rubygems.org" ]; 1860 - sha256 = "04xfy4f61xf7qnbfa68aqscmyxk7wx3swn571cijsfqalhz8swjg"; 297 + sha256 = "1yh78pg6lm28c3k0pfd2ipskii1fsraq46m6zjs5yc9a4k5vfy2v"; 1861 298 type = "gem"; 1862 299 }; 1863 - version = "1.6.0"; 300 + version = "3.1.7"; 1864 301 }; 1865 302 wapiti = { 1866 - dependencies = [ "builder" ]; 1867 - groups = [ "default" ]; 1868 - platforms = [ 1869 - { 1870 - engine = "maglev"; 1871 - } 1872 - { 1873 - engine = "maglev"; 1874 - } 1875 - { 1876 - engine = "maglev"; 1877 - version = "1.8"; 1878 - } 1879 - { 1880 - engine = "maglev"; 1881 - version = "1.8"; 1882 - } 1883 - { 1884 - engine = "maglev"; 1885 - version = "1.9"; 1886 - } 1887 - { 1888 - engine = "maglev"; 1889 - version = "1.9"; 1890 - } 1891 - { 1892 - engine = "maglev"; 1893 - version = "2.0"; 1894 - } 1895 - { 1896 - engine = "maglev"; 1897 - version = "2.0"; 1898 - } 1899 - { 1900 - engine = "maglev"; 1901 - version = "2.1"; 1902 - } 1903 - { 1904 - engine = "maglev"; 1905 - version = "2.1"; 1906 - } 1907 - { 1908 - engine = "maglev"; 1909 - version = "2.2"; 1910 - } 1911 - { 1912 - engine = "maglev"; 1913 - version = "2.2"; 1914 - } 1915 - { 1916 - engine = "maglev"; 1917 - version = "2.3"; 1918 - } 1919 - { 1920 - engine = "maglev"; 1921 - version = "2.3"; 1922 - } 1923 - { 1924 - engine = "maglev"; 1925 - version = "2.4"; 1926 - } 1927 - { 1928 - engine = "maglev"; 1929 - version = "2.4"; 1930 - } 1931 - { 1932 - engine = "maglev"; 1933 - version = "2.5"; 1934 - } 1935 - { 1936 - engine = "maglev"; 1937 - version = "2.5"; 1938 - } 1939 - { 1940 - engine = "maglev"; 1941 - version = "2.6"; 1942 - } 1943 - { 1944 - engine = "maglev"; 1945 - version = "2.6"; 1946 - } 1947 - { 1948 - engine = "rbx"; 1949 - } 1950 - { 1951 - engine = "rbx"; 1952 - } 1953 - { 1954 - engine = "rbx"; 1955 - version = "1.8"; 1956 - } 1957 - { 1958 - engine = "rbx"; 1959 - version = "1.9"; 1960 - } 1961 - { 1962 - engine = "rbx"; 1963 - version = "2.0"; 1964 - } 1965 - { 1966 - engine = "rbx"; 1967 - version = "2.1"; 1968 - } 1969 - { 1970 - engine = "rbx"; 1971 - version = "2.2"; 1972 - } 1973 - { 1974 - engine = "rbx"; 1975 - version = "2.3"; 1976 - } 1977 - { 1978 - engine = "rbx"; 1979 - version = "2.4"; 1980 - } 1981 - { 1982 - engine = "rbx"; 1983 - version = "2.5"; 1984 - } 1985 - { 1986 - engine = "rbx"; 1987 - version = "2.6"; 1988 - } 1989 - { 1990 - engine = "ruby"; 1991 - } 1992 - { 1993 - engine = "ruby"; 1994 - } 1995 - { 1996 - engine = "ruby"; 1997 - } 1998 - { 1999 - engine = "ruby"; 2000 - version = "1.8"; 2001 - } 2002 - { 2003 - engine = "ruby"; 2004 - version = "1.8"; 2005 - } 2006 - { 2007 - engine = "ruby"; 2008 - version = "1.9"; 2009 - } 2010 - { 2011 - engine = "ruby"; 2012 - version = "1.9"; 2013 - } 2014 - { 2015 - engine = "ruby"; 2016 - version = "2.0"; 2017 - } 2018 - { 2019 - engine = "ruby"; 2020 - version = "2.0"; 2021 - } 2022 - { 2023 - engine = "ruby"; 2024 - version = "2.1"; 2025 - } 2026 - { 2027 - engine = "ruby"; 2028 - version = "2.1"; 2029 - } 2030 - { 2031 - engine = "ruby"; 2032 - version = "2.2"; 2033 - } 2034 - { 2035 - engine = "ruby"; 2036 - version = "2.2"; 2037 - } 2038 - { 2039 - engine = "ruby"; 2040 - version = "2.3"; 2041 - } 2042 - { 2043 - engine = "ruby"; 2044 - version = "2.3"; 2045 - } 2046 - { 2047 - engine = "ruby"; 2048 - version = "2.4"; 2049 - } 2050 - { 2051 - engine = "ruby"; 2052 - version = "2.4"; 2053 - } 2054 - { 2055 - engine = "ruby"; 2056 - version = "2.5"; 2057 - } 2058 - { 2059 - engine = "ruby"; 2060 - version = "2.5"; 2061 - } 2062 - { 2063 - engine = "ruby"; 2064 - version = "2.6"; 2065 - } 2066 - { 2067 - engine = "ruby"; 2068 - version = "2.6"; 2069 - } 303 + dependencies = [ 304 + "builder" 305 + "rexml" 2070 306 ]; 2071 - source = { 2072 - remotes = [ "https://rubygems.org" ]; 2073 - sha256 = "1aw2l759cfmii9a67pn8pswip11v08nabkzm825mrmxa6r91izqs"; 2074 - type = "gem"; 2075 - }; 2076 - version = "1.0.7"; 2077 - }; 2078 - yard = { 2079 - groups = [ "extra" ]; 307 + groups = [ "default" ]; 2080 308 platforms = [ ]; 2081 309 source = { 2082 310 remotes = [ "https://rubygems.org" ]; 2083 - sha256 = "126m49mvh4lbvlvrprq7xj2vjixbq3xqr8dwr089vadvs0rkn4rd"; 311 + sha256 = "19bh7nb05pbkix43i7alfg8pzcqid31q5q0g06x2my7gcj79nhad"; 2084 312 type = "gem"; 2085 313 }; 2086 - version = "0.9.25"; 2087 - }; 2088 - zeitwerk = { 2089 - groups = [ 2090 - "default" 2091 - "development" 2092 - "test" 2093 - ]; 2094 - platforms = [ ]; 2095 - source = { 2096 - remotes = [ "https://rubygems.org" ]; 2097 - sha256 = "0jvn50k76kl14fpymk4hdsf9sk00jl84yxzl783xhnw4dicp0m0k"; 2098 - type = "gem"; 2099 - }; 2100 - version = "2.4.0"; 314 + version = "2.1.0"; 2101 315 }; 2102 316 }
-1
pkgs/tools/misc/bat-extras/default.nix
··· 1 - { }: 2 1 self: { 3 2 buildBatExtrasPkg = self.callPackage ./buildBatExtrasPkg.nix { }; 4 3
+27 -13
pkgs/tools/system/collectd/default.nix
··· 1 1 { 2 2 lib, 3 3 stdenv, 4 - fetchurl, 4 + fetchFromGitHub, 5 5 fetchpatch, 6 6 callPackage, 7 7 autoreconfHook, 8 8 pkg-config, 9 9 libtool, 10 + bison, 11 + flex, 12 + perl, 10 13 nixosTests, 11 14 ... 12 15 }@args: 13 16 let 14 17 plugins = callPackage ./plugins.nix args; 15 18 in 16 - stdenv.mkDerivation rec { 19 + stdenv.mkDerivation (finalAttrs: { 20 + pname = "collectd"; 17 21 version = "5.12.0"; 18 - pname = "collectd"; 19 22 20 - src = fetchurl { 21 - url = "https://collectd.org/files/${pname}-${version}.tar.bz2"; 22 - sha256 = "1mh97afgq6qgmpvpr84zngh58m0sl1b4wimqgvvk376188q09bjv"; 23 + src = fetchFromGitHub { 24 + owner = "collectd"; 25 + repo = "collectd"; 26 + tag = "collectd-${finalAttrs.version}"; 27 + hash = "sha256-UTlCY1GPRpbdQFLFUDjNr1PgEdGv4WNtjr8TYbxHK5A="; 23 28 }; 24 29 30 + # All of these are going to be included in the next release 25 31 patches = [ 26 32 # fix -t never printing syntax errors 27 33 # should be included in next release 28 34 (fetchpatch { 35 + name = "fix-broken-dash-t-option.patch"; 29 36 url = "https://github.com/collectd/collectd/commit/3f575419e7ccb37a3b10ecc82adb2e83ff2826e1.patch"; 30 - sha256 = "0jwjdlfl0dp7mlbwygp6h0rsbaqfbgfm5z07lr5l26z6hhng2h2y"; 37 + hash = "sha256-XkDxLITmG0FLpgf8Ut1bDqulM4DmPs8Xrec2QB1tkks="; 31 38 }) 32 39 (fetchpatch { 33 40 name = "no_include_longintrepr.patch"; ··· 39 46 nativeBuildInputs = [ 40 47 pkg-config 41 48 autoreconfHook 49 + bison 50 + flex 51 + perl # for pod2man 42 52 ]; 53 + 43 54 buildInputs = [ 44 55 libtool 45 56 ] ++ plugins.buildInputs; ··· 52 63 ++ plugins.configureFlags 53 64 ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ "--with-fp-layout=nothing" ]; 54 65 66 + # Used in `src/virt.c` 67 + env.NIX_CFLAGS_COMPILE = "-DATTRIBUTE_UNUSED=__attribute__((unused))"; 68 + 55 69 # do not create directories in /var during installPhase 56 70 postConfigure = '' 57 - substituteInPlace Makefile --replace '$(mkinstalldirs) $(DESTDIR)$(localstatedir)/' '#' 71 + substituteInPlace Makefile --replace-fail '$(mkinstalldirs) $(DESTDIR)$(localstatedir)/' '#' 58 72 ''; 59 73 60 74 postInstall = '' ··· 69 83 inherit (nixosTests) collectd; 70 84 }; 71 85 72 - meta = with lib; { 86 + meta = { 73 87 description = "Daemon which collects system performance statistics periodically"; 74 88 homepage = "https://collectd.org"; 75 - license = licenses.gpl2Plus; 76 - platforms = platforms.unix; 77 - maintainers = with maintainers; [ bjornfor ]; 89 + license = lib.licenses.gpl2Plus; 90 + platforms = lib.platforms.unix; 91 + maintainers = with lib.maintainers; [ bjornfor ]; 78 92 }; 79 - } 93 + })
+1
pkgs/top-level/aliases.nix
··· 1681 1681 quicklispPackagesGCL = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07 1682 1682 quicklispPackagesSBCL = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07 1683 1683 quickserve = throw "'quickserve' has been removed because its upstream is unavailable"; # Added 2025-05-10 1684 + quicksynergy = throw "'quicksynergy' has been removed due to lack of maintenance upstream. Consider using 'deskflow' instead."; # Added 2025-06-18 1684 1685 qv2ray = throw "'qv2ray' has been removed as it was unmaintained"; # Added 2025-06-03 1685 1686 qxw = throw "'qxw' has been removed due to lack of maintenance upstream. Consider using 'crosswords' instead"; # Added 2024-10-19 1686 1687
+1 -1
pkgs/top-level/all-packages.nix
··· 1909 1909 1910 1910 babelfish = callPackage ../shells/fish/babelfish.nix { }; 1911 1911 1912 - bat-extras = recurseIntoAttrs (lib.makeScope newScope (callPackage ../tools/misc/bat-extras { })); 1912 + bat-extras = recurseIntoAttrs (lib.makeScope newScope (import ../tools/misc/bat-extras)); 1913 1913 1914 1914 beauty-line-icon-theme = callPackage ../data/icons/beauty-line-icon-theme { 1915 1915 inherit (plasma5Packages) breeze-icons;
-74
pkgs/top-level/ocaml-packages.nix
··· 918 918 import ../development/ocaml-modules/janestreet { 919 919 }; 920 920 921 - janeStreet_0_15 = 922 - (lib.makeScope self.newScope ( 923 - self': with self'; { 924 - 925 - # ocamlPackages that janestreet v0.15 packages depend on. 926 - jsDeps = 927 - let 928 - uri-sexp = self.uri-sexp.override { inherit (self') ppx_sexp_conv sexplib0; }; 929 - cohttp = self.cohttp.override { 930 - inherit (self') ppx_sexp_conv; 931 - inherit uri-sexp; 932 - }; 933 - ipaddr-sexp = self.ipaddr-sexp.override { inherit (self') ppx_sexp_conv; }; 934 - conduit = self.conduit.override { 935 - inherit (self') ppx_sexp_conv sexplib; 936 - inherit ipaddr-sexp; 937 - }; 938 - conduit-async = self.conduit-async.override { 939 - inherit (self') 940 - async 941 - ppx_sexp_conv 942 - ppx_here 943 - core 944 - sexplib 945 - async_ssl 946 - ; 947 - inherit conduit ipaddr-sexp; 948 - }; 949 - in 950 - { 951 - inherit (self) 952 - dune-configurator 953 - alcotest 954 - re 955 - num 956 - octavius 957 - uutf 958 - ounit 959 - ctypes 960 - ctypes-foreign 961 - ; 962 - ppxlib = self.ppxlib.override { inherit (self') stdio; }; 963 - cohttp-async = self.cohttp-async.override { 964 - inherit (self') 965 - ppx_sexp_conv 966 - base 967 - async 968 - async_kernel 969 - async_unix 970 - core_unix 971 - sexplib0 972 - core 973 - ; 974 - inherit uri-sexp cohttp conduit-async; 975 - }; 976 - janePackage = callPackage ../development/ocaml-modules/janestreet/janePackage_0_15.nix { }; 977 - }; 978 - 979 - janeStreet = import ../development/ocaml-modules/janestreet/0.15.nix { 980 - self = self' // jsDeps; 981 - inherit ocaml; 982 - inherit (pkgs) 983 - bash 984 - fetchpatch 985 - fzf 986 - lib 987 - openssl 988 - zstd 989 - ; 990 - }; 991 - } 992 - )).overrideScope 993 - liftJaneStreet; 994 - 995 921 javalib = callPackage ../development/ocaml-modules/javalib { }; 996 922 997 923 jingoo = callPackage ../development/ocaml-modules/jingoo { };