Merge f5c6b4fe94 into haskell-updates

This commit is contained in:
nixpkgs-ci[bot]
2026-04-12 00:35:27 +00:00
committed by GitHub
262 changed files with 22116 additions and 4557 deletions
+13
View File
@@ -105,6 +105,8 @@
- `nodePackages.wavedrom-cli` has been removed, as it was unmaintained within nixpkgs.
- `requireFile` now treats any `message` or `url` argument as a literal string, rather than subjecting it to Bash here-doc expansion. This allows including strings like `$PWD` in the message without needing to know about and handle the undocumented Bash expansion.
- `nodePackages.browserify` has been removed, as it was unmaintained within nixpkgs.
- `nodePackages.sass` has been removed, as it was unmaintained within nixpkgs.
@@ -202,6 +204,17 @@
- `docker-color-output` has been updated from major version 2 to 3. One breaking change is, that they switched to [YAML-based configuration files](https://github.com/devemio/docker-color-output?tab=readme-ov-file#configuration).
- `dasel` has been updated from v2.8.1 to v3. There were significant breaking changes:
- The `put` and `delete` commands have been removed. Use the new query syntax with expressions to modify data in-place.
- The `--version` flag is now a subcommand: `dasel version`
- CLI framework migrated from Cobra to Kong, changing flag parsing behavior
- Selector syntax has been revamped, see [dasel v3 documentation](https://daseldocs.tomwright.me/v3) for migration guide.
Example migration:
- Old: `echo '{"my":{"favourites":{"colour":"blue"}}}' | dasel put -t json -r json -t string -v "red" "my.favourites.colour"`
- New: `echo '{"my":{"favourites":{"colour":"blue"}}}' | dasel query -i json -o json --root 'my.favourites.colour = "red"'`
- `stalwart-mail` has been renamed to `stalwart`
- Ethercalc and its associated module have been removed, as the package is unmaintained and cannot be installed from source with npm now.
+8 -6
View File
@@ -291,14 +291,17 @@ Some of them are as follows:
* *vendor* - can point to the source of the package, or to Nixpkgs itself
* *product* - name of the package
* *version* - version of the package
* *update* - name of the latest update, can be a patch version for semantically versioned packages
* *edition* - any additional specification about the version
* *update* - vendor-specific string part of the version string of the latest update (e.g. `rc1`, `beta`, etc...)
* *edition* - deprecated and should be set to `*`
You can find information about all of these attributes in the [official specification](https://csrc.nist.gov/projects/security-content-automation-protocol/specifications/cpe/naming) (heading 5.3.3, pages 11-13).
Any fields that don't have a value are set to either `-` if the value is not available or `*` when the field can match any value.
Any fields that don't have a value are set to either:
For example, for glibc 2.40.1 CPE would be `cpe:2.3:a:gnu:glibc:2.40:1:*:*:*:*:*:*`.
* `*` (ANY) when the field can match any value
* `-` (NA) when the value is not meaningful or not used in the description
For example, for glibc 2.40.1 CPE would be `cpe:2.3:a:gnu:glibc:2.40.1:*:*:*:*:*:*:*`.
#### `meta.identifiers.cpeParts` {#var-meta-identifiers-cpeParts}
@@ -314,14 +317,13 @@ It is up to the package author to make sure all parts are correct and match expe
Following functions help with filling out `version` and `update` fields:
* [`lib.meta.cpeFullVersionWithVendor`](#function-library-lib.meta.cpeFullVersionWithVendor)
* [`lib.meta.cpePatchVersionInUpdateWithVendor`](#function-library-lib.meta.cpePatchVersionInUpdateWithVendor)
For many packages to make CPE available it should be enough to specify only:
```nix
{
# ...
meta.identifiers.cpeParts = lib.meta.cpePatchVersionInUpdateWithVendor vendor version;
meta.identifiers.cpeParts = lib.meta.cpeFullVersionWithVendor vendor version;
}
```
-128
View File
@@ -633,132 +633,4 @@ rec {
update = "*";
};
/**
Alternate version of [`lib.meta.cpePatchVersionInUpdateWithVendor`](#function-library-lib.meta.cpePatchVersionInUpdateWithVendor).
If `cpePatchVersionInUpdateWithVendor` succeeds, returns an attribute set with `success` set to `true` and `value` set to the result.
Otherwise, `success` is set to `false` and `error` is set to the string representation of the error.
# Inputs
`vendor`
: package's vendor
`version`
: package's version
# Type
```
tryCPEPatchVersionInUpdateWithVendor :: String -> String -> ({ success = true; value :: { update :: String; vendor :: String; version :: String; }; } | { success = false; error :: String; })
```
# Examples
:::{.example}
## `lib.meta.tryCPEPatchVersionInUpdateWithVendor` usage example
```nix
lib.meta.tryCPEPatchVersionInUpdateWithVendor "gnu" "1.2.3"
=> {
success = true;
value = {
vendor = "gnu";
version = "1.2";
update = "3";
};
}
```
:::
:::{.example}
## `lib.meta.cpePatchVersionInUpdateWithVendor` error example
```nix
lib.meta.tryCPEPatchVersionInUpdateWithVendor "gnu" "5.3p0"
=> {
success = false;
error = "version 5.3p0 doesn't match regex `([0-9]+\\.[0-9]+)\\.([0-9]+)`";
}
```
:::
*/
tryCPEPatchVersionInUpdateWithVendor =
vendor: version:
let
regex = "([0-9]+\\.[0-9]+)\\.([0-9]+)";
# we have to call toString here in case version is an attrset with __toString attribute
versionMatch = builtins.match regex (toString version);
in
if versionMatch == null then
{
success = false;
error = "version ${version} doesn't match regex `${regex}`";
}
else
{
success = true;
value = {
inherit vendor;
version = elemAt versionMatch 0;
update = elemAt versionMatch 1;
};
};
/**
Generate [CPE parts](#var-meta-identifiers-cpeParts) from inputs. Copies `vendor` to the result. When `version` matches `X.Y.Z` where all parts are numerical, sets `version` and `update` fields to `X.Y` and `Z`. Throws an error if the version doesn't match the expected template.
# Inputs
`vendor`
: package's vendor
`version`
: package's version
# Type
```
cpePatchVersionInUpdateWithVendor :: String -> String -> { update :: String; vendor :: String; version :: String; }
```
# Examples
:::{.example}
## `lib.meta.cpePatchVersionInUpdateWithVendor` usage example
```nix
lib.meta.cpePatchVersionInUpdateWithVendor "gnu" "1.2.3"
=> {
vendor = "gnu";
version = "1.2";
update = "3";
}
```
:::
:::{.example}
## `lib.meta.cpePatchVersionInUpdateWithVendor` usage in derivations
```nix
mkDerivation rec {
version = "1.2.3";
# ...
meta = {
# ...
identifiers.cpeParts = lib.meta.cpePatchVersionInUpdateWithVendor "gnu" version;
};
}
```
:::
*/
cpePatchVersionInUpdateWithVendor =
vendor: version:
let
result = tryCPEPatchVersionInUpdateWithVendor vendor version;
in
if result.success then result.value else throw result.error;
}
-6
View File
@@ -9941,12 +9941,6 @@
githubId = 2041764;
name = "Andreas Wendleder";
};
Gonzih = {
email = "gonzih@gmail.com";
github = "Gonzih";
githubId = 266275;
name = "Max Gonzih";
};
goodrone = {
email = "goodrone@gmail.com";
github = "goodrone";
+1
View File
@@ -35,6 +35,7 @@ When reviewing a modular service, you should check the following. Details and ra
- [ ] `_class = "service"`
- [ ] Modular services provided through `passthru.services` must override the default of the package option using `finalAttrs.finalPackage`
- [ ] Is the modular services infrastructure sufficient for this service? If one or more features are not covered, comment in https://github.com/NixOS/nixpkgs/issues/428084
- [ ] Has been added to `nixos/modules/misc/documentation/modular-services.nix`
```
## Details
@@ -1,41 +1,61 @@
# Boot Problems {#sec-boot-problems}
If NixOS fails to boot, there are a number of kernel command line parameters that may help you to identify or fix the issue. You can add these parameters in the GRUB boot menu by pressing “e” to modify the selected boot entry and editing the line starting with `linux`. The following are some useful kernel command line parameters that are recognised by the NixOS boot scripts or by systemd:
If NixOS fails to boot, there are a number of kernel command line parameters that may help you to identify or fix the issue. You can add these parameters in the GRUB boot menu by pressing “e” to modify the selected boot entry and editing the line starting with `linux`.
`boot.shell_on_fail`
: Allows the user to start a root shell if something goes wrong in stage 1 of the boot process (the initial ramdisk). This is disabled by default because there is no authentication for the root shell.
`boot.debug1`
: Start an interactive shell in stage 1 before anything useful has been done. That is, no modules have been loaded and no file systems have been mounted, except for `/proc` and `/sys`.
`boot.debug1devices`
: Like `boot.debug1`, but runs stage1 until kernel modules are loaded and device nodes are created. This may help with e.g. making the keyboard work.
`boot.debug1mounts`
: Like `boot.debug1` or `boot.debug1devices`, but runs stage1 until all filesystems that are mounted during initrd are mounted (see [neededForBoot](#opt-fileSystems._name_.neededForBoot)). As a motivating example, this could be useful if you've forgotten to set [neededForBoot](#opt-fileSystems._name_.neededForBoot) on a file system.
`boot.trace`
: Print every shell command executed by the stage 1 and 2 boot scripts.
`single`
: Boot into rescue mode (a.k.a. single user mode). This will cause systemd to start nothing but the unit `rescue.target`, which runs `sulogin` to prompt for the root password and start a root login shell. Exiting the shell causes the system to continue with the normal boot process.
`systemd.log_level=debug` `systemd.log_target=console`
: Make systemd very verbose and send log messages to the console instead of the journal. For more parameters recognised by systemd, see systemd(1).
In addition, these arguments are recognised by the live image only:
{manpage}`kernel-command-line(7)` documents the kernel parameters accepted by systemd. Those include many that are helpful for debugging boot issues, such as `systemd.debug_shell` and `rescue`. Some also have `rd.`prefixed variants that apply to stage 1.
`live.nixos.passwd=password`
: Set the password for the `nixos` live user. This can be used for SSH access if there are issues using the terminal.
Notice that for `boot.shell_on_fail`, `boot.debug1`, `boot.debug1devices`, and `boot.debug1mounts`, if you did **not** select "start the new shell as pid 1", and you `exit` from the new shell, boot will proceed normally from the point where it failed, as if you'd chosen "ignore the error and continue".
If no login prompts or X11 login screens appear (e.g. due to hanging dependencies), you can press Alt+ArrowUp. If youre lucky, this will start `rescue.target` (described in {manpage}`systemd.special(7)`). (Also note that since most units have a 90-second timeout before systemd gives up on them, the `agetty` login prompts should appear eventually unless something is very wrong.)
If no login prompts or X11 login screens appear (e.g. due to hanging dependencies), you can press Alt+ArrowUp. If youre lucky, this will start rescue mode (described above). (Also note that since most units have a 90-second timeout before systemd gives up on them, the `agetty` login prompts should appear eventually unless something is very wrong.)
## Scripted stage 1 {#sec-boot-problems-scripted-stage-1}
The scripted implementation of stage 1 also understands these boot parameters.
::: {.warning}
The scripted implementation of stage 1 is disabled by default and deprecated. These parameters have no effect, unless systemd stage 1 is explicitly disabled with `boot.initrd.systemd.enable = false;`.
:::
`boot.shell_on_fail`
: Allows the user to start a root shell if something goes wrong in stage 1 of the boot process (the initial ramdisk). This is disabled by default because there is no authentication for the root shell.
::: {.note}
systemd stage 1 alternative: `SYSTEMD_SULOGIN_FORCE=1` for rescue mode, or `rd.systemd.debug_shell` for shell on tty9.
:::
`boot.debug1`
: Start an interactive shell in stage 1 before anything useful has been done. That is, no modules have been loaded and no file systems have been mounted, except for `/proc` and `/sys`.
::: {.note}
systemd stage 1 alternative: `rd.systemd.break=pre-udev`
:::
`boot.debug1devices`
: Like `boot.debug1`, but runs stage1 until kernel modules are loaded and device nodes are created. This may help with e.g. making the keyboard work.
::: {.note}
systemd stage 1 alternative: `rd.systemd.break=pre-mount`
:::
`boot.debug1mounts`
: Like `boot.debug1` or `boot.debug1devices`, but runs stage1 until all filesystems that are mounted during initrd are mounted (see [neededForBoot](#opt-fileSystems._name_.neededForBoot)). As a motivating example, this could be useful if you've forgotten to set [neededForBoot](#opt-fileSystems._name_.neededForBoot) on a file system.
::: {.note}
systemd stage 1 alternative: `rd.systemd.break=pre-switch-root`
:::
`boot.trace`
: Print every shell command executed by the stage 1 and 2 boot scripts.
::: {.note}
systemd stage 1 alternative: `rd.systemd.log_level=debug`
:::
Notice that for `boot.shell_on_fail`, `boot.debug1`, `boot.debug1devices`, and `boot.debug1mounts`, if you did **not** select "start the new shell as pid 1", and you `exit` from the new shell, boot will proceed normally from the point where it failed, as if you'd chosen "ignore the error and continue".
@@ -149,6 +149,10 @@ The first steps to all these are the same:
`NIXOS_LUSTRATE`:
:::
::: {.warning}
The lustrate process will not work if the [](#opt-boot.initrd.systemd.enable) option is set to `true`, which is now the default. Setting this to `false` is deprecated and scheduled for removal in NixOS 26.11, along with `NIXOS_LUSTRATE`. Other installation methods, such as the one outlined above, or installing from [kexec](#sec-booting-via-kexec), are recommended instead.
:::
Generate your NixOS configuration:
```ShellSession
@@ -167,11 +171,6 @@ The first steps to all these are the same:
If the current system and NixOS's bootloader configuration don't agree on where the [EFI System Partition](https://en.wikipedia.org/wiki/EFI_system_partition) is to be mounted, you'll need to manually alter the mount point in `hardware-configuration.nix` before building the system closure.
:::
::: {.note}
The lustrate process will not work if the [](#opt-boot.initrd.systemd.enable) option is set to `true`.
If you want to use this option, wait until after the first boot into the NixOS system to enable it and rebuild.
:::
You'll likely want to set a root password for your first boot using
the configuration files because you won't have a chance to enter a
password until after you reboot. You can initialize the root password
+3
View File
@@ -151,6 +151,9 @@
"module-virtualisation-xen-introduction": [
"index.html#module-virtualisation-xen-introduction"
],
"sec-boot-problems-scripted-stage-1": [
"index.html#sec-boot-problems-scripted-stage-1"
],
"sec-nixos-test-vms-vs-containers": [
"index.html#sec-nixos-test-vms-vs-containers"
],
@@ -4,6 +4,16 @@
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
- Stage 1 (a.k.a. initrd) is now based on systemd by default, and the old scripted implementation is deprecated and scheduled for removal in 26.11. If you run into issues migrating, you can [get help from the community](https://nixos.org/community/) or report an issue on GitHub.
You can temporarily revert to the scripted stage 1 implementation by disabling [](#opt-boot.initrd.systemd.enable), but this is discouraged.
Most incompatibilities will be explained with assertions during configuration evaluation, but be aware of the following that can't be automatically detected:
- If you use LUKS disk encryption, ensure that `fileSystems."/".device` is set to `"/dev/mapper/<name>"`, where `<name>` matches the name in your `boot.initrd.luks.devices.<name>` definition, to avoid systemd timing out while prompting for a passphrase. If you have a more complex setup, e.g. with LVM on top of LUKS, you may need to add `"x-systemd.device-timeout=infinity"` to `fileSystems."/".options` instead. If you need to disable the timeout before you can boot into the system, pass `systemd.default_device_timeout_sec=infinity` on the kernel command line.
- The `cryptsetup-askpass` program is not available; use `systemctl default` instead, which will prompt for passphrases as necessary. If you pipe password responses into SSH over stdin, use `ssh -o RequestTTY=force` to ensure `systemctl default` gets a TTY to prompt on.
- Many kernel parameters have been replaced with native systemd versions; see [](#sec-boot-problems).
- The system.nix file has been added has an alternative entry point to configuration.nix (and flake.nix) that allows to configure NixOS without using `nix-channel`.
This file must evaluate to a NixOS system derivation or an attribute set of such derivations, in which case the attribute to build has to be selected with the `--attr` option of `nixos-rebuild` or `nixos-install`.
For example,
@@ -293,6 +303,8 @@ See <https://github.com/NixOS/nixpkgs/issues/481673>.
- `opengfw` package and `services.opengfw` module have been removed as the upstream GitHub repository and website have been shut down.
- `services.esphome` no longer uses `DynamicUser`. The service now runs as a static `esphome` system user. systemd handles the migration from `/var/lib/private/esphome` automatically, but users with [impermanence](https://github.com/nix-community/impermanence) setups should ensure `/var/lib/esphome` is persisted.
## Other Notable Changes {#sec-release-26.05-notable-changes}
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
+10
View File
@@ -1143,6 +1143,16 @@ in
'';
}
]
++ flip mapAttrsToList config.boot.initrd.systemd.users (
name: user: {
assertion = config.boot.initrd.systemd.enable -> (baseNameOf user.shell != "cryptsetup-askpass");
message = ''
cryptsetup-askpass is not available in systemd stage 1. Please remove it from: boot.initrd.systemd.users.${name}.shell
Use `systemctl default` instead; see the NixOS 26.05 release notes for details. If you want to continue restricting the command for SSH login, you can use `command="systemctl default"` in SSH authorized keys instead; see `sshd(8)`.
'';
}
)
++ flatten (
flip mapAttrsToList cfg.users (
name: user:
@@ -21,6 +21,7 @@ let
options = {
"<imports = [ pkgs.ghostunnel.services.default ]>" = fakeSubmodule pkgs.ghostunnel.services.default;
"<imports = [ pkgs.php.services.default ]>" = fakeSubmodule pkgs.php.services.default;
"<imports = [ pkgs.snid.services.default ]>" = fakeSubmodule pkgs.snid.services.default;
};
};
in
@@ -83,6 +83,21 @@ let
paths = cfg.extraLv2Packages ++ requiredLv2Packages;
pathsToLink = [ "/lib/lv2" ];
};
requiredLadspaPackages = flatten (
concatMap (p: attrByPath [ "passthru" "requiredLadspaPackages" ] [ ] p) configPackages
);
ladspaPlugins = pkgs.buildEnv {
name = "pipewire-ladspa-plugins";
paths = cfg.extraLadspaPackages ++ requiredLadspaPackages;
pathsToLink = [ "/lib/ladspa" ];
};
pluginsEnv = {
LV2_PATH = "${lv2Plugins}/lib/lv2";
LADSPA_PATH = "${ladspaPlugins}/lib/ladspa";
};
in
{
meta.teams = [ teams.freedesktop ];
@@ -286,8 +301,8 @@ in
List of packages that provide PipeWire configuration, in the form of
`share/pipewire/*/*.conf` files.
LV2 dependencies will be picked up from config packages automatically
via `passthru.requiredLv2Packages`.
LV2/LADSPA dependencies will be picked up from config packages automatically
via `passthru.requiredLv2Packages`/`passthru.requiredLadspaPackages`.
'';
};
@@ -306,6 +321,22 @@ in
[wiki-filter-chain]: https://docs.pipewire.org/page_module_filter_chain.html
'';
};
extraLadspaPackages = mkOption {
type = listOf package;
default = [ ];
example = literalExpression "[ pkgs.noisetorch-ladspa ]";
description = ''
List of packages that provide LADSPA plugins in `lib/ladspa` that should
be made available to PipeWire for [filter chains][wiki-filter-chain].
Config packages have their required LADSPA plugins added automatically,
so they don't need to be specified here. Config packages need to set
`passthru.requiredLadspaPackages` for this to work.
[wiki-filter-chain]: https://docs.pipewire.org/page_module_filter_chain.html
'';
};
};
};
@@ -366,13 +397,9 @@ in
systemd.user.sockets.pipewire.enable = !cfg.systemWide;
systemd.user.services.pipewire.enable = !cfg.systemWide;
systemd.services.pipewire.environment.LV2_PATH = mkIf cfg.systemWide "${lv2Plugins}/lib/lv2";
systemd.user.services.pipewire.environment.LV2_PATH = mkIf (
!cfg.systemWide
) "${lv2Plugins}/lib/lv2";
systemd.user.services.filter-chain.environment.LV2_PATH = mkIf (
!cfg.systemWide
) "${lv2Plugins}/lib/lv2";
systemd.services.pipewire.environment = mkIf cfg.systemWide pluginsEnv;
systemd.user.services.pipewire.environment = mkIf (!cfg.systemWide) pluginsEnv;
systemd.user.services.filter-chain.environment = pluginsEnv;
# Mask pw-pulse if it's not wanted
systemd.services.pipewire-pulse.enable = cfg.pulse.enable && cfg.systemWide;
@@ -200,8 +200,8 @@ in
List of packages that provide WirePlumber configuration, in the form of
`share/wireplumber/*/*.conf` files.
LV2 dependencies will be picked up from config packages automatically
via `passthru.requiredLv2Packages`.
LV2/LADSPA dependencies will be picked up from config packages automatically
via `passthru.requiredLv2Packages`/`passthru.requiredLadspaPackages`.
'';
};
@@ -220,6 +220,22 @@ in
[wiki-filter-chain]: https://docs.pipewire.org/page_module_filter_chain.html
'';
};
extraLadspaPackages = mkOption {
type = listOf package;
default = [ ];
example = literalExpression "[ pkgs.noisetorch-ladspa ]";
description = ''
List of packages that provide LADSPA plugins in `lib/ladspa` that should
be made available to WirePlumber for [filter chains][wiki-filter-chain].
Config packages have their required LADSPA plugins added automatically,
so they don't need to be specified here. Config packages need to set
`passthru.requiredLadspaPackages` for this to work.
[wiki-filter-chain]: https://docs.pipewire.org/page_module_filter_chain.html
'';
};
};
};
@@ -270,6 +286,25 @@ in
paths = cfg.extraLv2Packages ++ requiredLv2Packages;
pathsToLink = [ "/lib/lv2" ];
};
requiredLadspaPackages = flatten (
concatMap (p: attrByPath [ "passthru" "requiredLadspaPackages" ] [ ] p) configPackages
);
ladspaPlugins = pkgs.buildEnv {
name = "pipewire-ladspa-plugins";
paths = cfg.extraLadspaPackages ++ requiredLadspaPackages;
pathsToLink = [ "/lib/ladspa" ];
};
pluginsEnv = {
XDG_DATA_DIRS = makeSearchPath "share" [
configs
cfg.package
];
LV2_PATH = "${lv2Plugins}/lib/lv2";
LADSPA_PATH = "${ladspaPlugins}/lib/ladspa";
};
in
mkIf cfg.enable {
assertions = [
@@ -289,25 +324,14 @@ in
systemd.services.wireplumber.wantedBy = [ "pipewire.service" ];
systemd.user.services.wireplumber.wantedBy = [ "pipewire.service" ];
systemd.services.wireplumber.environment = mkIf pwCfg.systemWide {
# Force WirePlumber to use system dbus.
DBUS_SESSION_BUS_ADDRESS = "unix:path=/run/dbus/system_bus_socket";
systemd.services.wireplumber.environment = mkIf pwCfg.systemWide (
pluginsEnv
// {
# Force WirePlumber to use system dbus.
DBUS_SESSION_BUS_ADDRESS = "unix:path=/run/dbus/system_bus_socket";
}
);
# Make WirePlumber find our config/script files and lv2 plugins required by those
# (but also the configs/scripts shipped with WirePlumber)
XDG_DATA_DIRS = makeSearchPath "share" [
configs
cfg.package
];
LV2_PATH = "${lv2Plugins}/lib/lv2";
};
systemd.user.services.wireplumber.environment = mkIf (!pwCfg.systemWide) {
XDG_DATA_DIRS = makeSearchPath "share" [
configs
cfg.package
];
LV2_PATH = "${lv2Plugins}/lib/lv2";
};
systemd.user.services.wireplumber.environment = mkIf (!pwCfg.systemWide) pluginsEnv;
};
}
@@ -34,8 +34,8 @@ let
cp baseq3/pak*.pk3 /tmp/baseq3
nix-store --add-fixed sha256 --recursive /tmp/baseq3
Alternatively you can set services.quake3-server.baseq3 to a path and copy the baseq3 directory into
$services.quake3-server.baseq3/.q3a/
Alternatively you can set services.quake3-server.baseq3 to a path and
copy the baseq3 directory into the .q3a subdirectory of that path.
'';
};
@@ -320,7 +320,6 @@
systemd.services.nvidia-container-toolkit-cdi-generator = {
description = "Container Device Interface (CDI) for Nvidia generator";
after = [ "systemd-udev-settle.service" ];
requiredBy = lib.mkMerge [
(lib.mkIf config.virtualisation.docker.enable [ "docker.service" ])
(lib.mkIf config.virtualisation.podman.enable [ "podman.service" ])
@@ -329,6 +328,11 @@
serviceConfig = {
RuntimeDirectory = "cdi";
RemainAfterExit = true;
# We wait for the udev events queue to empty in the *hope* that the
# devices needed here become available. This is terribly broken and
# essentially no better than a random sleep(). See PR #452645 for
# an attempt to fix this issue.
ExecStartPre = "-${lib.getExe' pkgs.systemd "udevadm"} settle --timeout=180";
ExecStart =
let
script = pkgs.callPackage ./cdi-generate.nix {
-1
View File
@@ -455,7 +455,6 @@ in
"systemd-udevd-control.socket"
"systemd-udevd-kernel.socket"
"systemd-udevd.service"
"systemd-udev-settle.service"
"systemd-udev-trigger.service"
];
boot.initrd.systemd.storePaths = [
@@ -7,7 +7,6 @@
let
inherit (lib)
literalExpression
maintainers
mkEnableOption
mkIf
@@ -17,7 +16,7 @@ let
cfg = config.services.esphome;
stateDir = "esphome";
stateDir = "/var/lib/esphome";
esphomeParams =
if cfg.enableUnixSocket then
@@ -106,6 +105,18 @@ in
config = mkIf cfg.enable {
networking.firewall.allowedTCPPorts = mkIf (cfg.openFirewall && !cfg.enableUnixSocket) [ cfg.port ];
# Use a static system user instead of DynamicUser.
# DynamicUser creates a /var/lib/esphome -> /var/lib/private/esphome symlink
# which breaks PlatformIO's path resolution during firmware compilation.
# See: https://github.com/NixOS/nixpkgs/issues/339557
users.users.esphome = {
isSystemUser = true;
home = stateDir;
group = "esphome";
};
users.groups.esphome = { };
systemd.services.esphome = {
description = "ESPHome dashboard";
after = [ "network.target" ];
@@ -113,26 +124,27 @@ in
path = [ cfg.package ];
environment = {
# platformio fails to determine the home directory when using DynamicUser
PLATFORMIO_CORE_DIR = "%S/${stateDir}/.platformio";
# Set PLATFORMIO_CORE_DIR to a real path (not a symlink) so PlatformIO
# and its downloaded toolchains can resolve paths correctly.
PLATFORMIO_CORE_DIR = "${stateDir}/.platformio";
# platformio needs a writable HOME for its configuration
HOME = stateDir;
}
// lib.optionalAttrs cfg.usePing { ESPHOME_DASHBOARD_USE_PING = "true"; }
// cfg.environment;
serviceConfig = {
ExecStart = "${cfg.package}/bin/esphome dashboard ${esphomeParams} %S/${stateDir}";
DynamicUser = true;
ExecStart = "${cfg.package}/bin/esphome dashboard ${esphomeParams} ${stateDir}";
User = "esphome";
Group = "esphome";
WorkingDirectory = "%S/${stateDir}";
WorkingDirectory = stateDir;
StateDirectory = "esphome";
StateDirectoryMode = "0750";
Restart = "on-failure";
RuntimeDirectory = mkIf cfg.enableUnixSocket "esphome";
RuntimeDirectoryMode = "0750";
EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile;
ExecPaths = "%S/${stateDir}";
ReadWritePaths = "%S/${stateDir}";
ReadWritePaths = [ stateDir ];
# Hardening
CapabilityBoundingSet = "";
@@ -141,9 +153,8 @@ in
DevicePolicy = "closed";
DeviceAllow = map (d: "${d} rw") cfg.allowedDevices;
SupplementaryGroups = [ "dialout" ];
#NoNewPrivileges = true; # Implied by DynamicUser
PrivateUsers = true;
#PrivateTmp = true; # Implied by DynamicUser
NoNewPrivileges = true;
PrivateTmp = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
@@ -154,7 +165,7 @@ in
ProtectProc = "invisible";
ProcSubset = "all"; # Using "pid" breaks bwrap
ProtectSystem = "strict";
#RemoveIPC = true; # Implied by DynamicUser
RemoveIPC = true;
RestrictAddressFamilies = [
"AF_INET"
"AF_INET6"
@@ -163,7 +174,7 @@ in
];
RestrictNamespaces = false; # Required by platformio for chroot
RestrictRealtime = true;
#RestrictSUIDSGID = true; # Implied by DynamicUser
RestrictSUIDSGID = true;
SystemCallArchitectures = "native";
SystemCallFilter = [
"@system-service"
+16 -3
View File
@@ -111,6 +111,17 @@ in
};
config = mkIf cfg.enable {
warnings =
lib.optional (lib.versionOlder cfg.package.version "360" && cfg.settings.WebService.LoginTo or true)
''
The current Cockpit version is older than 360, and logging into other
hosts is enabled. This makes the system vulnerable to CVE-2026-4631,
which allows unauthenticated users on the network that can reach Cockpit
to gain code execution on the machine. Please upgrade your Cockpit
package or disable logging into other hosts by setting the option:
services.cockpit.settings.WebService.LoginTo = false;
'';
environment.etc = {
# generate cockpit settings
@@ -151,7 +162,7 @@ in
};
# Enable connecting to remote hosts from the login page
systemd.services = mkIf (cfg.settings ? LoginTo -> cfg.settings.LoginTo) {
systemd.services = mkIf (cfg.settings.WebService.LoginTo or false) {
"cockpit-wsinstance-http".path = [
config.programs.ssh.package
cfg.package
@@ -174,8 +185,10 @@ in
"https://localhost:${toString config.services.cockpit.port}"
];
services.cockpit.settings.WebService.Origins =
builtins.concatStringsSep " " config.services.cockpit.allowed-origins;
services.cockpit.settings.WebService = {
Origins = builtins.concatStringsSep " " config.services.cockpit.allowed-origins;
LoginTo = lib.mkDefault false;
};
};
meta.maintainers = pkgs.cockpit.meta.maintainers;
@@ -69,7 +69,6 @@ let
# https://github.com/systemd/systemd/blob/main/units/systemd-networkd.service.in
commonServiceConfig = {
after = [
"systemd-udev-settle.service"
"network-pre.target"
"systemd-sysusers.service"
"systemd-sysctl.service"
@@ -88,6 +87,12 @@ let
"network.target"
];
# We wait for the udev events queue to empty in the *hope* that the
# devices needed here become available. This is terribly broken and
# essentially no better than a random sleep().
# FIXME: use .device units dependecies instead.
serviceConfig.ExecStartPre = "-${lib.getExe' pkgs.systemd "udevadm"} settle --timeout=180";
unitConfig = {
# Avoid default dependencies like "basic.target", which prevents ifstate from starting before luks is unlocked.
DefaultDependencies = "no";
@@ -173,7 +178,7 @@ in
etc."ifstate/ifstate.yaml".source = settingsFormat.generate "ifstate.yaml" cfg.settings cfg.package;
};
systemd.services.ifstate = commonServiceConfig // {
systemd.services.ifstate = lib.recursiveUpdate commonServiceConfig {
description = "IfState";
wantedBy = [
@@ -263,7 +268,7 @@ in
"remote-fs.target"
];
services.ifstate-initrd = commonServiceConfig // {
services.ifstate-initrd = lib.recursiveUpdate commonServiceConfig {
description = "IfState initrd";
wantedBy = [
+20 -1
View File
@@ -32,7 +32,19 @@ in
options = {
boot.initrd.systemd.dbus = {
enable = mkEnableOption "dbus in stage 1";
enable = mkEnableOption "dbus in stage 1" // {
# TODO: This isn't really necessary, but it avoids a very
# common red herring error message:
#
# $ systemctl ...
# Failed to connect to system scope bus via local transport: No such file or directory.
#
# When systemctl tries and fails to control the system manager
# over dbus, it fals back to a private bus socket after
# printing this message. It works, but users often think it is
# the source of their problem when it isn't.
default = true;
};
};
services.dbus = {
@@ -163,6 +175,13 @@ in
"${config.boot.initrd.systemd.package}/share/dbus-1/system.d"
];
targets.sockets.wants = [ "dbus.socket" ];
# Otherwise, dbus waits on cryptsetup, and systemctl says the
# bus couldn't be found. This isn't an error (systemctl will
# fall back to a private bus with PID 1), but it's confusing
# to unaware users.
services.dbus.unitConfig.DefaultDependencies = false;
sockets.dbus.unitConfig.DefaultDependencies = false;
};
})
-1
View File
@@ -998,7 +998,6 @@ in
type = with types; listOf singleLineStr;
default = [ ];
example = [ "_netdev" ];
visible = false;
description = ''
Only used with systemd stage 1.
+4
View File
@@ -727,6 +727,10 @@ in
};
config = mkIf config.boot.initrd.enable {
warnings = lib.optional (!config.boot.initrd.systemd.enable) ''
Scripted initrd is deprecated and scheduled for removal in 26.11. See the NixOS 26.05 release notes.
'';
assertions = [
{
assertion = !config.boot.initrd.systemd.enable -> any (fs: fs.mountPoint == "/") fileSystems;
+12 -2
View File
@@ -65,7 +65,6 @@ let
"systemd-udevd-control.socket"
"systemd-udevd-kernel.socket"
"systemd-udevd.service"
"systemd-udev-settle.service"
]
++ (optional (!config.boot.isContainer) "systemd-udev-trigger.service")
++ [
@@ -792,10 +791,13 @@ in
path = [ pkgs.util-linux ];
overrideStrategy = "asDropin";
};
systemd.services."modprobe@" = {
restartIfChanged = false;
serviceConfig.ExecSearchPath = lib.makeBinPath [ pkgs.kmod ];
};
systemd.services.systemd-random-seed.restartIfChanged = false;
systemd.services.systemd-remount-fs.restartIfChanged = false;
systemd.services.systemd-update-utmp.restartIfChanged = false;
systemd.services.systemd-udev-settle.restartIfChanged = false; # Causes long delays in nixos-rebuild
systemd.targets.local-fs.unitConfig.X-StopOnReconfiguration = true;
systemd.targets.remote-fs.unitConfig.X-StopOnReconfiguration = true;
systemd.services.systemd-importd.environment = proxy_env;
@@ -876,6 +878,14 @@ in
pamMount = false;
};
};
# the systemd vmspawn credential dropin executes sshd and expects ExecSearchPath to be set, see:
# https://github.com/systemd/systemd/blob/v259.3/src/vmspawn/vmspawn.c#L2662
# this service is used, for example, when NixOS is started via systemd-vmspawn
systemd.services."sshd-vsock@" = mkIf config.services.openssh.enable {
serviceConfig.ExecSearchPath = "${config.services.openssh.package}/bin";
overrideStrategy = "asDropin";
};
};
# FIXME: Remove these eventually.
+54 -34
View File
@@ -29,6 +29,10 @@ let
upstreamUnits = [
"basic.target"
"breakpoint-pre-udev.service"
"breakpoint-pre-basic.service"
"breakpoint-pre-mount.service"
"breakpoint-pre-switch-root.service"
"ctrl-alt-del.target"
"debug-shell.service"
"emergency.service"
@@ -153,6 +157,7 @@ in
options.boot.initrd.systemd = {
enable = mkEnableOption "systemd in initrd" // {
default = true;
description = ''
Whether to enable systemd in initrd. The unit options such as
{option}`boot.initrd.systemd.services` are the same as their
@@ -423,42 +428,57 @@ in
};
config = mkIf (config.boot.initrd.enable && cfg.enable) {
assertions = [
{
assertion =
cfg.root == "fstab" -> any (fs: fs.mountPoint == "/") (builtins.attrValues config.fileSystems);
message = "The fileSystems option does not specify your root file system.";
}
]
++
map
(name: {
assertion = lib.attrByPath name (throw "impossible") config.boot.initrd == "";
message = ''
systemd stage 1 does not support 'boot.initrd.${lib.concatStringsSep "." name}'. Please
convert it to analogous systemd units in 'boot.initrd.systemd'.
Definitions:
${lib.concatMapStringsSep "\n" ({ file, ... }: " - ${file}")
(lib.attrByPath name (throw "impossible") options.boot.initrd).definitionsWithLocations
}
'';
})
[
[ "preFailCommands" ]
[ "preDeviceCommands" ]
[ "preLVMCommands" ]
[ "postDeviceCommands" ]
[ "postResumeCommands" ]
[ "postMountCommands" ]
[ "extraUdevRulesCommands" ]
[ "extraUtilsCommands" ]
[ "extraUtilsCommandsTest" ]
assertions =
let
obsoleteOpt =
opts: msgFn:
lib.flip map opts (opt: {
assertion = lib.attrByPath opt (throw "impossible") config.boot.initrd == "";
message = ''
${msgFn (lib.concatStringsSep "." opt)}
Definitions:
${lib.concatMapStringsSep "\n" ({ file, ... }: " - ${file}")
(lib.attrByPath opt (throw "impossible") options.boot.initrd).definitionsWithLocations
}
'';
});
in
[
{
assertion =
cfg.root == "fstab" -> any (fs: fs.mountPoint == "/") (builtins.attrValues config.fileSystems);
message = "The fileSystems option does not specify your root file system.";
}
]
++
obsoleteOpt
[
"network"
"postCommands"
[ "preFailCommands" ]
[ "preDeviceCommands" ]
[ "preLVMCommands" ]
[ "postDeviceCommands" ]
[ "postResumeCommands" ]
[ "postMountCommands" ]
[
"network"
"postCommands"
]
]
];
(name: ''
systemd stage 1 does not support `boot.initrd.${name}`. Instead, create systemd services using the `boot.initrd.systemd.services` options, which has an API matching the stage 2 `systemd.services` options. Refer to `bootup(7)`, specifically the sections on "Bootup in the Initrd" and "System Manager Bootup", for information about when various units happen, and order services accordingly.
'')
++
obsoleteOpt
[
[ "extraUtilsCommands" ]
[ "extraUtilsCommandsTest" ]
]
(name: ''
systemd stage 1 does not support `boot.initrd.${name}`. Instead, use `boot.initrd.systemd.initrdBin`, `boot.initrd.systemd.extraBin`, `boot.initrd.systemd.contents`, or `boot.initrd.systemd.storePaths` to add files to the initrd.
'')
++ obsoleteOpt [ [ "extraUdevRulesCommands" ] ] (name: ''
systemd stage 1 does not support `boot.initrd.${name}`. Instead, use `boot.initrd.services.udev` to configure udev.
'');
system.build = { inherit initialRamdisk; };
+5 -1
View File
@@ -6,6 +6,10 @@
}:
{
options.services.logind = {
enable = lib.mkEnableOption "the `systemd-logind` login service" // {
default = config.systemd.package.withLogind;
defaultText = lib.literalExpression "config.systemd.package.withLogind";
};
settings.Login = lib.mkOption {
description = ''
Settings option for systemd-logind.
@@ -40,7 +44,7 @@
};
};
config = {
config = lib.mkIf config.services.logind.enable {
systemd.additionalUpstreamSystemUnits = [
"systemd-logind.service"
"autovt@.service"
+1 -9
View File
@@ -158,16 +158,8 @@ let
}:
lib.nameValuePair "zfs-import-${pool}" {
description = "Import ZFS pool \"${pool}\"";
# We wait for systemd-udev-settle to ensure devices are available,
# but don't *require* it, because mounts shouldn't be killed if it's stopped.
# In the future, hopefully someone will complete this:
# https://github.com/zfsonlinux/zfs/pull/4943
wants = [
"systemd-udev-settle.service"
]
++ lib.optional (config.boot.initrd.clevis.useTang) "network-online.target";
wants = lib.optional (config.boot.initrd.clevis.useTang) "network-online.target";
after = [
"systemd-udev-settle.service"
"systemd-modules-load.service"
"systemd-ask-password-console.service"
]
@@ -67,7 +67,6 @@ in
systemd.services.ovsdb = {
description = "Open_vSwitch Database Server";
wantedBy = [ "multi-user.target" ];
after = [ "systemd-udev-settle.service" ];
path = [ cfg.package ];
restartTriggers = [
db
+20
View File
@@ -103,6 +103,24 @@ rec {
(onFullSupported "nixos.tests.gnome")
(onSystems [ "x86_64-linux" ] "nixos.tests.hibernate")
(onFullSupported "nixos.tests.i3wm")
(onSystems [ "aarch64-linux" ] "nixos.tests.installer-systemd-stage-1.simpleUefiSystemdBoot")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.btrfsSimple")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.btrfsSubvolDefault")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.btrfsSubvolEscape")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.btrfsSubvols")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.luksroot")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.lvm")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.separateBootZfs")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.separateBootFat")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.separateBoot")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.simpleLabels")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.simpleProvided")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.simpleUefiSystemdBoot")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.simple")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.swraid")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer-systemd-stage-1.zfsroot")
(onSystems [ "x86_64-linux" ] "nixos.tests.nixos-rebuild-specialisations")
# Scripted stage 1 installer tests, remove in 26.11
(onSystems [ "aarch64-linux" ] "nixos.tests.installer.simpleUefiSystemdBoot")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer.btrfsSimple")
(onSystems [ "x86_64-linux" ] "nixos.tests.installer.btrfsSubvolDefault")
@@ -166,6 +184,8 @@ rec {
(onFullSupported "nixos.tests.nfs4.simple")
(onSystems [ "x86_64-linux" ] "nixos.tests.oci-containers.podman")
(onFullSupported "nixos.tests.openssh")
(onFullSupported "nixos.tests.systemd-initrd-networkd-ssh")
# Scripted stage 1 SSH test, remove in 26.11
(onFullSupported "nixos.tests.initrd-network-ssh")
(onFullSupported "nixos.tests.pantheon")
(onFullSupported "nixos.tests.php.fpm")
+16 -6
View File
@@ -727,7 +727,9 @@ in
# 9pnet_virtio used to mount /nix partition doesn't support
# hibernation. This test happens to work on x86_64-linux but
# not on other platforms.
hibernate = handleTestOn [ "x86_64-linux" ] ./hibernate.nix { };
hibernate = handleTestOn [ "x86_64-linux" ] ./hibernate.nix {
systemdStage1 = false;
};
hibernate-systemd-stage-1 = handleTestOn [ "x86_64-linux" ] ./hibernate.nix {
systemdStage1 = true;
};
@@ -769,8 +771,13 @@ in
};
influxdb = runTest ./influxdb.nix;
influxdb2 = runTest ./influxdb2.nix;
initrd-luks-empty-passphrase = runTest ./initrd-luks-empty-passphrase.nix;
initrd-network-openvpn = handleTestOn [ "x86_64-linux" "i686-linux" ] ./initrd-network-openvpn { };
initrd-luks-empty-passphrase = runTest {
imports = [ ./initrd-luks-empty-passphrase.nix ];
_module.args.systemdStage1 = false;
};
initrd-network-openvpn = handleTestOn [ "x86_64-linux" "i686-linux" ] ./initrd-network-openvpn {
systemdStage1 = false;
};
initrd-network-ssh = handleTest ./initrd-network-ssh { };
initrd-secrets = handleTest ./initrd-secrets.nix { };
initrd-secrets-changing = handleTest ./initrd-secrets-changing.nix { };
@@ -778,8 +785,8 @@ in
input-remapper = runTest ./input-remapper.nix;
inspircd = runTest ./inspircd.nix;
installed-tests = recurseIntoAttrs (handleTest ./installed-tests { });
installer = handleTest ./installer.nix { };
installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix { };
installer = handleTest ./installer.nix { systemdStage1 = false; };
installer-systemd-stage-1 = handleTest ./installer.nix { systemdStage1 = true; };
intune = runTest ./intune.nix;
invidious = runTest ./invidious.nix;
invoiceplane = runTest ./invoiceplane.nix;
@@ -1603,7 +1610,10 @@ in
systemd-pstore = runTest ./systemd-pstore.nix;
systemd-repart = handleTest ./systemd-repart.nix { };
systemd-resolved = runTest ./systemd-resolved.nix;
systemd-shutdown = runTest ./systemd-shutdown.nix;
systemd-shutdown = runTest {
imports = [ ./systemd-shutdown.nix ];
_module.args.systemdStage1 = false;
};
systemd-ssh-proxy = runTest ./systemd-ssh-proxy.nix;
systemd-sysupdate = runTest ./systemd-sysupdate.nix;
systemd-sysusers-immutable = runTest ./systemd-sysusers-immutable.nix;
+5
View File
@@ -1,3 +1,6 @@
# Remove in 26.11. This test guards against problems with
# stage-1-init.sh, which will be removed with scripted stage 1.
{ pkgs, ... }:
{
name = "boot-stage1";
@@ -10,6 +13,8 @@
...
}:
{
boot.initrd.systemd.enable = false;
boot.extraModulePackages =
let
compileKernelModule =
+3
View File
@@ -54,6 +54,9 @@
boot = {
initrd = {
# TODO: Switch to systemd initrd
systemd.enable = false;
# Format the upper Nix store.
postDeviceCommands = ''
${pkgs.e2fsprogs}/bin/mkfs.ext4 /dev/vdb
+7 -3
View File
@@ -19,9 +19,13 @@ let
../modules/profiles/qemu-guest.nix
{
# Hack to make the partition resizing work in QEMU.
boot.initrd.postDeviceCommands = mkBefore ''
ln -s vda /dev/xvda
ln -s vda1 /dev/xvda1
boot.initrd.services.udev.rules = ''
KERNEL==vda, SYMLINK+=xvda
KERNEL==vda1, SYMLINK+=xvda1
'';
services.udev.extraRules = ''
KERNEL==vda, SYMLINK+=xvda
KERNEL==vda1, SYMLINK+=xvda1
'';
amazonImage.format = "qcow2";
+1 -1
View File
@@ -1,6 +1,6 @@
{
pkgs,
systemdStage1 ? false,
systemdStage1,
...
}:
+1 -1
View File
@@ -4,7 +4,7 @@
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../.. { inherit system config; },
systemdStage1 ? false,
systemdStage1,
}:
with import ../lib/testing-python.nix { inherit system pkgs; };
+3 -5
View File
@@ -14,8 +14,6 @@ in
{
name = "initrd-luks-empty-passphrase";
_module.args.systemdStage1 = lib.mkDefault false;
nodes.machine =
{ pkgs, ... }:
{
@@ -31,9 +29,9 @@ in
};
boot.loader.systemd-boot.enable = true;
boot.initrd.systemd = lib.mkIf systemdStage1 {
enable = true;
emergencyAccess = true;
boot.initrd.systemd = {
enable = systemdStage1;
emergencyAccess = lib.mkIf systemdStage1 true;
};
environment.systemPackages = with pkgs; [ cryptsetup ];
@@ -2,7 +2,7 @@
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../.. { inherit system config; },
systemdStage1 ? false,
systemdStage1,
}:
import ../make-test-python.nix (
@@ -1,3 +1,5 @@
# This tests SSH in scripted stage 1. Remove in 26.11.
import ../make-test-python.nix (
{ lib, pkgs, ... }:
@@ -14,6 +16,7 @@ import ../make-test-python.nix (
boot.kernelParams = [
"ip=${config.networking.primaryIPAddress}:::255.255.255.0::eth1:none"
];
boot.initrd.systemd.enable = false;
boot.initrd.network = {
enable = true;
ssh = {
+3
View File
@@ -1,3 +1,5 @@
# Tests networking in scripted stage 1. Remove in 26.11.
{ pkgs, lib, ... }:
{
name = "initrd-network";
@@ -8,6 +10,7 @@
{ ... }:
{
imports = [ ../modules/profiles/minimal.nix ];
boot.initrd.systemd.enable = false;
boot.initrd.network.enable = true;
boot.initrd.network.postCommands = ''
ip addr show
+14 -7
View File
@@ -24,14 +24,19 @@ testing.makeTest {
boot.initrd.secrets = {
"/test" = secret1InStore;
"/run/keys/test" = secret1InStore;
"/run/test" = secret1InStore;
};
boot.initrd.systemd = {
enable = true;
tmpfiles.settings."00-copy-secret" = {
"/sysroot/secret-from-initramfs".C.argument = "/test";
};
};
boot.initrd.postMountCommands = "cp /test /mnt-root/secret-from-initramfs";
specialisation.secrets2System.configuration = {
boot.initrd.secrets = lib.mkForce {
"/test" = secret2InStore;
"/run/keys/test" = secret2InStore;
"/run/test" = secret2InStore;
};
};
};
@@ -40,21 +45,23 @@ testing.makeTest {
start_all()
machine.wait_for_unit("multi-user.target")
print(machine.succeed("cat /run/keys/test"))
print(machine.succeed("cat /run/test"))
machine.succeed(
"cmp ${secret1InStore} /secret-from-initramfs",
"cmp ${secret1InStore} /run/keys/test",
"cmp ${secret1InStore} /run/test",
)
# Select the second boot entry corresponding to the specialisation secrets2System.
machine.succeed("grub-reboot 1")
# Remove the rootfs secret so tmpfiles will copy the new one next time
machine.succeed("rm /secret-from-initramfs")
machine.shutdown()
with subtest("Check that the specialisation's secrets are distinct despite identical kernels"):
machine.wait_for_unit("multi-user.target")
print(machine.succeed("cat /run/keys/test"))
print(machine.succeed("cat /run/test"))
machine.succeed(
"cmp ${secret2InStore} /secret-from-initramfs",
"cmp ${secret2InStore} /run/keys/test",
"cmp ${secret2InStore} /run/test",
)
machine.shutdown()
'';
+9 -6
View File
@@ -24,12 +24,15 @@ let
boot.initrd.secrets = {
"/test" = secretInStore;
# This should *not* need to be copied in postMountCommands
"/run/keys/test" = secretInStore;
# This should *not* need to be copied
"/run/test" = secretInStore;
};
boot.initrd.systemd = {
enable = true;
tmpfiles.settings."00-copy-secret" = {
"/sysroot/secret-from-initramfs".C.argument = "/test";
};
};
boot.initrd.postMountCommands = ''
cp /test /mnt-root/secret-from-initramfs
'';
boot.initrd.compressor = compressor;
# zstd compression is only supported from 5.9 onwards. Remove when 5.10 becomes default.
boot.kernelPackages = pkgs.linuxPackages_latest;
@@ -40,7 +43,7 @@ let
machine.wait_for_unit("multi-user.target")
machine.succeed(
"cmp ${secretInStore} /secret-from-initramfs",
"cmp ${secretInStore} /run/keys/test",
"cmp ${secretInStore} /run/test",
)
'';
};
-52
View File
@@ -1,52 +0,0 @@
{
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../.. { inherit system config; },
}:
{
# Some of these tests don't work with systemd stage 1 yet. Uncomment
# them when fixed.
inherit
(import ./installer.nix {
inherit system config pkgs;
systemdStage1 = true;
})
# bcache
bcachefsSimple
bcachefsEncrypted
btrfsSimple
btrfsSubvolDefault
btrfsSubvolEscape
btrfsSubvols
encryptedFSWithKeyfile
# grub1
luksroot
luksroot-format1
luksroot-format2
lvm
separateBoot
separateBootFat
separateBootZfs
simple
simpleLabels
simpleProvided
simpleSpecialised
simpleUefiGrub
simpleUefiGrubSpecialisation
simpleUefiSystemdBoot
stratisRoot
swraid
zfsroot
clevisLuks
clevisLuksFallback
clevisZfs
clevisZfsFallback
clevisZfsParentDataset
clevisZfsParentDatasetFallback
gptAutoRoot
clevisBcachefs
clevisBcachefsFallback
;
}
+24 -10
View File
@@ -2,7 +2,7 @@
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../.. { inherit system config; },
systemdStage1 ? false,
systemdStage1,
}:
with import ../lib/testing-python.nix { inherit system pkgs; };
@@ -42,7 +42,7 @@ let
# To ensure that we can rebuild the grub configuration on the nixos-rebuild
system.extraDependencies = with pkgs; [ stdenvNoCC ];
${optionalString systemdStage1 "boot.initrd.systemd.enable = true;"}
boot.initrd.systemd.enable = ${boolToString systemdStage1};
${optionalString (bootLoader == "grub") ''
boot.loader.grub.extraConfig = "serial; terminal_output serial";
@@ -640,6 +640,7 @@ let
clevisFallbackTest ? false,
disableFileSystems ? false,
selectNixPackage ? pkgs: pkgs.nixVersions.stable,
broken ? false,
}:
let
isEfi = bootLoader == "systemd-boot" || (bootLoader == "grub" && grubUseEfi);
@@ -656,6 +657,7 @@ let
"x86_64-darwin"
"i686-linux"
];
inherit broken;
};
nodes =
let
@@ -846,14 +848,23 @@ let
"mount LABEL=boot /mnt/boot",
)
'';
extraConfig = ''
boot.kernelParams = lib.mkAfter [ "console=tty0" ];
'';
enableOCR = true;
postBootCommands = ''
target.wait_for_text("[Pp]assphrase for")
target.send_chars("supersecret\n")
'';
# The serial console is much more reliable than OCR, but
# scripted stage 1 doesn't forward logs / password prompts to
# it. (TODO: The test framework should use 'console=ttyS0'
# anyway, but currently it uses 'console=tty0' for the sake of
# the interactive driver)
enableOCR = !systemdStage1;
postBootCommands =
if systemdStage1 then
''
target.wait_for_console_text("passphrase for")
target.send_console("supersecret\n")
''
else
''
target.wait_for_text("[Pp]assphrase for")
target.send_chars("supersecret\n")
'';
};
# The (almost) simplest partitioning scheme: a swap partition and
@@ -879,11 +890,13 @@ let
simple-test-config-by-attr = simple-test-config // {
testByAttrSwitch = true;
broken = true;
};
simple-test-config-from-by-attr-to-flake = simple-test-config // {
testByAttrSwitch = true;
testFlakeSwitch = true;
broken = true;
};
simple-uefi-grub-config = {
@@ -1387,6 +1400,7 @@ in
# Full disk encryption (root, kernel and initrd encrypted) using GRUB, GPT/UEFI,
# LVM-on-LUKS and a keyfile in initrd.secrets to enter the passphrase once
fullDiskEncryption = makeInstallerTest "fullDiskEncryption" {
broken = true;
createPartitions = ''
installer.succeed(
"flock /dev/vda parted --script /dev/vda -- mklabel gpt"
+1
View File
@@ -186,6 +186,7 @@ in
boot.initrd.extraFiles."etc/multipath/wwids".source =
pkgs.writeText "wwids" "/3600140592b17c3f6b404168b082ceeb7/";
boot.initrd.systemd.enable = false;
boot.iscsi-initiator = {
discoverPortal = "target";
name = initiatorName;
+2
View File
@@ -142,6 +142,8 @@ in
};
};
# No SCSI support in systemd stage 1 at present.
boot.initrd.systemd.enable = false;
boot.iscsi-initiator = {
discoverPortal = "target";
name = initiatorName;
+4
View File
@@ -1,3 +1,5 @@
# Tests LUKS specifically with scripted stage 1. Remove in 26.11.
{ lib, pkgs, ... }:
{
name = "luks";
@@ -6,6 +8,8 @@
{ pkgs, ... }:
{
boot.initrd.systemd.enable = false;
# Use systemd-boot
virtualisation = {
emptyDiskImages = [
+1 -2
View File
@@ -106,8 +106,7 @@ in
assert "machine" == machine.succeed("hostname -s").strip()
with subtest("whether systemd-udevd automatically loads modules for our hardware"):
machine.succeed("systemctl start systemd-udev-settle.service")
machine.wait_for_unit("systemd-udev-settle.service")
machine.succeed("udevadm settle --timeout=180")
assert "mousedev" in machine.succeed("lsmod")
with subtest("whether systemd-tmpfiles-clean works"):
+56 -52
View File
@@ -36,66 +36,70 @@ with pkgs.lib;
'';
};
btrfs = makeTest {
name = "non-default-filesystems-btrfs";
btrfs =
let
disk = "/dev/vda";
partition = "/dev/disk/by-label/storage";
in
makeTest {
name = "non-default-filesystems-btrfs";
nodes.machine =
{
config,
pkgs,
lib,
...
}:
let
disk = config.virtualisation.rootDevice;
in
{
virtualisation.rootDevice = "/dev/vda";
virtualisation.useDefaultFilesystems = false;
nodes.machine =
{ ... }:
{
virtualisation.rootDevice = disk;
virtualisation.useDefaultFilesystems = false;
boot.initrd.availableKernelModules = [ "btrfs" ];
boot.supportedFilesystems = [ "btrfs" ];
boot.initrd.postDeviceCommands = ''
FSTYPE=$(blkid -o value -s TYPE ${disk} || true)
if test -z "$FSTYPE"; then
modprobe btrfs
${pkgs.btrfs-progs}/bin/mkfs.btrfs ${disk}
mkdir /nixos
mount -t btrfs ${disk} /nixos
${pkgs.btrfs-progs}/bin/btrfs subvolume create /nixos/root
${pkgs.btrfs-progs}/bin/btrfs subvolume create /nixos/home
umount /nixos
fi
'';
virtualisation.fileSystems = {
"/" = {
device = disk;
fsType = "btrfs";
options = [ "subvol=/root" ];
systemd.repart.partitions."00-root" = {
Type = "linux-generic";
Format = "btrfs";
Label = "storage";
Subvolumes = [
"/root"
"/home"
];
MakeDirectories = [
"/root"
"/home"
];
};
"/home" = {
device = disk;
fsType = "btrfs";
options = [ "subvol=/home" ];
boot.initrd.supportedFilesystems = [ "btrfs" ];
boot.initrd.systemd = {
enable = true;
repart = {
enable = true;
device = disk;
empty = "allow";
};
};
virtualisation.fileSystems = {
"/" = {
device = partition;
fsType = "btrfs";
options = [ "subvol=/root" ];
};
"/home" = {
device = partition;
fsType = "btrfs";
options = [ "subvol=/home" ];
};
};
};
};
testScript = ''
machine.wait_for_unit("multi-user.target")
testScript = ''
machine.wait_for_unit("multi-user.target")
with subtest("BTRFS filesystems are mounted correctly"):
print("output of \"grep -E '/dev/vda' /proc/mounts\":\n" + machine.execute("grep -E '/dev/vda' /proc/mounts")[1])
machine.succeed("grep -E '/dev/vda / btrfs rw,.*subvolid=[0-9]+,subvol=/root 0 0' /proc/mounts")
machine.succeed("grep -E '/dev/vda /home btrfs rw,.*subvolid=[0-9]+,subvol=/home 0 0' /proc/mounts")
'';
};
with subtest("BTRFS filesystems are mounted correctly"):
realdev = machine.succeed("realpath '${partition}'")
print(f"output of \"grep -E '{realdev}' /proc/mounts\":\n" + machine.execute(f"grep -E '{realdev}' /proc/mounts")[1])
machine.succeed(f"grep -E '{realdev} / btrfs rw,.*subvolid=[0-9]+,subvol=/root 0 0' /proc/mounts")
machine.succeed(f"grep -E '{realdev} /home btrfs rw,.*subvolid=[0-9]+,subvol=/home 0 0' /proc/mounts")
'';
};
erofs =
let
+8 -7
View File
@@ -54,11 +54,16 @@ in
import time
start_all()
# Prevent the RTC from setting the time to an undesired value after we already set it to a different value
phone.wait_for_file("/dev/rtc0")
phone.succeed("hwclock --set --date '2022-01-01 07:00'")
phone.wait_for_unit("phosh.service")
with subtest("Check that we can see the lock screen info page"):
# Saturday, January 1
phone.succeed("timedatectl set-time '2022-01-01 07:00'")
phone.succeed("date -s '2022-01-01 07:00'")
phone.wait_for_text("Saturday")
phone.screenshot("01lockinfo")
@@ -73,14 +78,10 @@ in
phone.wait_for_text("All Apps")
phone.screenshot("03launcher")
with subtest("Check the on-screen keyboard shows"):
phone.send_chars("mobile setting", delay=0.2)
phone.wait_for_text("123") # A button on the OSK
phone.screenshot("04osk")
with subtest("Check mobile-phosh-settings starts"):
phone.send_chars("mobile setting", delay=0.2)
phone.send_chars("\n")
phone.wait_for_text("Tweak advanced mobile settings");
phone.screenshot("05settings")
phone.screenshot("04settings")
'';
}
+16 -13
View File
@@ -43,9 +43,10 @@ pkgs.lib.listToAttrs (
meta = { };
nodes.machine =
{ lib, ... }:
{ pkgs, lib, ... }:
let
script = ''
${lib.getExe' pkgs.systemd "udevadm"} settle --timeout=180
ip link
if ${lib.optionalString predictable "!"} ip link show eth0; then
echo Success
@@ -63,18 +64,20 @@ pkgs.lib.listToAttrs (
# Check if predictable interface names are working in stage-1
boot.initrd.postDeviceCommands = lib.mkIf (!systemdStage1) script;
boot.initrd.systemd = lib.mkIf systemdStage1 {
enable = true;
initrdBin = [ pkgs.iproute2 ];
services.systemd-udev-settle.wantedBy = [ "initrd.target" ];
services.check-interfaces = {
requiredBy = [ "initrd.target" ];
after = [ "systemd-udev-settle.service" ];
serviceConfig.Type = "oneshot";
path = [ pkgs.iproute2 ];
inherit script;
};
};
boot.initrd.systemd = lib.mkMerge [
{ enable = systemdStage1; }
(lib.mkIf systemdStage1 {
initrdBin = [ pkgs.iproute2 ];
services.systemd-udev-settle.wantedBy = [ "initrd.target" ];
services.check-interfaces = {
requiredBy = [ "initrd.target" ];
after = [ "systemd-udev-settle.service" ];
serviceConfig.Type = "oneshot";
path = [ pkgs.iproute2 ];
inherit script;
};
})
];
};
testScript = ''
+1 -1
View File
@@ -33,7 +33,7 @@ let
label = rootFslabel;
partitionTableType = "efi";
format = "qcow2";
bootSize = "32M";
bootSize = "128M";
additionalSpace = "0M";
copyChannel = false;
};
+25 -22
View File
@@ -1,33 +1,35 @@
{ lib, pkgs, ... }:
{ ... }:
{
name = "swap-partition";
nodes.machine =
{
config,
pkgs,
lib,
...
}:
{ config, ... }:
{
virtualisation.useDefaultFilesystems = false;
virtualisation.rootDevice = "/dev/vda1";
boot.initrd.postDeviceCommands = ''
if ! test -b /dev/vda1; then
${pkgs.parted}/bin/parted --script /dev/vda -- mklabel msdos
${pkgs.parted}/bin/parted --script /dev/vda -- mkpart primary 1MiB -250MiB
${pkgs.parted}/bin/parted --script /dev/vda -- mkpart primary -250MiB 100%
sync
fi
FSTYPE=$(blkid -o value -s TYPE /dev/vda1 || true)
if test -z "$FSTYPE"; then
${pkgs.e2fsprogs}/bin/mke2fs -t ext4 -L root /dev/vda1
${pkgs.util-linux}/bin/mkswap --label swap /dev/vda2
fi
'';
boot.initrd.systemd = {
enable = true;
repart = {
enable = true;
device = "/dev/vda";
empty = "allow";
};
};
systemd.repart.partitions = {
"00-root" = {
Type = "linux-generic";
Format = "ext4";
Label = "root";
};
"10-swap" = {
Type = "linux-generic";
Label = "swap";
SizeMinBytes = "250M";
SizeMaxBytes = "250M";
};
};
virtualisation.fileSystems = {
"/" = {
@@ -38,7 +40,8 @@
swapDevices = [
{
device = "/dev/disk/by-label/swap";
device = "/dev/disk/by-partlabel/swap";
options = [ "x-systemd.makefs" ];
}
];
};
+26 -23
View File
@@ -1,14 +1,9 @@
{ lib, pkgs, ... }:
{ ... }:
{
name = "swap-random-encryption";
nodes.machine =
{
config,
pkgs,
lib,
...
}:
{ pkgs, ... }:
{
environment.systemPackages = [ pkgs.cryptsetup ];
@@ -16,19 +11,27 @@
virtualisation.rootDevice = "/dev/vda1";
boot.initrd.postDeviceCommands = ''
if ! test -b /dev/vda1; then
${pkgs.parted}/bin/parted --script /dev/vda -- mklabel msdos
${pkgs.parted}/bin/parted --script /dev/vda -- mkpart primary 1MiB -250MiB
${pkgs.parted}/bin/parted --script /dev/vda -- mkpart primary -250MiB 100%
sync
fi
FSTYPE=$(blkid -o value -s TYPE /dev/vda1 || true)
if test -z "$FSTYPE"; then
${pkgs.e2fsprogs}/bin/mke2fs -t ext4 -L root /dev/vda1
fi
'';
boot.initrd.systemd = {
enable = true;
repart = {
enable = true;
device = "/dev/vda";
empty = "allow";
};
};
systemd.repart.partitions = {
"00-root" = {
Type = "linux-generic";
Format = "ext4";
Label = "root";
};
"10-swap" = {
Type = "linux-generic";
Label = "swap";
SizeMinBytes = "250M";
SizeMaxBytes = "250M";
};
};
virtualisation.fileSystems = {
"/" = {
@@ -39,7 +42,7 @@
swapDevices = [
{
device = "/dev/vda2";
device = "/dev/disk/by-partlabel/swap";
randomEncryption = {
enable = true;
@@ -60,7 +63,7 @@
with subtest("Swap device has 4k sector size"):
import json
result = json.loads(machine.succeed("lsblk -Jo PHY-SEC,LOG-SEC /dev/mapper/dev-vda2"))
result = json.loads(machine.succeed("lsblk -Jo PHY-SEC,LOG-SEC /dev/mapper/dev-disk-by\\x2dpartlabel-swap"))
block_devices = result["blockdevices"]
if len(block_devices) != 1:
raise Exception ("lsblk output did not report exactly one block device")
@@ -72,7 +75,7 @@
with subtest("Swap encrypt has assigned cipher and keysize"):
import re
results = machine.succeed("cryptsetup status dev-vda2").splitlines()
results = machine.succeed("cryptsetup status dev-disk-by\\x2dpartlabel-swap").splitlines()
cipher_pattern = re.compile(r"\s*cipher:\s+aes-xts-plain64\s*")
if not any(cipher_pattern.fullmatch(line) for line in results):
+5
View File
@@ -60,5 +60,10 @@ in
machine.succeed("systemctl status example.service | grep 'Active: active'")
machine.succeed("systemctl show --property TasksMax --value user-1000.slice | grep 100")
with subtest("modprobe@ services work"):
modprobe_service_status = machine.succeed("systemctl show --property ExecMainStatus modprobe@configfs.service")
print(modprobe_service_status)
t.assertEqual("ExecMainStatus=0\n", modprobe_service_status)
'';
}
-2
View File
@@ -11,8 +11,6 @@ in
name = "systemd-shutdown";
meta.maintainers = with lib.maintainers; [ das_j ];
_module.args.systemdStage1 = lib.mkDefault false;
nodes.machine = {
imports = [ ../modules/profiles/minimal.nix ];
systemd.shutdownRamfs.contents."/etc/systemd/system-shutdown/shutdown-message".source =
+1 -1
View File
@@ -34,6 +34,6 @@ pythonPackages.buildPythonApplication (finalAttrs: {
homepage = "https://github.com/dirkgroenen/mopidy-mopify";
description = "Mopidy webclient based on the Spotify webbased interface";
license = lib.licenses.gpl3;
maintainers = [ lib.maintainers.Gonzih ];
maintainers = [ ];
};
})
@@ -144,10 +144,10 @@
elpaBuild {
pname = "adaptive-wrap";
ename = "adaptive-wrap";
version = "0.8.0.20240113.95028";
version = "0.9.0.20260322.173441";
src = fetchurl {
url = "https://elpa.gnu.org/devel/adaptive-wrap-0.8.0.20240113.95028.tar";
sha256 = "0dj20mmipnik62480cm11rnvsvbc3js2ql5r321kj20g87rz9l2a";
url = "https://elpa.gnu.org/devel/adaptive-wrap-0.9.0.20260322.173441.tar";
sha256 = "1fr72sxvzs1jyqlxgfmk650pw3663n2kpdliqa980m3qmx4n1k30";
};
packageRequires = [ ];
meta = {
@@ -461,10 +461,10 @@
elpaBuild {
pname = "auctex";
ename = "auctex";
version = "14.1.2.0.20260317.62952";
version = "14.1.2.0.20260331.191333";
src = fetchurl {
url = "https://elpa.gnu.org/devel/auctex-14.1.2.0.20260317.62952.tar";
sha256 = "032a3ngz57vy46qf4k6hpilp9wpky191zxm1siraffhw9j2hx4x9";
url = "https://elpa.gnu.org/devel/auctex-14.1.2.0.20260331.191333.tar";
sha256 = "1xan7cfl5nhndngmdrgs2832xpfl7jvfb86kgjn8i8lm81djz5r9";
};
packageRequires = [ ];
meta = {
@@ -761,10 +761,10 @@
elpaBuild {
pname = "bind-key";
ename = "bind-key";
version = "2.4.1.0.20260101.125434";
version = "2.4.1.0.20260408.145602";
src = fetchurl {
url = "https://elpa.gnu.org/devel/bind-key-2.4.1.0.20260101.125434.tar";
sha256 = "02g0ig9lbga1yr6c41gg30qqnfb98xfp5f15xsyl29vvd8q3fksy";
url = "https://elpa.gnu.org/devel/bind-key-2.4.1.0.20260408.145602.tar";
sha256 = "016cx0zc3y7l7wv2xv6c9kvpy5rf98ryaa1w6z9wagh5jbbcg4ac";
};
packageRequires = [ ];
meta = {
@@ -1015,10 +1015,10 @@
elpaBuild {
pname = "buframe";
ename = "buframe";
version = "0.3.0.20260120.162350";
version = "0.3.0.20260327.125525";
src = fetchurl {
url = "https://elpa.gnu.org/devel/buframe-0.3.0.20260120.162350.tar";
sha256 = "1kh6h6rqg3j4rbbcr5m1ch5gvcsyllxg78l549ay5hhyi06j2y7a";
url = "https://elpa.gnu.org/devel/buframe-0.3.0.20260327.125525.tar";
sha256 = "0z97kqjzpgp31ik5y8ab50iw7mckx5mc3yrdr4abkl69ii6gw76q";
};
packageRequires = [ timeout ];
meta = {
@@ -1106,10 +1106,10 @@
elpaBuild {
pname = "cape";
ename = "cape";
version = "2.6.0.20260311.165405";
version = "2.6.0.20260330.61918";
src = fetchurl {
url = "https://elpa.gnu.org/devel/cape-2.6.0.20260311.165405.tar";
sha256 = "0j0r07my16zxyl37jqkqj6mcmbngz7yjj1lidzc9xc1hylalks50";
url = "https://elpa.gnu.org/devel/cape-2.6.0.20260330.61918.tar";
sha256 = "1w8l2j55zmkbfx1m22fd12xbh9makaxxp97wcc69px1flx0055dh";
};
packageRequires = [ compat ];
meta = {
@@ -1319,10 +1319,10 @@
elpaBuild {
pname = "colorful-mode";
ename = "colorful-mode";
version = "1.2.5.0.20260309.124049";
version = "1.2.5.0.20260324.223335";
src = fetchurl {
url = "https://elpa.gnu.org/devel/colorful-mode-1.2.5.0.20260309.124049.tar";
sha256 = "0x2mpf9nik0wxjlcf71bjxlz8s9hy6mdx888bn3gc3nwbjdgq5rb";
url = "https://elpa.gnu.org/devel/colorful-mode-1.2.5.0.20260324.223335.tar";
sha256 = "0gyz2n3j4ja4diknh6rm5rlzyw49pqbxin2j7ykjz0iprzr5vgnw";
};
packageRequires = [ compat ];
meta = {
@@ -1387,10 +1387,10 @@
elpaBuild {
pname = "company";
ename = "company";
version = "1.0.2.0.20260220.15631";
version = "1.0.2.0.20260331.24502";
src = fetchurl {
url = "https://elpa.gnu.org/devel/company-1.0.2.0.20260220.15631.tar";
sha256 = "0wj07iqpjigzqdy8y1i7x3nzg9cgammjcyv872hxzx9dr4xb0i88";
url = "https://elpa.gnu.org/devel/company-1.0.2.0.20260331.24502.tar";
sha256 = "19apxj576hy09pk37rpnzybab0ffrw63j2ycad5vwz75y84dhjys";
};
packageRequires = [ ];
meta = {
@@ -1483,10 +1483,10 @@
elpaBuild {
pname = "compat";
ename = "compat";
version = "30.1.0.1.0.20260131.205608";
version = "30.1.0.1.0.20260328.162400";
src = fetchurl {
url = "https://elpa.gnu.org/devel/compat-30.1.0.1.0.20260131.205608.tar";
sha256 = "0kyy296448mczwhxzpa2n34xi9zdvwj30vshhylfskr22wblr7i5";
url = "https://elpa.gnu.org/devel/compat-30.1.0.1.0.20260328.162400.tar";
sha256 = "1m3vchayxp8jzjf4cc3zc7qkgy702nfccbvdvfjjfn71wd37q4ph";
};
packageRequires = [ seq ];
meta = {
@@ -1547,10 +1547,10 @@
elpaBuild {
pname = "consult";
ename = "consult";
version = "3.4.0.20260309.154256";
version = "3.4.0.20260407.153027";
src = fetchurl {
url = "https://elpa.gnu.org/devel/consult-3.4.0.20260309.154256.tar";
sha256 = "0ra1jl8p0rq7s7xhdl8ss5rbyqvjg4x5cmx2dpam2mivdry8hihb";
url = "https://elpa.gnu.org/devel/consult-3.4.0.20260407.153027.tar";
sha256 = "0w1hl7lj26bqhnmmmk9rnahapw4pggxyri6ppcxbxx735bpy9c2r";
};
packageRequires = [ compat ];
meta = {
@@ -1660,10 +1660,10 @@
elpaBuild {
pname = "corfu";
ename = "corfu";
version = "2.9.0.20260309.155118";
version = "2.9.0.20260330.62901";
src = fetchurl {
url = "https://elpa.gnu.org/devel/corfu-2.9.0.20260309.155118.tar";
sha256 = "1l2sy2irxjrnxhldxql2asapiwj9yrajl12pxmw3czzw8i0fyhzk";
url = "https://elpa.gnu.org/devel/corfu-2.9.0.20260330.62901.tar";
sha256 = "10092p4v9kaz2mlffsq5dpnqna3qbbyx4qivxg4qjpy3w53wbznj";
};
packageRequires = [ compat ];
meta = {
@@ -1941,10 +1941,10 @@
elpaBuild {
pname = "dape";
ename = "dape";
version = "0.26.0.0.20260318.234534";
version = "0.26.0.0.20260406.153653";
src = fetchurl {
url = "https://elpa.gnu.org/devel/dape-0.26.0.0.20260318.234534.tar";
sha256 = "0f4zyhr1k393yday7lhp28g2k5v77qwm06mq4g5a0pcj7d0gdxjh";
url = "https://elpa.gnu.org/devel/dape-0.26.0.0.20260406.153653.tar";
sha256 = "0hpssk2z4i4nalmf9h0iz6iwawks3wh2lkf7il9pvsmxfyi5qb1q";
};
packageRequires = [ jsonrpc ];
meta = {
@@ -2075,10 +2075,10 @@
elpaBuild {
pname = "denote";
ename = "denote";
version = "4.1.3.0.20260319.51307";
version = "4.1.3.0.20260409.181603";
src = fetchurl {
url = "https://elpa.gnu.org/devel/denote-4.1.3.0.20260319.51307.tar";
sha256 = "09iaa17d0r4nkw8jb8nwjm5prf9srwnw48fbaq20gkz00mjpn1wz";
url = "https://elpa.gnu.org/devel/denote-4.1.3.0.20260409.181603.tar";
sha256 = "1mh0vxq1bz20f0d6n3hcrzwgfjva3f17zqkwj9hxm2xw0r9b4jhl";
};
packageRequires = [ ];
meta = {
@@ -2097,10 +2097,10 @@
elpaBuild {
pname = "denote-journal";
ename = "denote-journal";
version = "0.2.2.0.20260111.93423";
version = "0.2.2.0.20260328.192346";
src = fetchurl {
url = "https://elpa.gnu.org/devel/denote-journal-0.2.2.0.20260111.93423.tar";
sha256 = "0cjzvjfa1yirryqim0a1nhgryj8723bflccs9kaphvwrb3m6kfis";
url = "https://elpa.gnu.org/devel/denote-journal-0.2.2.0.20260328.192346.tar";
sha256 = "1cp907wdx6cqy5qadq1dsp292ms7wr0qy5znf8fjj4112gxv7ymd";
};
packageRequires = [ denote ];
meta = {
@@ -2185,10 +2185,10 @@
elpaBuild {
pname = "denote-review";
ename = "denote-review";
version = "1.0.6.0.20260301.84836";
version = "1.0.7.0.20260409.90040";
src = fetchurl {
url = "https://elpa.gnu.org/devel/denote-review-1.0.6.0.20260301.84836.tar";
sha256 = "0bvphym1x8mcaqad7ikxqbhrrv5c02djigi2dvnb2fnfcnv7367c";
url = "https://elpa.gnu.org/devel/denote-review-1.0.7.0.20260409.90040.tar";
sha256 = "0lj6dl6dvsmrqqvy4462nz8vpigigz3lfp3xav24dvmc7wmjzm1m";
};
packageRequires = [ denote ];
meta = {
@@ -2229,10 +2229,10 @@
elpaBuild {
pname = "denote-sequence";
ename = "denote-sequence";
version = "0.2.0.0.20260207.135941";
version = "0.2.0.0.20260409.181206";
src = fetchurl {
url = "https://elpa.gnu.org/devel/denote-sequence-0.2.0.0.20260207.135941.tar";
sha256 = "1iabngf9rpjshcxb7lg9l8cqadkak8mhz066qp0mayxf08z70yq9";
url = "https://elpa.gnu.org/devel/denote-sequence-0.2.0.0.20260409.181206.tar";
sha256 = "0r3b31hsnp3c4fjsjcyvbpzbbbbs465fn29zja23xwfix3x0y0rp";
};
packageRequires = [ denote ];
meta = {
@@ -2337,10 +2337,10 @@
elpaBuild {
pname = "dicom";
ename = "dicom";
version = "1.3.0.20260117.164829";
version = "1.3.0.20260330.63030";
src = fetchurl {
url = "https://elpa.gnu.org/devel/dicom-1.3.0.20260117.164829.tar";
sha256 = "1gl3fxb051iam2vlxz43zcbw7wlp2vfid2mmdrsmyf3v3j6l5y1d";
url = "https://elpa.gnu.org/devel/dicom-1.3.0.20260330.63030.tar";
sha256 = "0xfvmxp1w730b5hgq3wnaa79mi2ib2v43z4as9py82ccvmcw2c40";
};
packageRequires = [ compat ];
meta = {
@@ -2387,10 +2387,10 @@
elpaBuild {
pname = "diff-hl";
ename = "diff-hl";
version = "1.10.0.0.20260225.224737";
version = "1.10.0.0.20260328.192544";
src = fetchurl {
url = "https://elpa.gnu.org/devel/diff-hl-1.10.0.0.20260225.224737.tar";
sha256 = "18ify2s3r9m7qvh51mdnzmvw3zw3i00j88viaxpgm1fm1qhyw560";
url = "https://elpa.gnu.org/devel/diff-hl-1.10.0.0.20260328.192544.tar";
sha256 = "1whznmdqlf3gnyq0k7n9pj71d8qb3avv27dmk86kmgvp1n2bq3c4";
};
packageRequires = [ cl-lib ];
meta = {
@@ -2514,10 +2514,10 @@
elpaBuild {
pname = "dired-preview";
ename = "dired-preview";
version = "0.6.0.0.20260111.184511";
version = "0.6.0.0.20260409.181025";
src = fetchurl {
url = "https://elpa.gnu.org/devel/dired-preview-0.6.0.0.20260111.184511.tar";
sha256 = "0jrz2bv87vkj9j1dgm0lidy2c3m58a2110v88c1iffjh9c17qb61";
url = "https://elpa.gnu.org/devel/dired-preview-0.6.0.0.20260409.181025.tar";
sha256 = "1ryvx8q6sgikf8zl977nhb7nb9f776384lh6aky4nfnlx62sacpb";
};
packageRequires = [ ];
meta = {
@@ -2705,10 +2705,10 @@
elpaBuild {
pname = "doric-themes";
ename = "doric-themes";
version = "1.0.0.0.20260314.71512";
version = "1.1.0.0.20260325.70019";
src = fetchurl {
url = "https://elpa.gnu.org/devel/doric-themes-1.0.0.0.20260314.71512.tar";
sha256 = "02g0rdzwxn58gh2cvyvvw0lq7shf97xlgh1bv84vg6yr27wjk112";
url = "https://elpa.gnu.org/devel/doric-themes-1.1.0.0.20260325.70019.tar";
sha256 = "1775v235qd5v0zxakf992iwcmm7nwxppwm2ghx1l86iyfr4l80s4";
};
packageRequires = [ ];
meta = {
@@ -2929,10 +2929,10 @@
elpaBuild {
pname = "ef-themes";
ename = "ef-themes";
version = "2.1.0.0.20260315.193713";
version = "2.1.0.0.20260405.133650";
src = fetchurl {
url = "https://elpa.gnu.org/devel/ef-themes-2.1.0.0.20260315.193713.tar";
sha256 = "19jhb29w6qzwdd1cp9dik45kl369mq57mx57z26hz55wb553i9hm";
url = "https://elpa.gnu.org/devel/ef-themes-2.1.0.0.20260405.133650.tar";
sha256 = "0mg7zxw33swrwy195cbnpjsi9waydbw0aq8hvpwf58cwf6lnszzn";
};
packageRequires = [ modus-themes ];
meta = {
@@ -2957,10 +2957,10 @@
elpaBuild {
pname = "eglot";
ename = "eglot";
version = "1.21.0.20260303.101717";
version = "1.23.0.20260406.115439";
src = fetchurl {
url = "https://elpa.gnu.org/devel/eglot-1.21.0.20260303.101717.tar";
sha256 = "0n9ch7ffpwiqrikw1f2rjlk2pc7ag15wjjbvvl4g5f201zxdxn6p";
url = "https://elpa.gnu.org/devel/eglot-1.23.0.20260406.115439.tar";
sha256 = "0wxnvhzl2ygb1c0krrq0zqzkda55l3hqlpicq9yvckfi7d3h62ik";
};
packageRequires = [
eldoc
@@ -3131,10 +3131,10 @@
elpaBuild {
pname = "ellama";
ename = "ellama";
version = "1.12.18.0.20260223.202929";
version = "1.13.0.0.20260410.5454";
src = fetchurl {
url = "https://elpa.gnu.org/devel/ellama-1.12.18.0.20260223.202929.tar";
sha256 = "1yii4yzqla28z4gm9pmazqcl3fm6qcb1qyh32c6zm0xxfp52wrah";
url = "https://elpa.gnu.org/devel/ellama-1.13.0.0.20260410.5454.tar";
sha256 = "05pvhjagzc0nb2nsagbd1xhxfqvrfhjn734881ph6njr3ns186ai";
};
packageRequires = [
compat
@@ -3200,10 +3200,10 @@
elpaBuild {
pname = "emacs-lisp-intro-nl";
ename = "emacs-lisp-intro-nl";
version = "0.0.20260315.201559";
version = "0.0.20260409.83314";
src = fetchurl {
url = "https://elpa.gnu.org/devel/emacs-lisp-intro-nl-0.0.20260315.201559.tar";
sha256 = "1fpyn1lk19gd16ns13ggym9s6x868lj72c9dkaq6amzdwa9h9cg8";
url = "https://elpa.gnu.org/devel/emacs-lisp-intro-nl-0.0.20260409.83314.tar";
sha256 = "1cnr00p1gl6f21p1apnyz2a04zv5xc2c7c1ldkvzadpy9fj0a9r4";
};
packageRequires = [ ];
meta = {
@@ -3222,10 +3222,10 @@
elpaBuild {
pname = "embark";
ename = "embark";
version = "1.1.0.20260223.105831";
version = "1.2.0.20260404.170203";
src = fetchurl {
url = "https://elpa.gnu.org/devel/embark-1.1.0.20260223.105831.tar";
sha256 = "0kcwp51brjxmhnm04ml7qhl0ijadq0y6asyfjbrvqpw5lk8sdjkv";
url = "https://elpa.gnu.org/devel/embark-1.2.0.20260404.170203.tar";
sha256 = "1ppb6axy1bwxm7qa0pw9cn2k0whl3dfnq69cw2qh62pqi1rnwvh6";
};
packageRequires = [ compat ];
meta = {
@@ -3246,10 +3246,10 @@
elpaBuild {
pname = "embark-consult";
ename = "embark-consult";
version = "1.1.0.20260223.105831";
version = "1.1.0.20260404.170203";
src = fetchurl {
url = "https://elpa.gnu.org/devel/embark-consult-1.1.0.20260223.105831.tar";
sha256 = "030h5cn7567z193kngbnbmm4xdwq0gbd4cngp5yz1ch86n3wbj1y";
url = "https://elpa.gnu.org/devel/embark-consult-1.1.0.20260404.170203.tar";
sha256 = "1lh9jnqhb22yqwiacblcwwfj92lljxc12mamkzq6zk894hxnf9hd";
};
packageRequires = [
compat
@@ -3399,10 +3399,10 @@
elpaBuild {
pname = "erc";
ename = "erc";
version = "5.6.2snapshot0.20260304.144305";
version = "5.6.2snapshot0.20260323.181457";
src = fetchurl {
url = "https://elpa.gnu.org/devel/erc-5.6.2snapshot0.20260304.144305.tar";
sha256 = "01n4z2x5xn8xqyj6qwl7pcxpvhawg3j4zp4lwp96igriyf7vr80c";
url = "https://elpa.gnu.org/devel/erc-5.6.2snapshot0.20260323.181457.tar";
sha256 = "0i94a6g1k4gzfz3jzm975w9v21bj6kifajn6wqnnswyl4cis65n3";
};
packageRequires = [ compat ];
meta = {
@@ -3446,10 +3446,10 @@
elpaBuild {
pname = "ess";
ename = "ess";
version = "26.1.0.0.20260314.114334";
version = "26.1.0.0.20260408.95243";
src = fetchurl {
url = "https://elpa.gnu.org/devel/ess-26.1.0.0.20260314.114334.tar";
sha256 = "1baas2jyj9dzyss80lrgr2zyhjgym4y88nx6jjfz6chx98r6inxy";
url = "https://elpa.gnu.org/devel/ess-26.1.0.0.20260408.95243.tar";
sha256 = "0ddkvi7akw7dhjx1spc98s653kp48b327amyhwgw06sgkn868psa";
};
packageRequires = [ ];
meta = {
@@ -3696,10 +3696,10 @@
elpaBuild {
pname = "flymake";
ename = "flymake";
version = "1.4.5.0.20260309.190913";
version = "1.4.5.0.20260326.141956";
src = fetchurl {
url = "https://elpa.gnu.org/devel/flymake-1.4.5.0.20260309.190913.tar";
sha256 = "08w7pnblw7skhx4bawp4vfvf6fxnwkvi5plli16rwffs82jyfspi";
url = "https://elpa.gnu.org/devel/flymake-1.4.5.0.20260326.141956.tar";
sha256 = "11cjgvqzp4jilw90hm82gzca68hr3dn0smg8wvfy8k0br8qq48nx";
};
packageRequires = [
eldoc
@@ -3895,10 +3895,10 @@
elpaBuild {
pname = "futur";
ename = "futur";
version = "1.3.0.20260319.153050";
version = "1.4.0.20260409.205429";
src = fetchurl {
url = "https://elpa.gnu.org/devel/futur-1.3.0.20260319.153050.tar";
sha256 = "0wryznsr0lmj0wngp4mzycm78xz57k57a9qii8rfhqxhn6wvmf3k";
url = "https://elpa.gnu.org/devel/futur-1.4.0.20260409.205429.tar";
sha256 = "1crph78sjng309ciyxhcy1ci9l75pqvrq7ac2p4m55dc7yzgkl0i";
};
packageRequires = [ ];
meta = {
@@ -4089,10 +4089,10 @@
elpaBuild {
pname = "gnosis";
ename = "gnosis";
version = "0.9.0.0.20260316.52136";
version = "0.10.3.0.20260406.15023";
src = fetchurl {
url = "https://elpa.gnu.org/devel/gnosis-0.9.0.0.20260316.52136.tar";
sha256 = "08n729ya68n37fwl4b2ysby4i3r86zvfabxdns4vd2qwhshmvfqk";
url = "https://elpa.gnu.org/devel/gnosis-0.10.3.0.20260406.15023.tar";
sha256 = "11ijgpz1pwh7cgj96lhigmh19vrqjysslpkmmrjyihdzmmfzk0wj";
};
packageRequires = [ compat ];
meta = {
@@ -4297,10 +4297,10 @@
elpaBuild {
pname = "greader";
ename = "greader";
version = "0.13.1.0.20260306.51522";
version = "0.19.0.0.20260402.161715";
src = fetchurl {
url = "https://elpa.gnu.org/devel/greader-0.13.1.0.20260306.51522.tar";
sha256 = "041nayf6vsbslnwlsgx96mnlcdvjldqp7jk0blmx6a0ikbn4qdl7";
url = "https://elpa.gnu.org/devel/greader-0.19.0.0.20260402.161715.tar";
sha256 = "0fzph8cvyl66sxs5a96hhxgpg30df48nv32d8x29df4piv113zcw";
};
packageRequires = [
compat
@@ -4321,10 +4321,10 @@
elpaBuild {
pname = "greenbar";
ename = "greenbar";
version = "1.2.0.20250603.210745";
version = "1.2.260317.0.20260317.232500";
src = fetchurl {
url = "https://elpa.gnu.org/devel/greenbar-1.2.0.20250603.210745.tar";
sha256 = "1rx0jivxr95pjfksf1k8dl2ic9sqmss7rm2cvq5ghazv2r1lpl1k";
url = "https://elpa.gnu.org/devel/greenbar-1.2.260317.0.20260317.232500.tar";
sha256 = "1p1w71rylw22qwlc4rmj1qma5zzbxf7zwvwbywqxhcpdh5sw9rp0";
};
packageRequires = [ ];
meta = {
@@ -4559,10 +4559,10 @@
elpaBuild {
pname = "hyperbole";
ename = "hyperbole";
version = "9.0.2pre0.20260319.132353";
version = "9.0.2pre0.20260410.71604";
src = fetchurl {
url = "https://elpa.gnu.org/devel/hyperbole-9.0.2pre0.20260319.132353.tar";
sha256 = "0yz2fq0prg0h7pvsjyvf21cpccc7airbbrp755vwsl10cg3011cz";
url = "https://elpa.gnu.org/devel/hyperbole-9.0.2pre0.20260410.71604.tar";
sha256 = "0mnxwiv6l1rpwwnaffhi0sxb5qi58wf8npp05w0swdanim27k7kr";
};
packageRequires = [ ];
meta = {
@@ -4913,10 +4913,10 @@
elpaBuild {
pname = "javaimp";
ename = "javaimp";
version = "0.9.1.0.20260313.215929";
version = "0.9.1.0.20260403.224537";
src = fetchurl {
url = "https://elpa.gnu.org/devel/javaimp-0.9.1.0.20260313.215929.tar";
sha256 = "03jyra0af55hq6b5rwv0rc8gx4dyfwr9rmzii7vp4sz29g5c0bl3";
url = "https://elpa.gnu.org/devel/javaimp-0.9.1.0.20260403.224537.tar";
sha256 = "0jkw3dklylz7l7wq162c16ak8fbjpp23g38y5fmpgrinrbfjpwmd";
};
packageRequires = [ ];
meta = {
@@ -4957,10 +4957,10 @@
elpaBuild {
pname = "jinx";
ename = "jinx";
version = "2.7.0.20260309.154428";
version = "2.7.0.20260330.62245";
src = fetchurl {
url = "https://elpa.gnu.org/devel/jinx-2.7.0.20260309.154428.tar";
sha256 = "0dbafbsx7mssbg3xn7bb1x38qp5mpdbq5j8ji4xfc0ys0x8lnczv";
url = "https://elpa.gnu.org/devel/jinx-2.7.0.20260330.62245.tar";
sha256 = "1js65bg2pm4ql6rri6wvm91klhfnziv75n7cmix5z3lk0836qw7d";
};
packageRequires = [ compat ];
meta = {
@@ -5043,10 +5043,10 @@
elpaBuild {
pname = "jsonrpc";
ename = "jsonrpc";
version = "1.0.27.0.20260126.225709";
version = "1.0.28.0.20260402.173109";
src = fetchurl {
url = "https://elpa.gnu.org/devel/jsonrpc-1.0.27.0.20260126.225709.tar";
sha256 = "0s96nrzcmkxiszcashz6qjvwmnba0hpr20m2iphawv4yik6jb6gg";
url = "https://elpa.gnu.org/devel/jsonrpc-1.0.28.0.20260402.173109.tar";
sha256 = "1fxwnk964n0g3l6f06q323cp9jq12ja2fja6q00bpf9jargjkp57";
};
packageRequires = [ ];
meta = {
@@ -5150,10 +5150,10 @@
elpaBuild {
pname = "kubed";
ename = "kubed";
version = "0.5.1.0.20260213.144943";
version = "0.5.1.0.20260327.160729";
src = fetchurl {
url = "https://elpa.gnu.org/devel/kubed-0.5.1.0.20260213.144943.tar";
sha256 = "1ymddlg4vd5flpg76mpy4md9545vfc5bgfa9ywy5dm6l4f3kw5hq";
url = "https://elpa.gnu.org/devel/kubed-0.5.1.0.20260327.160729.tar";
sha256 = "1i5hn7fl08xqqhhs9ic9frdg3gj65nll2zjvc8wc88yn38c75bav";
};
packageRequires = [ ];
meta = {
@@ -5333,10 +5333,10 @@
elpaBuild {
pname = "lin";
ename = "lin";
version = "2.0.0.0.20260314.124617";
version = "2.0.0.0.20260324.81759";
src = fetchurl {
url = "https://elpa.gnu.org/devel/lin-2.0.0.0.20260314.124617.tar";
sha256 = "02d2r4qyk44jkmc0x9v6n309xzbhlmz03x99kplawzrph3xy6sqc";
url = "https://elpa.gnu.org/devel/lin-2.0.0.0.20260324.81759.tar";
sha256 = "173s99ccj6v1yalvbniia5bg59y195rjavabaxzjp70ayzb830zz";
};
packageRequires = [ ];
meta = {
@@ -5409,10 +5409,10 @@
elpaBuild {
pname = "llm";
ename = "llm";
version = "0.29.0.0.20260313.233907";
version = "0.30.1.0.20260409.235755";
src = fetchurl {
url = "https://elpa.gnu.org/devel/llm-0.29.0.0.20260313.233907.tar";
sha256 = "081a9s7igw4700d6nymxrqxp8wb3822hf58a905ny0sibvwd4r70";
url = "https://elpa.gnu.org/devel/llm-0.30.1.0.20260409.235755.tar";
sha256 = "0cviwq12i6p6s8k58987n43mzrhcilkddflnmwkvalyvpfbsmm1r";
};
packageRequires = [
compat
@@ -5649,10 +5649,10 @@
elpaBuild {
pname = "marginalia";
ename = "marginalia";
version = "2.10.0.20260309.154526";
version = "2.10.0.20260330.62326";
src = fetchurl {
url = "https://elpa.gnu.org/devel/marginalia-2.10.0.20260309.154526.tar";
sha256 = "0y9vvyvi0rzf53ybwfnwg0v2i0970h80mdwld4p4khlya66xwhc3";
url = "https://elpa.gnu.org/devel/marginalia-2.10.0.20260330.62326.tar";
sha256 = "1vlzmpk04q2cgaqnlzdqdn6ll58jvkb3v93hnkifrldgzqkgd40n";
};
packageRequires = [ compat ];
meta = {
@@ -5925,10 +5925,10 @@
elpaBuild {
pname = "minimail";
ename = "minimail";
version = "0.3.0.20251125.163059";
version = "0.3.0.20260330.82338";
src = fetchurl {
url = "https://elpa.gnu.org/devel/minimail-0.3.0.20251125.163059.tar";
sha256 = "1x60y69j8pvrfqq589vqns52k7vxxvhjf630nl0a739a1wca9789";
url = "https://elpa.gnu.org/devel/minimail-0.3.0.20260330.82338.tar";
sha256 = "01fi88flq91m7fhg7q1g7jx4fzli99k9i48bavbsnjyhbz77i8pq";
};
packageRequires = [ ];
meta = {
@@ -6036,10 +6036,10 @@
elpaBuild {
pname = "modus-themes";
ename = "modus-themes";
version = "5.2.0.0.20260316.181751";
version = "5.2.0.0.20260405.181509";
src = fetchurl {
url = "https://elpa.gnu.org/devel/modus-themes-5.2.0.0.20260316.181751.tar";
sha256 = "0xkin4xxjp95kvp2fszappw0mvi8clff8kz45rrxp48vy3nrnagg";
url = "https://elpa.gnu.org/devel/modus-themes-5.2.0.0.20260405.181509.tar";
sha256 = "0hzl0dppxh91zz868g7cvgrg3dy4whfqll38n39xdqz52wb25vj6";
};
packageRequires = [ ];
meta = {
@@ -6591,10 +6591,10 @@
elpaBuild {
pname = "org";
ename = "org";
version = "10.0pre0.20260315.163939";
version = "10.0pre0.20260406.143941";
src = fetchurl {
url = "https://elpa.gnu.org/devel/org-10.0pre0.20260315.163939.tar";
sha256 = "0rlxq12iyb1q5nzlv8i2lbhqb967pkr72vyp0hdl2r790ha4978g";
url = "https://elpa.gnu.org/devel/org-10.0pre0.20260406.143941.tar";
sha256 = "1yfs2s356ngz0h24771px3kqv4n5kp3pvimbl16ai39yq7cz06wd";
};
packageRequires = [ ];
meta = {
@@ -6711,10 +6711,10 @@
elpaBuild {
pname = "org-mem";
ename = "org-mem";
version = "0.34.1.0.20260317.152547";
version = "0.34.1.0.20260326.114557";
src = fetchurl {
url = "https://elpa.gnu.org/devel/org-mem-0.34.1.0.20260317.152547.tar";
sha256 = "1inaj4z04lakdpigm4vlxs04yixzzdkzkl8spsqi3gqi8ml2x2mn";
url = "https://elpa.gnu.org/devel/org-mem-0.34.1.0.20260326.114557.tar";
sha256 = "0nvklb0cpf6bddsi6x0fh3lj5dd0ndx28jyvhl9rc73dhwzwa2is";
};
packageRequires = [
el-job
@@ -6738,10 +6738,10 @@
elpaBuild {
pname = "org-modern";
ename = "org-modern";
version = "1.13.0.20260309.154644";
version = "1.13.0.20260330.62401";
src = fetchurl {
url = "https://elpa.gnu.org/devel/org-modern-1.13.0.20260309.154644.tar";
sha256 = "1zrpab456ggxb4bjafrcdx68zqvbwzrk4nmqavmy0zz6cjj34ci6";
url = "https://elpa.gnu.org/devel/org-modern-1.13.0.20260330.62401.tar";
sha256 = "1lh1n09aqi8jxqpwsdv806910bflw25z6mcblplapk4lcd6al4y2";
};
packageRequires = [
compat
@@ -6918,10 +6918,10 @@
elpaBuild {
pname = "osm";
ename = "osm";
version = "2.2.0.20260125.120005";
version = "2.2.0.20260330.62455";
src = fetchurl {
url = "https://elpa.gnu.org/devel/osm-2.2.0.20260125.120005.tar";
sha256 = "0ckw3ffkwykkzx435raypkblhvg91ls221qfvzpdc5jrwzygdfhn";
url = "https://elpa.gnu.org/devel/osm-2.2.0.20260330.62455.tar";
sha256 = "0rj0zs5xmmj2swdjyk9pichljjd9c1qzbl836xaahxq2grcbqs5i";
};
packageRequires = [ compat ];
meta = {
@@ -7492,10 +7492,10 @@
elpaBuild {
pname = "prefixed-core";
ename = "prefixed-core";
version = "0.0.20221212.225529";
version = "0.0.20260406.215107";
src = fetchurl {
url = "https://elpa.gnu.org/devel/prefixed-core-0.0.20221212.225529.tar";
sha256 = "1b9bikccig8l96fal97lv6gajjip6qmbkx21y0pndfbw2kaamic4";
url = "https://elpa.gnu.org/devel/prefixed-core-0.0.20260406.215107.tar";
sha256 = "0dp14kl142l3bh2w2m9ncmym9h7vhcp5f51x0rn1vmy4x8wdmxfv";
};
packageRequires = [ ];
meta = {
@@ -7514,10 +7514,10 @@
elpaBuild {
pname = "preview-auto";
ename = "preview-auto";
version = "0.4.2.0.20260205.43257";
version = "0.4.2.0.20260327.92953";
src = fetchurl {
url = "https://elpa.gnu.org/devel/preview-auto-0.4.2.0.20260205.43257.tar";
sha256 = "0dibby96qk7bv2rxgz3yviwdp61znq9qac72n5lqx07vg6hki486";
url = "https://elpa.gnu.org/devel/preview-auto-0.4.2.0.20260327.92953.tar";
sha256 = "0mc0gwl3hk5fq9qfysxkphj9irzabm5bgkv8cz7m60k9s5g399rh";
};
packageRequires = [ auctex ];
meta = {
@@ -7558,10 +7558,10 @@
elpaBuild {
pname = "project";
ename = "project";
version = "0.11.2.0.20260313.73301";
version = "0.11.2.0.20260407.143459";
src = fetchurl {
url = "https://elpa.gnu.org/devel/project-0.11.2.0.20260313.73301.tar";
sha256 = "0vxpb0s17fri9gglwqcj235kv1cpbkw83nvx0s8wvd7jx91bzadm";
url = "https://elpa.gnu.org/devel/project-0.11.2.0.20260407.143459.tar";
sha256 = "01pjihpy1496rwxyir9n1di1x2fkpmdb6c9gcmah3ygfg9gkqj7d";
};
packageRequires = [ xref ];
meta = {
@@ -7884,10 +7884,10 @@
elpaBuild {
pname = "realgud";
ename = "realgud";
version = "1.6.0.0.20260303.215436";
version = "1.6.0.0.20260407.121006";
src = fetchurl {
url = "https://elpa.gnu.org/devel/realgud-1.6.0.0.20260303.215436.tar";
sha256 = "0n62ci1yxhikws8gbm3b601j43df9r38wnah6vhqa05pmkj3532s";
url = "https://elpa.gnu.org/devel/realgud-1.6.0.0.20260407.121006.tar";
sha256 = "08ypm3jsgmg7asgh6qbmfvz07clacmpaaphjmf46a7k1vn4lpyk9";
};
packageRequires = [
load-relative
@@ -9005,10 +9005,10 @@
elpaBuild {
pname = "standard-themes";
ename = "standard-themes";
version = "3.0.2.0.20260315.194235";
version = "3.0.2.0.20260405.133615";
src = fetchurl {
url = "https://elpa.gnu.org/devel/standard-themes-3.0.2.0.20260315.194235.tar";
sha256 = "131axgvylmvmfnjhrxihv9nlysxzf6dv2cs01plvy8z8k9hy7vc8";
url = "https://elpa.gnu.org/devel/standard-themes-3.0.2.0.20260405.133615.tar";
sha256 = "0b88iyisvqqv3ziciypkqdjz9i14xcgjlymaf0n3s34yycgglbsz";
};
packageRequires = [ modus-themes ];
meta = {
@@ -9047,10 +9047,10 @@
elpaBuild {
pname = "substitute";
ename = "substitute";
version = "0.5.0.0.20260223.124554";
version = "0.5.0.0.20260324.124253";
src = fetchurl {
url = "https://elpa.gnu.org/devel/substitute-0.5.0.0.20260223.124554.tar";
sha256 = "1n4lcs12vn4ndsiwzhh80hadkgnvfagimf3lrixlwwzhi1j9vrdk";
url = "https://elpa.gnu.org/devel/substitute-0.5.0.0.20260324.124253.tar";
sha256 = "0m5jmchrzh1cwq6zd8jd65v7kaks6cgqjvw8094ijq8bc28ni3k7";
};
packageRequires = [ ];
meta = {
@@ -9378,10 +9378,10 @@
elpaBuild {
pname = "tempel";
ename = "tempel";
version = "1.12.0.20260309.154741";
version = "1.12.0.20260330.62558";
src = fetchurl {
url = "https://elpa.gnu.org/devel/tempel-1.12.0.20260309.154741.tar";
sha256 = "1bsagc0j537682gfdqmzaxass6ypfz33pcahmrsgymfzy2wx7zg7";
url = "https://elpa.gnu.org/devel/tempel-1.12.0.20260330.62558.tar";
sha256 = "0f2gy05isba11k2sqgv7yjiw06i72p9fjbfzgwh3nrljpvndc2cf";
};
packageRequires = [ compat ];
meta = {
@@ -9569,10 +9569,10 @@
elpaBuild {
pname = "tmr";
ename = "tmr";
version = "1.3.0.0.20260125.74805";
version = "1.3.0.0.20260326.104345";
src = fetchurl {
url = "https://elpa.gnu.org/devel/tmr-1.3.0.0.20260125.74805.tar";
sha256 = "1pbl233p38nhdivrr9yh5k4i87mmdyf10rczv8v5mc0vvv68v4c7";
url = "https://elpa.gnu.org/devel/tmr-1.3.0.0.20260326.104345.tar";
sha256 = "0b28pbpv0z474kqazx60l26zgqm60naymflx3vidf0gmi5zqh1j5";
};
packageRequires = [ ];
meta = {
@@ -9658,10 +9658,10 @@
elpaBuild {
pname = "tramp";
ename = "tramp";
version = "2.8.1.2.0.20260227.75602";
version = "2.8.1.3.0.20260330.55054";
src = fetchurl {
url = "https://elpa.gnu.org/devel/tramp-2.8.1.2.0.20260227.75602.tar";
sha256 = "1wdbi4gmkhxghna643blng486zkjyfbss03kf8n84v1h11cw62py";
url = "https://elpa.gnu.org/devel/tramp-2.8.1.3.0.20260330.55054.tar";
sha256 = "01c5l03x5krzga9a9gg3klcn47k357p0k0ad09cd0g5qi4jmss5j";
};
packageRequires = [ ];
meta = {
@@ -9701,10 +9701,10 @@
elpaBuild {
pname = "tramp-nspawn";
ename = "tramp-nspawn";
version = "1.0.1.0.20220923.120957";
version = "1.0.2.0.20240401.94952";
src = fetchurl {
url = "https://elpa.gnu.org/devel/tramp-nspawn-1.0.1.0.20220923.120957.tar";
sha256 = "0mpr7d5vgfwsafbmj8lqc1k563b7qnjz1zq73rl8rb2km5jxczhn";
url = "https://elpa.gnu.org/devel/tramp-nspawn-1.0.2.0.20240401.94952.tar";
sha256 = "0mahmy5r4chd83bwz2q8ac2m99iymwhgjzaxz2grzs24ajsrq1mb";
};
packageRequires = [ ];
meta = {
@@ -9767,10 +9767,10 @@
elpaBuild {
pname = "transient";
ename = "transient";
version = "0.12.0.0.20260317.141222";
version = "0.12.0.0.20260409.182552";
src = fetchurl {
url = "https://elpa.gnu.org/devel/transient-0.12.0.0.20260317.141222.tar";
sha256 = "0dyywqa2ir6x76kz68fqg4zb0pwd66pw9p75377qbyjn3wkl1jrb";
url = "https://elpa.gnu.org/devel/transient-0.12.0.0.20260409.182552.tar";
sha256 = "045vj0i21n5p2cxhckr3vpk1vrmh6icj0lsn45jx7c65bxszqxli";
};
packageRequires = [
compat
@@ -9862,10 +9862,10 @@
elpaBuild {
pname = "triples";
ename = "triples";
version = "0.6.1.0.20260319.2847";
version = "0.6.2.0.20260328.11006";
src = fetchurl {
url = "https://elpa.gnu.org/devel/triples-0.6.1.0.20260319.2847.tar";
sha256 = "0428zrvka21rkpg6z9iincl46aa785ayxnh3f5pfxz52vqr1y8qs";
url = "https://elpa.gnu.org/devel/triples-0.6.2.0.20260328.11006.tar";
sha256 = "18pbwmycy4d36ry7w572d2d2jqac3yf93ap5j77v4gnh84iv6zap";
};
packageRequires = [ seq ];
meta = {
@@ -9987,20 +9987,16 @@
elpaBuild,
fetchurl,
lib,
project,
}:
elpaBuild {
pname = "urgrep";
ename = "urgrep";
version = "0.6.0snapshot0.20250709.114307";
version = "0.6.1snapshot0.20260321.103449";
src = fetchurl {
url = "https://elpa.gnu.org/devel/urgrep-0.6.0snapshot0.20250709.114307.tar";
sha256 = "149q30izqnv462k4rvghb5g3mh6p3zznh2sqdzi4msk2mbpgggny";
url = "https://elpa.gnu.org/devel/urgrep-0.6.1snapshot0.20260321.103449.tar";
sha256 = "09ijxd7nzx7xps3db408i0hmr40m7rsc2phim67dm2sma622xl57";
};
packageRequires = [
compat
project
];
packageRequires = [ compat ];
meta = {
homepage = "https://elpa.gnu.org/devel/urgrep.html";
license = lib.licenses.free;
@@ -10214,10 +10210,10 @@
elpaBuild {
pname = "vc-jj";
ename = "vc-jj";
version = "0.5.0.20260217.3734";
version = "0.5.0.20260407.140853";
src = fetchurl {
url = "https://elpa.gnu.org/devel/vc-jj-0.5.0.20260217.3734.tar";
sha256 = "0l4ba7k9arj9qg9f21h6apacgr6jqh79zr2n2l3d2935lg0g6hsj";
url = "https://elpa.gnu.org/devel/vc-jj-0.5.0.20260407.140853.tar";
sha256 = "14yi8wirqbz3k07lxyzm26vif4cny4abfwv5i27wpfzcahb8x0k1";
};
packageRequires = [ compat ];
meta = {
@@ -10347,10 +10343,10 @@
elpaBuild {
pname = "vertico";
ename = "vertico";
version = "2.8.0.20260309.154954";
version = "2.8.0.20260330.62818";
src = fetchurl {
url = "https://elpa.gnu.org/devel/vertico-2.8.0.20260309.154954.tar";
sha256 = "005hgy1qi49lsr4gq2qiwyvzmqv17dmyg6zfwhkp9yrj8a7ijk59";
url = "https://elpa.gnu.org/devel/vertico-2.8.0.20260330.62818.tar";
sha256 = "0qj9z9r9ili22d3jaxa1br4ldhjx0hfw8wc619idy712g6lh954a";
};
packageRequires = [ compat ];
meta = {
@@ -10499,10 +10495,10 @@
elpaBuild {
pname = "wcheck-mode";
ename = "wcheck-mode";
version = "2021.0.20220101.81620";
version = "2021.0.20260321.190237";
src = fetchurl {
url = "https://elpa.gnu.org/devel/wcheck-mode-2021.0.20220101.81620.tar";
sha256 = "15785pi3fgfdi3adsa4lhsbdqw6bnfcm44apxpfixqfx56d3xh8m";
url = "https://elpa.gnu.org/devel/wcheck-mode-2021.0.20260321.190237.tar";
sha256 = "0q5fwg35dgv886x7fqn6rsyp6yw9qcq4hhamdjdz98r6hg40y666";
};
packageRequires = [ ];
meta = {
@@ -10845,10 +10841,10 @@
elpaBuild {
pname = "xelb";
ename = "xelb";
version = "0.22.0.20260101.133501";
version = "0.22.0.20260406.170713";
src = fetchurl {
url = "https://elpa.gnu.org/devel/xelb-0.22.0.20260101.133501.tar";
sha256 = "1ksx3g7gzfj8y3xb2ziz309xw9g1nchkhif9wxrm0g0gqx6cmmbr";
url = "https://elpa.gnu.org/devel/xelb-0.22.0.20260406.170713.tar";
sha256 = "1np8vw3f8xp5fxbx0zq62li7bq87f20pz4zjsn1n3h4scg5albba";
};
packageRequires = [ compat ];
meta = {
@@ -10913,10 +10909,10 @@
elpaBuild {
pname = "xref";
ename = "xref";
version = "1.7.0.0.20260313.230302";
version = "1.7.0.0.20260403.13314";
src = fetchurl {
url = "https://elpa.gnu.org/devel/xref-1.7.0.0.20260313.230302.tar";
sha256 = "04x6li97l267bilj6qq0smxk900zbkxw07a4clqd80an7b6yh7ql";
url = "https://elpa.gnu.org/devel/xref-1.7.0.0.20260403.13314.tar";
sha256 = "0kqvbp3z7srgx7aypjdqw7rrd7dcnsfhwwvg3kyqjyzjpqqhwhwh";
};
packageRequires = [ ];
meta = {
@@ -144,10 +144,10 @@
elpaBuild {
pname = "adaptive-wrap";
ename = "adaptive-wrap";
version = "0.8";
version = "0.9";
src = fetchurl {
url = "https://elpa.gnu.org/packages/adaptive-wrap-0.8.tar";
sha256 = "1dz5mi21v2wqh969m3xggxbzq3qf78hps418rzl73bb57l837qp8";
url = "https://elpa.gnu.org/packages/adaptive-wrap-0.9.tar";
sha256 = "1i1g14h6yyq6fswyb3wf0y9zna0icp64484x7qd6wdqj438r87va";
};
packageRequires = [ ];
meta = {
@@ -2144,10 +2144,10 @@
elpaBuild {
pname = "denote-review";
ename = "denote-review";
version = "1.0.6";
version = "1.0.7";
src = fetchurl {
url = "https://elpa.gnu.org/packages/denote-review-1.0.6.tar";
sha256 = "1n126x1xjz4fhzbq269nwbpb0xv6pphc77z4arqjkglxcdcpiwkk";
url = "https://elpa.gnu.org/packages/denote-review-1.0.7.tar";
sha256 = "0b305k3a1cg7wqhqwaifgyyqz80h8avgx24ikp491amjm6xga51a";
};
packageRequires = [ denote ];
meta = {
@@ -2642,10 +2642,10 @@
elpaBuild {
pname = "doric-themes";
ename = "doric-themes";
version = "1.0.0";
version = "1.1.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/doric-themes-1.0.0.tar";
sha256 = "0bgbqa8j5yi23b7k447q5sffr1vk8pg23qk0a56vayz62y7ga8xa";
url = "https://elpa.gnu.org/packages/doric-themes-1.1.0.tar";
sha256 = "12rm5swbhn52yh4nvngqqbaiy8j97bi86a0k7swdb08vxmgp5kzh";
};
packageRequires = [ ];
meta = {
@@ -2894,10 +2894,10 @@
elpaBuild {
pname = "eglot";
ename = "eglot";
version = "1.21";
version = "1.23";
src = fetchurl {
url = "https://elpa.gnu.org/packages/eglot-1.21.tar";
sha256 = "03fx22rv8ijxq0jnn7xlfqhkpk2b109ygpjbcchp41sa4q7d6nbl";
url = "https://elpa.gnu.org/packages/eglot-1.23.tar";
sha256 = "1l83c90rdamlk576bd859jkg6406hgxi7w4c6ixlw509c66qr3s6";
};
packageRequires = [
eldoc
@@ -3068,10 +3068,10 @@
elpaBuild {
pname = "ellama";
ename = "ellama";
version = "1.12.18";
version = "1.13.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/ellama-1.12.18.tar";
sha256 = "1r05xa4hzv3pw6b015nyaazqpj50n4b10z0vs5r4g8gxwhz5bz7p";
url = "https://elpa.gnu.org/packages/ellama-1.13.0.tar";
sha256 = "0i3lzb68bwyr974wc0i8dn1kiryjs49zg79hli21wycm0j7a3six";
};
packageRequires = [
compat
@@ -3138,10 +3138,10 @@
elpaBuild {
pname = "embark";
ename = "embark";
version = "1.1";
version = "1.2";
src = fetchurl {
url = "https://elpa.gnu.org/packages/embark-1.1.tar";
sha256 = "074ggh7dkr5jdkwcndl6znhkq48jmc62rp7mc6vjidr6yxf8d1rn";
url = "https://elpa.gnu.org/packages/embark-1.2.tar";
sha256 = "1skqcsscawfa3043n6v0fl633pcacigl6p33d80ik5lsf0z5br35";
};
packageRequires = [ compat ];
meta = {
@@ -3809,10 +3809,10 @@
elpaBuild {
pname = "futur";
ename = "futur";
version = "1.3";
version = "1.4";
src = fetchurl {
url = "https://elpa.gnu.org/packages/futur-1.3.tar";
sha256 = "1i531psrmbhbqjsgq6kd3fgpx31z9722nljfldgwgmmbwi4i9386";
url = "https://elpa.gnu.org/packages/futur-1.4.tar";
sha256 = "036b81cp5nbzhykfsj6rkhxb5b675k38njmb32bj20g9h7pkd1vl";
};
packageRequires = [ ];
meta = {
@@ -4003,10 +4003,10 @@
elpaBuild {
pname = "gnosis";
ename = "gnosis";
version = "0.9.0";
version = "0.10.3";
src = fetchurl {
url = "https://elpa.gnu.org/packages/gnosis-0.9.0.tar";
sha256 = "04prh38gwwpr6jpj7fgsnvv5bv754qla59vm8wn5i58z8saraf7m";
url = "https://elpa.gnu.org/packages/gnosis-0.10.3.tar";
sha256 = "0642xdgpljfmzi27gfbzhngpyc82blpyyvkvqqbm6khiqac9wdxz";
};
packageRequires = [ compat ];
meta = {
@@ -4211,10 +4211,10 @@
elpaBuild {
pname = "greader";
ename = "greader";
version = "0.13.1";
version = "0.17.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/greader-0.13.1.tar";
sha256 = "0av55fk2r1bqsb8dp17y3cka46hda29x16y763az0lwga33ssz89";
url = "https://elpa.gnu.org/packages/greader-0.17.0.tar";
sha256 = "0kz9qvwkxfl3p4fwl235vxdv19iqrz2jrp9hk06z8bmwmdvj7nxd";
};
packageRequires = [
compat
@@ -4235,10 +4235,10 @@
elpaBuild {
pname = "greenbar";
ename = "greenbar";
version = "1.2";
version = "1.2.260317";
src = fetchurl {
url = "https://elpa.gnu.org/packages/greenbar-1.2.tar";
sha256 = "0w85b3gnckdiv32ki4kkwhgxc1m9ks7hayk87iapbzayqzvlqj3v";
url = "https://elpa.gnu.org/packages/greenbar-1.2.260317.tar";
sha256 = "0gflgrc60xf6vkj2r7k5889l6a2ky9vbss1f19x1ci4v6dx6y3hz";
};
packageRequires = [ ];
meta = {
@@ -4961,10 +4961,10 @@
elpaBuild {
pname = "jsonrpc";
ename = "jsonrpc";
version = "1.0.27";
version = "1.0.28";
src = fetchurl {
url = "https://elpa.gnu.org/packages/jsonrpc-1.0.27.tar";
sha256 = "1wfkjy5sgvcq5h3ldvwa4hm8nssc1pwvfvq4s04zvcq078v093q9";
url = "https://elpa.gnu.org/packages/jsonrpc-1.0.28.tar";
sha256 = "13zdm9ss1sfpw55lwr8nrv1ha30qcj7v10m1ql8r9cbdxxkzxp8f";
};
packageRequires = [ ];
meta = {
@@ -5327,10 +5327,10 @@
elpaBuild {
pname = "llm";
ename = "llm";
version = "0.29.0";
version = "0.30.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/llm-0.29.0.tar";
sha256 = "0pybl4wxirsi00blx18gy1786n4324mb2fvr7n1a0bfyljz2rm6k";
url = "https://elpa.gnu.org/packages/llm-0.30.1.tar";
sha256 = "11mmaw24dg9iwml8kx09xv8h9iyz9i9jw4m1kghq192fp9wy668i";
};
packageRequires = [
compat
@@ -6483,10 +6483,10 @@
elpaBuild {
pname = "org";
ename = "org";
version = "9.8";
version = "9.8.1";
src = fetchurl {
url = "https://elpa.gnu.org/packages/org-9.8.tar";
sha256 = "1xfv6jk8gx0jv809cgpag5hcmw6n9gic2rxchb62qcnjiz4sl0q4";
url = "https://elpa.gnu.org/packages/org-9.8.1.tar";
sha256 = "1i7khz2h47byl4kh9kb0y548sw7n4zp6nfldqkvzab4np4snbdk8";
};
packageRequires = [ ];
meta = {
@@ -9422,10 +9422,10 @@
elpaBuild {
pname = "tramp";
ename = "tramp";
version = "2.8.1.2";
version = "2.8.1.3";
src = fetchurl {
url = "https://elpa.gnu.org/packages/tramp-2.8.1.2.tar";
sha256 = "0ygfv99b7y74a8crnld044bb47iai95dn3hzzpzhyx83icw5k0cl";
url = "https://elpa.gnu.org/packages/tramp-2.8.1.3.tar";
sha256 = "1jjbgg48q6dlfp9rpn0pla4mlclw60079d51bgnb84q3pv3zdqwj";
};
packageRequires = [ ];
meta = {
@@ -9465,10 +9465,10 @@
elpaBuild {
pname = "tramp-nspawn";
ename = "tramp-nspawn";
version = "1.0.1";
version = "1.0.2";
src = fetchurl {
url = "https://elpa.gnu.org/packages/tramp-nspawn-1.0.1.tar";
sha256 = "0cy8l389s6pi135gxcygv1vna6k3gizqd33avf3wsdbnqdf2pjnc";
url = "https://elpa.gnu.org/packages/tramp-nspawn-1.0.2.tar";
sha256 = "1n1bb56zzzy4rw2510pnp0k6ax48jwdzqrx6cfrw1pjgclrn1xn9";
};
packageRequires = [ ];
meta = {
@@ -9626,10 +9626,10 @@
elpaBuild {
pname = "triples";
ename = "triples";
version = "0.6.1";
version = "0.6.2";
src = fetchurl {
url = "https://elpa.gnu.org/packages/triples-0.6.1.tar";
sha256 = "0rziyr9gwab140afs0hhwqbi6kvp2ypv7clp0y9yckmpj1b0bzrv";
url = "https://elpa.gnu.org/packages/triples-0.6.2.tar";
sha256 = "1yis6q14m8pkhpllgldq6pw366cgw5wsnh7d1484gs3grcq4mgsr";
};
packageRequires = [ seq ];
meta = {
@@ -9756,10 +9756,10 @@
elpaBuild {
pname = "urgrep";
ename = "urgrep";
version = "0.5.2";
version = "0.6.0";
src = fetchurl {
url = "https://elpa.gnu.org/packages/urgrep-0.5.2.tar";
sha256 = "1lwr601xyw0gcix6v53dn5h0jsxwpa5pkqgz56a6311z9d9qlj3c";
url = "https://elpa.gnu.org/packages/urgrep-0.6.0.tar";
sha256 = "0mgl3rzpc5lpk2fx7w0n9i72mwj636x31jfnp3dyfgr7srpf1ms6";
};
packageRequires = [
compat
@@ -1401,6 +1401,33 @@ let
leaf-defaults = ignoreCompilationError super.leaf-defaults; # elisp error
liberime = super.liberime.overrideAttrs (
let
libExt = pkgs.stdenv.hostPlatform.extensions.sharedLibrary;
in
prevAttrs: {
buildInputs = prevAttrs.buildInputs ++ [
pkgs.librime
];
nativeBuildInputs = prevAttrs.nativeBuildInputs ++ [
pkgs.which
];
postBuild =
prevAttrs.postBuild or ""
+ "\n"
+ ''
make CC=$CC SUFFIX=${libExt}
'';
postInstall =
prevAttrs.postInstall or ""
+ "\n"
+ ''
rm -rv $out/share/emacs/site-lisp/elpa/liberime-*/{src,emacs-module,Makefile}
install src/liberime-core${libExt} $out/share/emacs/site-lisp/elpa/liberime-*
'';
}
);
# https://github.com/abo-abo/lispy/pull/683
# missing optional dependencies
lispy = addPackageRequires (mkHome super.lispy) [ self.indium ];
@@ -333,10 +333,10 @@
elpaBuild {
pname = "bash-completion";
ename = "bash-completion";
version = "3.2.1snapshot0.20260206.145951";
version = "3.2.1snapshot0.20260325.162703";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/bash-completion-3.2.1snapshot0.20260206.145951.tar";
sha256 = "08ffm5d4b9d553q49zgnp00wf5a3cvzshwqv3kqfgb9wp29wqpja";
url = "https://elpa.nongnu.org/nongnu-devel/bash-completion-3.2.1snapshot0.20260325.162703.tar";
sha256 = "1w2ymxz5pcpdfxw2jaqqg5c8i1dkj4cp23y15sk80q9mfcyfmkxj";
};
packageRequires = [ ];
meta = {
@@ -502,10 +502,10 @@
elpaBuild {
pname = "buttercup";
ename = "buttercup";
version = "1.38.0.20250801.138";
version = "1.39.0.20260409.235427";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/buttercup-1.38.0.20250801.138.tar";
sha256 = "1hcwlymmhbcrgz501gjx7d337x1cy4gzz6nbg0xq4yjxp0l0pq5c";
url = "https://elpa.nongnu.org/nongnu-devel/buttercup-1.39.0.20260409.235427.tar";
sha256 = "03fk6mhf67jccilkjfs7jwzs6la4ry4z8s5v1q7fci2jic3911y8";
};
packageRequires = [ ];
meta = {
@@ -567,10 +567,10 @@
elpaBuild {
pname = "casual";
ename = "casual";
version = "2.14.3.0.20260302.161131";
version = "2.15.0.0.20260406.163831";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/casual-2.14.3.0.20260302.161131.tar";
sha256 = "0ag0fa1yf2014lyp5hpc3c2yavg58h98x16ryrzjjf4sm7mz964c";
url = "https://elpa.nongnu.org/nongnu-devel/casual-2.15.0.0.20260406.163831.tar";
sha256 = "14vgq4q3k264aizqxjlfjjm5s4m7089nj3pjbjvzzs4kfkhpnqkk";
};
packageRequires = [
csv-mode
@@ -620,10 +620,10 @@
elpaBuild {
pname = "cider";
ename = "cider";
version = "1.22.0snapshot0.20260312.63418";
version = "1.22.0snapshot0.20260402.44710";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/cider-1.22.0snapshot0.20260312.63418.tar";
sha256 = "1d8vx1dphilabyk2lw11jik8b8p1f7qqsly7y8pxq6m6svhx6aw0";
url = "https://elpa.nongnu.org/nongnu-devel/cider-1.22.0snapshot0.20260402.44710.tar";
sha256 = "01i63fnilk7s1yswpbwxx2v0h8dafyyang2b23z15j0qhk18frlv";
};
packageRequires = [
clojure-mode
@@ -650,10 +650,10 @@
elpaBuild {
pname = "clojure-mode";
ename = "clojure-mode";
version = "5.22.0.0.20260319.91655";
version = "5.23.0.0.20260325.143544";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/clojure-mode-5.22.0.0.20260319.91655.tar";
sha256 = "19z6fgvb9dh3h6vzkxm7fv4ifzb4a8a2c8qa68drsrdn2bsxnza1";
url = "https://elpa.nongnu.org/nongnu-devel/clojure-mode-5.23.0.0.20260325.143544.tar";
sha256 = "0rapsgj8kxnf7c9zvpjn9adjw7gxb9q3bpxwv1r610l8gdz9haj5";
};
packageRequires = [ ];
meta = {
@@ -671,10 +671,10 @@
elpaBuild {
pname = "clojure-ts-mode";
ename = "clojure-ts-mode";
version = "0.6.0.0.20260319.92023";
version = "0.6.0.0.20260325.210727";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/clojure-ts-mode-0.6.0.0.20260319.92023.tar";
sha256 = "0wpffw5a5kc52mr5sd5hlzdz6vrmwawmgk6fzqmhkxiq175wmlz9";
url = "https://elpa.nongnu.org/nongnu-devel/clojure-ts-mode-0.6.0.0.20260325.210727.tar";
sha256 = "06fi1l2dzd9gbkjafvnmhmhcc9i5iwlk5kgfbcavm8a9cvfrdv1q";
};
packageRequires = [ ];
meta = {
@@ -736,10 +736,10 @@
elpaBuild {
pname = "consult-flycheck";
ename = "consult-flycheck";
version = "1.1.0.20260117.165420";
version = "1.1.0.20260330.61817";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/consult-flycheck-1.1.0.20260117.165420.tar";
sha256 = "0jv0kdy91gynlv292qy86n33b2hnryhmyzyk5c5n0vmik3zijyay";
url = "https://elpa.nongnu.org/nongnu-devel/consult-flycheck-1.1.0.20260330.61817.tar";
sha256 = "0qibwl60kwyj3azpz7zph3frb8ia7ll7qr70mfj6brdng0wdc9b1";
};
packageRequires = [
consult
@@ -1257,10 +1257,10 @@
elpaBuild {
pname = "eldoc-mouse";
ename = "eldoc-mouse";
version = "3.0.5.0.20260318.102558";
version = "3.0.7.0.20260402.102509";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/eldoc-mouse-3.0.5.0.20260318.102558.tar";
sha256 = "19s9dhiy2qbqhf4999fi9hra69a73l49c4n0a6k4kmma8lxzrhbf";
url = "https://elpa.nongnu.org/nongnu-devel/eldoc-mouse-3.0.7.0.20260402.102509.tar";
sha256 = "1frp7dkqf1wzlfijlqra1himvl5qba0cj3s172kh8yyncpvjvnqj";
};
packageRequires = [
eglot
@@ -1272,6 +1272,32 @@
};
}
) { };
eldoc-mouse-nov = callPackage (
{
eldoc-mouse,
elpaBuild,
fetchurl,
lib,
nov,
}:
elpaBuild {
pname = "eldoc-mouse-nov";
ename = "eldoc-mouse-nov";
version = "0.1.1.0.20260330.75946";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/eldoc-mouse-nov-0.1.1.0.20260330.75946.tar";
sha256 = "0l8k47qaivmj1wyijk2ws6kx5pr3yj49zscy4kqhhwb95sd91112";
};
packageRequires = [
eldoc-mouse
nov
];
meta = {
homepage = "https://elpa.nongnu.org/nongnu-devel/eldoc-mouse-nov.html";
license = lib.licenses.free;
};
}
) { };
elixir-mode = callPackage (
{
elpaBuild,
@@ -1323,10 +1349,10 @@
elpaBuild {
pname = "emacsql";
ename = "emacsql";
version = "4.3.5.0.20260314.230019";
version = "4.3.6.0.20260401.122028";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/emacsql-4.3.5.0.20260314.230019.tar";
sha256 = "07b73mylmmxq0qd0rh7a8p6gzabdfjyk2pz9cvzn2cz0cc3bqq02";
url = "https://elpa.nongnu.org/nongnu-devel/emacsql-4.3.6.0.20260401.122028.tar";
sha256 = "0n9m33wlygpdj8id31sfxkj328j1dzf1gzkwkvr99ncvcn6qr0l6";
};
packageRequires = [ ];
meta = {
@@ -1366,10 +1392,10 @@
elpaBuild {
pname = "esxml";
ename = "esxml";
version = "0.3.8.0.20250421.163204";
version = "0.3.8.0.20260329.161756";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/esxml-0.3.8.0.20250421.163204.tar";
sha256 = "15yqrpnw8nd3ksmqwmsq1b0z39df4c3vqxsl7cyzwyjmrh4djfk6";
url = "https://elpa.nongnu.org/nongnu-devel/esxml-0.3.8.0.20260329.161756.tar";
sha256 = "0m75hyr87nzd452hzsplznjfqc77i13r4d3rdxcxgl1zxv1iv9rj";
};
packageRequires = [ cl-lib ];
meta = {
@@ -1639,10 +1665,10 @@
elpaBuild {
pname = "evil-matchit";
ename = "evil-matchit";
version = "4.0.1.0.20251212.125614";
version = "4.1.0.0.20260409.93607";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/evil-matchit-4.0.1.0.20251212.125614.tar";
sha256 = "07wrcs33jz9lj4n2f75zz601vrsajfclicxbqqyih9hh4k73jqq5";
url = "https://elpa.nongnu.org/nongnu-devel/evil-matchit-4.1.0.0.20260409.93607.tar";
sha256 = "0yn15q7vd5gq2ks4gnrgpsh1np26wwgl3s99plbsr3bzhgr0phxl";
};
packageRequires = [ ];
meta = {
@@ -1841,10 +1867,10 @@
elpaBuild {
pname = "fj";
ename = "fj";
version = "0.33.0.20260301.133126";
version = "0.34.0.20260327.90645";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/fj-0.33.0.20260301.133126.tar";
sha256 = "129d8bzwbavv7xqjbzqlw2ah4kprfjvx194kwqnl91vmn6p9m4vy";
url = "https://elpa.nongnu.org/nongnu-devel/fj-0.34.0.20260327.90645.tar";
sha256 = "0wigq0746npxkbqkqdarw4l89vk04ywd7cx01irc3v7ci9s192xk";
};
packageRequires = [
fedi
@@ -1916,10 +1942,10 @@
elpaBuild {
pname = "flycheck";
ename = "flycheck";
version = "36.0.0.20260305.101707";
version = "36.0.0.20260320.171504";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/flycheck-36.0.0.20260305.101707.tar";
sha256 = "1fr8gw0jn56p9vam11aa3jsqbm2m9zqnca7zirl4i4siyr0ypa1x";
url = "https://elpa.nongnu.org/nongnu-devel/flycheck-36.0.0.20260320.171504.tar";
sha256 = "1pzwhry986dfkvibfdqwb6nllmmn2yc3kpzgd046jnyq25xikgig";
};
packageRequires = [ seq ];
meta = {
@@ -2487,10 +2513,10 @@
elpaBuild {
pname = "gnuplot";
ename = "gnuplot";
version = "0.11.0.20260122.130054";
version = "0.11.0.20260330.71827";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/gnuplot-0.11.0.20260122.130054.tar";
sha256 = "1qprpdry88b318774l26z7qddmnbf9nidzmc0bnhdgcxrbz3hnnk";
url = "https://elpa.nongnu.org/nongnu-devel/gnuplot-0.11.0.20260330.71827.tar";
sha256 = "16m7jnsd9rv7f7fnbcm8sbphb21sl63igpzcbki27rcvhp3r5y4i";
};
packageRequires = [ compat ];
meta = {
@@ -2594,10 +2620,10 @@
elpaBuild {
pname = "gptel";
ename = "gptel";
version = "0.9.9.4.0.20260319.3724";
version = "0.9.9.4.0.20260410.1136";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/gptel-0.9.9.4.0.20260319.3724.tar";
sha256 = "0y4mbcyp60yh4rqg6863bydr5m31jxwrlkn8kqzb6xyia66ss50l";
url = "https://elpa.nongnu.org/nongnu-devel/gptel-0.9.9.4.0.20260410.1136.tar";
sha256 = "0z9wxzqmlm9r0pnmsgfjd4cpnywg42b6ip8pcy2732v9sry88mfh";
};
packageRequires = [
compat
@@ -2618,10 +2644,10 @@
elpaBuild {
pname = "graphql-mode";
ename = "graphql-mode";
version = "1.0.0.0.20260214.124443";
version = "1.0.0.0.20260330.140853";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/graphql-mode-1.0.0.0.20260214.124443.tar";
sha256 = "141z96ax3kqy2b046v2c7k5sb2mw27hr5x7zi58r1yfyhqi4x3a9";
url = "https://elpa.nongnu.org/nongnu-devel/graphql-mode-1.0.0.0.20260330.140853.tar";
sha256 = "07rwy23fglwq5h8x16syvgl9nb0lg5gqfx4d1qqls0c6gha7pal1";
};
packageRequires = [ ];
meta = {
@@ -3183,10 +3209,10 @@
elpaBuild {
pname = "j-mode";
ename = "j-mode";
version = "2.0.2.0.20251003.80527";
version = "2.0.2.0.20260328.122601";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/j-mode-2.0.2.0.20251003.80527.tar";
sha256 = "1nzfxdx2ngkndrig2bbqh5y3459gslh9s00r4p9kwwvc5m0wrj47";
url = "https://elpa.nongnu.org/nongnu-devel/j-mode-2.0.2.0.20260328.122601.tar";
sha256 = "1ijabds6d379r7nrcrg79bna6zd84f1lg17l86ssirbixdnl7gzg";
};
packageRequires = [ ];
meta = {
@@ -3195,6 +3221,28 @@
};
}
) { };
jabber = callPackage (
{
elpaBuild,
fetchurl,
fsm,
lib,
}:
elpaBuild {
pname = "jabber";
ename = "jabber";
version = "0.10.5.0.20260410.45349";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/jabber-0.10.5.0.20260410.45349.tar";
sha256 = "07nnqk811i6vvzanqh4ymnj43797fahic1n8h4pazdpibx71p0g2";
};
packageRequires = [ fsm ];
meta = {
homepage = "https://elpa.nongnu.org/nongnu-devel/jabber.html";
license = lib.licenses.free;
};
}
) { };
jade-mode = callPackage (
{
elpaBuild,
@@ -3538,10 +3586,10 @@
elpaBuild {
pname = "magit";
ename = "magit";
version = "4.5.0.0.20260319.223623";
version = "4.5.0.0.20260409.85727";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/magit-4.5.0.0.20260319.223623.tar";
sha256 = "02hls6gwfv3vy4ysi64vsql98rb4dkm7gxsni93ay6khsdrnrcar";
url = "https://elpa.nongnu.org/nongnu-devel/magit-4.5.0.0.20260409.85727.tar";
sha256 = "1hpmc3v9pgdlrkddxikj238r7z6fhpfspx083jrjn51pcpjinkyp";
};
packageRequires = [
compat
@@ -3571,10 +3619,10 @@
elpaBuild {
pname = "magit-section";
ename = "magit-section";
version = "4.5.0.0.20260319.223623";
version = "4.5.0.0.20260409.85727";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/magit-section-4.5.0.0.20260319.223623.tar";
sha256 = "0hfny395z7nirmg5ais7jgf35m6ibzl2a4gs7wrjh27l0h7jl3n9";
url = "https://elpa.nongnu.org/nongnu-devel/magit-section-4.5.0.0.20260409.85727.tar";
sha256 = "0kxyw9c6xm6v8pzh575ys0w56pdjgyr4b9x1i9qwnv8yhampp2y0";
};
packageRequires = [
compat
@@ -3597,10 +3645,10 @@
elpaBuild {
pname = "markdown-mode";
ename = "markdown-mode";
version = "2.9alpha0.20260315.35038";
version = "2.9alpha0.20260321.14320";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/markdown-mode-2.9alpha0.20260315.35038.tar";
sha256 = "1ji398q0lk22b1dj8sg4bvvjnrb0m5jl4zi719qba7py90favhlg";
url = "https://elpa.nongnu.org/nongnu-devel/markdown-mode-2.9alpha0.20260321.14320.tar";
sha256 = "1a0a9d199fkkxv73fdvy1x985r0x5z4q1s48axgwh7rsv24pvbqp";
};
packageRequires = [ ];
meta = {
@@ -3620,10 +3668,10 @@
elpaBuild {
pname = "mastodon";
ename = "mastodon";
version = "2.0.13.0.20260318.172516";
version = "2.0.16.0.20260406.85635";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/mastodon-2.0.13.0.20260318.172516.tar";
sha256 = "1al67nr4c4crfxc7xaax1cvfqxc0y92k0nr3q951c5xrnmlfhbcx";
url = "https://elpa.nongnu.org/nongnu-devel/mastodon-2.0.16.0.20260406.85635.tar";
sha256 = "0wlb1pd08m0bhn5fjxynhq285z7c210k5i8g08wj7b5gsjxmqqkx";
};
packageRequires = [
persist
@@ -4413,10 +4461,10 @@
elpaBuild {
pname = "pg";
ename = "pg";
version = "0.63.0.20260208.141935";
version = "0.64.0.20260406.70807";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/pg-0.63.0.20260208.141935.tar";
sha256 = "1jkddkiv4izp64ad4gl4a335znds8vak9mly9vx00arzs9cg255r";
url = "https://elpa.nongnu.org/nongnu-devel/pg-0.64.0.20260406.70807.tar";
sha256 = "1cb0grckwbh5xibka5nsxzl3r65hiph4xc1dph3y5la503czjj9h";
};
packageRequires = [ peg ];
meta = {
@@ -4668,10 +4716,10 @@
elpaBuild {
pname = "recomplete";
ename = "recomplete";
version = "0.2.0.20260108.132129";
version = "0.2.0.20260403.113038";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/recomplete-0.2.0.20260108.132129.tar";
sha256 = "1vr39dvac87ikgf07r492yrmxnsfmdz816gyygb3rrj8fpjxp80f";
url = "https://elpa.nongnu.org/nongnu-devel/recomplete-0.2.0.20260403.113038.tar";
sha256 = "1mnd8d2hyfcjribvgq955sn0vm1265xs0jqc55rylwpkr4cff779";
};
packageRequires = [ ];
meta = {
@@ -4842,10 +4890,10 @@
elpaBuild {
pname = "scad-mode";
ename = "scad-mode";
version = "98.0.0.20260117.165324";
version = "98.0.0.20260330.71707";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/scad-mode-98.0.0.20260117.165324.tar";
sha256 = "0b3327x1vx2mr538kghga9hmv1jn1i8zbnj2879wh4abhahdc0fw";
url = "https://elpa.nongnu.org/nongnu-devel/scad-mode-98.0.0.20260330.71707.tar";
sha256 = "05fcw1wc6n0k9acjm6hmmidfp7pp0zgshwd63ijpz5d8l0plim29";
};
packageRequires = [ compat ];
meta = {
@@ -4917,6 +4965,27 @@
};
}
) { };
selected-window-contrast = callPackage (
{
elpaBuild,
fetchurl,
lib,
}:
elpaBuild {
pname = "selected-window-contrast";
ename = "selected-window-contrast";
version = "0.4.1.0.20260406.62115";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/selected-window-contrast-0.4.1.0.20260406.62115.tar";
sha256 = "0mwkq192jb7k5nr3gclqpy37bivkw86xmm372whbsnhpap6zlhk5";
};
packageRequires = [ ];
meta = {
homepage = "https://elpa.nongnu.org/nongnu-devel/selected-window-contrast.html";
license = lib.licenses.free;
};
}
) { };
sesman = callPackage (
{
elpaBuild,
@@ -4969,10 +5038,10 @@
elpaBuild {
pname = "slime";
ename = "slime";
version = "2.32snapshot0.20260314.223546";
version = "2.32snapshot0.20260329.213326";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/slime-2.32snapshot0.20260314.223546.tar";
sha256 = "1pai5zj9wwzbzvl479i6bl404jxdjxwl173nmzxci19x6x5k3ggj";
url = "https://elpa.nongnu.org/nongnu-devel/slime-2.32snapshot0.20260329.213326.tar";
sha256 = "0327cbysrbizyf3r8crlmcd1wdsxkk29df98gwrrr1w6cvx3162v";
};
packageRequires = [ macrostep ];
meta = {
@@ -4990,10 +5059,10 @@
elpaBuild {
pname = "sly";
ename = "sly";
version = "1.0.43.0.20251212.7";
version = "1.0.43.0.20260402.224912";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/sly-1.0.43.0.20251212.7.tar";
sha256 = "0pbkdxdw9a3cxbhm2p2s1w077sj237v1gr06cw8q75qb1vjhhdrk";
url = "https://elpa.nongnu.org/nongnu-devel/sly-1.0.43.0.20260402.224912.tar";
sha256 = "1mykx20c1dqrv2gqm01ps3l7vixg20676d5ckq2j6qgkq37jjr4k";
};
packageRequires = [ ];
meta = {
@@ -5033,10 +5102,10 @@
elpaBuild {
pname = "solarized-theme";
ename = "solarized-theme";
version = "2.0.4.0.20250913.45124";
version = "2.1.0.0.20260329.155902";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/solarized-theme-2.0.4.0.20250913.45124.tar";
sha256 = "0cjsz6a14d0zz4r93653d5imvgwpl9xchvr5snbkr8s359fs5icx";
url = "https://elpa.nongnu.org/nongnu-devel/solarized-theme-2.1.0.0.20260329.155902.tar";
sha256 = "19bj5hfz6ydhxd6qcrkw1lgpfbhjm5iwq96i6i4z56yffm7ijl9k";
};
packageRequires = [ ];
meta = {
@@ -5180,10 +5249,10 @@
elpaBuild {
pname = "subed";
ename = "subed";
version = "1.4.1.0.20260314.221855";
version = "1.4.1.0.20260403.230353";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/subed-1.4.1.0.20260314.221855.tar";
sha256 = "0wj4kfwcjwssy2lfp18dzvfm6yyx37zgfrq9w3pdbi6xfkjaxfl9";
url = "https://elpa.nongnu.org/nongnu-devel/subed-1.4.1.0.20260403.230353.tar";
sha256 = "0cwp2cyhxiv4wl2rq7jip9864hcbhh3af9prmm347jkxv9wzhyk7";
};
packageRequires = [ ];
meta = {
@@ -5591,10 +5660,10 @@
elpaBuild {
pname = "typst-ts-mode";
ename = "typst-ts-mode";
version = "0.12.2.0.20260130.110553";
version = "0.12.2.0.20260330.125224";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/typst-ts-mode-0.12.2.0.20260130.110553.tar";
sha256 = "19v349nhr1km00w19rxv1g4vkhl2hk9sf0y9q0cg15682qc28jjz";
url = "https://elpa.nongnu.org/nongnu-devel/typst-ts-mode-0.12.2.0.20260330.125224.tar";
sha256 = "0qjbypy1jxy7jcpvqh49b8d3b276qgbzlpj09g0bw9dz2g0mp6pr";
};
packageRequires = [ ];
meta = {
@@ -5760,10 +5829,10 @@
elpaBuild {
pname = "web-mode";
ename = "web-mode";
version = "17.3.22.0.20251214.172854";
version = "17.3.23.0.20260331.144101";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/web-mode-17.3.22.0.20251214.172854.tar";
sha256 = "1hjmq7w59s4p3qr331r0dz4j5s685cr82ma1q30hdpy0rhxiqh6i";
url = "https://elpa.nongnu.org/nongnu-devel/web-mode-17.3.23.0.20260331.144101.tar";
sha256 = "1yk7dcsgry69dz3scx32p4zqp1ay6354rr017ygqffkl0fcqhgdg";
};
packageRequires = [ ];
meta = {
@@ -6088,10 +6157,10 @@
elpaBuild {
pname = "zenburn-theme";
ename = "zenburn-theme";
version = "2.9.0snapshot0.20251028.122652";
version = "2.9.0.0.20260329.183806";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu-devel/zenburn-theme-2.9.0snapshot0.20251028.122652.tar";
sha256 = "00y5qix2znxz7c3g780h56ssmqjj801s7ig43gsk84rhr6h67wy5";
url = "https://elpa.nongnu.org/nongnu-devel/zenburn-theme-2.9.0.0.20260329.183806.tar";
sha256 = "16ma8gishgdbaalk1slqci7dciyjjnbifvn15iyby4ccqy3dc8gz";
};
packageRequires = [ ];
meta = {
@@ -502,10 +502,10 @@
elpaBuild {
pname = "buttercup";
ename = "buttercup";
version = "1.38";
version = "1.39";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/buttercup-1.38.tar";
sha256 = "08lqi9qs7f79i44w4nvv15n23dmmka17j3dpj5s3kn0pk1gkv11j";
url = "https://elpa.nongnu.org/nongnu/buttercup-1.39.tar";
sha256 = "0a2yj10jrql77l0dqyf95yzb6cd8z7z9p9jjc6lb7z8j26m208sj";
};
packageRequires = [ ];
meta = {
@@ -567,10 +567,10 @@
elpaBuild {
pname = "casual";
ename = "casual";
version = "2.14.3";
version = "2.15.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/casual-2.14.3.tar";
sha256 = "07szxj1sczd62wmqjdspf6axzin3yjsgpssx2n9zc81cjn8j3iaw";
url = "https://elpa.nongnu.org/nongnu/casual-2.15.0.tar";
sha256 = "1ydd6ilxh5msh5l1f86b2mi963hls4m5aipshfc0bygwfh83m7s0";
};
packageRequires = [
csv-mode
@@ -648,10 +648,10 @@
elpaBuild {
pname = "clojure-mode";
ename = "clojure-mode";
version = "5.22.0";
version = "5.23.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/clojure-mode-5.22.0.tar";
sha256 = "0q6g18afykaaqgk48xwh3vn4acz5xrpfslkj61w53l9yyc1r1c6l";
url = "https://elpa.nongnu.org/nongnu/clojure-mode-5.23.0.tar";
sha256 = "1l4nxsp1lsbq1c0zg1bisc3fjmjjrjs1ahw17fajl0kblp96b0xg";
};
packageRequires = [ ];
meta = {
@@ -1279,10 +1279,10 @@
elpaBuild {
pname = "eldoc-mouse";
ename = "eldoc-mouse";
version = "3.0.5";
version = "3.0.7";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/eldoc-mouse-3.0.5.tar";
sha256 = "1xlvz0al99x3yfrsj8pbfzhs33sk7fijn835hz5jxl1bzg1ap280";
url = "https://elpa.nongnu.org/nongnu/eldoc-mouse-3.0.7.tar";
sha256 = "17s3iqkdswjfcdiyaa732v27pcpmxa96i17mwpzi34vw53a1r3wl";
};
packageRequires = [
eglot
@@ -1294,6 +1294,32 @@
};
}
) { };
eldoc-mouse-nov = callPackage (
{
eldoc-mouse,
elpaBuild,
fetchurl,
lib,
nov,
}:
elpaBuild {
pname = "eldoc-mouse-nov";
ename = "eldoc-mouse-nov";
version = "0.1.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/eldoc-mouse-nov-0.1.1.tar";
sha256 = "1jg1s0v255jm6gzvvl2r0dqrjb95z2lgc0yy1pc1avf4ynsrk5d9";
};
packageRequires = [
eldoc-mouse
nov
];
meta = {
homepage = "https://elpa.nongnu.org/nongnu/eldoc-mouse-nov.html";
license = lib.licenses.free;
};
}
) { };
elixir-mode = callPackage (
{
elpaBuild,
@@ -1345,10 +1371,10 @@
elpaBuild {
pname = "emacsql";
ename = "emacsql";
version = "4.3.5";
version = "4.3.6";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/emacsql-4.3.5.tar";
sha256 = "150wrcknbcm9kid41qjwa84mn742pzk0g12k9zm7q8zb37d709zq";
url = "https://elpa.nongnu.org/nongnu/emacsql-4.3.6.tar";
sha256 = "1zj04kqq3c5915n9pj5qx63rw8hnnpag2y5qca4d4y9h1lqnj2pp";
};
packageRequires = [ ];
meta = {
@@ -1655,10 +1681,10 @@
elpaBuild {
pname = "evil-matchit";
ename = "evil-matchit";
version = "4.0.1";
version = "4.1.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/evil-matchit-4.0.1.tar";
sha256 = "08vnf56zmqicfjwf7ihlmg9iil3bivhwpafq8vwlvp5nkmirhivv";
url = "https://elpa.nongnu.org/nongnu/evil-matchit-4.1.0.tar";
sha256 = "10wdnk5mwfzyn78qaaf0via30bs3nf2r6hq41ml6dq6xvmkfbp4a";
};
packageRequires = [ ];
meta = {
@@ -1857,10 +1883,10 @@
elpaBuild {
pname = "fj";
ename = "fj";
version = "0.33";
version = "0.34";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/fj-0.33.tar";
sha256 = "0rv72qjwvln1a2fbmmz2aihf8ia42l3cpmax8rvhdzg9a1lhyazi";
url = "https://elpa.nongnu.org/nongnu/fj-0.34.tar";
sha256 = "0aqfipcpbsxp2pm05p44fdybhldpbvii2x2m0az9s3gkm7dvwg87";
};
packageRequires = [
fedi
@@ -3210,6 +3236,28 @@
};
}
) { };
jabber = callPackage (
{
elpaBuild,
fetchurl,
fsm,
lib,
}:
elpaBuild {
pname = "jabber";
ename = "jabber";
version = "0.10.5";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/jabber-0.10.5.tar";
sha256 = "1vjmajcls0l6mwccqdp7gr4g4r1z6f2qaf2palnimjb7w3gzh4mk";
};
packageRequires = [ fsm ];
meta = {
homepage = "https://elpa.nongnu.org/nongnu/jabber.html";
license = lib.licenses.free;
};
}
) { };
jade-mode = callPackage (
{
elpaBuild,
@@ -3635,10 +3683,10 @@
elpaBuild {
pname = "mastodon";
ename = "mastodon";
version = "2.0.13";
version = "2.0.16";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/mastodon-2.0.13.tar";
sha256 = "1d9j98bf44fdy62z1ibmgh8wbfm16asplv89vv1v4ndv804706v4";
url = "https://elpa.nongnu.org/nongnu/mastodon-2.0.16.tar";
sha256 = "0zyqqfxg7b22pj8y181x30rhy81ijbm21ai70l7cq79dr2a3yr96";
};
packageRequires = [
persist
@@ -4435,10 +4483,10 @@
elpaBuild {
pname = "pg";
ename = "pg";
version = "0.63";
version = "0.64";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/pg-0.63.tar";
sha256 = "104f1c80cxzwb7z789igw2gvbmp8mirn213sp62jjwpyxfldm06q";
url = "https://elpa.nongnu.org/nongnu/pg-0.64.tar";
sha256 = "1dip1s8l2im8j40hgn3jrqrb8mbly2wfd5fy4vmz9mn4axnxdvkn";
};
packageRequires = [ peg ];
meta = {
@@ -4934,6 +4982,27 @@
};
}
) { };
selected-window-contrast = callPackage (
{
elpaBuild,
fetchurl,
lib,
}:
elpaBuild {
pname = "selected-window-contrast";
ename = "selected-window-contrast";
version = "0.4.1";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/selected-window-contrast-0.4.1.tar";
sha256 = "0qpqw2nv91ki8n1rq33vlggbb8967sq34z1apqr4x3v4cjm4ym7a";
};
packageRequires = [ ];
meta = {
homepage = "https://elpa.nongnu.org/nongnu/selected-window-contrast.html";
license = lib.licenses.free;
};
}
) { };
sesman = callPackage (
{
elpaBuild,
@@ -5049,10 +5118,10 @@
elpaBuild {
pname = "solarized-theme";
ename = "solarized-theme";
version = "2.0.4";
version = "2.1.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/solarized-theme-2.0.4.tar";
sha256 = "03vrgs29ifpvsxd4278fx7rmpd0d5ilwl8v1qgrz9gk6bnzphb9f";
url = "https://elpa.nongnu.org/nongnu/solarized-theme-2.1.0.tar";
sha256 = "16nwwf1s54r0ni1wvch4jjz3ij7s8ns09hp0bszs9mp89cnh4b5j";
};
packageRequires = [ ];
meta = {
@@ -5800,10 +5869,10 @@
elpaBuild {
pname = "web-mode";
ename = "web-mode";
version = "17.3.22";
version = "17.3.23";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/web-mode-17.3.22.tar";
sha256 = "0218wkngd59k73860zi458qabv4cbnc2150fcj7sn1i4im7f3crf";
url = "https://elpa.nongnu.org/nongnu/web-mode-17.3.23.tar";
sha256 = "17l0lda5p8nf239b0x43w8fx9a87rmk9rk282983nqi4f57iyzb2";
};
packageRequires = [ ];
meta = {
@@ -6128,10 +6197,10 @@
elpaBuild {
pname = "zenburn-theme";
ename = "zenburn-theme";
version = "2.8.0";
version = "2.9.0";
src = fetchurl {
url = "https://elpa.nongnu.org/nongnu/zenburn-theme-2.8.0.tar";
sha256 = "0z733svsjsads655jgmc0b33icmygwaahxa27qi32s1pq84zqb4z";
url = "https://elpa.nongnu.org/nongnu/zenburn-theme-2.9.0.tar";
sha256 = "0nldp5id0lkajnqpzw8agmpdjm0jfb70ma2wip06nh5zqcrrpg6s";
};
packageRequires = [ ];
meta = {
File diff suppressed because it is too large Load Diff
@@ -11,12 +11,12 @@
vimUtils,
}:
let
version = "0.5.1";
version = "0.5.2";
src = fetchFromGitHub {
owner = "dmtrKovalenko";
repo = "fff.nvim";
tag = "v${version}";
hash = "sha256-pFOmYa6JgGsLefkqgBtS1IvQJ+dVnkyLTXObxrfhZno=";
hash = "sha256-rv33dRf53m9iJwRl56z9oU0EuY1wUChsZyHOi/3gv4A=";
};
fff-nvim-lib = rustPlatform.buildRustPackage {
pname = "fff-nvim-lib";
@@ -1437,6 +1437,21 @@ let
};
};
drblury.protobuf-vsc = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "protobuf-vsc";
publisher = "DrBlury";
version = "1.6.0";
hash = "sha256-HvTJSFRKO0K7Ud9381viPrXp3TInB1FT97qZArosAjY=";
};
meta = {
description = "Comprehensive Protocol Buffers support with syntax highlighting, IntelliSense, diagnostics and formatting";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=DrBlury.protobuf-vsc";
homepage = "https://github.com/DrBlury/protobuf-vsc-extension";
license = lib.licenses.mit;
};
};
eamodio.gitlens = callPackage ./eamodio.gitlens { };
earthly.earthfile-syntax-highlighting = buildVscodeMarketplaceExtension {
@@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "prboom";
version = "0-unstable-2026-03-31";
version = "0-unstable-2026-04-10";
src = fetchFromGitHub {
owner = "libretro";
repo = "libretro-prboom";
rev = "535b8315e42f22887f36715de3ffc72b34d2dad5";
hash = "sha256-aAlGfOcjVB1nOnA+QjVB2VfPX0Ry71QENfxIFdf/L18=";
rev = "79d35037b742532e273b82088efad9c5c0af8a6d";
hash = "sha256-BR1orEzjT8NQF59uPfHt6WlXwb23bDRnUV8F2itc/HM=";
};
makefile = "Makefile";
@@ -9,15 +9,15 @@
buildGoModule (finalAttrs: {
pname = "kubernetes-helm";
version = "3.19.1";
version = "3.20.1";
src = fetchFromGitHub {
owner = "helm";
repo = "helm";
rev = "v${finalAttrs.version}";
sha256 = "sha256-1Cc7W6qyawcg5ZfjsGWH7gScdRhcYpqppjzD83QWV60=";
sha256 = "sha256-fSMfHJCl2/Lc6mcYn/m0kR0viH88rRgRTMOoJjFVERQ=";
};
vendorHash = "sha256-81qCRwp57PpzK/eavycOLFYsuD8uVq46h12YVlJRK7Y=";
vendorHash = "sha256-kqx23LekpuZJFisVZUoXBY9vHh9zviKyaW5NSa4ecxM=";
subPackages = [ "cmd/helm" ];
ldflags = [
@@ -39,6 +39,11 @@ buildGoModule (finalAttrs: {
ldflags="''${ldflags} -X helm.sh/helm/v3/pkg/chartutil.k8sVersionMinor=''${K8S_MODULES_MINOR_VER}"
'';
overrideModAttrs = _: {
# the goModules derivation will otherwise inherit the preBuild phase defined above
preBuild = "";
};
__darwinAllowLocalNetworking = true;
preCheck = ''
@@ -68,8 +68,7 @@ buildGoModule rec {
downloadPage = "https://github.com/linkerd/linkerd2/";
homepage = "https://linkerd.io/";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
Gonzih
maintainers = [
];
};
}
@@ -45,11 +45,11 @@
"vendorHash": "sha256-qjtyg+b3CfF24us0Fqw1KqKEbuoqL4eLe4QCuIAp4SE="
},
"aliyun_alicloud": {
"hash": "sha256-oTQaH0E3e7gBn5BuoDUOGX6plQSQR2Ki6cRzIr31qvs=",
"hash": "sha256-xdWoc0unJDM7WL3t1AoDBzwPgByij9g9hEoNSOxJtxs=",
"homepage": "https://registry.terraform.io/providers/aliyun/alicloud",
"owner": "aliyun",
"repo": "terraform-provider-alicloud",
"rev": "v1.274.0",
"rev": "v1.275.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-Kk0YeStlev8AurZasORMe/42Rd3ZPFoFMat/rMpZFbE="
},
@@ -1004,13 +1004,13 @@
"vendorHash": "sha256-ucXmHK7jrahc78nE2cf5p5PPCSNV5DAQ53KM2SfJnjo="
},
"okta_okta": {
"hash": "sha256-sr3Q39Lx47+OT4alUEic7PBvtZKTwQ9Do15YfbVn9b4=",
"hash": "sha256-Ub41ML88NKsMC6q1C67DCBTrG9qD0cBhAkizZdIRRBc=",
"homepage": "https://registry.terraform.io/providers/okta/okta",
"owner": "okta",
"repo": "terraform-provider-okta",
"rev": "v6.6.1",
"rev": "v6.9.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-EqXLfVayaOG/G3c6EkgQoPGNwnG2qKSlDo2ai/onmQE="
"vendorHash": "sha256-0NaqVCibwiK7WY6hIFGd2kB/okyh6ZsZ+BAe5mGP38A="
},
"oktadeveloper_oktaasa": {
"hash": "sha256-2LhxgowqKvDDDOwdznusL52p2DKP+UiXALHcs9ZQd0U=",
@@ -139,7 +139,7 @@ stdenv.mkDerivation rec {
Once you have downloaded the file, please use the following command and re-run the
installation:
nix-prefetch-url file://\$PWD/${name}
nix-prefetch-url file://$PWD/${name}
'';
};
@@ -928,14 +928,7 @@ rec {
outputHash = hash_;
preferLocalBuild = true;
builder = writeScript "restrict-message" ''
source ${stdenvNoCC}/setup
cat <<_EOF_
***
${msg}
***
_EOF_
printf '%s' ${lib.escapeShellArg msg}
exit 1
'';
}
+2 -2
View File
@@ -6,13 +6,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "acr";
version = "2.2.4";
version = "2.2.6";
src = fetchFromGitHub {
owner = "radareorg";
repo = "acr";
rev = finalAttrs.version;
hash = "sha256-ASdXxkHqrxs4xVKB9LJDU5Y12+1Gv+NgFHC+tEC5p+E=";
hash = "sha256-fV4aBc/PZD1Grtq/KugTuzYAu/nsOntgDwsnFuAvHMc=";
};
preConfigure = ''
+1 -1
View File
@@ -30,6 +30,6 @@ buildGoModule (finalAttrs: {
mainProgram = "air";
homepage = "https://github.com/air-verse/air";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ Gonzih ];
maintainers = [ ];
};
})
@@ -7,16 +7,16 @@
buildNpmPackage rec {
pname = "all-the-package-names";
version = "2.0.2405";
version = "2.0.2413";
src = fetchFromGitHub {
owner = "nice-registry";
repo = "all-the-package-names";
tag = "v${version}";
hash = "sha256-dimap7vybYHNGSAWn6K8uMUMymrV8Ek5Vc27bbJo22w=";
hash = "sha256-loI9wKz0EcePvM2kXqmxNx9rfC/VaMCmJtm0dTjWoOk=";
};
npmDepsHash = "sha256-13u+UoTckxKAmthuaxOCaGSW4BaAgWaz6/4dBcO+3VI=";
npmDepsHash = "sha256-6XLDdamRG+IVq/zdyKKlIsnfUVD8pKES7K7hm+yTQ78=";
passthru.updateScript = nix-update-script { };
+16 -11
View File
@@ -6,29 +6,34 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "anchor";
version = "0.31.1";
version = "1.0.0";
src = fetchFromGitHub {
owner = "coral-xyz";
owner = "solana-foundation";
repo = "anchor";
tag = "v${finalAttrs.version}";
hash = "sha256-pvD0v4y7DilqCrhT8iQnAj5kBxGQVqNvObJUBzFLqzA=";
hash = "sha256-Y5452JSBAH+GkAJ57cDjup3vyMzPac+xvNAE+W81Ong=";
fetchSubmodules = true;
};
cargoHash = "sha256-fjhLA+utQdgR75wg+/N4VwASW6+YBHglRPj14sPHmGA=";
cargoHash = "sha256-GH/R7S8jQAWGTz8Ig/u/yb9o6FPtmkAaOzgl0uiB0dk=";
checkFlags = [
# the following test cases try to access network, skip them
"--skip=tests::test_check_and_get_full_commit_when_full_commit"
"--skip=tests::test_check_and_get_full_commit_when_partial_commit"
"--skip=tests::test_get_anchor_version_from_commit"
# Only build the anchor-cli package
cargoBuildFlags = [
"-p"
"anchor-cli"
];
# Only run tests for the anchor-cli
cargoTestFlags = [
"-p"
"anchor-cli"
];
meta = {
description = "Solana Sealevel Framework";
homepage = "https://github.com/coral-xyz/anchor";
changelog = "https://github.com/coral-xyz/anchor/blob/${finalAttrs.src.rev}/CHANGELOG.md";
homepage = "https://github.com/solana-foundation/anchor";
changelog = "https://github.com/solana-foundation/anchor/blob/${finalAttrs.src.tag}/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ Denommus ];
mainProgram = "anchor";
+2 -2
View File
@@ -33,8 +33,8 @@ stdenv.mkDerivation rec {
message = ''
We cannot download the commercial version automatically, as you require a license.
Once you bought a license, you need to add your downloaded version to the nix store.
You can do this by using "nix-prefetch-url file:///\$PWD/${commercialName}" in the
directory where yousaved it.
You can do this by using "nix-prefetch-url file:///$PWD/${commercialName}" in the
directory where you saved it.
'';
name = commercialName;
sha256 =
+2 -2
View File
@@ -6,14 +6,14 @@
python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "apkid";
version = "3.0.0";
version = "3.1.0";
pyproject = true;
src = fetchFromGitHub {
owner = "rednaga";
repo = "APKiD";
tag = "v${finalAttrs.version}";
hash = "sha256-/8p2qR1je65k1irXFcCre2e16rhGjcu0+u6RChMYTWQ=";
hash = "sha256-sX9HQUW+oB7vmlz3I0I/NwqOVGqR8j1WZXtDCISMkxY=";
};
postPatch = ''
+4 -4
View File
@@ -1,14 +1,14 @@
{ fetchFromGitHub }:
rec {
pname = "authelia";
version = "4.39.12";
version = "4.39.18";
src = fetchFromGitHub {
owner = "authelia";
repo = "authelia";
rev = "v${version}";
hash = "sha256-u7TIhOGXfvWdAXvpL5qa43jaoa7PNAVL2MtGEuWBDPc=";
hash = "sha256-IROdncF3TC1X9000jw0RGtrcFrzqRpG7g2QuLGQ/Q4k=";
};
vendorHash = "sha256-7RoPv4OvOhiv+TmYOJuW95h/uh2LuTrpUSAZiTvbh7g=";
pnpmDepsHash = "sha256-Ck2nqFwDv3OxN0ONA3A+h4Rli1te+EYqKivcqrAInKw=";
vendorHash = "sha256-ZDsLRMip2B8PPZu8VxW+91FVvwC2rXzohhAZFifT26g=";
pnpmDepsHash = "sha256-ki/jXNT9dIno1UIcDgBcsLdiKcaiw/dwnff3t9xv07o=";
}
+5 -1
View File
@@ -40,8 +40,12 @@ stdenv.mkDerivation (finalAttrs: {
};
postPatch = ''
NL=$'\n'
LINE_BEFORE_HOST='allowedHosts: ["login.example.com", ...allowedHosts],'
substituteInPlace ./vite.config.ts \
--replace 'outDir: "../internal/server/public_html"' 'outDir: "dist"'
--replace-fail 'outDir: "../internal/server/public_html"' 'outDir: "dist"' \
--replace-fail "$LINE_BEFORE_HOST" "$LINE_BEFORE_HOST$NL"' host: "127.0.0.1",'
'';
postBuild = ''
+8
View File
@@ -10,6 +10,14 @@ let
bepastyPython = python3.override {
self = bepastyPython;
packageOverrides = self: super: {
xstatic-bootstrap = super.xstatic-bootstrap.overridePythonAttrs (oldAttrs: rec {
version = "4.5.3.1";
src = oldAttrs.src.override {
pname = "XStatic-Bootstrap";
inherit version;
hash = "sha256-z2fSBUN7MlCKiLaafnxbviylqK5xCXORpqb1EOv9KCA=";
};
});
xstatic-font-awesome = super.xstatic-font-awesome.overridePythonAttrs (oldAttrs: rec {
version = "4.7.0.0";
src = oldAttrs.src.override {
+2 -2
View File
@@ -7,13 +7,13 @@
buildGoModule (finalAttrs: {
pname = "brutus";
version = "1.2.1";
version = "1.3.0";
src = fetchFromGitHub {
owner = "praetorian-inc";
repo = "brutus";
tag = "v${finalAttrs.version}";
hash = "sha256-xpgBXszLk3BXEZ3sUFYn4IpuVLCuMUpMS7XasnrAXw4=";
hash = "sha256-mLp9jnwg7z1KjYpjtnHHIClYelFacyWDvqftXb8toj0=";
};
vendorHash = "sha256-1hP4gitbpm3wFhLu7OJ3gQMVkZKZJEZAKvhfejSOYMI=";
+3 -3
View File
@@ -9,20 +9,20 @@
}:
let
version = "2026.3.1";
version = "2026.3.2";
product =
if proEdition then
{
productName = "pro";
productDesktop = "Burp Suite Professional Edition";
hash = "sha256-jRVRvqFRsRO+vbEoV35bX4vi9XEYl737L0umt61ACtk=";
hash = "sha256-oZGSP19ejP9amfXV89kNDQwxLekZCs7oGKaX/DDHSZM=";
}
else
{
productName = "community";
productDesktop = "Burp Suite Community Edition";
hash = "sha256-wjXzFXE+cIHw8tXuitsN4emH5varOTWQxiohwFGKZvc=";
hash = "sha256-PuV5XmgdBBkfPS0pc3xENtTUPMpemyHDDOTLVux24Xs=";
};
src = fetchurl {
+2 -2
View File
@@ -14,13 +14,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "c-blosc2";
version = "2.22.0";
version = "2.23.1";
src = fetchFromGitHub {
owner = "Blosc";
repo = "c-blosc2";
rev = "v${finalAttrs.version}";
sha256 = "sha256-0eB+8zSlKCuHK1J2HlBUmWEJumAXSV2xnYMvnFud75A=";
sha256 = "sha256-iyEB1Hnvo42tMHyB4pDfXru5doFwNiFuxq21Tr3zLIg=";
};
# https://github.com/NixOS/nixpkgs/issues/144170
+69
View File
@@ -0,0 +1,69 @@
{
lib,
stdenv,
fetchurl,
autoPatchelfHook,
unzip,
libgcc,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "caido-cli";
version = "0.55.3";
src = fetchurl (
{
x86_64-linux = {
url = "https://caido.download/releases/v${finalAttrs.version}/caido-cli-v${finalAttrs.version}-linux-x86_64.tar.gz";
hash = "sha256-ys5gMO0jGy5d8ncwQo9ES0gn7Ddckf3496CAyGgKEus=";
};
aarch64-linux = {
url = "https://caido.download/releases/v${finalAttrs.version}/caido-cli-v${finalAttrs.version}-linux-aarch64.tar.gz";
hash = "sha256-JvWktRnNyzu98NeSOFJ6nhF60uQfSL6ys5BmTkYuwCQ=";
};
x86_64-darwin = {
url = "https://caido.download/releases/v${finalAttrs.version}/caido-cli-v${finalAttrs.version}-mac-x86_64.zip";
hash = "sha256-bnFGa8GMDTdCjk9xJL9rGvZ1H6MMzzXrlWXGRlE5XPg=";
};
aarch64-darwin = {
url = "https://caido.download/releases/v${finalAttrs.version}/caido-cli-v${finalAttrs.version}-mac-aarch64.zip";
hash = "sha256-UVBQKkGsYJ84cthFkCXrHI85t8LJPy4z5sP5TobVNeA=";
};
}
.${stdenv.hostPlatform.system}
or (throw "caido-cli: unsupported system ${stdenv.hostPlatform.system}")
);
nativeBuildInputs =
lib.optionals stdenv.isLinux [ autoPatchelfHook ] ++ lib.optionals stdenv.isDarwin [ unzip ];
buildInputs = lib.optionals stdenv.isLinux [ libgcc ];
sourceRoot = ".";
installPhase = ''
runHook preInstall
install -m 755 -D caido-cli $out/bin/caido-cli
runHook postInstall
'';
meta = {
description = "Caido CLI lightweight web security auditing toolkit";
homepage = "https://caido.io/";
changelog = "https://github.com/caido/caido/releases/tag/v${finalAttrs.version}";
license = lib.licenses.unfree;
mainProgram = "caido-cli";
maintainers = with lib.maintainers; [
blackzeshi
m0streng0
octodi
];
platforms = [
"x86_64-linux"
"aarch64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
})
+119
View File
@@ -0,0 +1,119 @@
{
lib,
stdenv,
fetchurl,
appimageTools,
makeWrapper,
_7zz,
}:
let
pname = "caido-desktop";
version = "0.55.3";
sources = {
x86_64-linux = {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-linux-x86_64.AppImage";
hash = "sha256-pGRmFYE7uO5Ka94Kfjl9LR5PAwZ5dCxHqCqJKhtLPco=";
};
aarch64-linux = {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-linux-aarch64.AppImage";
hash = "sha256-s99+HXf7Ada2wiPUZ/5M/p09JiadFn5GnKrzqo9yNPQ=";
};
x86_64-darwin = {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-mac-x86_64.dmg";
hash = "sha256-V33bRaTwhxozBR/wV83bU89TZluenKpFc8GU0KaaO8w=";
};
aarch64-darwin = {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-mac-aarch64.dmg";
hash = "sha256-fEzPN84zoSvlIgUBYVmPta7SUmTDRQghoJMTZXW7eI4=";
};
};
src = fetchurl (
sources.${stdenv.hostPlatform.system}
or (throw "caido-desktop: unsupported system ${stdenv.hostPlatform.system}")
);
meta = {
description = "Caido Desktop lightweight web security auditing toolkit";
homepage = "https://caido.io/";
changelog = "https://github.com/caido/caido/releases/tag/v${version}";
license = lib.licenses.unfree;
mainProgram = "caido-desktop";
maintainers = with lib.maintainers; [
blackzeshi
m0streng0
octodi
];
platforms = [
"x86_64-linux"
"aarch64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
appimageContents = appimageTools.extractType2 { inherit pname version src; };
linux = appimageTools.wrapType2 {
inherit
pname
version
src
meta
;
nativeBuildInputs = [ makeWrapper ];
extraPkgs = pkgs: [ pkgs.libthai ];
extraInstallCommands = ''
install -m 444 -D ${appimageContents}/caido.desktop \
-t $out/share/applications
install -m 444 -D ${appimageContents}/caido.png \
$out/share/icons/hicolor/512x512/apps/caido.png
wrapProgram $out/bin/${pname} \
--set WEBKIT_DISABLE_COMPOSITING_MODE 1 \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}"
'';
};
darwin = stdenv.mkDerivation {
inherit
pname
version
src
meta
;
nativeBuildInputs = [
_7zz
makeWrapper
];
unpackPhase = ''
runHook preUnpack
7zz x $src || true
runHook postUnpack
'';
sourceRoot = "Caido.app";
installPhase = ''
runHook preInstall
mkdir -p $out/Applications/Caido.app $out/bin
cp -R . $out/Applications/Caido.app/
makeWrapper $out/Applications/Caido.app/Contents/MacOS/Caido \
$out/bin/${pname}
runHook postInstall
'';
};
in
if stdenv.isLinux then
linux
else if stdenv.isDarwin then
darwin
else
throw "caido-desktop: unsupported platform ${stdenv.hostPlatform.system}"
-208
View File
@@ -1,208 +0,0 @@
{
lib,
stdenv,
fetchurl,
appimageTools,
makeWrapper,
autoPatchelfHook,
_7zz,
unzip,
libgcc,
appVariants ? [ ],
}:
let
pname = "caido";
appVariantList = [
"cli"
"desktop"
];
version = "0.55.1";
system = stdenv.hostPlatform.system;
isLinux = stdenv.isLinux;
isDarwin = stdenv.isDarwin;
# CLI sources
cliSources = {
x86_64-linux = {
url = "https://caido.download/releases/v${version}/caido-cli-v${version}-linux-x86_64.tar.gz";
hash = "sha256-4xRkEN/ZA+JUFMB2qoEZT0Bzv2Qc7Y9kcj251MCAhKE=";
};
aarch64-linux = {
url = "https://caido.download/releases/v${version}/caido-cli-v${version}-linux-aarch64.tar.gz";
hash = "sha256-gMQkF0+mq2nRBy0oBenFvp69byWCkqmt8E4ZpKuNxKw=";
};
x86_64-darwin = {
url = "https://caido.download/releases/v${version}/caido-cli-v${version}-mac-x86_64.zip";
hash = "sha256-C+EfmSBJMyxYXLfzxCrY7ZVtg8nwtie8w0Lj1Dy7o/k=";
};
aarch64-darwin = {
url = "https://caido.download/releases/v${version}/caido-cli-v${version}-mac-aarch64.zip";
hash = "sha256-b0cBS3RwsiLgJNqHWxi672MVZNfTYNOEJ2k0h2qNnP0=";
};
};
# Desktop sources
desktopSources = {
x86_64-linux = {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-linux-x86_64.AppImage";
hash = "sha256-zfts2h8QWTxe/dISwgKRQiSx2nD6vtE1atPfREyGX/U=";
};
aarch64-linux = {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-linux-aarch64.AppImage";
hash = "sha256-fYqzukRptCB466LIPbVre2EwBFt4Bsq9amQ4kjQuV2Q=";
};
x86_64-darwin = {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-mac-x86_64.dmg";
hash = "sha256-UsGT5n0MGVwWCXACo74Harb4J/qt/3TyD0+EFYNmPxw=";
};
aarch64-darwin = {
url = "https://caido.download/releases/v${version}/caido-desktop-v${version}-mac-aarch64.dmg";
hash = "sha256-iZHZayj2VYjMY9+p+xrlX+vP/DcbCRPQizQEqtF39EU=";
};
};
cliSource = cliSources.${system} or (throw "Unsupported system for caido-cli: ${system}");
desktopSource =
desktopSources.${system} or (throw "Unsupported system for caido-desktop: ${system}");
cli = fetchurl {
url = cliSource.url;
hash = cliSource.hash;
};
desktop = fetchurl {
url = desktopSource.url;
hash = desktopSource.hash;
};
appimageContents = appimageTools.extractType2 {
inherit pname version;
src = desktop;
};
wrappedDesktop =
if isLinux then
appimageTools.wrapType2 {
src = desktop;
inherit pname version;
nativeBuildInputs = [ makeWrapper ];
extraPkgs = pkgs: [ pkgs.libthai ];
extraInstallCommands = ''
install -m 444 -D ${appimageContents}/caido.desktop -t $out/share/applications
install -m 444 -D ${appimageContents}/caido.png \
$out/share/icons/hicolor/512x512/apps/caido.png
wrapProgram $out/bin/caido \
--set WEBKIT_DISABLE_COMPOSITING_MODE 1 \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}"
'';
}
else if isDarwin then
stdenv.mkDerivation {
src = desktop;
inherit pname version;
nativeBuildInputs = [ _7zz ];
sourceRoot = ".";
unpackPhase = ''
runHook preUnpack
${_7zz}/bin/7zz x $src
runHook postUnpack
'';
installPhase = ''
runHook preInstall
mkdir -p $out/Applications
cp -r Caido.app $out/Applications/
mkdir -p $out/bin
ln -s $out/Applications/Caido.app/Contents/MacOS/Caido $out/bin/caido
runHook postInstall
'';
meta = {
platforms = [
"x86_64-darwin"
"aarch64-darwin"
];
};
}
else
throw "Desktop variant is not supported on ${stdenv.hostPlatform.system}";
wrappedCli =
if isLinux then
stdenv.mkDerivation {
src = cli;
inherit pname version;
nativeBuildInputs = [ autoPatchelfHook ];
buildInputs = [ libgcc ];
sourceRoot = ".";
installPhase = ''
runHook preInstall
install -m755 -D caido-cli $out/bin/caido-cli
runHook postInstall
'';
}
else if isDarwin then
stdenv.mkDerivation {
src = cli;
inherit pname version;
nativeBuildInputs = [ unzip ];
sourceRoot = ".";
installPhase = ''
runHook preInstall
install -m755 -D caido-cli $out/bin/caido-cli
runHook postInstall
'';
meta = {
platforms = [
"x86_64-darwin"
"aarch64-darwin"
];
};
}
else
throw "CLI variant is not supported on ${stdenv.hostPlatform.system}";
meta = {
description = "Lightweight web security auditing toolkit";
homepage = "https://caido.io/";
changelog = "https://github.com/caido/caido/releases/tag/v${version}";
license = lib.licenses.unfree;
maintainers = with lib.maintainers; [
octodi
blackzeshi
];
platforms = [
"x86_64-linux"
"aarch64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
};
in
lib.checkListOfEnum "${pname}: appVariants" appVariantList appVariants (
if appVariants == [ "desktop" ] then
wrappedDesktop
else if appVariants == [ "cli" ] then
wrappedCli
else
stdenv.mkDerivation {
inherit pname version meta;
dontUnpack = true;
installPhase = ''
mkdir -p $out/bin
ln -s ${wrappedDesktop}/bin/caido $out/bin/caido
ln -s ${wrappedCli}/bin/caido-cli $out/bin/caido-cli
'';
}
)
+5 -10
View File
@@ -10,13 +10,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "check-sieve";
version = "0.11";
version = "1.0.0";
src = fetchFromGitHub {
owner = "dburkart";
repo = "check-sieve";
tag = "check-sieve-${finalAttrs.version}";
hash = "sha256-vmfHXjcZ5J/+kO3/a0p8krLOuC67+q8SxcPJgW+UaTw=";
tag = "v${finalAttrs.version}";
hash = "sha256-dElVfLSVtlELleuxCScR6BGuLsJ+KRqcNA8y0lgrBfI=";
};
nativeBuildInputs = [
@@ -28,8 +28,6 @@ stdenv.mkDerivation (finalAttrs: {
(python3.withPackages (p: [ p.setuptools ]))
];
# https://github.com/dburkart/check-sieve/issues/67
# Remove after the next (>0.10) release
env.NIX_CFLAGS_COMPILE = "-Wno-error=unused-result";
installPhase = ''
@@ -39,17 +37,14 @@ stdenv.mkDerivation (finalAttrs: {
'';
preCheck = ''
substituteInPlace test/AST/util.py \
substituteInPlace test/{AST,simulate}/util.py \
--replace-fail "/usr/bin/diff" "${diffutils}/bin/diff"
# Disable flaky tests: https://github.com/dburkart/check-sieve/issues/68
# Remove after the next (>0.10) release
rm -rf test/{6785,7352}
'';
doCheck = true;
passthru.updateScript = nix-update-script {
extraArgs = [ "--version-regex=check-sieve-(.*)" ];
extraArgs = [ "--version-regex=v(.*)" ];
};
meta = {
+2 -2
View File
@@ -11,14 +11,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "clickable";
version = "8.7.0";
version = "8.8.0";
pyproject = true;
src = fetchFromGitLab {
owner = "clickable";
repo = "clickable";
rev = "v${finalAttrs.version}";
hash = "sha256-W6NPZ5uP7wGjgyA+Nv2vpmshKWny2CCSrn/Gaoi7Pr4=";
hash = "sha256-EEICNL5ydrtep+Lbo9ryKW3+vcJwQxPeXY/C4bZaAnI=";
};
__structuredAttrs = true;
+2 -2
View File
@@ -4,11 +4,11 @@
"sources": {
"x86_64-linux": {
"url": "https://downloads.cursor.com/production/475871d112608994deb2e3065dfb7c6b0baa0c54/linux/x64/Cursor-3.0.16-x86_64.AppImage",
"hash": "sha256-/kBlLvaF3/7WSEI6ika6opgUVDQVo7vLVLsgG8htEpk="
"hash": "sha256-dN8tFSppIpO/P0Thst5uaNzlmfWZDh0Y81Lx1BuSYt0="
},
"aarch64-linux": {
"url": "https://downloads.cursor.com/production/475871d112608994deb2e3065dfb7c6b0baa0c54/linux/arm64/Cursor-3.0.16-aarch64.AppImage",
"hash": "sha256-tG75z9SPVaH6cgN75XW1ZKRyj689Yd97cbQZSvQtPrA="
"hash": "sha256-AJwCzST0fj8fjSVeK15uE50XWGIOLOwn4gRRB733eLg="
},
"x86_64-darwin": {
"url": "https://downloads.cursor.com/production/475871d112608994deb2e3065dfb7c6b0baa0c54/darwin/x64/Cursor-darwin-x64.dmg",
+3 -3
View File
@@ -6,16 +6,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "complgen";
version = "0.8.3";
version = "0.9.0";
src = fetchFromGitHub {
owner = "adaszko";
repo = "complgen";
tag = "v${finalAttrs.version}";
hash = "sha256-z4jR2evvC0p306UeULroCLwaa7sjYUh7ENWp17FolAw=";
hash = "sha256-izIPX493EBqDgS58asiwFHF8XMNjVaFpXkOyiBb2688=";
};
cargoHash = "sha256-VhfIUP9NjsgoJ0qNUFwWdaZpWAWzSlmVgPI8kNeFVgM=";
cargoHash = "sha256-S1nt28qpgTy3mQN8wh/Nai6H/mq5eR09s7jRgGaFLkA=";
meta = {
changelog = "https://github.com/adaszko/complgen/blob/v${finalAttrs.version}/CHANGELOG.md";
+5 -5
View File
@@ -19,7 +19,7 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "dbeaver-bin";
version = "26.0.1";
version = "26.0.2";
src =
let
@@ -32,10 +32,10 @@ stdenvNoCC.mkDerivation (finalAttrs: {
aarch64-darwin = "macos-aarch64.dmg";
};
hash = selectSystem {
x86_64-linux = "sha256-tmT62M2NvvSsBWKbRT0iTVdQVuBuPsDuDBtVtr7FKPU=";
aarch64-linux = "sha256-WL7pO0l5TZEl2Ur8Qiqw/5ZAKR4iaoN8yxpG7wtPmds=";
x86_64-darwin = "sha256-vg3zi39kWfPqxhKtUv2WixJMqejgDLIuVQ26Jyrtl9c=";
aarch64-darwin = "sha256-jNwcIKmOCI75h0Ul/oARm2S1UzUUw2GflHdwA7d+3nU=";
x86_64-linux = "sha256-qAjGYm164/teNcNxZwMNtBNKUOAd/7EjJMk1DtQKGFA=";
aarch64-linux = "sha256-tMCMRMNA1sQprDouHtRKPAE1CHWRII2/p05UqVaPcpE=";
x86_64-darwin = "sha256-2hSrJhlvFr/5AK9VCXU/hZke9oHgde50ng0pEAXV63Y=";
aarch64-darwin = "sha256-YADZ7ttETfs+3HC045eHntLj1x8GREw027GGDSGIeDw=";
};
in
fetchurl {
+5 -2
View File
@@ -7,17 +7,18 @@
coreutils,
fetchFromGitHub,
makeWrapper,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "diff-so-fancy";
version = "1.4.8";
version = "1.4.10";
src = fetchFromGitHub {
owner = "so-fancy";
repo = "diff-so-fancy";
rev = "v${finalAttrs.version}";
sha256 = "sha256-dsWf7QhdvOfzen3ZOyu00Y869yYqKtgk7yHJvhmFSOs=";
sha256 = "sha256-mEVRwkfVK/qmOeU37hSxmO2t0z0TY4MWOjkt6hICQQ4=";
};
nativeBuildInputs = [
@@ -52,6 +53,8 @@ stdenv.mkDerivation (finalAttrs: {
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
meta = {
homepage = "https://github.com/so-fancy/diff-so-fancy";
description = "Good-looking diffs filter for git";
+2 -2
View File
@@ -1,12 +1,12 @@
{
lib,
stdenv,
buildGoModule,
buildGo125Module,
fetchFromGitHub,
libpcap,
}:
buildGoModule (finalAttrs: {
buildGo125Module (finalAttrs: {
pname = "dnsmonster";
version = "1.2.5";
-1
View File
@@ -32,7 +32,6 @@ python3Packages.buildPythonApplication (finalAttrs: {
license = lib.licenses.mit;
mainProgram = "doge";
maintainers = with lib.maintainers; [
Gonzih
quantenzitrone
];
};
@@ -0,0 +1,26 @@
diff --git a/src/gtkport/itemfactory.c b/src/gtkport/itemfactory.c
index b7a8c3f..980682c 100644
--- a/src/gtkport/itemfactory.c
+++ b/src/gtkport/itemfactory.c
@@ -217,7 +217,7 @@ void dp_gtk_item_factory_create_item(DPGtkItemFactory *ifactory,
new_child->widget = menu_item;
if (entry->callback) {
g_signal_connect(G_OBJECT(menu_item), "activate",
- entry->callback, callback_data);
+ G_CALLBACK(entry->callback), callback_data);
}
if (parent) {
diff --git a/src/gtkport/itemfactory.h b/src/gtkport/itemfactory.h
index a1d5b1d..2702595 100644
--- a/src/gtkport/itemfactory.h
+++ b/src/gtkport/itemfactory.h
@@ -59,7 +59,7 @@ GtkItemFactory *dp_gtk_item_factory_new(const gchar *path,
typedef gchar *(*DPGtkTranslateFunc) (const gchar *path, gpointer func_data);
-typedef void (*DPGtkItemFactoryCallback) ();
+typedef void (*DPGtkItemFactoryCallback) (GtkWidget *widget, gpointer data);
typedef struct _DPGtkItemFactoryEntry DPGtkItemFactoryEntry;
typedef struct _DPGtkItemFactory DPGtkItemFactory;
+6 -2
View File
@@ -34,8 +34,12 @@ stdenv.mkDerivation (finalAttrs: {
ncurses
];
# remove the denied setting of setuid bit permission
patches = [ ./0001-remove_setuid.patch ];
patches = [
# remove the denied setting of setuid bit permission
./0001-remove_setuid.patch
# fix compilation errors with gcc15
./0002-fix_gcc15.patch
];
# run dopewars with -f so that it finds its scoreboard file in ~/.local/share
postInstall = ''
+3 -3
View File
@@ -12,7 +12,7 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "dprint";
version = "0.53.2";
version = "0.54.0";
# Prefer repository rather than crate here
# - They have Cargo.lock in the repository
@@ -21,10 +21,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
owner = "dprint";
repo = "dprint";
tag = finalAttrs.version;
hash = "sha256-n2nb8+Iplm9AMlyxCfRjGmuES1FvYIVgcilSg7LcjiM=";
hash = "sha256-dNs2LQeEndeXS8xR9SXVFWT9PS+haB9SDZ+3PUPkFjg=";
};
cargoHash = "sha256-FTD8rCdMC1W+1SE5ezAz3rLNc6UErGbN0/5uiPCABuk=";
cargoHash = "sha256-fmbO14eTObK1cZu9gDls25KRmzAJPGiqQ8uURGD2vV0=";
nativeBuildInputs = [ installShellFiles ];
-1
View File
@@ -40,6 +40,5 @@ buildGoModule (finalAttrs: {
homepage = finalAttrs.src.meta.homepage;
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ stianlagstad ];
platforms = lib.platforms.linux;
};
})
+19
View File
@@ -122,6 +122,24 @@ stdenv.mkDerivation (finalAttrs: {
"test/sql/function/list/aggregates/skewness.test"
"test/sql/aggregate/aggregates/histogram_table_function.test"
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
# SIGTRAP during iejoin tests on aarch64-darwin (with and without sandbox)
# iejoin implementation rewritten in 1.5.x with new parallel task scheduling
"test/sql/join/iejoin/iejoin_issue_6861.test"
"test/sql/join/iejoin/iejoin_issue_7278.test"
"test/sql/join/iejoin/iejoin_projection_maps.test"
"test/sql/join/iejoin/merge_join_switch.test"
"test/sql/join/iejoin/predicate_expressions.test"
"test/sql/join/iejoin/test_countzeros.test"
"test/sql/join/iejoin/test_ieantijoin.test"
"test/sql/join/iejoin/test_iejoin.test"
"test/sql/join/iejoin/test_iejoin_east_west.test"
"test/sql/join/iejoin/test_iejoin_events.test"
"test/sql/join/iejoin/test_iejoin_null_keys.test"
"test/sql/join/iejoin/test_iejoin_overlaps.test"
"test/sql/join/iejoin/test_iejoin_predicate.test"
"test/sql/join/iejoin/test_iesemijoin.test"
]
);
LD_LIBRARY_PATH = lib.optionalString stdenv.hostPlatform.isDarwin "DY" + "LD_LIBRARY_PATH";
in
@@ -144,6 +162,7 @@ stdenv.mkDerivation (finalAttrs: {
license = lib.licenses.mit;
mainProgram = "duckdb";
maintainers = with lib.maintainers; [
cameronraysmith
costrouc
cpcloud
];
+4 -4
View File
@@ -1,6 +1,6 @@
{
"version": "1.4.4",
"rev": "6ddac802ffa9bcfbcc3f5f0d71de5dff9b0bc250",
"hash": "sha256-h9Mldv29u47DnFOCN28HBHWz8daFGE/Nj1JcnNhhQ5Q=",
"python_hash": "sha256-860KbaM7Ojp4Qwm5x5WPQg176XKOYayk8pLVaUAuC4M="
"version": "1.5.1",
"rev": "7dbb2e646fea939a89f10a55aa98c474cbb0c098",
"hash": "sha256-FygBpfhvezvUbI969Dta+vZOPt6BnSW2d5gO4I4oB2A=",
"python_hash": "sha256-ZB+Zcxg5VjBzfTkQk7TxoP9pw+hvOXpB2qqnqqmjhxM="
}
+2 -2
View File
@@ -11,11 +11,11 @@ proton-ge-bin.overrideAttrs (
inherit steamDisplayName;
pname = "dwproton-bin";
version = "dwproton-10.0-22";
version = "dwproton-10.0-23";
src = fetchzip {
url = "https://dawn.wine/dawn-winery/dwproton/releases/download/${finalAttrs.version}/${finalAttrs.version}-x86_64.tar.xz";
hash = "sha256-U/lLAF/WUxHInBgAt7YuDUM/eGGSv7mkjAACr15iW/0=";
hash = "sha256-XqXXxsTekvTUNsykpWu4vbZ4Mi+2tMR57zngaOt+3gQ=";
};
passthru.updateScript = writeScript "update-dwproton" ''
+1 -1
View File
@@ -23,7 +23,7 @@ let
Once you have downloaded the file, please use the following command and re-run the
installation:
nix-prefetch-url file://\$PWD/${name}
nix-prefetch-url file://$PWD/${name}
'';
};

Some files were not shown because too many files have changed in this diff Show More