mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-07-25 01:50:40 +00:00
Compare commits
17 Commits
haskell-up
...
wip-gcc-16
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a06d109d48 | ||
|
|
c465430f82 | ||
|
|
1e10b67e35 | ||
|
|
6aa36277ff | ||
|
|
d457a15860 | ||
|
|
75c304b0e0 | ||
|
|
2012d325a3 | ||
|
|
1dd0a5d9e5 | ||
|
|
fb7e01a3b6 | ||
|
|
80c9a1708e | ||
|
|
b57ec0fcb2 | ||
|
|
f7b16131d9 | ||
|
|
6c37551652 | ||
|
|
aab37bd258 | ||
|
|
017fed1d63 | ||
|
|
f46e80f6c5 | ||
|
|
8c8bcc8565 |
6
.github/workflows/bot.yml
vendored
6
.github/workflows/bot.yml
vendored
@@ -88,7 +88,7 @@ jobs:
|
||||
GH_TOKEN: ${{ steps.app-token.outputs.token || github.token }}
|
||||
run: gh api /rate_limit | jq
|
||||
|
||||
- uses: actions/labeler@bf12e9b00b37c5c0ca2b87b79b2daf7891dbda13 # v7.0.0
|
||||
- uses: actions/labeler@b8dd2d9be0f68b860e7dae5dae7d772984eacd6d # v6.2.0
|
||||
name: Labels from touched files
|
||||
if: |
|
||||
github.event_name == 'pull_request_target' &&
|
||||
@@ -98,7 +98,7 @@ jobs:
|
||||
configuration-path: .github/labeler.yml # default
|
||||
sync-labels: true
|
||||
|
||||
- uses: actions/labeler@bf12e9b00b37c5c0ca2b87b79b2daf7891dbda13 # v7.0.0
|
||||
- uses: actions/labeler@b8dd2d9be0f68b860e7dae5dae7d772984eacd6d # v6.2.0
|
||||
name: Labels from touched files (no sync)
|
||||
if: |
|
||||
github.event_name == 'pull_request_target' &&
|
||||
@@ -108,7 +108,7 @@ jobs:
|
||||
configuration-path: .github/labeler-no-sync.yml
|
||||
sync-labels: false
|
||||
|
||||
- uses: actions/labeler@bf12e9b00b37c5c0ca2b87b79b2daf7891dbda13 # v7.0.0
|
||||
- uses: actions/labeler@b8dd2d9be0f68b860e7dae5dae7d772984eacd6d # v6.2.0
|
||||
name: Labels from touched files (development branches)
|
||||
# Development branches like staging-next, haskell-updates and python-updates get special labels.
|
||||
# This is to avoid the mass of labels there, which is mostly useless - and really annoying for
|
||||
|
||||
@@ -9,9 +9,9 @@
|
||||
},
|
||||
"branch": "nixpkgs-unstable",
|
||||
"submodules": false,
|
||||
"revision": "7525d999cd850b9a488817abc89c75dc733acf17",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/7525d999cd850b9a488817abc89c75dc733acf17.tar.gz",
|
||||
"hash": "sha256-4IHyyLgLBdKefkljdKod4IMn023pQiDXAWJA187cmdY="
|
||||
"revision": "421eebfd0ec7bccd4abe826ce62d7e6e83129493",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/421eebfd0ec7bccd4abe826ce62d7e6e83129493.tar.gz",
|
||||
"hash": "sha256:1lxfhfgiv1sz2v7fg43gny57sa6wf59n98q7ldsyb2p06f4sal7w"
|
||||
}
|
||||
},
|
||||
"version": 8
|
||||
|
||||
@@ -741,7 +741,7 @@ Notable attributes:
|
||||
|
||||
Compliance suite for [modular service](https://nixos.org/manual/nixos/unstable/#modular-services) integrations.
|
||||
|
||||
Tests that a service manager integration correctly handles the portable modular services contract: `process.argv`, `process.environment` (including `null` values that unset a variable), sub-services, assertions, and warnings.
|
||||
Tests that a service manager integration correctly handles the portable modular services contract: `process.argv`, sub-services, assertions, and warnings.
|
||||
|
||||
### Return value {#tester-modularServiceCompliance-return}
|
||||
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
+nixpkgs.url = "https://channels.nixos.org/nixos-26.05/nixexprs.tar.zst";
|
||||
```
|
||||
|
||||
- GCC has been updated from GCC 15 to GCC 16. This introduces some backwards-incompatible changes. Refer to the [upstream porting guide](https://gcc.gnu.org/gcc-16/porting_to.html) for details.
|
||||
|
||||
## Backward Incompatibilities {#sec-nixpkgs-release-26.11-incompatibilities}
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
@@ -70,26 +70,6 @@ in
|
||||
Command used for reloading in the underlying service manager to reload.
|
||||
'';
|
||||
};
|
||||
|
||||
environment = lib.mkOption {
|
||||
type = types.lazyAttrsOf (
|
||||
types.nullOr (types.coercedTo (types.either types.path types.package) (x: "${x}") types.str)
|
||||
);
|
||||
default = { };
|
||||
example = lib.literalExpression ''{ FOO = "bar"; PATH = null; }'';
|
||||
description = ''
|
||||
Environment variables passed verbatim to the service process by the
|
||||
service manager. Entries set to `null` actively unset the variable
|
||||
before the process starts -- backends without native unset support use
|
||||
a wrapper (e.g. `execline`'s `unexport`) so the variable is absent
|
||||
even when the service manager or a backend-specific override would
|
||||
otherwise supply it.
|
||||
|
||||
Values appear in the rendered unit and may be world-readable. For
|
||||
secrets, use a backend-specific mechanism such as
|
||||
`systemd.service.serviceConfig.EnvironmentFile`.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
notificationProtocol = mkOption {
|
||||
|
||||
@@ -48,10 +48,6 @@ let
|
||||
(dummyPkg "cowsay.sh")
|
||||
"world"
|
||||
];
|
||||
environment = {
|
||||
FOO = "bar";
|
||||
DROPPED = null;
|
||||
};
|
||||
};
|
||||
};
|
||||
service3 = {
|
||||
@@ -114,7 +110,6 @@ let
|
||||
"/usr/bin/echo"
|
||||
"hello"
|
||||
];
|
||||
environment = { };
|
||||
};
|
||||
services = { };
|
||||
assertions = [
|
||||
@@ -133,10 +128,6 @@ let
|
||||
"${dummyPkg "cowsay.sh"}"
|
||||
"world"
|
||||
];
|
||||
environment = {
|
||||
FOO = "bar";
|
||||
DROPPED = null;
|
||||
};
|
||||
};
|
||||
services = { };
|
||||
assertions = [ ];
|
||||
@@ -145,7 +136,6 @@ let
|
||||
service3 = {
|
||||
process = {
|
||||
argv = [ "/bin/false" ];
|
||||
environment = { };
|
||||
};
|
||||
services.exclacow = {
|
||||
process = {
|
||||
@@ -153,7 +143,6 @@ let
|
||||
"${dummyPkg "cowsay-ng"}/bin/cowsay"
|
||||
"!"
|
||||
];
|
||||
environment = { };
|
||||
};
|
||||
services = { };
|
||||
assertions = [
|
||||
|
||||
@@ -3423,6 +3423,13 @@
|
||||
githubId = 32903896;
|
||||
keys = [ { fingerprint = "CB5C 7B3C 3E6F 2A59 A583 A90A 8A60 0376 7BE9 5976"; } ];
|
||||
};
|
||||
benesim = {
|
||||
name = "Benjamin Isbarn";
|
||||
email = "benjamin.isbarn@gmail.com";
|
||||
github = "BeneSim";
|
||||
githubId = 29384538;
|
||||
keys = [ { fingerprint = "D35E C9CE E631 638F F1D8 B401 6F0E 410D C3EE D02"; } ];
|
||||
};
|
||||
bengsparks = {
|
||||
email = "benjamin.sparks@protonmail.com";
|
||||
github = "bengsparks";
|
||||
@@ -29692,13 +29699,6 @@
|
||||
githubId = 116078858;
|
||||
keys = [ { fingerprint = "CDEA 7E04 69E3 0885 A754 4B05 0104 BC05 F41B 77B8"; } ];
|
||||
};
|
||||
vherrmann = {
|
||||
name = "Valentin Herrmann";
|
||||
email = "me@valentin-herrmann.de";
|
||||
github = "vherrmann";
|
||||
githubId = 50072577;
|
||||
keys = [ { fingerprint = "309D A29B 4070 FDFD C01A 3AB4 9E60 CB44 5C4B BC4C"; } ];
|
||||
};
|
||||
videl = {
|
||||
email = "thibaut.smith@mailbox.org";
|
||||
github = "videl";
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash
|
||||
#!nix-shell -p jq git
|
||||
# shellcheck shell=bash
|
||||
#
|
||||
# Usage: eval-pkg-sets.sh [extra flags for nix-* commands ...]
|
||||
#
|
||||
# Must be executed in a git checkout of Nixpkgs.
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
NIXPKGS="$(git rev-parse --show-toplevel)"
|
||||
PKGSETS="$(nix-env --readonly-mode --json --drv-path -f "$NIXPKGS" -qaP -A haskell.compiler "$@" \
|
||||
| jq -r 'to_entries | unique_by(.value.drvPath) .[] .key | sub("^haskell.compiler";"haskell.packages")')"
|
||||
|
||||
trap 'exit 1' SIGINT SIGTERM
|
||||
|
||||
set +e
|
||||
|
||||
badsets=""
|
||||
for set in $PKGSETS; do
|
||||
# Confirm an equivalent package set to haskell.compiler.$entry exists and is usable
|
||||
if ! nix-instantiate --readonly-mode -A "$set.ghc" "$@" > /dev/null 2>&1; then
|
||||
echo "Skipping $set... ($set.ghc does not evaluate)"
|
||||
else
|
||||
echo "Evaluating $set..."
|
||||
|
||||
if ! nix-env --readonly-mode -f "$NIXPKGS" -qaP --drv-path -A "$set" "$@" > /dev/null; then
|
||||
badsets+="$set "
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$badsets" ]; then
|
||||
echo "Found potential eval issues in the following sets:" >&2
|
||||
# shellcheck disable=SC2086
|
||||
printf '%s\n' $badsets
|
||||
exit 1
|
||||
fi
|
||||
@@ -33,7 +33,7 @@ fi
|
||||
|
||||
# Stackage solver to use, LTS or Nightly
|
||||
# (should be capitalized like the display name)
|
||||
SOLVER=Nightly
|
||||
SOLVER=LTS
|
||||
# Stackage solver verson, if any. Use latest if empty
|
||||
VERSION=
|
||||
TMP_TEMPLATE=update-stackage.XXXXXXX
|
||||
@@ -105,7 +105,6 @@ sed -r \
|
||||
-e '/ hledger-ui /d' \
|
||||
-e '/ hledger-web /d' \
|
||||
-e '/ spacecookie /d' \
|
||||
-e '/ hnix-store-core /d' \
|
||||
< "${tmpfile_new}" >> $stackage_config
|
||||
# Explanations:
|
||||
# cabal2nix, distribution-nixpkgs, jailbreak-cabal, language-nix: These are our packages and we know what we are doing.
|
||||
|
||||
@@ -43,7 +43,7 @@ When reviewing a modular service, you should check the following. Details and ra
|
||||
### NixOS VM test
|
||||
|
||||
See the initial [Modular Services PR](https://github.com/NixOS/nixpkgs/pull/372170) for an [example](https://github.com/NixOS/nixpkgs/pull/372170/files#diff-e7fe16489cf3cd08ecc22b2c7896039d407a329b75691c046c95447423b3153f) of a NixOS VM test.
|
||||
Best practices: keep tests minimal and focused (boot a VM, enable the service, and assert a basic request succeeds). For general guidance, see the [NixOS Tests chapter](https://nixos.org/manual/nixos/unstable/#sec-nixos-tests).
|
||||
TBD: describe best practices here.
|
||||
|
||||
### `_class = "service"`
|
||||
|
||||
|
||||
@@ -152,16 +152,7 @@ let
|
||||
};
|
||||
|
||||
systemdServiceOptions = buildPackages.nixosOptionsDoc {
|
||||
inherit
|
||||
(evalModules {
|
||||
modules = [
|
||||
(modules.importApply ../../modules/system/service/systemd/service.nix {
|
||||
pkgs = throw "nixos docs / systemdServiceOptions: Do not reference pkgs in docs";
|
||||
})
|
||||
];
|
||||
})
|
||||
options
|
||||
;
|
||||
inherit (evalModules { modules = [ ../../modules/system/service/systemd/service.nix ]; }) options;
|
||||
# TODO: filter out options that are not systemd-specific, maybe also change option prefix to just `service-opt-`?
|
||||
inherit revision warningsAreErrors;
|
||||
transformOptions =
|
||||
|
||||
@@ -89,11 +89,6 @@ def main() -> None:
|
||||
type=Path,
|
||||
required=True,
|
||||
)
|
||||
arg_parser.add_argument(
|
||||
"--test-script",
|
||||
help="path to a test script to run, taking precedence over the one defined in the config file",
|
||||
type=Path,
|
||||
)
|
||||
arg_parser.add_argument(
|
||||
"--keep-vm-state",
|
||||
help=argparse.SUPPRESS,
|
||||
@@ -168,12 +163,8 @@ def main() -> None:
|
||||
if args.debug_hook_attach is not None:
|
||||
debugger = Debug(logger, args.debug_hook_attach)
|
||||
|
||||
config = load_driver_configuration(args.config)
|
||||
if args.test_script is not None:
|
||||
config.test_script = args.test_script
|
||||
|
||||
with Driver(
|
||||
config=config,
|
||||
config=load_driver_configuration(args.config),
|
||||
out_dir=output_directory,
|
||||
logger=logger,
|
||||
keep_machine_state=args.keep_machine_state,
|
||||
|
||||
@@ -15,13 +15,14 @@ in
|
||||
description = ''
|
||||
Enable ReGreet, a clean and customizable greeter for greetd.
|
||||
|
||||
By default enables {option}`services.greetd` and configures a
|
||||
{command}`default_session` to launch ReGreet using the
|
||||
{command}`cage` compositor.
|
||||
To use ReGreet, {option}`services.greetd` has to be enabled and
|
||||
{option}`services.greetd.settings.default_session` should contain the
|
||||
appropriate configuration to launch
|
||||
{option}`config.programs.regreet.package`. For examples, see the
|
||||
[ReGreet Readme](https://github.com/rharish101/ReGreet#set-as-default-session).
|
||||
|
||||
See the
|
||||
[ReGreet Readme](https://github.com/rharish101/ReGreet#set-as-default-session)
|
||||
for other examples.
|
||||
A minimal configuration that launches ReGreet in {command}`cage` is
|
||||
enabled by this module by default.
|
||||
'';
|
||||
};
|
||||
|
||||
@@ -47,8 +48,8 @@ in
|
||||
[ "-s" "-d" "-m" "last" ]
|
||||
'';
|
||||
description = ''
|
||||
Arguments to be passed to [cage](https://github.com/cage-kiosk/cage)
|
||||
when using it as the default compositor.
|
||||
Additional arguments to be passed to
|
||||
[cage](https://github.com/cage-kiosk/cage).
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
@@ -403,11 +403,6 @@ in
|
||||
as the underlying package isn't being maintained. Working alternatives are
|
||||
libinput and synaptics.
|
||||
'')
|
||||
(mkRemovedOptionModule [ "services" "xserver" "windowManager" "afterstep" ] ''
|
||||
The services.xserver.windowManager.afterstep module and the corresponding
|
||||
package have been removed from Nixpkgs because they were unmaintained
|
||||
upstream.
|
||||
'')
|
||||
(mkRemovedOptionModule [ "services" "xserver" "windowManager" "ragnarwm" ] ''
|
||||
The services.xserver.windowManager.ragnarwm module has been removed
|
||||
because the corresponding package was removed from nixpkgs.
|
||||
|
||||
@@ -1422,6 +1422,7 @@ let
|
||||
modulePath = config.security.pam.pam_unixModulePath;
|
||||
settings = {
|
||||
nullok = true;
|
||||
yescrypt = lib.mkIf config.security.pam.enableLegacySettings true;
|
||||
};
|
||||
}
|
||||
{
|
||||
|
||||
@@ -577,6 +577,7 @@ in
|
||||
control = "requisite";
|
||||
modulePath = config.security.pam.pam_unixModulePath;
|
||||
settings.nullok = true;
|
||||
settings.yescrypt = true;
|
||||
}
|
||||
];
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
utils,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
@@ -77,37 +76,9 @@ in
|
||||
services.greetd.settings.default_session.user = lib.mkDefault "greeter";
|
||||
|
||||
security.pam.services.greetd = {
|
||||
useDefaultRules = false;
|
||||
rules = {
|
||||
auth = utils.pam.autoOrderRules [
|
||||
{
|
||||
name = "login";
|
||||
control = "substack";
|
||||
modulePath = "login";
|
||||
}
|
||||
];
|
||||
account = utils.pam.autoOrderRules [
|
||||
{
|
||||
name = "login";
|
||||
control = "include";
|
||||
modulePath = "login";
|
||||
}
|
||||
];
|
||||
password = utils.pam.autoOrderRules [
|
||||
{
|
||||
name = "login";
|
||||
control = "substack";
|
||||
modulePath = "login";
|
||||
}
|
||||
];
|
||||
session = utils.pam.autoOrderRules [
|
||||
{
|
||||
name = "login";
|
||||
control = "include";
|
||||
modulePath = "login";
|
||||
}
|
||||
];
|
||||
};
|
||||
allowNullPassword = true;
|
||||
startSession = true;
|
||||
enableGnomeKeyring = lib.mkDefault config.services.gnome.gnome-keyring.enable;
|
||||
};
|
||||
|
||||
# This prevents nixos-rebuild from killing greetd by activating getty again
|
||||
|
||||
@@ -100,37 +100,9 @@ in
|
||||
|
||||
security.pam.services = {
|
||||
ly = {
|
||||
useDefaultRules = false;
|
||||
rules = {
|
||||
auth = utils.pam.autoOrderRules [
|
||||
{
|
||||
name = "login";
|
||||
control = "substack";
|
||||
modulePath = "login";
|
||||
}
|
||||
];
|
||||
account = utils.pam.autoOrderRules [
|
||||
{
|
||||
name = "login";
|
||||
control = "include";
|
||||
modulePath = "login";
|
||||
}
|
||||
];
|
||||
password = utils.pam.autoOrderRules [
|
||||
{
|
||||
name = "login";
|
||||
control = "substack";
|
||||
modulePath = "login";
|
||||
}
|
||||
];
|
||||
session = utils.pam.autoOrderRules [
|
||||
{
|
||||
name = "login";
|
||||
control = "include";
|
||||
modulePath = "login";
|
||||
}
|
||||
];
|
||||
};
|
||||
startSession = true;
|
||||
unixAuth = true;
|
||||
enableGnomeKeyring = lib.mkDefault config.services.gnome.gnome-keyring.enable;
|
||||
};
|
||||
}
|
||||
// optionalAttrs dmcfg.autoLogin.enable {
|
||||
|
||||
@@ -458,6 +458,7 @@ in
|
||||
control = "requisite";
|
||||
modulePath = config.security.pam.pam_unixModulePath;
|
||||
settings.nullok = true;
|
||||
settings.yescrypt = true;
|
||||
}
|
||||
];
|
||||
|
||||
|
||||
30
nixos/modules/services/x11/window-managers/afterstep.nix
Normal file
30
nixos/modules/services/x11/window-managers/afterstep.nix
Normal file
@@ -0,0 +1,30 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.xserver.windowManager.afterstep;
|
||||
in
|
||||
{
|
||||
###### interface
|
||||
options = {
|
||||
services.xserver.windowManager.afterstep.enable = mkEnableOption "afterstep";
|
||||
};
|
||||
|
||||
###### implementation
|
||||
config = mkIf cfg.enable {
|
||||
services.xserver.windowManager.session = singleton {
|
||||
name = "afterstep";
|
||||
start = ''
|
||||
${pkgs.afterstep}/bin/afterstep &
|
||||
waitPID=$!
|
||||
'';
|
||||
};
|
||||
environment.systemPackages = [ pkgs.afterstep ];
|
||||
};
|
||||
}
|
||||
@@ -8,6 +8,7 @@ in
|
||||
{
|
||||
imports = [
|
||||
./2bwm.nix
|
||||
./afterstep.nix
|
||||
./berry.nix
|
||||
./bspwm.nix
|
||||
./cwm.nix
|
||||
|
||||
@@ -30,9 +30,8 @@ let
|
||||
|
||||
dnsmasqResolve = config.services.dnsmasq.enable && config.services.dnsmasq.resolveLocalQueries;
|
||||
|
||||
transformSettings =
|
||||
settings:
|
||||
lib.mapAttrs (
|
||||
transformSettings = settings: {
|
||||
Resolve = lib.mapAttrs (
|
||||
key: value:
|
||||
# concat lists for options that should result in space-separated values
|
||||
if
|
||||
@@ -46,9 +45,10 @@ let
|
||||
concatStringsSep " " value
|
||||
else
|
||||
value
|
||||
) settings;
|
||||
) settings.Resolve;
|
||||
};
|
||||
|
||||
resolvedConf = settingsToSections { Resolve = transformSettings cfg.settings.Resolve; };
|
||||
resolvedConf = settingsToSections (transformSettings cfg.settings);
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
|
||||
@@ -1,9 +1,3 @@
|
||||
# Non-module arguments
|
||||
# These are separate from the module arguments to avoid implicit dependencies.
|
||||
# This makes service modules self-contained, allowing mixing of Nixpkgs versions.
|
||||
{ pkgs }:
|
||||
|
||||
# The module
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
@@ -98,11 +92,6 @@ in
|
||||
to prevent systemd substitution. Set this option explicitly to enable
|
||||
systemd's substitution features.
|
||||
|
||||
When {option}`process.environment` contains keys set to `null`, the default
|
||||
is automatically prefixed with `unexport KEY` invocations (from
|
||||
`pkgs.execline`) so those variables are unset before the process starts,
|
||||
regardless of what `Environment=` or inherited environment supplies.
|
||||
|
||||
To extend {option}`process.argv` with systemd specifiers, you can append
|
||||
to the escaped arguments:
|
||||
|
||||
@@ -120,19 +109,8 @@ in
|
||||
for available specifiers like `%n`, `%i`, `%t`.
|
||||
'';
|
||||
type = types.str;
|
||||
default =
|
||||
let
|
||||
nullEnvKeys = lib.attrNames (lib.filterAttrs (_: v: v == null) config.process.environment);
|
||||
in
|
||||
if nullEnvKeys == [ ] then
|
||||
config.systemd.lib.escapeSystemdExecArgs config.process.argv
|
||||
else
|
||||
lib.concatMapStringsSep " " (
|
||||
k: "${escapeSystemdExecArg "${pkgs.execline}/bin/unexport"} ${escapeSystemdExecArg k}"
|
||||
) nullEnvKeys
|
||||
+ " "
|
||||
+ config.systemd.lib.escapeSystemdExecArgs config.process.argv;
|
||||
defaultText = lib.literalMD "The escaped `process.argv`, prefixed with `\"unexport\" \"KEY\"` (from `pkgs.execline`) for each key in `process.environment` set to `null`.";
|
||||
default = config.systemd.lib.escapeSystemdExecArgs config.process.argv;
|
||||
defaultText = lib.literalExpression "config.systemd.lib.escapeSystemdExecArgs config.process.argv";
|
||||
};
|
||||
|
||||
systemd.mainExecReload = mkOption {
|
||||
@@ -209,7 +187,7 @@ in
|
||||
types.submoduleWith {
|
||||
class = "service";
|
||||
modules = [
|
||||
(lib.modules.importApply ./service.nix { inherit pkgs; })
|
||||
./service.nix
|
||||
];
|
||||
specialArgs = {
|
||||
inherit systemdPackage;
|
||||
@@ -229,9 +207,6 @@ in
|
||||
systemd.services."" = {
|
||||
# TODO description;
|
||||
wantedBy = lib.mkDefault [ "multi-user.target" ];
|
||||
environment = lib.mapAttrs (_: lib.mkDefault) (
|
||||
lib.filterAttrs (_: v: v != null) config.process.environment
|
||||
);
|
||||
serviceConfig = {
|
||||
ExecReload = config.systemd.mainExecReload;
|
||||
Type = lib.mkDefault (if config.notificationProtocol.systemd then "notify" else "simple");
|
||||
|
||||
@@ -63,7 +63,7 @@ let
|
||||
modularServiceConfiguration = portable-lib.configure {
|
||||
serviceManagerPkgs = pkgs;
|
||||
extraRootModules = [
|
||||
(lib.modules.importApply ./service.nix { inherit pkgs; })
|
||||
./service.nix
|
||||
./config-data-path.nix
|
||||
];
|
||||
extraRootSpecialArgs = {
|
||||
|
||||
@@ -76,40 +76,6 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
# Test that `process.environment` becomes `Environment=` entries on the unit,
|
||||
# that null values are dropped from `Environment=` and wrapped with unexport
|
||||
# in `ExecStart`.
|
||||
system.services.envvars = {
|
||||
process = {
|
||||
argv = [ hello' ];
|
||||
environment = {
|
||||
FOO = "bar";
|
||||
BAZ = "qux";
|
||||
DROPPED = null;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Test that an explicit `systemd.service.environment` override wins over
|
||||
# the portable default produced by `process.environment`.
|
||||
system.services.envvars-override = {
|
||||
process = {
|
||||
argv = [ hello' ];
|
||||
environment.FOO = "from-process";
|
||||
};
|
||||
systemd.service.environment.FOO = "from-systemd";
|
||||
};
|
||||
|
||||
# Test that `process.environment` `null` unsets via wrapper even when the
|
||||
# systemd layer sets the same key (true unset, not just "skip setting").
|
||||
system.services.envvars-unset = {
|
||||
process = {
|
||||
argv = [ hello' ];
|
||||
environment.FOO = null;
|
||||
};
|
||||
systemd.service.environment.FOO = "leaked";
|
||||
};
|
||||
|
||||
# Test extending process.argv with systemd specifiers
|
||||
system.services.argv-extended =
|
||||
{ config, ... }:
|
||||
@@ -171,22 +137,6 @@ runCommand "test-modular-service-systemd-units"
|
||||
# The base command should be escaped ($1 -> $$1, m%n -> m%%n), but the appended --systemd-unit %n should not be
|
||||
grep -F 'ExecStart="${hello}/bin/hello" "--greeting" "Fun $$1 fact, remainder is often expressed as m%%n" --systemd-unit %n' ${toplevel}/etc/systemd/system/argv-extended.service >/dev/null
|
||||
|
||||
# process.environment becomes Environment= entries; null values are dropped
|
||||
# from Environment= and wrapped with unexport in ExecStart.
|
||||
grep -F 'Environment="FOO=bar"' ${toplevel}/etc/systemd/system/envvars.service >/dev/null
|
||||
grep -F 'Environment="BAZ=qux"' ${toplevel}/etc/systemd/system/envvars.service >/dev/null
|
||||
! grep -F 'Environment=.*DROPPED' ${toplevel}/etc/systemd/system/envvars.service
|
||||
grep 'ExecStart=.*unexport.*DROPPED' ${toplevel}/etc/systemd/system/envvars.service >/dev/null
|
||||
|
||||
# systemd.service.environment override wins over process.environment.
|
||||
grep -F 'Environment="FOO=from-systemd"' ${toplevel}/etc/systemd/system/envvars-override.service >/dev/null
|
||||
! grep -F 'FOO=from-process' ${toplevel}/etc/systemd/system/envvars-override.service
|
||||
|
||||
# process.environment null uses unexport wrapper for true unset, even when
|
||||
# the systemd layer has an Environment= entry for the same key.
|
||||
grep -F 'Environment="FOO=leaked"' ${toplevel}/etc/systemd/system/envvars-unset.service >/dev/null
|
||||
grep 'ExecStart=.*unexport.*FOO' ${toplevel}/etc/systemd/system/envvars-unset.service >/dev/null
|
||||
|
||||
[[ ! -e ${toplevel}/etc/systemd/system/foo.socket ]]
|
||||
[[ ! -e ${toplevel}/etc/systemd/system/bar.socket ]]
|
||||
[[ ! -e ${toplevel}/etc/systemd/system/bar-db.socket ]]
|
||||
|
||||
@@ -153,7 +153,6 @@ in
|
||||
console-log = runTest ./nixos-test-driver/console-log.nix;
|
||||
containers = runTest ./nixos-test-driver/containers.nix;
|
||||
nspawn-daemon-reexec-dbus = runTest ./nspawn-daemon-reexec-dbus.nix;
|
||||
multi-arch-test = runTest ./nixos-test-driver/multi-arch-test.nix;
|
||||
skip-typecheck = runTest ./nixos-test-driver/skip-typecheck.nix;
|
||||
console-timeout = runTest ./nixos-test-driver/console-timeout.nix;
|
||||
options-doc-regression = import ./nixos-test-driver/options-doc-regression.nix { inherit pkgs; };
|
||||
|
||||
@@ -57,7 +57,6 @@
|
||||
with subtest("create user"):
|
||||
machine.succeed("useradd -m alice")
|
||||
machine.succeed("(echo foobar; echo foobar) | passwd alice")
|
||||
machine.succeed("grep -F 'alice:$y$' /etc/shadow")
|
||||
|
||||
with subtest("Check whether switching VTs works"):
|
||||
machine.fail("pgrep -f 'agetty.*tty2'")
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
with subtest("create user"):
|
||||
machine.succeed("useradd -m alice")
|
||||
machine.succeed("(echo foobar; echo foobar) | passwd alice")
|
||||
machine.succeed("grep -F 'alice:$y$' /etc/shadow")
|
||||
|
||||
with subtest("Check whether switching VTs works"):
|
||||
machine.fail("pgrep -f 'agetty.*tty2'")
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
name = "multi-arch-test";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ tfc ];
|
||||
|
||||
node.pkgsReadOnly = false;
|
||||
|
||||
nodes = {
|
||||
# Setting build = host platform because such standard VM setups
|
||||
# are well-cached by the multi-arch build infrastructure of the
|
||||
# project.
|
||||
vmIntel = {
|
||||
nixpkgs.buildPlatform = "x86_64-linux";
|
||||
nixpkgs.hostPlatform = "x86_64-linux";
|
||||
};
|
||||
vmArm = {
|
||||
nixpkgs.buildPlatform = "aarch64-linux";
|
||||
nixpkgs.hostPlatform = "aarch64-linux";
|
||||
};
|
||||
};
|
||||
|
||||
defaults = {
|
||||
# not needed for this test and shrinks the closure
|
||||
# because we dont' need qemu for all architectures
|
||||
virtualisation.qemu.guestAgent.enable = false;
|
||||
|
||||
# the test is already very slow but we don't need DHCP anyway
|
||||
networking.dhcpcd.enable = false;
|
||||
|
||||
# fix the network-online target, otherwise it doesn't work
|
||||
# properly as a synchronization mechanism.
|
||||
systemd.network.wait-online.enable = true;
|
||||
systemd.network.wait-online.anyInterface = true;
|
||||
};
|
||||
|
||||
# slow due to SW emulation but shouldn't be slower than that
|
||||
globalTimeout = 5 * 60;
|
||||
|
||||
testScript = { nodes, ... }: /* python */ ''
|
||||
start_all()
|
||||
|
||||
vmIntel.systemctl("start network-online.target")
|
||||
vmArm.systemctl("start network-online.target")
|
||||
vmIntel.wait_for_unit("network-online.target")
|
||||
vmArm.wait_for_unit("network-online.target")
|
||||
|
||||
vmIntel.succeed("ping -c 1 vmArm")
|
||||
vmArm.succeed("ping -c 1 vmIntel")
|
||||
|
||||
archIntel = vmIntel.succeed("uname -m")
|
||||
t.assertIn("${nodes.vmIntel.nixpkgs.hostPlatform.qemuArch}", archIntel, "machine1 is an intel VM")
|
||||
archArm = vmArm.succeed("uname -m")
|
||||
t.assertIn("${nodes.vmArm.nixpkgs.hostPlatform.qemuArch}", archArm, "machine1 is an ARM VM")
|
||||
'';
|
||||
}
|
||||
@@ -16,9 +16,9 @@ let
|
||||
inherit tiling_wm;
|
||||
};
|
||||
stableVersion = {
|
||||
version = "2026.1.2.11"; # "Android Studio Quail 2 | 2026.1.2 Patch 1"
|
||||
sha256Hash = "sha256-HMnNVPQA27DQeITw98DKtSTbXOCl73CyOu1v3TzURbk=";
|
||||
url = "https://edgedl.me.gvt1.com/android/studio/ide-zips/2026.1.2.11/android-studio-quail2-patch1-linux.tar.gz";
|
||||
version = "2026.1.2.10"; # "Android Studio Quail 2 | 2026.1.2"
|
||||
sha256Hash = "sha256-ZERaVAkucFbG638aia0RbQ/uwu9flluOWU1iq9tYWQ8=";
|
||||
url = "https://edgedl.me.gvt1.com/android/studio/ide-zips/2026.1.2.10/android-studio-quail2-linux.tar.gz";
|
||||
};
|
||||
betaVersion = {
|
||||
version = "2026.1.3.5"; # "Android Studio Quail 3 | 2026.1.3 RC 1"
|
||||
|
||||
@@ -12,46 +12,6 @@
|
||||
let
|
||||
zig = zig_0_15;
|
||||
|
||||
mkModule =
|
||||
{
|
||||
pname,
|
||||
version,
|
||||
src,
|
||||
zigDeps,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
inherit
|
||||
pname
|
||||
version
|
||||
src
|
||||
zigDeps
|
||||
;
|
||||
|
||||
nativeBuildInputs = [ zig ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ xcbuild ];
|
||||
|
||||
env.EMACS_INCLUDE_DIR = "${emacs}/include";
|
||||
|
||||
dontSetZigDefaultFlags = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
zigCheckFlags = [
|
||||
"-Dcpu=baseline"
|
||||
# See https://github.com/ghostty-org/ghostty/blob/main/PACKAGING.md#build-options
|
||||
"-Doptimize=ReleaseFast"
|
||||
];
|
||||
|
||||
zigBuildFlags = finalAttrs.zigCheckFlags;
|
||||
|
||||
postConfigure = ''
|
||||
cp -rLT ${finalAttrs.zigDeps} "$ZIG_GLOBAL_CACHE_DIR/p"
|
||||
chmod -R u+w "$ZIG_GLOBAL_CACHE_DIR/p"
|
||||
'';
|
||||
});
|
||||
|
||||
libExt = stdenv.hostPlatform.extensions.sharedLibrary;
|
||||
in
|
||||
melpaBuild (finalAttrs: {
|
||||
pname = "ghostel";
|
||||
|
||||
version = "0.44.0";
|
||||
@@ -59,37 +19,59 @@ melpaBuild (finalAttrs: {
|
||||
src = fetchFromGitHub {
|
||||
owner = "dakra";
|
||||
repo = "ghostel";
|
||||
tag = "v${finalAttrs.version}";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-vRGZoQtjsL42ga07fOfEjccKRidAhqgwHBoKs++62Ls=";
|
||||
};
|
||||
|
||||
# this can be put into mkModule, but we put it here to ease user overrideAttrs
|
||||
zigDeps = zig.fetchDeps {
|
||||
inherit (finalAttrs) src pname version;
|
||||
fetchAll = true;
|
||||
hash = "sha256-yrVgiofdmVjTGJ+PGPGRCc8gb/JcEca1uAzIoPgHHqU=";
|
||||
};
|
||||
module = stdenv.mkDerivation (finalAttrs: {
|
||||
inherit pname version src;
|
||||
|
||||
deps = zig.fetchDeps {
|
||||
inherit (finalAttrs) src pname version;
|
||||
fetchAll = true;
|
||||
hash = "sha256-yrVgiofdmVjTGJ+PGPGRCc8gb/JcEca1uAzIoPgHHqU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ zig ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ xcbuild ];
|
||||
|
||||
env.EMACS_INCLUDE_DIR = "${emacs}/include";
|
||||
|
||||
dontSetZigDefaultFlags = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
zigCheckFlags = [
|
||||
"-Dcpu=baseline"
|
||||
# See https://github.com/ghostty-org/ghostty/blob/main/PACKAGING.md#build-options
|
||||
"-Doptimize=ReleaseFast"
|
||||
];
|
||||
|
||||
zigBuildFlags = finalAttrs.zigCheckFlags;
|
||||
|
||||
postConfigure = ''
|
||||
cp -rLT ${finalAttrs.deps} "$ZIG_GLOBAL_CACHE_DIR/p"
|
||||
chmod -R u+w "$ZIG_GLOBAL_CACHE_DIR/p"
|
||||
'';
|
||||
});
|
||||
|
||||
libExt = stdenv.hostPlatform.extensions.sharedLibrary;
|
||||
in
|
||||
melpaBuild {
|
||||
inherit pname version src;
|
||||
|
||||
files = ''
|
||||
(:defaults "etc" "ghostel-module${libExt}" "ghostel-module.version")
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
install ${finalAttrs.finalPackage.module}/ghostel-module${libExt} ghostel-module${libExt}
|
||||
install --mode=444 ${finalAttrs.finalPackage.module}/ghostel-module.version ghostel-module.version
|
||||
install ${module}/ghostel-module${libExt} ghostel-module${libExt}
|
||||
install --mode=444 ${module}/ghostel-module.version ghostel-module.version
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
|
||||
module = mkModule {
|
||||
pname = "${finalAttrs.pname}-module";
|
||||
inherit (finalAttrs)
|
||||
version
|
||||
src
|
||||
zigDeps
|
||||
;
|
||||
};
|
||||
inherit module;
|
||||
};
|
||||
|
||||
meta = {
|
||||
@@ -101,4 +83,4 @@ melpaBuild (finalAttrs: {
|
||||
];
|
||||
license = lib.licenses.gpl3Plus;
|
||||
};
|
||||
})
|
||||
}
|
||||
|
||||
@@ -107,10 +107,10 @@ in
|
||||
{
|
||||
emacs31 = import ./make-emacs.nix (mkArgs {
|
||||
pname = "emacs";
|
||||
version = "31.0.91";
|
||||
version = "31.0.90";
|
||||
variant = "mainline";
|
||||
rev = "emacs-31.0.91";
|
||||
hash = "sha256-3nvCiLiEtII1C57CLfDIbVqhiwadYViF9Nv32yDtLIQ=";
|
||||
rev = "emacs-31.0.90";
|
||||
hash = "sha256-Rzlnn+NKQ+jICXLNop27RnVInq79myn4hueJieDO2Ck=";
|
||||
});
|
||||
|
||||
emacs30 = import ./make-emacs.nix (mkArgs {
|
||||
|
||||
@@ -7,8 +7,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "vscode-eslint";
|
||||
publisher = "dbaeumer";
|
||||
version = "3.0.34";
|
||||
hash = "sha256-ynCPFzne4YS4WNjQSmGky+e2IaE3SLxj6FkjKyLPcAs=";
|
||||
version = "3.0.24";
|
||||
hash = "sha256-ZQVzpSSLf3tpO4QtLjbCOje3L5/EqzT9A9IOssl6e54=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
}:
|
||||
mkLibretroCore {
|
||||
core = "opera";
|
||||
version = "0-unstable-2026-07-23";
|
||||
version = "0-unstable-2026-07-13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libretro";
|
||||
repo = "opera-libretro";
|
||||
rev = "74dd2a8c6319678ffce9f31bdf36279db5681762";
|
||||
hash = "sha256-NHXOfKItLkQJ0/jH1gLBpLFqOKBB8qgH5gMw7j1YoLw=";
|
||||
rev = "1edda8a2a6c6b9ae259d5c7cd7d54dcba9ee7e32";
|
||||
hash = "sha256-dc7xRjFxfSL2q9u1N0QH2j+oPbRGng2Z3U3J484lXiU=";
|
||||
};
|
||||
|
||||
makefile = "Makefile";
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
}:
|
||||
mkLibretroCore {
|
||||
core = "prboom";
|
||||
version = "0-unstable-2026-07-21";
|
||||
version = "0-unstable-2026-07-07";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libretro";
|
||||
repo = "libretro-prboom";
|
||||
rev = "c5b09532fa633e015ac75c0a2acfec049f65ded3";
|
||||
hash = "sha256-13oL/U3uwNejqTIbKmITRbK8Eddg9YH5CMDIDXA6zKs=";
|
||||
rev = "31563d6e65faa6b9b7e975754d2062370bba4342";
|
||||
hash = "sha256-eFRzbVTL5ARf650D0ZAEFGNTxjAy1CjBiAhwSQR8vJ4=";
|
||||
};
|
||||
|
||||
makefile = "Makefile";
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
}:
|
||||
mkLibretroCore {
|
||||
core = "snes9x2005" + lib.optionalString withBlarggAPU "-plus";
|
||||
version = "0-unstable-2026-07-22";
|
||||
version = "0-unstable-2026-04-20";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libretro";
|
||||
repo = "snes9x2005";
|
||||
rev = "deb49d80d1836e3e737480a326e31a54c46c04ae";
|
||||
hash = "sha256-UMW+YTzcSZ5CWSyRBYc8y1cDh/CU3Am11rkjSXlyxZA=";
|
||||
rev = "b60356971fc9caae02cd0853676dced886a08be7";
|
||||
hash = "sha256-6IuEFyJEoCHluSAXbk5qRTXku1XJCZ6p04BhdjqZqJQ=";
|
||||
};
|
||||
|
||||
makefile = "Makefile";
|
||||
|
||||
@@ -837,7 +837,7 @@
|
||||
}
|
||||
},
|
||||
"ungoogled-chromium": {
|
||||
"version": "150.0.7871.186",
|
||||
"version": "150.0.7871.181",
|
||||
"deps": {
|
||||
"depot_tools": {
|
||||
"rev": "f4fadaf6a5ba1bced9d3d9021060667b563bf583",
|
||||
@@ -849,16 +849,16 @@
|
||||
"hash": "sha256-/1A+DkzAQj2zGPe/A/G0Z3VrYJXUxq4Hd/+d/o5p3G8="
|
||||
},
|
||||
"ungoogled-patches": {
|
||||
"rev": "150.0.7871.186-1",
|
||||
"hash": "sha256-kL9xE/w0W4Wf+z9qX5EFLGMYWQ3Hvyzhy7PtF59a/Sk="
|
||||
"rev": "150.0.7871.181-1",
|
||||
"hash": "sha256-ifqEnOcvi49cFOYan8ShiwteXYnFrLPclrIBZiE1rGY="
|
||||
},
|
||||
"npmHash": "sha256-pF0JtwFpPC4/fodbhSJnQKkczA9WlDg4VqEAy9aDVLg="
|
||||
},
|
||||
"DEPS": {
|
||||
"src": {
|
||||
"url": "https://chromium.googlesource.com/chromium/src.git",
|
||||
"rev": "0fcdce5f4fdec8d442d7df760cb541f1ca6e446d",
|
||||
"hash": "sha256-6coAYewN8RC5kx0PmmiV6mXQhLqWF3BZP320PmOcPvw=",
|
||||
"rev": "24b04c927b23c39cf9c5227cc8dc6f64a744c8e9",
|
||||
"hash": "sha256-F52wmxyNPEV26v8YgAz+MRhyEGyV7YUX+/wj95H4Lf0=",
|
||||
"recompress": true
|
||||
},
|
||||
"src/third_party/clang-format/script": {
|
||||
|
||||
@@ -45,11 +45,11 @@
|
||||
"vendorHash": "sha256-031RZo1EqWrt79NvdrrZ9FW/E+mfwkGmr7wyMYX4SHg="
|
||||
},
|
||||
"aliyun_alicloud": {
|
||||
"hash": "sha256-es2ti8tSgShwUWYtZ7OEff88LLiAnK4B/Hq9PaNEEOc=",
|
||||
"hash": "sha256-G52l+5WlcxSNflx0ioD0jEKI1GBWe5D4qW8VH8k6uTA=",
|
||||
"homepage": "https://registry.terraform.io/providers/aliyun/alicloud",
|
||||
"owner": "aliyun",
|
||||
"repo": "terraform-provider-alicloud",
|
||||
"rev": "v1.286.0",
|
||||
"rev": "v1.285.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-sZeXHTrMUUPllPzvpbFjwA5FjFJXnO1k5h9B5i8U+vs="
|
||||
},
|
||||
@@ -445,13 +445,13 @@
|
||||
"vendorHash": "sha256-FcxAh8EOvnT8r1GHu0Oj2C5Jgbr2WPwD7/vY4/qIvTA="
|
||||
},
|
||||
"gitlabhq_gitlab": {
|
||||
"hash": "sha256-eTtmEW3sdCkpojxshhdQq+8qNTYjzin5TmCGil/3F5E=",
|
||||
"hash": "sha256-BMOFi/g0W6xo/Kfqw8oqsMeeU3aXyWAKSgF9lIS4AbA=",
|
||||
"homepage": "https://registry.terraform.io/providers/gitlabhq/gitlab",
|
||||
"owner": "gitlabhq",
|
||||
"repo": "terraform-provider-gitlab",
|
||||
"rev": "v19.2.1",
|
||||
"rev": "v19.1.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-uEXZEYlQZ24h4IffJQEmqqrmHbiRSKVGJ1OCv4k1zVQ="
|
||||
"vendorHash": "sha256-9aoJGVTC9t76auYy8K3QSWGzSAq9aTxemKNc3aCLjRY="
|
||||
},
|
||||
"go-gandi_gandi": {
|
||||
"hash": "sha256-fsCtmwyxkXfOtiZG27VEb010jglK35yr4EynnUWlFog=",
|
||||
@@ -905,13 +905,13 @@
|
||||
"vendorHash": "sha256-t4dbDJNjEQ6/u+/6zqk2Sdd3LVn/L2BCJujpiLdGc58="
|
||||
},
|
||||
"metio_migadu": {
|
||||
"hash": "sha256-qeN2Zlx4qSrjb7qxjDf4v3uG1GR/faTiCNKD/HZkoyw=",
|
||||
"hash": "sha256-Aef1H/L2EFeU9mhecOnlPAbJbt3XfBL0Wz67IqxCI10=",
|
||||
"homepage": "https://registry.terraform.io/providers/metio/migadu",
|
||||
"owner": "metio",
|
||||
"repo": "terraform-provider-migadu",
|
||||
"rev": "2026.7.23",
|
||||
"rev": "2026.7.2",
|
||||
"spdx": "0BSD",
|
||||
"vendorHash": "sha256-rwIHdtVVWygfxadoJigGBIUV0xoQ6vqDsHJgjYQ2RBM="
|
||||
"vendorHash": "sha256-wUX2smEhKUftBCRi7ANq8NpHXpB+EmlVshrhI2ltY2I="
|
||||
},
|
||||
"mongey_kafka": {
|
||||
"hash": "sha256-rTa6c7jAMH027V7h/yUGVGz6TS0PDdObilxU0Vpr6FI=",
|
||||
|
||||
@@ -78,8 +78,8 @@ rec {
|
||||
thunderbird = thunderbird-latest;
|
||||
|
||||
thunderbird-latest = common {
|
||||
version = "153.0";
|
||||
sha512 = "f77bde3dd0933dd35870a889386c41d55ff0cbe276ec3373b27e9885f7db7e35529e7ecc2fc149ae4f8c5ae53eddb3ad444e7499a850a59a82b8940c7a4c7747";
|
||||
version = "152.0.1";
|
||||
sha512 = "f66c87de4dd73c3c45e420a55d76c3cb6ac091a61794ccf58ba59d1a40cf8001dee19a6a7f4c6bef7d36ea94ed4e4f677449d3006b2004abbd3fab42ad1c9228";
|
||||
|
||||
updateScript = callPackage ./update.nix {
|
||||
attrPath = "thunderbirdPackages.thunderbird-latest";
|
||||
@@ -89,19 +89,6 @@ rec {
|
||||
# Eventually, switch to an updateScript without versionPrefix hardcoded...
|
||||
thunderbird-esr = thunderbird-140;
|
||||
|
||||
thunderbird-153 = common {
|
||||
applicationName = "Thunderbird ESR";
|
||||
|
||||
version = "153.0.1esr";
|
||||
sha512 = "3773b49b69341aea108a627faa0dd5b7cfb52cdb4c37e625fbb8cbaef7f9166f925ecbc199173302d5bef7994e6bff3b56cd56a3a4c38a9d702cc3e5aeafcf7c";
|
||||
|
||||
updateScript = callPackage ./update.nix {
|
||||
attrPath = "thunderbirdPackages.thunderbird-153";
|
||||
versionPrefix = "153";
|
||||
versionSuffix = "esr";
|
||||
};
|
||||
};
|
||||
|
||||
thunderbird-140 = common {
|
||||
applicationName = "Thunderbird ESR";
|
||||
|
||||
|
||||
@@ -12,13 +12,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "droidcam-obs";
|
||||
version = "2.5.1";
|
||||
version = "2.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dev47apps";
|
||||
repo = "droidcam-obs-plugin";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-T7CQrjQK5OV1bgqa2il9snsK7nScuVhV06NuX2SoIeI=";
|
||||
hash = "sha256-JPAQoGZFzTIdBQ7GpCPaYUVPkkcBdCRFkVPU+nyRa7Q=";
|
||||
};
|
||||
|
||||
preBuild = ''
|
||||
|
||||
@@ -122,8 +122,7 @@ in
|
||||
|
||||
stdenvNoCC.mkDerivation (
|
||||
{
|
||||
name =
|
||||
if (attrs ? pname && attrs ? version) then "${attrs.pname}-${attrs.version}" else baseNameOf src;
|
||||
name = baseNameOf src;
|
||||
}
|
||||
// optionalAttrs
|
||||
// forcedAttrs
|
||||
|
||||
@@ -29,10 +29,6 @@ let
|
||||
services = {
|
||||
svc = {
|
||||
process.argv = [ "${coreutils}/bin/true" ];
|
||||
process.environment = {
|
||||
FOO = "bar";
|
||||
DROPPED = null;
|
||||
};
|
||||
assertions = [
|
||||
{
|
||||
assertion = true;
|
||||
@@ -74,19 +70,6 @@ let
|
||||
expected = [ "${coreutils}/bin/true" ];
|
||||
};
|
||||
|
||||
# A set environment variable round-trips through process.environment.
|
||||
testProcessEnvironment = {
|
||||
expr = c.process.environment.FOO;
|
||||
expected = "bar";
|
||||
};
|
||||
|
||||
# A null environment variable is preserved as null (unset request),
|
||||
# rather than coerced to a string or dropped from the attrset.
|
||||
testProcessEnvironmentNull = {
|
||||
expr = c.process.environment.DROPPED;
|
||||
expected = null;
|
||||
};
|
||||
|
||||
testAssertions = {
|
||||
expr = lib.elem {
|
||||
assertion = true;
|
||||
@@ -203,9 +186,6 @@ let
|
||||
mkdir -p "$dir"
|
||||
echo "$$" > "$dir/pid"
|
||||
printf '%s\n' "$@" > "$dir/args"
|
||||
# Record the process's own environment as received from the service
|
||||
# manager (NUL-delimited, as the kernel stores it).
|
||||
"${coreutils}/bin/cat" "/proc/$$/environ" > "$dir/environ"
|
||||
exec "${coreutils}/bin/sleep" infinity
|
||||
'';
|
||||
|
||||
@@ -258,31 +238,6 @@ let
|
||||
|| { echo "${id}: expected arg ${lib.escapeShellArg arg} not found"; cat "${sharedDir}/${id}/args"; exit 1; }
|
||||
'') expectedArgs;
|
||||
|
||||
/**
|
||||
Shell snippet: assert that the service's recorded environment contains
|
||||
each `present` entry (an exact `KEY=value` string) and contains no
|
||||
variable named in `absent`.
|
||||
*/
|
||||
checkEnv =
|
||||
id:
|
||||
{
|
||||
present ? [ ],
|
||||
absent ? [ ],
|
||||
}:
|
||||
''
|
||||
# The recorded environ is NUL-delimited; render one entry per line.
|
||||
tr '\0' '\n' < "${sharedDir}/${id}/environ" > "${sharedDir}/${id}/environ.lines"
|
||||
''
|
||||
+ lib.concatMapStrings (entry: ''
|
||||
grep -qxF -- ${lib.escapeShellArg entry} "${sharedDir}/${id}/environ.lines" \
|
||||
|| { echo "${id}: expected env ${lib.escapeShellArg entry} not found"; cat "${sharedDir}/${id}/environ.lines"; exit 1; }
|
||||
'') present
|
||||
+ lib.concatMapStrings (key: ''
|
||||
if grep -qE ${lib.escapeShellArg "^${key}="} "${sharedDir}/${id}/environ.lines"; then
|
||||
echo "${id}: env variable ${lib.escapeShellArg key} should be unset"; exit 1
|
||||
fi
|
||||
'') absent;
|
||||
|
||||
mkTestScript =
|
||||
name: text:
|
||||
lib.getExe (writeShellApplication {
|
||||
@@ -375,24 +330,6 @@ in
|
||||
);
|
||||
};
|
||||
|
||||
environment = mkTest {
|
||||
name = "${namePrefix}-environment";
|
||||
services.test = {
|
||||
process.argv = mkArgv "env" [ ];
|
||||
process.environment = {
|
||||
FOO = "bar";
|
||||
DROPPED = null;
|
||||
};
|
||||
};
|
||||
testExe = mkTestScript "environment" (
|
||||
waitAndCheck "env" [ ]
|
||||
+ checkEnv "env" {
|
||||
present = [ "FOO=bar" ];
|
||||
absent = [ "DROPPED" ];
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
sub-services = mkTest {
|
||||
name = "${namePrefix}-sub-services";
|
||||
services.a = {
|
||||
|
||||
81
pkgs/by-name/af/afterstep/fix-build-with-c23.patch
Normal file
81
pkgs/by-name/af/afterstep/fix-build-with-c23.patch
Normal file
@@ -0,0 +1,81 @@
|
||||
From 081d9c3284075c65b70837079bd67621c3b64da7 Mon Sep 17 00:00:00 2001
|
||||
From: Moraxyc <i@qaq.li>
|
||||
Date: Sun, 28 Dec 2025 00:39:49 +0800
|
||||
Subject: [PATCH] fix build with c23
|
||||
|
||||
---
|
||||
libAfterBase/fs.c | 2 +-
|
||||
src/ASDocGen/ASDocGen.c | 2 +-
|
||||
src/Ident/Ident.c | 2 +-
|
||||
src/afterstep/dirtree.c | 2 +-
|
||||
src/afterstep/menus.h | 2 +-
|
||||
5 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/libAfterBase/fs.c b/libAfterBase/fs.c
|
||||
index 731bfd3..954bfd6 100644
|
||||
--- a/libAfterBase/fs.c
|
||||
+++ b/libAfterBase/fs.c
|
||||
@@ -818,7 +818,7 @@ my_scandir (char *dirname, struct direntry *(*namelist[]),
|
||||
}
|
||||
/* Optionally sort the list */
|
||||
if (dcomp)
|
||||
- qsort (*namelist, n, sizeof (struct direntry *), (int (*)())dcomp);
|
||||
+ qsort (*namelist, n, sizeof (struct direntry *), (int (*)(const void *, const void *))dcomp);
|
||||
|
||||
/* Return the count of the entries */
|
||||
return n;
|
||||
diff --git a/src/ASDocGen/ASDocGen.c b/src/ASDocGen/ASDocGen.c
|
||||
index 31d7a70..9a86219 100644
|
||||
--- a/src/ASDocGen/ASDocGen.c
|
||||
+++ b/src/ASDocGen/ASDocGen.c
|
||||
@@ -667,7 +667,7 @@ write_options_keywords(const char *source_dir, const char *syntax_dir, SyntaxDef
|
||||
sorted_list = safecalloc( max_i, sizeof(TermDef*));
|
||||
for (i = 0; i < max_i; i++)
|
||||
sorted_list[i] = &(syntax->terms[i]) ;
|
||||
- qsort(sorted_list, max_i, sizeof(TermDef*), (int (*)())sort_terms_by_alpha );
|
||||
+ qsort(sorted_list, max_i, sizeof(TermDef*), (int (*)(const void *, const void *))sort_terms_by_alpha );
|
||||
for (i = 0; i < max_i; i++)
|
||||
{
|
||||
SyntaxDef *sub_syntax = sorted_list[i]->sub_syntax ;
|
||||
diff --git a/src/Ident/Ident.c b/src/Ident/Ident.c
|
||||
index 1497d06..d6ddad6 100644
|
||||
--- a/src/Ident/Ident.c
|
||||
+++ b/src/Ident/Ident.c
|
||||
@@ -89,7 +89,7 @@ void HandleEvents();
|
||||
void DispatchEvent (ASEvent * event);
|
||||
void process_message (send_data_type type, send_data_type *body);
|
||||
|
||||
-Window make_ident_window();
|
||||
+Window make_ident_window(int width, int height);
|
||||
void fill_window_data();
|
||||
void display_window_data();
|
||||
void add_property( const char *name, const char *value, unsigned long value_encoding, Bool span_cols );
|
||||
diff --git a/src/afterstep/dirtree.c b/src/afterstep/dirtree.c
|
||||
index 46ce782..48f7e30 100644
|
||||
--- a/src/afterstep/dirtree.c
|
||||
+++ b/src/afterstep/dirtree.c
|
||||
@@ -675,7 +675,7 @@ void dirtree_sort (dirtree_t * tree)
|
||||
list = (dirtree_t **) safemalloc (n * sizeof (dirtree_t *));
|
||||
for (n = 0, t = tree->child; t != NULL; t = t->next, n++)
|
||||
list[n] = t;
|
||||
- qsort (list, n, sizeof (dirtree_t *), (int (*)())dirtree_compar);
|
||||
+ qsort (list, n, sizeof (dirtree_t *), (int (*)(const void *, const void *))dirtree_compar);
|
||||
tree->child = list[0];
|
||||
for (i = 1; i < n; i++)
|
||||
list[i - 1]->next = list[i];
|
||||
diff --git a/src/afterstep/menus.h b/src/afterstep/menus.h
|
||||
index 98b2ad3..bb2a5b1 100644
|
||||
--- a/src/afterstep/menus.h
|
||||
+++ b/src/afterstep/menus.h
|
||||
@@ -95,7 +95,7 @@ MenuData* FindPopup( const char* name, int quiet );
|
||||
|
||||
void DeleteMenuItem( MenuDataItem* item );
|
||||
|
||||
-MenuData *CreateMenuData();
|
||||
+MenuData *CreateMenuData(char *name);
|
||||
MenuData *NewMenuData (char *name);
|
||||
void DeleteMenuData (MenuData * menu);
|
||||
|
||||
--
|
||||
2.51.2
|
||||
|
||||
101
pkgs/by-name/af/afterstep/package.nix
Normal file
101
pkgs/by-name/af/afterstep/package.nix
Normal file
@@ -0,0 +1,101 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
dbus,
|
||||
fltk_1_3,
|
||||
gtk2,
|
||||
libice,
|
||||
libsm,
|
||||
libtiff,
|
||||
pkg-config,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "afterstep";
|
||||
version = "2.2.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "afterstep";
|
||||
repo = "afterstep";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-j1ADTRZ3Mxv9VNZWhWCFMnM/CJfkphdrgbw9Ca3bBw0=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
url = "https://salsa.debian.org/debian/afterstep/raw/master/debian/patches/44-Fix-build-with-gcc-5.patch";
|
||||
hash = "sha256-RNLB6PuFVA1PsYt2VwLyLyvY2OO3oIl1xk+0/6nwN+4=";
|
||||
})
|
||||
|
||||
# Fix pending upstream inclusion for binutils-2.36 support:
|
||||
# https://github.com/afterstep/afterstep/pull/7
|
||||
(fetchpatch {
|
||||
name = "binutils-2.36.patch";
|
||||
url = "https://github.com/afterstep/afterstep/commit/5e9e897cf8c455390dd6f5b27fec49707f6b9088.patch";
|
||||
hash = "sha256-aGMTyojzXEHGjO9lMT6dwLl01Fd333BUuCIX0FU9ac4=";
|
||||
})
|
||||
|
||||
# fix build with c23
|
||||
# fs.c:821:66: error: passing argument 4 of 'qsort' from incompatible pointer type [-Wincompatible-pointer-types]
|
||||
# Ident.c:326:1: error: conflicting types for 'make_ident_window'; have 'Window(int, int)' {aka 'long unsigned int(int, int)'}
|
||||
# menuitem.c:85:11: error: conflicting types for 'CreateMenuData'; have 'MenuData *(char *)'
|
||||
./fix-build-with-c23.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Causes fatal ldconfig cache generation attempt on non-NixOS Linux
|
||||
for mkfile in autoconf/Makefile.common.lib.in libAfter{Base,Image}/Makefile.in; do
|
||||
substituteInPlace $mkfile \
|
||||
--replace-fail 'test -w /etc' 'false'
|
||||
done
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dbus
|
||||
fltk_1_3
|
||||
gtk2
|
||||
libice
|
||||
libsm
|
||||
libtiff
|
||||
];
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"man"
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
preConfigure = ''
|
||||
# A strange type of bug: dbus is not immediately found by pkg-config
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config dbus-1 --cflags)"
|
||||
'';
|
||||
|
||||
# Parallel build fails due to missing dependencies between private libraries:
|
||||
# ld: cannot find ../libAfterConf/libAfterConf.a: No such file or directory
|
||||
# Let's disable parallel builds until it's fixed upstream:
|
||||
# https://github.com/afterstep/afterstep/issues/8
|
||||
enableParallelBuilding = false;
|
||||
|
||||
meta = {
|
||||
homepage = "http://www.afterstep.org/";
|
||||
description = "NEXTStep-inspired window manager";
|
||||
longDescription = ''
|
||||
AfterStep is a window manager for the Unix X Window System. Originally
|
||||
based on the look and feel of the NeXTStep interface, it provides end
|
||||
users with a consistent, clean, and elegant desktop. The goal of AfterStep
|
||||
development is to provide for flexibility of desktop configuration,
|
||||
improving aestetics, and efficient use of system resources.
|
||||
'';
|
||||
license = lib.licenses.gpl2Plus;
|
||||
maintainers = [ ];
|
||||
mainProgram = "afterstep";
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
})
|
||||
@@ -9,14 +9,12 @@
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "airspyhf";
|
||||
version = "1.8.1";
|
||||
version = "1.6.8-unstable-2025-07-12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "airspy";
|
||||
repo = "airspyhf";
|
||||
# Not clear why upstream won't tag releases. See:
|
||||
# https://github.com/airspy/airspyhf/commit/c0bb66dd8976651c53884ccec3d70a108f1e50e1#r193607536
|
||||
rev = "c0bb66dd8976651c53884ccec3d70a108f1e50e1";
|
||||
rev = "87cf12a30f3a0f10f313aab8e54999ca69b753af";
|
||||
hash = "sha256-7bXBv4YTOaWRFI6Svb9/lSBEAssUgJMqxKM5zHk1swM=";
|
||||
};
|
||||
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "all-the-package-names";
|
||||
version = "2.0.2511";
|
||||
version = "2.0.2503";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nice-registry";
|
||||
repo = "all-the-package-names";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-KnEvFnPXQZ+XhNyweWIE0mjM4vqcqXcJKuus/dFq5f0=";
|
||||
hash = "sha256-UtwbQXhX8dmmA6dVuVFcMQkM98kOt/U//OAVMGBImDU=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-Xw/SXRpQkPd+EcemeHO89tC9amDiVV/RD/1H0H8rax0=";
|
||||
npmDepsHash = "sha256-V7MWSEJT2RtYE1iYJHj2ltrfzke+GO1PfT/wo+MqlZk=";
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
|
||||
@@ -15,21 +15,21 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "anubis";
|
||||
version = "1.26.0";
|
||||
version = "1.25.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "TecharoHQ";
|
||||
repo = "anubis";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-0ceF4Te0H5edBhvGJgGc/NLJxEAcDVGnnKlqHKnpW60=";
|
||||
hash = "sha256-9/XIwSMEmnS3L/Wzg6ABso7R6W3TYkJomC8aFMycxZo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-+NPwL4p0p/s74m1Ld0z2GEcsWk5FqhcLbHrTNP3yEzk=";
|
||||
vendorHash = "sha256-9CMD8Rn4q8b+hyrph+BqqS32ijZyJRNsop6ML7z5Zuk=";
|
||||
|
||||
npmDeps = fetchNpmDeps {
|
||||
name = "anubis-npm-deps";
|
||||
inherit (finalAttrs) src;
|
||||
hash = "sha256-6sj9C8GHm+RzFl/X5HIPhIDl5l8muBzDSXSRCHumGBs=";
|
||||
hash = "sha256-2U91Dt+ymspjYgTtgCjahCNr6fIs85TT/k+I8M2aC9s=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -75,8 +75,6 @@ buildGoModule (finalAttrs: {
|
||||
export DONT_USE_NETWORK=1
|
||||
'';
|
||||
|
||||
__darwinAllowLocalNetworking = true;
|
||||
|
||||
passthru = {
|
||||
tests = { inherit (nixosTests) anubis; };
|
||||
updateScript = nix-update-script { extraArgs = [ "--version-regex=^v(\\d+\\.\\d+\\.\\d+)$" ]; };
|
||||
|
||||
@@ -10,16 +10,16 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "assh";
|
||||
version = "2.17.3";
|
||||
version = "2.17.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "assh";
|
||||
owner = "moul";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-CH6QM/dy5fKo7Tq2ekrc06iqjJDZl8JHMG7jalho7BI=";
|
||||
hash = "sha256-/w4RluA7py6d75S04czNsgHpmR5rmAUZx8OnZfu9oNg=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ENCJNgMLTZDlKL0DIt48F1G8TYo2blPdsFH6v8dNC8w=";
|
||||
vendorHash = "sha256-EA39KqAN9SHPU362j6/j6okvT+eZb2R4unMA0bB+bVg=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -42,6 +42,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "ASSIMP_BUILD_ASSIMP_TOOLS" true)
|
||||
(lib.cmakeBool "ASSIMP_BUILD_TESTS" finalAttrs.finalPackage.doCheck)
|
||||
(lib.cmakeBool "ASSIMP_WARNINGS_AS_ERRORS" false)
|
||||
];
|
||||
|
||||
# Some matrix tests fail on non-86_64-linux:
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "autoprefixer";
|
||||
version = "10.5.4";
|
||||
version = "10.5.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "postcss";
|
||||
repo = "autoprefixer";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-616VFB6qJiNfsDsaxR4Y+xoqKDrBOtKgWfGMeiaDeGQ=";
|
||||
hash = "sha256-hjckcgWojItp2gseQI18zzxizjw/HxQPiTb/JegSCcs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
inherit (finalAttrs) pname version src;
|
||||
pnpm = pnpm_10;
|
||||
fetcherVersion = 4;
|
||||
hash = "sha256-+EPzrG2vt2FRIwcJqwwiYPevQFCNAbX7kgFlY+vLbqE=";
|
||||
hash = "sha256-diOgX9lXKOwCx9V737mmmtrhqDg5beXJH/PjlJHFpto=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
}:
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "aztfexport";
|
||||
version = "0.20.0";
|
||||
version = "0.19.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Azure";
|
||||
repo = "aztfexport";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-wHI/osu2Jq85zCgh1HfOTuO81mYtQJcSbvlDnXd7Duc=";
|
||||
hash = "sha256-97lahgEsth2YUeqTe8J58brykpFV0lG6KwB7FJgODAE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-QDpoOlu1qGNK0ennplusXBgeQWZP3EH7aSStllP8uzw=";
|
||||
vendorHash = "sha256-4u40PdRT3E+BZ8bIrnIgRnJkpws6EPK5DRyXu9oY7hc=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "azurehound";
|
||||
version = "3.0.0";
|
||||
version = "2.12.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "SpecterOps";
|
||||
repo = "AzureHound";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-4uc4XSjvuMUSeCsJl9uHBFIaeG1KZ1xDaACXnXkp7v0=";
|
||||
hash = "sha256-w8PmSt+QvU0HELkgdYLfIUgK3R5vCYzlPbMyrHztiPw=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-WF46wXaNU/Em0KpF6hkuuJ+7K1IKLGqpNS/HxpxX5WY=";
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
diff --git a/apps/desktop/src/key-management/biometrics/native-v2/os-biometrics-linux.service.ts b/apps/desktop/src/key-management/biometrics/native-v2/os-biometrics-linux.service.ts
|
||||
index 110db23ec79..dfaf600bcdf 100644
|
||||
--- a/apps/desktop/src/key-management/biometrics/native-v2/os-biometrics-linux.service.ts
|
||||
+++ b/apps/desktop/src/key-management/biometrics/native-v2/os-biometrics-linux.service.ts
|
||||
@@ -83,7 +83,7 @@ export default class OsBiometricsServiceLinux implements OsBiometricService {
|
||||
diff --git a/apps/desktop/src/key-management/biometrics/os-biometrics-linux.service.ts b/apps/desktop/src/key-management/biometrics/os-biometrics-linux.service.ts
|
||||
index 791b4d6f88..dfee0bbf8d 100644
|
||||
--- a/apps/desktop/src/key-management/biometrics/os-biometrics-linux.service.ts
|
||||
+++ b/apps/desktop/src/key-management/biometrics/os-biometrics-linux.service.ts
|
||||
@@ -115,7 +115,7 @@ export default class OsBiometricsServiceLinux implements OsBiometricService {
|
||||
// The user needs to manually set up the polkit policy outside of the sandbox
|
||||
// since we allow access to polkit via dbus for the sandboxed clients, the authentication works from
|
||||
// the sandbox, once the policy is set up outside of the sandbox.
|
||||
@@ -10,4 +10,4 @@ index 110db23ec79..dfaf600bcdf 100644
|
||||
+ return false;
|
||||
}
|
||||
|
||||
async runSetup(): Promise<void> {
|
||||
async osBiometricsSetup(): Promise<void> {
|
||||
|
||||
@@ -5,14 +5,14 @@
|
||||
copyDesktopItems,
|
||||
dart-sass,
|
||||
darwin,
|
||||
electron_41,
|
||||
electron_39,
|
||||
fetchFromGitHub,
|
||||
gnome-keyring,
|
||||
jq,
|
||||
makeDesktopItem,
|
||||
makeWrapper,
|
||||
nix-update-script,
|
||||
nodejs_24,
|
||||
nodejs_22,
|
||||
pkg-config,
|
||||
rustc,
|
||||
rustPlatform,
|
||||
@@ -22,17 +22,17 @@
|
||||
|
||||
let
|
||||
icon = "bitwarden";
|
||||
electron = electron_41;
|
||||
electron = electron_39;
|
||||
in
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "bitwarden-desktop";
|
||||
version = "2026.7.0";
|
||||
version = "2026.6.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bitwarden";
|
||||
repo = "clients";
|
||||
tag = "desktop-v${finalAttrs.version}";
|
||||
hash = "sha256-E4glf4G70BuT0GYu1kEb5Z9B76ElIlDPe1rdGSdmCzo=";
|
||||
hash = "sha256-ee+C58Y5pZWEmqbRO/w7rdY+e6gy4EL7Sn0S1AxGMXI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -64,7 +64,7 @@ buildNpmPackage (finalAttrs: {
|
||||
rm -r apps/cli
|
||||
'';
|
||||
|
||||
nodejs = nodejs_24;
|
||||
nodejs = nodejs_22;
|
||||
|
||||
makeCacheWritable = true;
|
||||
npmFlags = [
|
||||
@@ -74,7 +74,7 @@ buildNpmPackage (finalAttrs: {
|
||||
|
||||
npmWorkspace = "apps/desktop";
|
||||
npmDepsFetcherVersion = 3;
|
||||
npmDepsHash = "sha256-8wjt5wnJG4S4EeGWGxbo6Bwt76GIqrSiwqwwwQ17Y5Y=";
|
||||
npmDepsHash = "sha256-C5GLei/WWetd4qLv7obBJWbQR9LBy+Sqdbjko3/W7VY=";
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoVendor {
|
||||
inherit (finalAttrs)
|
||||
@@ -84,7 +84,7 @@ buildNpmPackage (finalAttrs: {
|
||||
cargoRoot
|
||||
patches
|
||||
;
|
||||
hash = "sha256-PLfR+yS+MtscRRuyLaK/qIWJVDoefhOobev1fpNeHNo=";
|
||||
hash = "sha256-xyK3+z2yfCG9K5XAB6LNEeyqMRknONi6ZfY/3oko7Z8=";
|
||||
};
|
||||
cargoRoot = "apps/desktop/desktop_native";
|
||||
|
||||
@@ -197,7 +197,7 @@ buildNpmPackage (finalAttrs: {
|
||||
# Extract the polkit policy file from the multiline string in the source code.
|
||||
# This may break in the future but its better than copy-pasting it manually.
|
||||
mkdir -p $out/share/polkit-1/actions/
|
||||
pushd apps/desktop/src/key-management/biometrics/native-v2
|
||||
pushd apps/desktop/src/key-management/biometrics
|
||||
awk '/const polkitPolicy = `/{gsub(/^.*`/, ""); print; str=1; next} str{if (/`;/) str=0; gsub(/`;/, ""); print}' os-biometrics-linux.service.ts > $out/share/polkit-1/actions/com.bitwarden.Bitwarden.policy
|
||||
popd
|
||||
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "bobgen";
|
||||
version = "0.49.0";
|
||||
version = "0.48.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "stephenafamo";
|
||||
repo = "bob";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-5uwYw5CraOBUG55MIWa9I6GGIdJz/K+OXHIjOrjFuTQ=";
|
||||
hash = "sha256-iD9GPYBt1s6xx4vNRlArERmv5AyBR6Q4mLLDNDWy1qY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-fQmhAuxl23jRGJ4ysKh9QiiA8dtZlM37dE9aBXrYwao=";
|
||||
vendorHash = "sha256-tL6f8XkAsBL76idEVxlAAcdYyzo9Rh9fEHy6ysfZWG8=";
|
||||
|
||||
subPackages = [
|
||||
"gen/bobgen-sql"
|
||||
|
||||
@@ -21,11 +21,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "btrfs-progs";
|
||||
version = "7.1";
|
||||
version = "7.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-0fVcwpcTmMkULqp50gPmPVhqO0uGf5VmZKHWgyLNTjQ=";
|
||||
hash = "sha256-wobWh2y81yMnoLQX5M/SgDU+wj43tUn9vNeACoMtmpk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -15,20 +15,20 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "bumpp";
|
||||
version = "12.0.0";
|
||||
version = "11.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "antfu-collective";
|
||||
repo = "bumpp";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-9o3eUZ4cCusvV+IwQbLqbEI4NhTKkcwgqv4Mqe/VxZ4=";
|
||||
hash = "sha256-LzFusuzFpbqh/gNV0c0vhoKE17CzTPJUppdpdKaGOFs=";
|
||||
};
|
||||
|
||||
pnpmDeps = fetchPnpmDeps {
|
||||
inherit (finalAttrs) pname version src;
|
||||
inherit pnpm;
|
||||
fetcherVersion = 3;
|
||||
hash = "sha256-Em3HvH5nCiyxgaPQvenqAnOraYnvQNxLVdHQd1lz3+o=";
|
||||
hash = "sha256-KYTz/SO4rV+c57G8dv4ExCZrunA0xvgCNk8Td4HbCig=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -9,16 +9,16 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "cargo-feature-combinations";
|
||||
version = "0.4.1";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "romnn";
|
||||
repo = "cargo-feature-combinations";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-0aPe0YmEpLHt3aZHDuNlov/TiRbLLpR7TLt0ULkjsVU=";
|
||||
hash = "sha256-PneHMWX7IRoX4oSm8iePeI+pEPs8n3F2PW06ZWKDFcc=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-r09otRStFli5Bx0pfDOMu1LGDonDyCVGPEdY/KnjkmY=";
|
||||
cargoHash = "sha256-DCfO2N6ml1a1P2hFs3gxRE9k+WYv8eqMzwL+cionwYE=";
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
|
||||
@@ -16,14 +16,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "cargo-update";
|
||||
version = "22.1.0";
|
||||
version = "22.0.0";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit (finalAttrs) pname version;
|
||||
hash = "sha256-0iXO+cmW1vfKc9sPTnw132fZlqTMfInVCIgT8NLrhwM=";
|
||||
hash = "sha256-7SjJ+v+6PzwV8dTXxSVxKrj4/yUlyGVJtt0A+WaWNc8=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-6yE4zdGosZhXhT3Q3mh/1h33OXqXrAWhZ0b18qaI1vs=";
|
||||
cargoHash = "sha256-xRjPnZPewo/5pCDUem8+9Ko0XJ1p5HJtLLmErtZQb8w=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
libxml2,
|
||||
libxklavier,
|
||||
libxtst,
|
||||
gtk2,
|
||||
intltool,
|
||||
libxslt,
|
||||
at-spi2-core,
|
||||
@@ -81,6 +82,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pythonEnv
|
||||
python3.pkgs.pygobject3
|
||||
libxtst
|
||||
gtk2
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
@@ -88,8 +90,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
libxklavier
|
||||
];
|
||||
|
||||
configureFlags = [ "--enable-gtk2-module=no" ];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs .
|
||||
substituteInPlace libcaribou/Makefile.am --replace "--shared-library=libcaribou.so.0" "--shared-library=$out/lib/libcaribou.so.0"
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "cdncheck";
|
||||
version = "1.2.45";
|
||||
version = "1.2.44";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "projectdiscovery";
|
||||
repo = "cdncheck";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-TR7ogxaJ9Vee6bpqWKu75Yf8KWo8bPTBKwIecGkN68I=";
|
||||
hash = "sha256-8Lte+arj2nqEU8WmaX4bf/WOJV6bdMLskm0BqSyBOuE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-iJ1agL7sZ3ZKbW1wMA+qi8FgHdPa6gZLQ5BBPKJTNaQ=";
|
||||
|
||||
@@ -19,14 +19,14 @@
|
||||
|
||||
python3Packages.buildPythonApplication (finalAttrs: {
|
||||
pname = "cine";
|
||||
version = "1.7.4";
|
||||
version = "1.7.0";
|
||||
pyproject = false;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "diegopvlk";
|
||||
repo = "Cine";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-D25/wz9nsxi9Y1D8hnb3S1kNfdUfPM4ojyLovDkUEI4=";
|
||||
hash = "sha256-WBzdBZ7WL6HAd26tJtTaw39jAtdNYNiNmYHhVr+JBtM=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -75,13 +75,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "cinnamon";
|
||||
version = "6.6.9";
|
||||
version = "6.6.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linuxmint";
|
||||
repo = "cinnamon";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-RQsgfPvdt1xe7HhZamynAvATVlBeLLElatjpN1Tgt2M=";
|
||||
hash = "sha256-ByPn2VV40y+3/FW/KPIsLt43FhVxQAQldCK26KNKdjw=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -93,6 +93,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
url = "https://github.com/linuxmint/cinnamon/commit/3a2d558aa575f0ea364c5b4e30d2eb3ee604ee58.patch";
|
||||
hash = "sha256-+uAGuQJ0VsIvMvPFafyoXmU4MiHfbbRXLzeW/n62ucw=";
|
||||
})
|
||||
|
||||
# cinnamon-calendar-server.py: Allow ICal 4.0
|
||||
(fetchpatch {
|
||||
url = "https://github.com/linuxmint/cinnamon/commit/dcf2d986c1ec167b0a8005ef2ca427317438c8d7.patch";
|
||||
hash = "sha256-4sCZShUOXPaJoumiuEG558e0l8CIehH0P+C9OouG3vI=";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -11,15 +11,15 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "clouddrive2";
|
||||
version = "1.0.12";
|
||||
version = "1.0.11";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/cloud-fs/cloud-fs.github.io/releases/download/v${finalAttrs.version}/clouddrive-2-${os}-${arch}-${finalAttrs.version}.tgz";
|
||||
hash =
|
||||
{
|
||||
x86_64-linux = "sha256-Z1xAFMXlajdAAZGY7R7UJrOSLPzyMLXC6wbJnrOXtsc=";
|
||||
aarch64-linux = "sha256-rgRBFCbH3QS/6Db2urDItj825QDFakknAvoIOWv9r0o=";
|
||||
aarch64-darwin = "sha256-9E9xp4f6mFe+otFaAbetjk5agAH9IXLPkuRa669+AgY=";
|
||||
x86_64-linux = "sha256-X5WAnHyXdAkWrN/AbkDE0eNH4mwdPcZ0Cs5Q21KB6/w=";
|
||||
aarch64-linux = "sha256-somHyDBG94pGQB+IZd404H1tX0X2qC8LeIcXeihU6yA=";
|
||||
aarch64-darwin = "sha256-GaL2bCwQdtI3bq2wkwza1OEHFvhppdZpUIq3QRQ0vN8=";
|
||||
}
|
||||
.${stdenv.hostPlatform.system} or (throw "unsupported system ${stdenv.hostPlatform.system}");
|
||||
};
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
}:
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "copilot-language-server";
|
||||
version = "1.526.0";
|
||||
version = "1.521.0";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/github/copilot-language-server-release/releases/download/${finalAttrs.version}/copilot-language-server-js-${finalAttrs.version}.zip";
|
||||
hash = "sha256-T1DYN/mVqISYtNGD1KBitXPgEIcrKQMqxquC7CywDo4=";
|
||||
hash = "sha256-uHt22/756jxh34HhIbMEu3nGebbTF1325ylWuKzZzEI=";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
|
||||
@@ -11,16 +11,16 @@
|
||||
|
||||
buildGo126Module (finalAttrs: {
|
||||
pname = "crush";
|
||||
version = "0.86.0";
|
||||
version = "0.81.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "charmbracelet";
|
||||
repo = "crush";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-dUeXU65A9/d365a9Z+eUoHOR0RnJV9SAYsks+Vtz9js=";
|
||||
hash = "sha256-FOvkCQxDW1dipzIzgQz2uvHIv6bm/TVV1WwhrvmBDWg=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-9WkkosPMwXsj32a5Zj4ZxphuB7aVteKq/YTzxP9Xmf0=";
|
||||
vendorHash = "sha256-4gHvyEqiFhEvZ90lJbXeI/1fMMo6L19P/PD5Eu5YUmI=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -8,17 +8,17 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "datafusion-cli";
|
||||
version = "54.1.0";
|
||||
version = "54.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
name = "datafusion-cli-source";
|
||||
owner = "apache";
|
||||
repo = "datafusion";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-zeR6eyU4Cc5gHiE331ap8wuyYEj7s7BgqB+oOKwMfZw=";
|
||||
hash = "sha256-BWpHiLCn7idvzI2rlsre8l23TbxQU1Ma6bCjAMxQ6m8=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-XXR1Turs+QwONZHq38MZHbcjv5DYZH9iqeuBl20gy3U=";
|
||||
cargoHash = "sha256-Sj/biBiJPIYwxpL+Fua0k47vOu6gyyAhcKb4ZSUli6k=";
|
||||
|
||||
buildAndTestSubdir = "datafusion-cli";
|
||||
|
||||
|
||||
@@ -15,16 +15,16 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "dcp";
|
||||
version = "0.25.9";
|
||||
version = "0.25.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "microsoft";
|
||||
repo = "dcp";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-MjBnJRdlGF2efEH0TcJjM3JVEByRzeqAZ13sR9EL0Ik=";
|
||||
hash = "sha256-umcrTAPWAInbjdZYhY0xEbI7heGwr+8FGMI7BIWSdD0=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-eJAMl1vGX2JANdYe8SWWLsNImd3raEEYvSfvwwfV4Xk=";
|
||||
vendorHash = "sha256-hcuVUUr3kr3iBmSEhHy365LIWGGLFTYnBRa5jnt7kPw=";
|
||||
|
||||
# This is required so we:
|
||||
# - Delete an inconsistent vendor directory from upstream
|
||||
|
||||
@@ -2,51 +2,36 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
|
||||
# nativeBuildInputs
|
||||
autoreconfHook,
|
||||
intltool,
|
||||
pkg-config,
|
||||
rustPlatform,
|
||||
cargo,
|
||||
rustc,
|
||||
|
||||
# buildInputs
|
||||
libxml2,
|
||||
pciutils,
|
||||
gtk3,
|
||||
pkg-config,
|
||||
gtk2,
|
||||
ddccontrol-db,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ddccontrol";
|
||||
version = "3.2.0";
|
||||
version = "1.0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ddccontrol";
|
||||
repo = "ddccontrol";
|
||||
tag = finalAttrs.version;
|
||||
sha256 = "sha256-8VqnmWLXt6rXapAqvzvtDQ9XjQ7H6s7pLqPhQ6Zflc4=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoVendor {
|
||||
inherit (finalAttrs) pname version src;
|
||||
hash = "sha256-UN308Tt9LCRLBSswem06UupjdIFntt6SqpTxteY5O78=";
|
||||
sha256 = "sha256-qyD6i44yH3EufIW+LA/LBMW20Tejb49zvsDfv6YFD6c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
intltool
|
||||
pkg-config
|
||||
rustPlatform.cargoSetupHook
|
||||
cargo
|
||||
rustc
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libxml2
|
||||
pciutils
|
||||
gtk3
|
||||
gtk2
|
||||
ddccontrol-db
|
||||
];
|
||||
|
||||
@@ -55,14 +40,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
];
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace configure.ac \
|
||||
--replace-fail \
|
||||
"\$""{datadir}/ddccontrol-db" \
|
||||
substituteInPlace configure.ac \
|
||||
--replace \
|
||||
"\$""{datadir}/ddccontrol-db" \
|
||||
"${ddccontrol-db}/share/ddccontrol-db"
|
||||
substituteInPlace src/lib/Makefile.am \
|
||||
--replace-fail \
|
||||
'DDCONTROL_DATADIR="$(datadir)/ddccontrol-db"' \
|
||||
'DDCONTROL_DATADIR="${ddccontrol-db}/share/ddccontrol-db"'
|
||||
|
||||
substituteInPlace src/ddcpci/Makefile.am \
|
||||
--replace "chmod 4711" "chmod 0711"
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
@@ -72,7 +56,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
meta = {
|
||||
description = "Program used to control monitor parameters by software";
|
||||
homepage = "https://github.com/ddccontrol/ddccontrol";
|
||||
mainProgram = "ddccontrol";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
"aarch64-darwin": {
|
||||
"version": "3.5.17",
|
||||
"version": "3.4.27",
|
||||
"vscodeVersion": "1.110.1",
|
||||
"url": "https://windsurf-stable.codeiumdata.com/darwin-arm64/stable/2c489dfc762456657db8662309c0d5e76e886397/Devin-darwin-arm64-3.5.17.zip",
|
||||
"sha256": "bca8cc6154f99f5153cd5b508899d8db64be795a96856a14f1d052b7d8091edd"
|
||||
"url": "https://windsurf-stable.codeiumdata.com/darwin-arm64/stable/0d4bf12ed4a7597cb8ae9016fe8474468aad98a2/Devin-darwin-arm64-3.4.27.zip",
|
||||
"sha256": "c42b0671c246ef295807e822809cb82dfe65831d4879d68f25334f754babec8d"
|
||||
},
|
||||
"x86_64-linux": {
|
||||
"version": "3.5.17",
|
||||
"version": "3.4.27",
|
||||
"vscodeVersion": "1.110.1",
|
||||
"url": "https://windsurf-stable.codeiumdata.com/linux-x64/stable/2c489dfc762456657db8662309c0d5e76e886397/Devin-linux-x64-3.5.17.tar.gz",
|
||||
"sha256": "e7ce36c4baacc617a4d89b0e2fb4403f83b328fefd897aec1be5e31038be4e91"
|
||||
"url": "https://windsurf-stable.codeiumdata.com/linux-x64/stable/0d4bf12ed4a7597cb8ae9016fe8474468aad98a2/Devin-linux-x64-3.4.27.tar.gz",
|
||||
"sha256": "80850124b31331f63c24a201d1317bdacdfb438fb2bcc9b31c9b7a6391391619"
|
||||
}
|
||||
}
|
||||
|
||||
34
pkgs/by-name/de/devmem2/package.nix
Normal file
34
pkgs/by-name/de/devmem2/package.nix
Normal file
@@ -0,0 +1,34 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "devmem2";
|
||||
version = "unstable-2004-08-05";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"http://lartmaker.nl/lartware/port/devmem2.c"
|
||||
"https://raw.githubusercontent.com/hackndev/tools/7ed212230f8fbb1da3424a15ee88de3279bf96ec/devmem2.c"
|
||||
];
|
||||
sha256 = "14f1k7v6i1yaxg4xcaaf5i4aqn0yabba857zjnbg9wiymy82qf7c";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "format" ]; # fix compile error
|
||||
|
||||
buildCommand = ''
|
||||
$CC "$src" -o devmem2
|
||||
install -D devmem2 "$out/bin/devmem2"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Simple program to read/write from/to any location in memory";
|
||||
mainProgram = "devmem2";
|
||||
homepage = "http://lartmaker.nl/lartware/port/";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ bjornfor ];
|
||||
};
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
From 2373861a858fb6ee7d50870ae66a59f05c6cd4bd Mon Sep 17 00:00:00 2001
|
||||
From: Nadzeya Hutsko <nadzeya@ubuntu.com>
|
||||
Date: Wed, 22 Jul 2026 20:46:52 +0200
|
||||
Subject: [PATCH] Fix build with Poppler >= 26.06
|
||||
|
||||
poppler 26.06 changed the Page box accessors to return a const reference
|
||||
instead of a pointer. Take the address of the result, guarded by a
|
||||
version check so older poppler still builds
|
||||
---
|
||||
plug-ins/pdf/pdf-import.cpp | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/plug-ins/pdf/pdf-import.cpp b/plug-ins/pdf/pdf-import.cpp
|
||||
index 3af268646..35fc6d9e3 100644
|
||||
--- a/plug-ins/pdf/pdf-import.cpp
|
||||
+++ b/plug-ins/pdf/pdf-import.cpp
|
||||
@@ -93,8 +93,13 @@ public :
|
||||
(Annot *annot, void *user_data) G_GNUC_UNUSED,
|
||||
void *annotDisplayDecideCbkData G_GNUC_UNUSED)
|
||||
{
|
||||
+#if POPPLER_VERSION_MAJOR > 26 || (POPPLER_VERSION_MAJOR == 26 && POPPLER_VERSION_MINOR >= 6)
|
||||
+ const PDFRectangle *mediaBox = &page->getMediaBox();
|
||||
+ const PDFRectangle *clipBox = &page->getCropBox ();
|
||||
+#else
|
||||
const PDFRectangle *mediaBox = page->getMediaBox();
|
||||
const PDFRectangle *clipBox = page->getCropBox ();
|
||||
+#endif
|
||||
|
||||
if (page->isOk()) {
|
||||
real w1 = (clipBox->x2 - clipBox->x1);
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -50,21 +50,16 @@ let
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "dia";
|
||||
version = "0.97.2-unstable-2026-07-24";
|
||||
version = "unstable-2025-10-26";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "GNOME";
|
||||
repo = "dia";
|
||||
rev = "ad68cc378b7a187706bc2648c48b44d16fb80819";
|
||||
hash = "sha256-ejjSc9GGXD5GsbeRps1T20xifJuzWA1yq/G7jk797Cw=";
|
||||
rev = "efdf829e8afdbbeb371820932769e35415ebe886";
|
||||
hash = "sha256-VFFU5iJnVJdZ2tkNszZ2ooBD+GiCL6MqanzpEWIJerk=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://gitlab.gnome.org/GNOME/dia/-/merge_requests/146
|
||||
./fix-build-with-poppler-26-06.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Fix build with poppler 25.10.0
|
||||
substituteInPlace plug-ins/pdf/pdf-import.cpp \
|
||||
|
||||
@@ -10,21 +10,20 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "diffnav";
|
||||
version = "0.12.0";
|
||||
version = "0.11.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dlvhdr";
|
||||
repo = "diffnav";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-DrEbo9YYg4FCXQXuIkbPxO5Z3ZOPZJYeGoLoP/vT0Y0=";
|
||||
hash = "sha256-6VtAQzZNLQrf8QYVXxLUgb3F6xguFDbwaE9kahPhbSE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-2OzHyBPsylQVXhPlqk2owEhiibFi3H1UENvGGDdzGss=";
|
||||
vendorHash = "sha256-gmmckzR0D1oFuTG5TAb6gLMoNbcZl9EsjbFjhPfJqnQ=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
"-X github.com/dlvhdr/diffnav/pkg/version.Version=${finalAttrs.version}"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -61,13 +61,13 @@ in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "easyeffects";
|
||||
version = "8.2.8";
|
||||
version = "8.2.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wwmm";
|
||||
repo = "easyeffects";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-gkUJxEmFfUAKUnr+Gs65y9l0bdNXXd0f8ql0keM2bVs=";
|
||||
hash = "sha256-YYwVoqCRVAZVu8vCTN3ZSicy1Fzw3l+hQbooGAE/AEI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -8,18 +8,18 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "filebeat";
|
||||
version = "8.19.19";
|
||||
version = "8.19.17";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "elastic";
|
||||
repo = "beats";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-3hvP+4U3PWlOsaLHO1MZuIpcB6YzPv2dMPlC68esiHE=";
|
||||
hash = "sha256-Xpth1SoXMXCUh/DFf3wA+Ql6SedtUB7tCYzDElpX5Lc=";
|
||||
};
|
||||
|
||||
proxyVendor = true; # darwin/linux hash mismatch
|
||||
|
||||
vendorHash = "sha256-e++Y5mhwms/uJnZCUyZNifoYqGH4TGEugSFHSGl0AQE=";
|
||||
vendorHash = "sha256-Wxk+eI0XfBpQqqUNuskyr+/bTRqT38hszdkz/LJweQo=";
|
||||
|
||||
subPackages = [ "filebeat" ];
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
fetchurl,
|
||||
glib,
|
||||
libxml2,
|
||||
pcre,
|
||||
zlib,
|
||||
libjpeg,
|
||||
giflib,
|
||||
@@ -52,6 +53,7 @@ stdenv.mkDerivation {
|
||||
++ [
|
||||
glib
|
||||
libxml2
|
||||
pcre
|
||||
zlib
|
||||
libjpeg
|
||||
giflib
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "forecast";
|
||||
version = "0-unstable-2026-07-17";
|
||||
version = "0-unstable-2026-07-12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cosmic-utils";
|
||||
repo = "forecast";
|
||||
rev = "22a7de05c4bdaa4a4fa33f51091eb681d021f90e";
|
||||
hash = "sha256-z0WYytAEZ1PaO5yyh+iDbJOSPZmnKV503HUZTpQPUXw=";
|
||||
rev = "0de1b7502979eb3704445c98ce8dbb7969e109da";
|
||||
hash = "sha256-9IZDDIhZY+YC0SOie5z0Ed5UAvBcf+soZ0RRz8sr71w=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-F5AlYm9bzJJUrDiY712dbwpCR3lzvQNFKXHzIDG+TVQ=";
|
||||
|
||||
@@ -38,13 +38,13 @@ let
|
||||
in
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "gale";
|
||||
version = "1.19.0";
|
||||
version = "1.13.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Kesomannen";
|
||||
repo = "gale";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-VufV/Z1XODQKwbEpMrw0xNMdMl8D1t3bPIfdwRhQI9I=";
|
||||
hash = "sha256-ZCHknOp6ll9q6OBW/5/mNcu0d0zZj1rkCjPiumjMVzk=";
|
||||
};
|
||||
|
||||
pnpmDeps = fetchPnpmDeps {
|
||||
@@ -56,7 +56,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
;
|
||||
pnpm = pnpm_10;
|
||||
fetcherVersion = 3;
|
||||
hash = "sha256-/IR+34cdnCt9WpYdMaT92YIC/2JjEe/mZdeQewdWTek=";
|
||||
hash = "sha256-bCGiYVmoWjpwneTQUwetna7u29BMIv48qWgZ2gd93hQ=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@@ -70,11 +70,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
cargoRoot = "src-tauri";
|
||||
buildAndTestSubdir = finalAttrs.cargoRoot;
|
||||
|
||||
cargoHash = "sha256-4WSWvMQIYPzfxjDyuQI37ymxJhMVGxmxYDVSoknIzmg=";
|
||||
|
||||
checkFlags = [
|
||||
"--skip=config::bepinex::tests::check_from_string" # Fails a left == right check, even with left and right data being identical
|
||||
];
|
||||
cargoHash = "sha256-kAPTiGHWO/eBapPcH8xItOFeZYC0URzLYdl2GMQ50Ls=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
jq
|
||||
|
||||
@@ -18,16 +18,16 @@ let
|
||||
in
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "gitoxide";
|
||||
version = "0.56.0";
|
||||
version = "0.55.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "GitoxideLabs";
|
||||
repo = "gitoxide";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-2zNXe+niwH8oDZEx6It7APggOtL7vrnRGKO4OoteTIw=";
|
||||
hash = "sha256-UtdXlIvX82UUhc4RWZZTBV5kz4YqfOTd4D/pGhDUfSI=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-u9O4y6W0TuwdedNaQ127Bz4d3Olw9RzV/+AzxAstJQE=";
|
||||
cargoHash = "sha256-Kv0NKA3OdHBn2M8DmcGyjcN2acGJYOdbczOb/nRsvDs=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
||||
@@ -71,18 +71,22 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
checkPhase =
|
||||
let
|
||||
excludedTests =
|
||||
lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
"mock-log"
|
||||
]
|
||||
++ [
|
||||
"logging" # works around segfaults for now
|
||||
]
|
||||
++ lib.optionals (stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isBigEndian) [
|
||||
# CHECK_STREQ failed: symbol == "non_inline_func" ((/build/source/build/symbolize_unittest+0x1000b840) vs. non_inline_func)
|
||||
# TestWithPCInsideNonInlineFunction doesn't use TEST(), so can't exclude via GTEST_FILTER
|
||||
"symbolize"
|
||||
];
|
||||
excludedTests = [
|
||||
"logging" # works around segfaults for now
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isGnu [
|
||||
# Test appears to make strong assumptions about compiler optimizations
|
||||
# that appear to be broken under GCC 16.
|
||||
"stacktrace"
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
"mock-log"
|
||||
]
|
||||
++ lib.optionals (stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isBigEndian) [
|
||||
# CHECK_STREQ failed: symbol == "non_inline_func" ((/build/source/build/symbolize_unittest+0x1000b840) vs. non_inline_func)
|
||||
# TestWithPCInsideNonInlineFunction doesn't use TEST(), so can't exclude via GTEST_FILTER
|
||||
"symbolize"
|
||||
];
|
||||
excludedTestsRegex = lib.optionalString (
|
||||
excludedTests != [ ]
|
||||
) "(${lib.concatStringsSep "|" excludedTests})";
|
||||
|
||||
@@ -583,6 +583,13 @@ stdenv.mkDerivation rec {
|
||||
url = "https://git.savannah.gnu.org/cgit/grub.git/patch/?id=ac1512b872af8567b408518a7efa01607a0219ae";
|
||||
hash = "sha256-deyp6Yatlgv86bYMt7WcWhKg8J6StDPUEy4UPHqJYIc=";
|
||||
})
|
||||
# Required to build grub2_efi with GCC 16, or fails with "error: 'regparm'
|
||||
# attribute ignored [-Werror=attributes]"
|
||||
(fetchpatch {
|
||||
name = "gcc16_make_regparm_attribute_more_conditional.patch";
|
||||
url = "https://git.savannah.gnu.org/cgit/grub.git/patch/?id=9922ed133c2c754ec9f37198da2b3e3e8a4fd5ff";
|
||||
hash = "sha256-V2vffDxL/qQ14YN5scc3CFPBFBWvkh57dc5/hWd/6F4=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch =
|
||||
|
||||
@@ -5,12 +5,12 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "1.6.3";
|
||||
version = "1.6.2";
|
||||
pname = "gsender";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Sienci-Labs/gsender/releases/download/v${version}/gSender-${version}-Linux-Intel-64Bit.AppImage";
|
||||
hash = "sha256-xWsRSzJm5aA13qCBI2MRzauvPqoOBtxqtGb3gLAa3sI=";
|
||||
hash = "sha256-DZBTnvbxh2n4KVhbbe7JG0/q+wNQVEkHN8w4+5RuQGw=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 { inherit pname version src; };
|
||||
|
||||
@@ -4,14 +4,14 @@ Date: Wed, 4 Feb 2026 15:36:17 +0800
|
||||
Subject: [PATCH 1/2] nix: use terracotta from nix
|
||||
|
||||
---
|
||||
.../hmcl/terracotta/TerracottaBundle.java | 19 ++-----------------
|
||||
1 file changed, 2 insertions(+), 17 deletions(-)
|
||||
.../hmcl/terracotta/TerracottaBundle.java | 21 +++----------------
|
||||
1 file changed, 3 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/terracotta/TerracottaBundle.java b/HMCL/src/main/java/org/jackhuang/hmcl/terracotta/TerracottaBundle.java
|
||||
index ecc99f3..b46ada0 100644
|
||||
index 727edde9b..5b6e8b02f 100644
|
||||
--- a/HMCL/src/main/java/org/jackhuang/hmcl/terracotta/TerracottaBundle.java
|
||||
+++ b/HMCL/src/main/java/org/jackhuang/hmcl/terracotta/TerracottaBundle.java
|
||||
@@ -147,26 +147,11 @@ public final class TerracottaBundle {
|
||||
@@ -139,26 +139,11 @@ public final class TerracottaBundle {
|
||||
}
|
||||
|
||||
public Path locate(String file) {
|
||||
@@ -33,13 +33,20 @@ index ecc99f3..b46ada0 100644
|
||||
- return AbstractTerracottaProvider.Status.LEGACY_VERSION;
|
||||
- }
|
||||
- } catch (IOException e) {
|
||||
- LOG.warning("Cannot determine whether legacy versions exist.", e);
|
||||
- Logger.LOG.warning("Cannot determine whether legacy versions exist.", e);
|
||||
- }
|
||||
- return AbstractTerracottaProvider.Status.NOT_EXIST;
|
||||
+ return AbstractTerracottaProvider.Status.READY;
|
||||
}
|
||||
|
||||
private boolean isLocalBundleValid() throws IOException { // FIXME: Make control flow clearer.
|
||||
@@ -188,4 +173,4 @@ public final class TerracottaBundle {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
-}
|
||||
+}
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.52.0
|
||||
|
||||
|
||||
@@ -50,13 +50,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "hmcl";
|
||||
version = "3.16.2";
|
||||
version = "3.15.3";
|
||||
|
||||
src = fetchurl {
|
||||
# HMCL has built-in keys, such as the Microsoft OAuth secret and the CurseForge API key.
|
||||
# See https://github.com/HMCL-dev/HMCL/blob/refs/tags/release-3.6.12/.github/workflows/gradle.yml#L26-L28
|
||||
url = "https://github.com/HMCL-dev/HMCL/releases/download/v${finalAttrs.version}/HMCL-${finalAttrs.version}.jar";
|
||||
hash = "sha256-kvQDDZwA2sy8UQLZG4FqGmSh0sDcEuSg5CM6uy0DzCc=";
|
||||
hash = "sha256-/7RLhSHCnxtKxmusjnrfUEweYXzOoKcQO3G9+loBofk=";
|
||||
};
|
||||
|
||||
# - HMCL prompts users to download prebuilt Terracotta binary for
|
||||
@@ -71,12 +71,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
terracottaBundleJava = fetchurl {
|
||||
name = "hmcl-terracotta-bundle-java-${finalAttrs.version}";
|
||||
url = "https://raw.githubusercontent.com/HMCL-dev/HMCL/v${finalAttrs.version}/${finalAttrs.terracottaBundleJavaPath}";
|
||||
hash = "sha256-dZHRim/7VNW0/nA6I8r3t5zGfzIMxG2lzdZ//dzv2Gs=";
|
||||
hash = "sha256-1o/CUDeywtDlhAxqInk77aUwGCCYeZ84VMIyouN49uU=";
|
||||
};
|
||||
macOSProviderJava = fetchurl {
|
||||
name = "hmcl-macos-provider-java-${finalAttrs.version}";
|
||||
url = "https://raw.githubusercontent.com/HMCL-dev/HMCL/v${finalAttrs.version}/${finalAttrs.macOSProviderJavaPath}";
|
||||
hash = "sha256-7vI2U8vx3GYwlshoHJF/J8n2RS6TZ/cvoAivqYtW23Q=";
|
||||
hash = "sha256-+Zji2B8ksT7P+IObyrM9q7vHPJVl5ZtH+v/J8Mfr0Q4=";
|
||||
};
|
||||
terracottaBundleJavaPath = "HMCL/src/main/java/org/jackhuang/hmcl/terracotta/TerracottaBundle.java";
|
||||
macOSProviderJavaPath = "HMCL/src/main/java/org/jackhuang/hmcl/terracotta/provider/MacOSProvider.java";
|
||||
|
||||
@@ -32,7 +32,7 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "i2p";
|
||||
version = "2.13.0";
|
||||
version = "2.12.0";
|
||||
|
||||
src = fetchzip {
|
||||
urls = [
|
||||
@@ -43,7 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"https://files.i2p-projekt.de/"
|
||||
"https://download.i2p2.no/releases/"
|
||||
]);
|
||||
hash = "sha256-fCtjCKbvad8Uk+1ir1suJ0MqV8JjAcmOKXJicbUtKls=";
|
||||
hash = "sha256-gpxmCNtatF6wVvBBB5/LWzgL5e7i8c145dQ/yzldwwQ=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
@@ -22,13 +22,13 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
__structuredAttrs = true;
|
||||
|
||||
pname = "iloader";
|
||||
version = "2.2.7";
|
||||
version = "2.2.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nab138";
|
||||
repo = "iloader";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-DLs9jNnkykAdFSaDZCfLmUl+oYja7kxWlV5Db2TQQE8=";
|
||||
sha256 = "sha256-zSl08bhJ/OrdcvvL1ciybxgnLqrg4IinmcGXrsPQYyQ=";
|
||||
};
|
||||
|
||||
nodeModules = stdenv.mkDerivation {
|
||||
@@ -71,7 +71,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
|
||||
cargoRoot = "src-tauri";
|
||||
buildAndTestSubdir = "src-tauri";
|
||||
cargoHash = "sha256-92C6xeEVLtjCSqkJBrCOaMjBJj7yIuRM3zRtkurnBT4=";
|
||||
cargoHash = "sha256-6nDqIikItl5SuHN2o/iQREiOkY+bYkP7akShOEtY9JY=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
||||
@@ -12,13 +12,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "intel-compute-runtime";
|
||||
version = "26.27.39122.11";
|
||||
version = "26.22.38646.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "intel";
|
||||
repo = "compute-runtime";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-CbOtBgYlvn5r15gB7skmmZ+ZvRwq7FFtouICakku0ls=";
|
||||
hash = "sha256-YjCRbYsq44U+pwdTnyA5lffJtSHVK2u3R2XRRNb6l9c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
callPackage,
|
||||
crystal,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
librsvg,
|
||||
pkg-config,
|
||||
libxml2,
|
||||
@@ -41,6 +42,15 @@ crystal.buildCrystalPackage rec {
|
||||
inherit (versions.invidious) hash;
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Remove with the first release containing this commit.
|
||||
(fetchpatch2 {
|
||||
name = "CVE-2026-58447.patch";
|
||||
url = "https://github.com/iv-org/invidious/commit/77ad41678b45c4f6815940123f1796fc51259f45.patch?full_index=1";
|
||||
hash = "sha256-0pf6eu0ckQ2gYHLr2tEDy+1dvAhVjepG26kuxuHbZl8=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch =
|
||||
let
|
||||
# Replacing by the value (templates) of the variables ensures that building
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"invidious": {
|
||||
"hash": "sha256-QV3fN0wwbtds5hoQfPu56rlULe2/xu0Kw9wAS9fszKQ=",
|
||||
"version": "2.20260723.0",
|
||||
"date": "2026.07.23",
|
||||
"commit": "5953859e"
|
||||
"hash": "sha256-xJZjEnSeMnDo37ohtSAI2ucaPPv+nBYdrslHUCL/Pd8=",
|
||||
"version": "2.20260626.0",
|
||||
"date": "2026.06.27",
|
||||
"commit": "ad0bd928"
|
||||
},
|
||||
"videojs": {
|
||||
"hash": "sha256-jED3zsDkPN8i6GhBBJwnsHujbuwlHdsVpVqa1/pzSH4="
|
||||
|
||||
@@ -12,16 +12,16 @@
|
||||
|
||||
let
|
||||
pname = "Jan";
|
||||
version = "0.8.4";
|
||||
version = "0.8.3";
|
||||
|
||||
darwin-src = fetchzip {
|
||||
url = "https://github.com/janhq/jan/releases/download/v${version}/jan-mac-universal-${version}.zip";
|
||||
hash = "sha256-hK9cu9c2kJRCJ3iy0CucRP0whgDgF5K29JgR4AIKXVg=";
|
||||
hash = "sha256-h2v71DzXez/+wlEp8IMVBk33LlXPhNPJ1UPNLYPShoE=";
|
||||
};
|
||||
|
||||
linux-src = fetchurl {
|
||||
url = "https://github.com/janhq/jan/releases/download/v${version}/Jan_${version}_amd64.AppImage";
|
||||
hash = "sha256-NNTIq02kisIjINS2TCh0Rb2UyRMSlJLR2+uzZmWxSVo=";
|
||||
hash = "sha256-vEmioWQ4ic/FrtNFMKaLOcEy2BTRdouPc4PYWk90ZBI=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
autoreconfHook,
|
||||
# By default, jemalloc puts a je_ prefix onto all its symbols on OSX, which
|
||||
# then stops downstream builds (mariadb in particular) from detecting it. This
|
||||
@@ -59,6 +60,16 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# A (longer) patch addressing the failure posted upstream at:
|
||||
# https://github.com/jemalloc/jemalloc/pull/2954
|
||||
./skip-extent-test-with-prof-active.patch
|
||||
|
||||
# the nonstandard `std::__throw_bad_alloc` is no longer exposed in gcc 16.
|
||||
# this makes it conditional on exceptions and defers to either
|
||||
# `throw std::bad_alloc()` or `std::terminate` as appropriate.
|
||||
# https://github.com/jemalloc/jemalloc/pull/2900
|
||||
(fetchpatch {
|
||||
name = "jemalloc-dont-use-nonstandard-throw-bad-alloc.patch";
|
||||
url = "https://github.com/jemalloc/jemalloc/commit/1a15fe33a48c52bfe26ea83e49f0d317a47da3ea.patch";
|
||||
hash = "sha256-pL9fo8UMSbFlHCo3LFFkw0qBsdrVHcEJIkLutZYa2Yg=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -31,7 +31,7 @@ let
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
version = "16.4.15";
|
||||
version = "16.4.11";
|
||||
pname = "jmol";
|
||||
|
||||
src =
|
||||
@@ -40,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
in
|
||||
fetchurl {
|
||||
url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${finalAttrs.version}/Jmol-${finalAttrs.version}-binary.tar.gz";
|
||||
hash = "sha256-JdkeJRjlNsjWYbn5WRe2np+vV2W0TumtZy72/ofkpG8=";
|
||||
hash = "sha256-kDt6XF5axy9DhygLZcImV37plkq/xDqi2aL2wKV9wh4=";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "jwx";
|
||||
version = "4.2.0";
|
||||
version = "4.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lestrrat-go";
|
||||
repo = "jwx";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-sX4z0JhINss0kE42F3rSMyVvBUWH1OVli0UKFiqfZbU=";
|
||||
hash = "sha256-+u2PR1L66cua6iGer9qYlnPpfYt1j9cZ0PSrWntpYp0=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-lX03CF9WhcDGgvYhHlG+XaXIeinEWRTwzO8mmnyBzBM=";
|
||||
vendorHash = "sha256-dxC00wr51c48yxdCUWsL44RMmk+pBmqXkUQqjP90GNU=";
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/cmd/jwx";
|
||||
|
||||
|
||||
@@ -22,11 +22,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "kamailio";
|
||||
version = "6.1.3";
|
||||
version = "6.0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.kamailio.org/pub/kamailio/${finalAttrs.version}/src/kamailio-${finalAttrs.version}_src.tar.gz";
|
||||
hash = "sha256-49s9IWb0TY892Q2wkGP3C1W77M4pWr1/McNNi53XlyE=";
|
||||
hash = "sha256-LEpl8MTkNULs0EJCO2/IKe4Vqwmlauf0QbdCfWvOGzA=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "kapow";
|
||||
version = "1.7.1";
|
||||
version = "1.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gottcode";
|
||||
repo = "kapow";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-gBr1CmOpwJOqolY6HA4fv7YCaFSeRmxbJeVkZCau9QE=";
|
||||
hash = "sha256-IWkvAXDcWodrV23/wv3GEQXWdNcaIZDsU3LUtxsD+cA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -3,16 +3,16 @@
|
||||
stdenvNoCC,
|
||||
fetchzip,
|
||||
}:
|
||||
let
|
||||
pname = "kawkab-mono";
|
||||
version = "0.501";
|
||||
src = fetchzip {
|
||||
url = "https://github.com/aiaf/kawkab-mono/releases/download/v${version}/kawkab-mono-${version}.zip";
|
||||
hash = "sha256-cDpQGTu3XzLrDtInAZtnCw6BymX7fupbbr7L4bd7kN8=";
|
||||
};
|
||||
in
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
inherit pname version src;
|
||||
pname = "kawkab-mono";
|
||||
version = "20151015";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://makkuk.com/kawkab-mono/downloads/kawkab-mono-0.1.zip";
|
||||
stripRoot = false;
|
||||
hash = "sha256-arZTzXj7Ba5G4WF3eZVGNaONhOsYVPih9iBgsN/lg14=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
@@ -23,11 +23,8 @@ stdenvNoCC.mkDerivation {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Monospaced Arabic typeface designed for code and text-editing";
|
||||
description = "Arab fixed-width font";
|
||||
homepage = "https://makkuk.com/kawkab-mono/";
|
||||
downloadPage = "https://github.com/aiaf/kawkab-mono";
|
||||
changelog = "https://github.com/aiaf/kawkab-mono/releases/tag/v${version}";
|
||||
license = lib.licenses.ofl;
|
||||
maintainers = with lib.maintainers; [ talal ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
}:
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "ketch";
|
||||
version = "0.12.0";
|
||||
version = "0.10.0";
|
||||
|
||||
__structuredAttrs = true;
|
||||
strictDeps = true;
|
||||
@@ -16,10 +16,10 @@ buildGoModule (finalAttrs: {
|
||||
owner = "1broseidon";
|
||||
repo = "ketch";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-qp4EwQBrN0ic/gUAvBAirz03kL7Vjhs1LbKBd+uXmHA=";
|
||||
hash = "sha256-m6KEPbNd13eJsNigJyGGlV2dt0bcZTZcDBCBh/l5rjY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Kk7fY27y1ziJEMpwRUoGfslGYYQdayLDuuRvNyfiAy8=";
|
||||
vendorHash = "sha256-UsTR7+GSuxUQ0aBq8fv1M18LegeDqf/XoiyASQKe5EI=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -17,18 +17,18 @@ assert lib.asserts.assertMsg (
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ketesa";
|
||||
version = "1.4.0";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "etkecc";
|
||||
repo = "ketesa";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-tW7lOYl/TNQgvsMFMDQKXzqzzfnxNIUQ8Iqld8M5Hjc=";
|
||||
hash = "sha256-0YNCPOkWIzXMfs6Jptn+PBRHxuees6zVh7RpTXZKywQ=";
|
||||
};
|
||||
|
||||
yarnOfflineCache = fetchYarnDeps {
|
||||
yarnLock = finalAttrs.src + "/yarn.lock";
|
||||
hash = "sha256-+xWyq/jGJke4HQ6p37y+fJJ73wxNmNMKA3zrP6ANh8E=";
|
||||
hash = "sha256-NJGAchoEVgIOjQyH9mNh7h4BZmq4HV2FjHOBhL88ZWw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -50,14 +50,14 @@
|
||||
with python3Packages;
|
||||
buildPythonApplication rec {
|
||||
pname = "kitty";
|
||||
version = "0.48.1";
|
||||
version = "0.48.0";
|
||||
pyproject = false;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kovidgoyal";
|
||||
repo = "kitty";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-h4dE99FET26iTgEFrmeXcFDw6DLl8dQjGep0NJ7jMzk=";
|
||||
hash = "sha256-+x3saXQw+6BzBYfwwur0DiTaJZVNgOYKJ4UVzeScbtk=";
|
||||
};
|
||||
|
||||
goModules =
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user