Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2023-09-28 00:12:12 +00:00 committed by GitHub
commit 6982839dbf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
375 changed files with 6864 additions and 5857 deletions

View File

@ -134,7 +134,7 @@ If one of your favourite plugins isn't packaged, you can package it yourself:
{ config, pkgs, ... }:
let
easygrep = pkgs.vimUtils.buildVimPluginFrom2Nix {
easygrep = pkgs.vimUtils.buildVimPlugin {
name = "vim-easygrep";
src = pkgs.fetchFromGitHub {
owner = "dkprice";

View File

@ -1478,7 +1478,7 @@ This flag can break dynamic shared object loading. For instance, the module syst
#### `bindnow` {#bindnow}
Adds the `-z bindnow` linker option. During program load, all dynamic symbols are resolved, allowing for the complete GOT to be marked read-only (due to `relro`). This prevents GOT overwrite attacks. For very large applications, this can incur some performance loss during initial load while symbols are resolved, but this shouldnt be an issue for daemons.
Adds the `-z now` linker option. During program load, all dynamic symbols are resolved, allowing for the complete GOT to be marked read-only (due to `relro`). This prevents GOT overwrite attacks. For very large applications, this can incur some performance loss during initial load while symbols are resolved, but this shouldnt be an issue for daemons.
This flag can break dynamic shared object loading. For instance, the module systems of Xorg and PHP are incompatible with this flag. Programs incompatible with this flag often fail at runtime due to missing symbols, like:

View File

@ -338,7 +338,7 @@ rec {
);
/*
Like builtins.foldl' but for attribute sets.
Like [`lib.lists.foldl'`](#function-library-lib.lists.foldl-prime) but for attribute sets.
Iterates over every name-value pair in the given attribute set.
The result of the callback function is often called `acc` for accumulator. It is passed between callbacks from left to right and the final `acc` is the return value of `foldlAttrs`.
@ -372,9 +372,9 @@ rec {
123
foldlAttrs
(_: _: v: v)
(throw "initial accumulator not needed")
{ z = 3; a = 2; };
(acc: _: _: acc)
3
{ z = throw "value not needed"; a = throw "value not needed"; };
->
3

View File

@ -106,6 +106,7 @@ let
upperChars toLower toUpper addContextFrom splitString
removePrefix removeSuffix versionOlder versionAtLeast
getName getVersion
cmakeOptionType cmakeBool cmakeFeature
mesonOption mesonBool mesonEnable
nameFromURL enableFeature enableFeatureAs withFeature
withFeatureAs fixedWidthString fixedWidthNumber

View File

@ -86,15 +86,63 @@ rec {
else op (foldl' (n - 1)) (elemAt list n);
in foldl' (length list - 1);
/* Strict version of `foldl`.
/*
Reduce a list by applying a binary operator from left to right,
starting with an initial accumulator.
The difference is that evaluation is forced upon access. Usually used
with small whole results (in contrast with lazily-generated list or large
lists where only a part is consumed.)
Before each application of the operator, the accumulator value is evaluated.
This behavior makes this function stricter than [`foldl`](#function-library-lib.lists.foldl).
Type: foldl' :: (b -> a -> b) -> b -> [a] -> b
Unlike [`builtins.foldl'`](https://nixos.org/manual/nix/unstable/language/builtins.html#builtins-foldl'),
the initial accumulator argument is evaluated before the first iteration.
A call like
```nix
foldl' op acc [ x x x ... x x ]
```
is (denotationally) equivalent to the following,
but with the added benefit that `foldl'` itself will never overflow the stack.
```nix
let
acc = builtins.seq acc (op acc x );
acc = builtins.seq acc (op acc x );
acc = builtins.seq acc (op acc x );
...
acc = builtins.seq acc (op acc x);
acc = builtins.seq acc (op acc x );
in
acc
# Or ignoring builtins.seq
op (op (... (op (op (op acc x) x) x) ...) x) x
```
Type: foldl' :: (acc -> x -> acc) -> acc -> [x] -> acc
Example:
foldl' (acc: x: acc + x) 0 [1 2 3]
=> 6
*/
foldl' = builtins.foldl' or foldl;
foldl' =
/* The binary operation to run, where the two arguments are:
1. `acc`: The current accumulator value: Either the initial one for the first iteration, or the result of the previous iteration
2. `x`: The corresponding list element for this iteration
*/
op:
# The initial accumulator value
acc:
# The list to fold
list:
# The builtin `foldl'` is a bit lazier than one might expect.
# See https://github.com/NixOS/nix/pull/7158.
# In particular, the initial accumulator value is not forced before the first iteration starts.
builtins.seq acc
(builtins.foldl' op acc list);
/* Map with index starting from 0

View File

@ -741,6 +741,64 @@ rec {
name = head (splitString sep filename);
in assert name != filename; name;
/* Create a "-D<feature>:<type>=<value>" string that can be passed to typical
CMake invocations.
Type: cmakeOptionType :: string -> string -> string -> string
@param feature The feature to be set
@param type The type of the feature to be set, as described in
https://cmake.org/cmake/help/latest/command/set.html
the possible values (case insensitive) are:
BOOL FILEPATH PATH STRING INTERNAL
@param value The desired value
Example:
cmakeOptionType "string" "ENGINE" "sdl2"
=> "-DENGINE:STRING=sdl2"
*/
cmakeOptionType = type: feature: value:
assert (lib.elem (lib.toUpper type)
[ "BOOL" "FILEPATH" "PATH" "STRING" "INTERNAL" ]);
assert (lib.isString feature);
assert (lib.isString value);
"-D${feature}:${lib.toUpper type}=${value}";
/* Create a -D<condition>={TRUE,FALSE} string that can be passed to typical
CMake invocations.
Type: cmakeBool :: string -> bool -> string
@param condition The condition to be made true or false
@param flag The controlling flag of the condition
Example:
cmakeBool "ENABLE_STATIC_LIBS" false
=> "-DENABLESTATIC_LIBS:BOOL=FALSE"
*/
cmakeBool = condition: flag:
assert (lib.isString condition);
assert (lib.isBool flag);
cmakeOptionType "bool" condition (lib.toUpper (lib.boolToString flag));
/* Create a -D<feature>:STRING=<value> string that can be passed to typical
CMake invocations.
This is the most typical usage, so it deserves a special case.
Type: cmakeFeature :: string -> string -> string
@param condition The condition to be made true or false
@param flag The controlling flag of the condition
Example:
cmakeFeature "MODULES" "badblock"
=> "-DMODULES:STRING=badblock"
*/
cmakeFeature = feature: value:
assert (lib.isString feature);
assert (lib.isString value);
cmakeOptionType "string" feature value;
/* Create a -D<feature>=<value> string that can be passed to typical Meson
invocations.

View File

@ -505,6 +505,38 @@ runTests {
};
};
testFoldl'Empty = {
expr = foldl' (acc: el: abort "operation not called") 0 [ ];
expected = 0;
};
testFoldl'IntegerAdding = {
expr = foldl' (acc: el: acc + el) 0 [ 1 2 3 ];
expected = 6;
};
# The accumulator isn't forced deeply
testFoldl'NonDeep = {
expr = take 3 (foldl'
(acc: el: [ el ] ++ acc)
[ (abort "unevaluated list entry") ]
[ 1 2 3 ]);
expected = [ 3 2 1 ];
};
# Compared to builtins.foldl', lib.foldl' evaluates the first accumulator strictly too
testFoldl'StrictInitial = {
expr = (builtins.tryEval (foldl' (acc: el: el) (throw "hello") [])).success;
expected = false;
};
# Make sure we don't get a stack overflow for large lists
# This number of elements would notably cause a stack overflow if it was implemented without the `foldl'` builtin
testFoldl'Large = {
expr = foldl' (acc: el: acc + el) 0 (range 0 100000);
expected = 5000050000;
};
testTake = testAllTrue [
([] == (take 0 [ 1 2 3 ]))
([1] == (take 1 [ 1 2 3 ]))
@ -708,7 +740,7 @@ runTests {
# should just return the initial value
emptySet = foldlAttrs (throw "function not needed") 123 { };
# should just evaluate to the last value
accNotNeeded = foldlAttrs (_acc: _name: v: v) (throw "accumulator not needed") { z = 3; a = 2; };
valuesNotNeeded = foldlAttrs (acc: _name: _v: acc) 3 { z = throw "value z not needed"; a = throw "value a not needed"; };
# the accumulator doesnt have to be an attrset it can be as trivial as being just a number or string
trivialAcc = foldlAttrs (acc: _name: v: acc * 10 + v) 1 { z = 1; a = 2; };
};
@ -718,7 +750,7 @@ runTests {
names = [ "bar" "foo" ];
};
emptySet = 123;
accNotNeeded = 3;
valuesNotNeeded = 3;
trivialAcc = 121;
};
};

View File

@ -11835,6 +11835,13 @@
githubId = 2072185;
name = "Marc Scholten";
};
mrcjkb = {
email = "marc@jakobi.dev";
matrix = "@mrcjk:matrix.org";
name = "Marc Jakobi";
github = "mrcjkb";
githubId = 12857160;
};
mredaelli = {
email = "massimo@typish.io";
github = "mredaelli";

View File

@ -10,6 +10,12 @@
- The `nixos-rebuild` command has been given a `list-generations` subcommand. See `man nixos-rebuild` for more details.
- [systemd](https://systemd.io) has been updated from v253 to v254, see [the release notes](https://github.com/systemd/systemd/blob/v254/NEWS#L3-L659) for more information on the changes.
- `boot.resumeDevice` **must be specified** when hibernating if not in EFI mode.
- systemd may warn your system about the permissions of your ESP partition (often `/boot`), this warning can be ignored for now, we are looking
into a satisfying solution regarding this problem.
- Updating with `nixos-rebuild boot` and rebooting is recommended, since in some rare cases the `nixos-rebuild switch` into the new generation on a live system might fail due to missing mount units.
- [`sudo-rs`], a reimplementation of `sudo` in Rust, is now supported.
An experimental new module `security.sudo-rs` was added.
Switching to it (via `security.sudo.enable = false; security.sudo-rs.enable = true;`) introduces
@ -20,7 +26,6 @@
[`sudo-rs`]: https://github.com/memorysafety/sudo-rs/
## New Services {#sec-release-23.11-new-services}
- [MCHPRS](https://github.com/MCHPR/MCHPRS), a multithreaded Minecraft server built for redstone. Available as [services.mchprs](#opt-services.mchprs.enable).
@ -80,6 +85,8 @@
- [NNCP](http://www.nncpgo.org/). Added nncp-daemon and nncp-caller services. Configuration is set with [programs.nncp.settings](#opt-programs.nncp.settings) and the daemons are enabled at [services.nncp](#opt-services.nncp.caller.enable).
- [tuxedo-rs](https://github.com/AaronErhardt/tuxedo-rs), Rust utilities for interacting with hardware from TUXEDO Computers.
## Backward Incompatibilities {#sec-release-23.11-incompatibilities}
- The `boot.loader.raspberryPi` options have been marked deprecated, with intent for removal for NixOS 24.11. They had a limited use-case, and do not work like people expect. They required either very old installs ([before mid-2019](https://github.com/NixOS/nixpkgs/pull/62462)) or customized builds out of scope of the standard and generic AArch64 support. That option set never supported the Raspberry Pi 4 family of devices.
@ -112,6 +119,9 @@
- The `services.ananicy.extraRules` option now has the type of `listOf attrs` instead of `string`.
- `buildVimPluginFrom2Nix` has been renamed to `buildVimPlugin`, which now
now skips `configurePhase` and `buildPhase`
- JACK tools (`jack_*` except `jack_control`) have moved from the `jack2` package to `jack-example-tools`
- The `matrix-synapse` package & module have undergone some significant internal changes, for most setups no intervention is needed, though:
@ -121,6 +131,8 @@
- A list of all extras (and the extras enabled by default) can be found at the [option's reference for `services.matrix-synapse.extras`](#opt-services.matrix-synapse.extras).
- In some cases (e.g. for running synapse workers) it was necessary to re-use the `PYTHONPATH` of `matrix-synapse.service`'s environment to have all plugins available. This isn't necessary anymore, instead `config.services.matrix-synapse.package` can be used as it points to the wrapper with properly configured `extras` and also all plugins defined via [`services.matrix-synapse.plugins`](#opt-services.matrix-synapse.plugins) available. This is also the reason for why the option is read-only now, it's supposed to be set by the module only.
- `netbox` was updated to 3.6. NixOS' `services.netbox.package` still defaults to 3.5 if `stateVersion` is earlier than 23.11. Please review upstream's breaking changes [for 3.6.0](https://github.com/netbox-community/netbox/releases/tag/v3.6.0) and upgrade NetBox by changing `services.netbox.package`. Database migrations will be run automatically.
- `etcd` has been updated to 3.5, you will want to read the [3.3 to 3.4](https://etcd.io/docs/v3.5/upgrades/upgrade_3_4/) and [3.4 to 3.5](https://etcd.io/docs/v3.5/upgrades/upgrade_3_5/) upgrade guides
- `gitlab` installations created or updated between versions \[15.11.0, 15.11.2] have an incorrect database schema. This will become a problem when upgrading to `gitlab` >=16.2.0. A workaround for affected users can be found in the [GitLab docs](https://docs.gitlab.com/ee/update/versions/gitlab_16_changes.html#undefined-column-error-upgrading-to-162-or-later).
@ -226,6 +238,11 @@
- `networking.networkmanager.firewallBackend` was removed as NixOS is now using iptables-nftables-compat even when using iptables, therefore Networkmanager now uses the nftables backend unconditionally.
- [`lib.lists.foldl'`](https://nixos.org/manual/nixpkgs/stable#function-library-lib.lists.foldl-prime) now always evaluates the initial accumulator argument first.
If you depend on the lazier behavior, consider using [`lib.lists.foldl`](https://nixos.org/manual/nixpkgs/stable#function-library-lib.lists.foldl) or [`builtins.foldl'`](https://nixos.org/manual/nix/stable/language/builtins.html#builtins-foldl') instead.
- [`lib.attrsets.foldlAttrs`](https://nixos.org/manual/nixpkgs/stable#function-library-lib.attrsets.foldlAttrs) now always evaluates the initial accumulator argument first.
- `rome` was removed because it is no longer maintained and is succeeded by `biome`.
- The `services.mtr-exporter.target` has been removed in favor of `services.mtr-exporter.jobs` which allows specifying multiple targets.
@ -254,6 +271,8 @@
- New options were added to `services.searx` for better SearXNG support, including options for the built-in rate limiter and bot protection and automatically configuring a local redis server.
- `jq` was updated to 1.7, its [first release in 5 years](https://github.com/jqlang/jq/releases/tag/jq-1.7).
- A new option was added to the virtualisation module that enables specifying explicitly named network interfaces in QEMU VMs. The existing `virtualisation.vlans` is still supported for cases where the name of the network interface is irrelevant.
- DocBook option documentation is no longer supported, all module documentation now uses markdown.
@ -325,6 +344,24 @@ The module update takes care of the new config syntax and the data itself (user
- `keepTerminfo` controls whether `TERMINFO` and `TERMINFO_DIRS` are preserved
for `root` and the `wheel` group.
- CoreDNS can now be built with external plugins by overriding `externalPlugins` and `vendorHash` arguments like this:
```
services.coredns = {
enable = true;
package = pkgs.coredns.override {
externalPlugins = [
{name = "fanout"; repo = "github.com/networkservicemesh/fanout"; version = "v1.9.1";}
];
vendorHash = "<SRI hash>";
};
};
```
To get the necessary SRI hash, set `vendorHash = "";`. The build will fail and produce the correct `vendorHash` in the error message.
If you use this feature, updates to CoreDNS may require updating `vendorHash` by following these steps again.
## Nixpkgs internals {#sec-release-23.11-nixpkgs-internals}

View File

@ -168,6 +168,9 @@ in
# ...but only the keymaps if we don't
"/etc/kbd/keymaps" = lib.mkIf (!cfg.earlySetup) { source = "${consoleEnv config.boot.initrd.systemd.package.kbd}/share/keymaps"; };
};
boot.initrd.systemd.additionalUpstreamUnits = [
"systemd-vconsole-setup.service"
];
boot.initrd.systemd.storePaths = [
"${config.boot.initrd.systemd.package}/lib/systemd/systemd-vconsole-setup"
"${config.boot.initrd.systemd.package.kbd}/bin/setfont"

View File

@ -188,6 +188,7 @@ in
nativeBuildInputs = [
cfg.package
pkgs.fakeroot
pkgs.util-linux
] ++ fileSystemTools;
} ''
amendedRepartDefinitions=$(${amendRepartDefinitions} ${partitions} ${definitionsDirectory})
@ -195,7 +196,7 @@ in
mkdir -p $out
cd $out
fakeroot systemd-repart \
unshare --map-root-user fakeroot systemd-repart \
--dry-run=no \
--empty=create \
--size=auto \

View File

@ -541,6 +541,7 @@
./services/hardware/tlp.nix
./services/hardware/trezord.nix
./services/hardware/triggerhappy.nix
./services/hardware/tuxedo-rs.nix
./services/hardware/udev.nix
./services/hardware/udisks2.nix
./services/hardware/undervolt.nix

View File

@ -106,12 +106,14 @@ in
identMap = mkOption {
type = types.lines;
default = "";
example = literalExample ''
map-name-0 system-username-0 database-username-0
map-name-1 system-username-1 database-username-1
'';
description = lib.mdDoc ''
Defines the mapping from system users to database users.
The general form is:
map-name system-username database-username
See the [auth doc](https://postgresql.org/docs/current/auth-username-maps.html).
'';
};
@ -128,6 +130,11 @@ in
initialScript = mkOption {
type = types.nullOr types.path;
default = null;
example = literalExpression ''
pkgs.writeText "init-sql-script" '''
alter user postgres with password 'myPassword';
''';'';
description = lib.mdDoc ''
A file containing SQL statements to execute on first startup.
'';
@ -464,13 +471,16 @@ in
services.postgresql.dataDir = mkDefault "/var/lib/postgresql/${cfg.package.psqlSchema}";
services.postgresql.authentication = mkAfter
services.postgresql.authentication = mkMerge [
(mkBefore "# Generated file; do not edit!")
(mkAfter
''
# Generated file; do not edit!
# default value of services.postgresql.authentication
local all all peer
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
'';
'')
];
users.users.postgres =
{ name = "postgres";

View File

@ -65,7 +65,7 @@ in
"tlp.conf".text = (mkTlpConfig cfg.settings) + cfg.extraConfig;
} // optionalAttrs enableRDW {
"NetworkManager/dispatcher.d/99tlp-rdw-nm".source =
"${tlp}/etc/NetworkManager/dispatcher.d/99tlp-rdw-nm";
"${tlp}/usr/lib/NetworkManager/dispatcher.d/99tlp-rdw-nm";
};
environment.systemPackages = [ tlp ];

View File

@ -0,0 +1,49 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.hardware.tuxedo-rs;
in
{
options = {
hardware.tuxedo-rs = {
enable = mkEnableOption (lib.mdDoc "Rust utilities for interacting with hardware from TUXEDO Computers.");
tailor-gui.enable = mkEnableOption (lib.mdDoc "Alternative to TUXEDO Control Center, written in Rust.");
};
};
config = mkIf cfg.enable (mkMerge [
{
hardware.tuxedo-keyboard.enable = true;
systemd = {
services.tailord = {
enable = true;
description = "Tuxedo Tailor hardware control service";
after = [ "systemd-logind.service" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "dbus";
BusName = "com.tux.Tailor";
ExecStart = "${pkgs.tuxedo-rs}/bin/tailord";
Environment = "RUST_BACKTRACE=1";
Restart = "on-failure";
};
};
};
services.dbus.packages = [ pkgs.tuxedo-rs ];
environment.systemPackages = [ pkgs.tuxedo-rs ];
}
(mkIf cfg.tailor-gui.enable {
environment.systemPackages = [ pkgs.tailor-gui ];
})
]);
meta.maintainers = with maintainers; [ mrcjkb ];
}

View File

@ -223,7 +223,7 @@ in
ejabberdUser = config.services.ejabberd.user;
}; }
// lib.optionalAttrs (config.services.mysql.enable) { mysql-database = {
mysqlPort = config.services.mysql.port;
mysqlPort = config.services.mysql.settings.mysqld.port;
mysqlSocket = "/run/mysqld/mysqld.sock";
} // lib.optionalAttrs cfg.enableAuthentication {
mysqlUsername = "root";

View File

@ -583,7 +583,7 @@ in
(lport: "sshd -G -T -C lport=${toString lport} -f ${sshconf} > /dev/null")
cfg.ports}
${concatMapStringsSep "\n"
(la: "sshd -G -T -C laddr=${la.addr},lport=${toString la.port} -f ${sshconf} > /dev/null")
(la: "sshd -G -T -C ${escapeShellArg "laddr=${la.addr},lport=${toString la.port}"} -f ${sshconf} > /dev/null")
cfg.listenAddresses}
touch $out
'')

View File

@ -51,8 +51,8 @@ in
ruleFile = mkOption {
type = types.nullOr types.path;
default = /var/lib/usbguard/rules.conf;
example = /run/secrets/usbguard-rules;
default = "/var/lib/usbguard/rules.conf";
example = "/run/secrets/usbguard-rules";
description = lib.mdDoc ''
This tells the USBGuard daemon which file to load as policy rule set.

View File

@ -74,9 +74,18 @@ in {
package = lib.mkOption {
type = lib.types.package;
default = if lib.versionAtLeast config.system.stateVersion "23.05" then pkgs.netbox else pkgs.netbox_3_3;
default =
if lib.versionAtLeast config.system.stateVersion "23.11"
then pkgs.netbox_3_6
else if lib.versionAtLeast config.system.stateVersion "23.05"
then pkgs.netbox_3_5
else pkgs.netbox_3_3;
defaultText = lib.literalExpression ''
if versionAtLeast config.system.stateVersion "23.05" then pkgs.netbox else pkgs.netbox_3_3;
if lib.versionAtLeast config.system.stateVersion "23.11"
then pkgs.netbox_3_6
else if lib.versionAtLeast config.system.stateVersion "23.05"
then pkgs.netbox_3_5
else pkgs.netbox_3_3;
'';
description = lib.mdDoc ''
NetBox package to use.

View File

@ -146,6 +146,10 @@ let
error_log ${cfg.logError};
daemon off;
${optionalString cfg.enableQuicBPF ''
quic_bpf on;
''}
${cfg.config}
${optionalString (cfg.eventsConfig != "" || cfg.config == "") ''
@ -783,6 +787,19 @@ in
'';
};
enableQuicBPF = mkOption {
default = false;
type = types.bool;
description = lib.mdDoc ''
Enables routing of QUIC packets using eBPF. When enabled, this allows
to support QUIC connection migration. The directive is only supported
on Linux 5.7+.
Note that enabling this option will make nginx run with extended
capabilities that are usually limited to processes running as root
namely `CAP_SYS_ADMIN` and `CAP_NET_ADMIN`.
'';
};
user = mkOption {
type = types.str;
default = "nginx";
@ -1125,6 +1142,14 @@ in
'';
}
{
assertion = cfg.package.pname != "nginxQuic" -> !(cfg.enableQuicBPF);
message = ''
services.nginx.enableQuicBPF requires using nginxQuic package,
which can be achieved by setting `services.nginx.package = pkgs.nginxQuic;`.
'';
}
{
assertion = cfg.package.pname != "nginxQuic" -> all (host: !host.quic) (attrValues virtualHosts);
message = ''
@ -1224,8 +1249,8 @@ in
# New file permissions
UMask = "0027"; # 0640 / 0750
# Capabilities
AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" "CAP_SYS_RESOURCE" ];
CapabilityBoundingSet = [ "CAP_NET_BIND_SERVICE" "CAP_SYS_RESOURCE" ];
AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" "CAP_SYS_RESOURCE" ] ++ optionals cfg.enableQuicBPF [ "CAP_SYS_ADMIN" "CAP_NET_ADMIN" ];
CapabilityBoundingSet = [ "CAP_NET_BIND_SERVICE" "CAP_SYS_RESOURCE" ] ++ optionals cfg.enableQuicBPF [ "CAP_SYS_ADMIN" "CAP_NET_ADMIN" ];
# Security
NoNewPrivileges = true;
# Sandboxing (sorted by occurrence in https://www.freedesktop.org/software/systemd/man/systemd.exec.html)
@ -1250,6 +1275,7 @@ in
# System Call Filtering
SystemCallArchitectures = "native";
SystemCallFilter = [ "~@cpu-emulation @debug @keyring @mount @obsolete @privileged @setuid" ]
++ optional cfg.enableQuicBPF [ "bpf" ]
++ optionals ((cfg.package != pkgs.tengine) && (cfg.package != pkgs.openresty) && (!lib.any (mod: (mod.disableIPC or false)) cfg.package.modules)) [ "~@ipc" ];
};
};

View File

@ -799,6 +799,8 @@ let
"UseAddress"
"UseDNS"
"UseNTP"
"UseHostname"
"UseDomains"
"RouteMetric"
"RapidCommit"
"MUDURL"
@ -813,16 +815,20 @@ let
"DUIDRawData"
"IAID"
"UseDelegatedPrefix"
"SendRelease"
])
(assertValueOneOf "UseAddress" boolValues)
(assertValueOneOf "UseDNS" boolValues)
(assertValueOneOf "UseNTP" boolValues)
(assertValueOneOf "UseHostname" boolValues)
(assertValueOneOf "UseDomains" (boolValues ++ ["route"]))
(assertInt "RouteMetric")
(assertValueOneOf "RapidCommit" boolValues)
(assertValueOneOf "WithoutRA" ["no" "solicit" "information-request"])
(assertRange "SendOption" 1 65536)
(assertInt "IAID")
(assertValueOneOf "UseDelegatedPrefix" boolValues)
(assertValueOneOf "SendRelease" boolValues)
];
sectionDHCPPrefixDelegation = checkUnitConfig "DHCPPrefixDelegation" [
@ -948,10 +954,12 @@ let
"Prefix"
"PreferredLifetimeSec"
"ValidLifetimeSec"
"Assign"
"Token"
])
(assertValueOneOf "AddressAutoconfiguration" boolValues)
(assertValueOneOf "OnLink" boolValues)
(assertValueOneOf "Assign" boolValues)
];
sectionIPv6RoutePrefix = checkUnitConfig "IPv6RoutePrefix" [

View File

@ -48,6 +48,7 @@ let
"rescue.service"
# Udev.
"systemd-tmpfiles-setup-dev-early.service"
"systemd-udevd-control.socket"
"systemd-udevd-kernel.socket"
"systemd-udevd.service"

View File

@ -57,7 +57,6 @@ let
"systemd-ask-password-console.service"
"systemd-fsck@.service"
"systemd-halt.service"
"systemd-hibernate-resume@.service"
"systemd-journald-audit.socket"
"systemd-journald-dev-log.socket"
"systemd-journald.service"

View File

@ -531,8 +531,8 @@ in {
netdata = handleTest ./netdata.nix {};
networking.networkd = handleTest ./networking.nix { networkd = true; };
networking.scripted = handleTest ./networking.nix { networkd = false; };
netbox = handleTest ./web-apps/netbox.nix { inherit (pkgs) netbox; };
netbox_3_3 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_3_3; };
netbox_3_5 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_3_5; };
netbox_3_6 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_3_6; };
netbox-upgrade = handleTest ./web-apps/netbox-upgrade.nix {};
# TODO: put in networking.nix after the test becomes more complete
networkingProxy = handleTest ./networking-proxy.nix {};

View File

@ -57,7 +57,7 @@ in {
{
services.openssh = {
enable = true; listenAddresses = [ { addr = "127.0.0.1"; port = 22; } ];
enable = true; listenAddresses = [ { addr = "127.0.0.1"; port = 22; } { addr = "[::]"; port = 22; } ];
extraConfig = ''
# Combined test for two (predictable) Match criterias
Match LocalAddress 127.0.0.1 LocalPort 22

View File

@ -1,13 +1,15 @@
import ../make-test-python.nix ({ lib, pkgs, ... }: let
oldNetbox = pkgs.netbox_3_3;
oldNetbox = pkgs.netbox_3_5;
newNetbox = pkgs.netbox_3_6;
in {
name = "netbox-upgrade";
meta = with lib.maintainers; {
maintainers = [ minijackson ];
maintainers = [ minijackson raitobezarius ];
};
nodes.machine = { config, ... }: {
virtualisation.memorySize = 2048;
services.netbox = {
enable = true;
package = oldNetbox;
@ -32,7 +34,7 @@ in {
networking.firewall.allowedTCPPorts = [ 80 ];
specialisation.upgrade.configuration.services.netbox.package = lib.mkForce pkgs.netbox;
specialisation.upgrade.configuration.services.netbox.package = lib.mkForce newNetbox;
};
testScript = { nodes, ... }:
@ -43,7 +45,7 @@ in {
(lib.concatStringsSep ".")
];
oldApiVersion = apiVersion oldNetbox.version;
newApiVersion = apiVersion pkgs.netbox.version;
newApiVersion = apiVersion newNetbox.version;
in
''
start_all()

View File

@ -16,6 +16,7 @@ in import ../make-test-python.nix ({ lib, pkgs, netbox, ... }: {
};
nodes.machine = { config, ... }: {
virtualisation.memorySize = 2048;
services.netbox = {
enable = true;
package = netbox;

View File

@ -41,7 +41,6 @@ stdenv.mkDerivation rec {
cmakeFlags = [
"-DCMAKE_INSTALL_BINDIR=bin"
"-DCMAKE_BUILD_TYPE=Release"
];
nativeBuildInputs = [

View File

@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
--replace '/usr/bin/zenity' '${gnome.zenity}/bin/zenity'
'';
cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" "-DSFIZZ_TESTS=ON" ];
cmakeFlags = [ "-DSFIZZ_TESTS=ON" ];
doCheck = true;

View File

@ -22,7 +22,7 @@ mkDerivation rec {
nativeBuildInputs = [ cmake ];
cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" "-DCMAKE_INSTALL_PREFIX=" ];
cmakeFlags = [ "-DCMAKE_INSTALL_PREFIX=" ];
installFlags = [ "DESTDIR=$(out)" ];

View File

@ -14,14 +14,14 @@ let
# If an update breaks things, one of those might have valuable info:
# https://aur.archlinux.org/packages/spotify/
# https://community.spotify.com/t5/Desktop-Linux
version = "1.2.11.916.geb595a67";
version = "1.2.13.661.ga588f749";
# To get the latest stable revision:
# curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
# To get general information:
# curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
# More examples of api usage:
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
rev = "67";
rev = "68";
deps = [
alsa-lib
@ -84,7 +84,7 @@ stdenv.mkDerivation {
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
src = fetchurl {
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
hash = "sha512-PVqf2oigdqIrttC2tYYzSGXwOk6FLKjgIkaOPdNSCoHeoxRyHiblS6kwlgPgj2ZYjwBe6JcOc+zL+AX/cOidyg==";
hash = "sha512-THGSRx0sGOVEB6bOHWHiy1G0Acq0hUa94tG/v+i5DA+CluI58pqj8gYQ61k/ACLJXTUyM8SA92C8DK1Go18X8w==";
};
nativeBuildInputs = [ wrapGAppsHook makeShellWrapper squashfsTools ];

View File

@ -26,7 +26,6 @@ stdenv.mkDerivation {
];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DBUILD_GUI_DEPS=ON"
"-DReadline_ROOT_DIR=${readline.dev}"
];

View File

@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
++ lib.optionals trezorSupport [ libusb1 protobuf python3 ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DUSE_DEVICE_TREZOR=ON"
"-DBUILD_GUI_DEPS=ON"
"-DReadline_ROOT_DIR=${readline.dev}"

View File

@ -58,7 +58,6 @@ stdenv.mkDerivation rec {
++ lib.optionals trezorSupport [ libusb1 protobuf python3 ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DUSE_DEVICE_TREZOR=ON"
"-DBUILD_GUI_DEPS=ON"
"-DReadline_ROOT_DIR=${readline.dev}"

View File

@ -47,7 +47,6 @@ stdenv.mkDerivation rec {
] ++ lib.optionals trezorSupport [ libusb1 protobuf python3 ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
# "-DUSE_DEVICE_TREZOR=ON"
# "-DBUILD_GUI_DEPS=ON"
"-DReadline_ROOT_DIR=${readline.dev}"

View File

@ -11,6 +11,7 @@
, unzip
, libsecret
, libnotify
, udev
, e2fsprogs
, python3
, vmopts ? null
@ -109,6 +110,9 @@ with stdenv; lib.makeOverridable mkDerivation (rec {
# Some internals want libstdc++.so.6
stdenv.cc.cc.lib libsecret e2fsprogs
libnotify
# Required for Help -> Collect Logs
# in at least rider and goland
udev
] ++ extraLdPath)}" \
${lib.concatStringsSep " " extraWrapperArgs} \
--set-default JDK_HOME "$jdk" \

View File

@ -115,7 +115,6 @@ in
cmakeFlags = [
"-DRSTUDIO_TARGET=${if server then "Server" else "Desktop"}"
"-DCMAKE_BUILD_TYPE=Release"
"-DRSTUDIO_USE_SYSTEM_SOCI=ON"
"-DRSTUDIO_USE_SYSTEM_BOOST=ON"
"-DRSTUDIO_USE_SYSTEM_YAML_CPP=ON"

View File

@ -1,13 +1,13 @@
{
"version": "3.167.2",
"version": "3.173.4",
"deb": {
"x86_64-linux": {
"url": "https://github.com/standardnotes/app/releases/download/%40standardnotes/desktop%403.167.2/standard-notes-3.167.2-linux-amd64.deb",
"hash": "sha512-xW08R1oZm8lw8Iap/TT29WJCagmcQNWXzdSDY8pArG9Fjv8nm+DcV6paVL35Hj35Dk9CJdf1KxeTRB9JW6u3dg=="
"url": "https://github.com/standardnotes/app/releases/download/%40standardnotes/desktop%403.173.4/standard-notes-3.173.4-linux-amd64.deb",
"hash": "sha512-8GDzj7Xm61rF5xybLE74D4yMbT2HgEG0ez1gQio/qWtWSqY72+GSKWlCA+3wz8Mz2jThRDlka9s2fHBBUvG+fg=="
},
"aarch64-linux": {
"url": "https://github.com/standardnotes/app/releases/download/%40standardnotes/desktop%403.167.2/standard-notes-3.167.2-linux-arm64.deb",
"hash": "sha512-ua0lg6aK++RDi4WyCYygHoQasYD4+I21ip5To9ImMN072vJSyAoz9gxs8HBF+uEl4/uUBdlMCQHEioYMeJCwbw=="
"url": "https://github.com/standardnotes/app/releases/download/%40standardnotes/desktop%403.173.4/standard-notes-3.173.4-linux-arm64.deb",
"hash": "sha512-yJ8yZK+RkPUzkjbscCXT5yv9BxeHGQsZsCrKwOJRdd/XbcVPnKWQm00JVZmMuz17d8rhm8Km/EW81JufZByM0Q=="
}
}
}

View File

@ -1,12 +1,12 @@
{ lib, fetchFromGitHub }:
rec {
version = "9.0.1811";
version = "9.0.1897";
src = fetchFromGitHub {
owner = "vim";
repo = "vim";
rev = "v${version}";
hash = "sha256-b/fATWaHcIZIvkmr/UQ4R45ii9N0kWJMb7DerF/JYIA=";
hash = "sha256-ywxJ9evXWbqZ6o6EqDIQWK16J05McAdvPl0Y9cW5Zvc=";
};
enableParallelBuilding = true;

View File

@ -16,8 +16,8 @@ rec {
, namePrefix ? "vimplugin-"
, src
, unpackPhase ? ""
, configurePhase ? ""
, buildPhase ? ""
, configurePhase ? ":"
, buildPhase ? ":"
, preInstall ? ""
, postInstall ? ""
, path ? "."
@ -48,9 +48,4 @@ rec {
in
addRtp (toVimPlugin drv);
buildVimPluginFrom2Nix = attrs: buildVimPlugin ({
# vim plugins may override this
buildPhase = ":";
configurePhase = ":";
} // attrs);
}

View File

@ -7,14 +7,14 @@
let
inherit (vimUtils.override {inherit vim;})
buildVimPluginFrom2Nix;
buildVimPlugin;
inherit (lib) extends;
initialPackages = self: { };
plugins = callPackage ./generated.nix {
inherit buildVimPluginFrom2Nix;
inherit buildVimPlugin;
inherit (neovimUtils) buildNeovimPlugin;
};
@ -26,7 +26,7 @@ let
# add to ./overrides.nix.
overrides = callPackage ./overrides.nix {
inherit (darwin.apple_sdk.frameworks) Cocoa CoreFoundation CoreServices;
inherit buildVimPluginFrom2Nix;
inherit buildVimPlugin;
inherit llvmPackages luaPackages;
};

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +1,10 @@
with import <localpkgs> {};
let
inherit (vimUtils.override {inherit vim;}) buildVimPluginFrom2Nix;
inherit (vimUtils.override {inherit vim;}) buildVimPlugin;
inherit (neovimUtils) buildNeovimPlugin;
generated = callPackage <localpkgs/pkgs/applications/editors/vim/plugins/generated.nix> {
inherit buildNeovimPlugin buildVimPluginFrom2Nix;
inherit buildNeovimPlugin buildVimPlugin;
} {} {};
hasChecksum = value:
lib.isAttrs value && lib.hasAttrByPath ["src" "outputHash"] value;

View File

@ -3,7 +3,7 @@
# nixpkgs functions
, buildGoModule
, buildVimPluginFrom2Nix
, buildVimPlugin
, fetchFromGitHub
, fetchFromSourcehut
, fetchpatch
@ -153,7 +153,7 @@ self: super: {
};
# The GitHub repository returns 404, which breaks the update script
bitbake-vim = buildVimPluginFrom2Nix {
bitbake-vim = buildVimPlugin {
pname = "bitbake.vim";
version = "2021-02-06";
src = fetchFromGitHub {
@ -305,7 +305,7 @@ self: super: {
dependencies = with self; [ nvim-cmp zsh ];
};
coc-nginx = buildVimPluginFrom2Nix {
coc-nginx = buildVimPlugin {
pname = "coc-nginx";
inherit (nodePackages."@yaegassy/coc-nginx") version meta;
src = "${nodePackages."@yaegassy/coc-nginx"}/lib/node_modules/@yaegassy/coc-nginx";
@ -553,7 +553,7 @@ self: super: {
# Mainly used as a dependency for fzf-vim. Wraps the fzf program as a vim
# plugin, since part of the fzf vim plugin is included in the main fzf
# program.
fzfWrapper = buildVimPluginFrom2Nix {
fzfWrapper = buildVimPlugin {
inherit (fzf) src version;
pname = "fzf";
postInstall = ''
@ -594,7 +594,7 @@ self: super: {
};
# https://hurl.dev/
hurl = buildVimPluginFrom2Nix {
hurl = buildVimPlugin {
pname = "hurl";
version = hurl.version;
# dontUnpack = true;
@ -658,7 +658,7 @@ self: super: {
'';
};
in
buildVimPluginFrom2Nix {
buildVimPlugin {
pname = "LanguageClient-neovim";
inherit version;
src = LanguageClient-neovim-src;
@ -707,7 +707,7 @@ self: super: {
dependencies = with self; [ plenary-nvim ];
};
magma-nvim-goose = buildVimPluginFrom2Nix {
magma-nvim-goose = buildVimPlugin {
pname = "magma-nvim-goose";
version = "2023-03-13";
src = fetchFromGitHub {
@ -767,7 +767,7 @@ self: super: {
dependencies = with self; [ mason-nvim ];
};
meson = buildVimPluginFrom2Nix {
meson = buildVimPlugin {
inherit (meson) pname version src;
preInstall = "cd data/syntax-highlighting/vim";
meta.maintainers = with lib.maintainers; [ vcunat ];
@ -785,7 +785,7 @@ self: super: {
vimCommandCheck = "MinimapToggle";
};
minsnip-nvim = buildVimPluginFrom2Nix {
minsnip-nvim = buildVimPlugin {
pname = "minsnip.nvim";
version = "2022-01-04";
src = fetchFromGitHub {
@ -939,7 +939,7 @@ self: super: {
inherit parinfer-rust;
phpactor = buildVimPluginFrom2Nix {
phpactor = buildVimPlugin {
inherit (phpactor) pname src meta version;
postPatch = ''
substituteInPlace plugin/phpactor.vim \
@ -1008,7 +1008,7 @@ self: super: {
'';
});
skim = buildVimPluginFrom2Nix {
skim = buildVimPlugin {
pname = "skim";
inherit (skim) version;
src = skim.vim;
@ -1048,7 +1048,7 @@ self: super: {
doCheck = false;
};
in
buildVimPluginFrom2Nix {
buildVimPlugin {
pname = "sniprun";
inherit version src;
@ -1061,7 +1061,7 @@ self: super: {
};
# The GitHub repository returns 404, which breaks the update script
Spacegray-vim = buildVimPluginFrom2Nix {
Spacegray-vim = buildVimPlugin {
pname = "Spacegray.vim";
version = "2021-07-06";
src = fetchFromGitHub {
@ -1086,7 +1086,7 @@ self: super: {
dependencies = with self; [ nvim-treesitter ];
};
statix = buildVimPluginFrom2Nix rec {
statix = buildVimPlugin rec {
inherit (statix) pname src meta;
version = "0.1.0";
postPatch = ''
@ -1136,7 +1136,7 @@ self: super: {
};
};
taskwarrior = buildVimPluginFrom2Nix {
taskwarrior = buildVimPlugin {
inherit (taskwarrior) version pname;
src = "${taskwarrior.src}/scripts/vim";
};
@ -1222,7 +1222,7 @@ self: super: {
au BufNewFile,BufRead Tupfile,*.tup setf tup
'';
in
buildVimPluginFrom2Nix {
buildVimPlugin {
inherit (tup) pname version src;
preInstall = ''
mkdir -p vim-plugin/syntax vim-plugin/ftdetect
@ -1546,7 +1546,7 @@ self: super: {
'';
};
vim2nix = buildVimPluginFrom2Nix {
vim2nix = buildVimPlugin {
pname = "vim2nix";
version = "1.0";
src = ./vim2nix;
@ -1570,7 +1570,7 @@ self: super: {
};
# The GitHub repository returns 404, which breaks the update script
VimCompletesMe = buildVimPluginFrom2Nix {
VimCompletesMe = buildVimPlugin {
pname = "VimCompletesMe";
version = "2022-02-18";
src = fetchFromGitHub {
@ -1706,7 +1706,7 @@ self: super: {
"coc-yaml"
"coc-yank"
];
nodePackage2VimPackage = name: buildVimPluginFrom2Nix {
nodePackage2VimPackage = name: buildVimPlugin {
pname = name;
inherit (nodePackages.${name}) version meta;
src = "${nodePackages.${name}}/lib/node_modules/${name}";

View File

@ -74,7 +74,7 @@ class VimEditor(pluginupdate.Editor):
with open(outfile, "w+") as f:
f.write(HEADER)
f.write(textwrap.dedent("""
{ lib, buildVimPluginFrom2Nix, buildNeovimPlugin, fetchFromGitHub, fetchgit }:
{ lib, buildVimPlugin, buildNeovimPlugin, fetchFromGitHub, fetchgit }:
final: prev:
{
@ -103,7 +103,7 @@ class VimEditor(pluginupdate.Editor):
}};
""".format(
buildFn="buildNeovimPlugin" if isNeovim else "buildVimPluginFrom2Nix", plugin=plugin, src_nix=src_nix, repo=repo)
buildFn="buildNeovimPlugin" if isNeovim else "buildVimPlugin", plugin=plugin, src_nix=src_nix, repo=repo)
log.debug(content)
return content

View File

@ -53,7 +53,7 @@ let
};
in
vimUtils.buildVimPluginFrom2Nix {
vimUtils.buildVimPlugin {
pname = "vim-clap";
inherit version src meta;

View File

@ -392,8 +392,9 @@ rec {
inherit (import ./build-vim-plugin.nix {
inherit lib stdenv rtpPath toVimPlugin;
}) buildVimPlugin buildVimPluginFrom2Nix;
}) buildVimPlugin;
buildVimPluginFrom2Nix = lib.warn "buildVimPluginFrom2Nix is deprecated: use buildVimPlugin instead" buildVimPlugin;
# used to figure out which python dependencies etc. neovim needs
requiredPlugins = {

View File

@ -50,7 +50,7 @@ fun! nix#NixDerivation(opts, name, repository) abort
let dependencies = nix#DependenciesFromCheckout(a:opts, a:name, a:repository, dir)
return {'n_a_name': n_a_name, 'n_n_name': n_n_name, 'dependencies': dependencies, 'derivation': join([
\ ' '.n_a_name.' = buildVimPluginFrom2Nix {'.created_notice,
\ ' '.n_a_name.' = buildVimPlugin {'.created_notice,
\ ' name = "'.n_n_name.'-'.date.'";',
\ ' src = fetchgit {',
\ ' url = "'. a:repository.url .'";',
@ -74,7 +74,7 @@ fun! nix#NixDerivation(opts, name, repository) abort
let dependencies = nix#DependenciesFromCheckout(a:opts, a:name, a:repository, dir)
return {'n_a_name': n_a_name, 'n_n_name': n_n_name, 'dependencies': dependencies, 'derivation': join([
\ ' '.n_a_name.' = buildVimPluginFrom2Nix {'.created_notice,
\ ' '.n_a_name.' = buildVimPlugin {'.created_notice,
\ ' name = "'.n_n_name.'";',
\ ' src = fetchhg {',
\ ' url = "'. a:repository.url .'";',
@ -99,7 +99,7 @@ fun! nix#NixDerivation(opts, name, repository) abort
let dependencies = keys(get(addon_info, 'dependencies', {}))
return {'n_a_name': n_a_name, 'n_n_name': n_n_name, 'dependencies': dependencies, 'derivation': join([
\ ' '.n_a_name.' = buildVimPluginFrom2Nix {'.created_notice,
\ ' '.n_a_name.' = buildVimPlugin {'.created_notice,
\ ' name = "'.n_n_name.'";',
\ ' src = fetchurl {',
\ ' url = "'. a:repository.url .'";',

View File

@ -100,12 +100,22 @@ in
};
};
beetle-pce = mkLibretroCore {
core = "mednafen-pce";
src = getCoreSrc "beetle-pce";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's PC Engine core to libretro";
license = lib.licenses.gpl2Only;
};
};
beetle-pce-fast = mkLibretroCore {
core = "mednafen-pce-fast";
src = getCoreSrc "beetle-pce-fast";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's PC Engine core to libretro";
description = "Port of Mednafen's PC Engine fast core to libretro";
license = lib.licenses.gpl2Only;
};
};
@ -291,7 +301,11 @@ in
core = "citra";
extraBuildInputs = [ libGLU libGL boost ffmpeg nasm ];
makefile = "Makefile";
makeFlags = [ "HAVE_FFMPEG_STATIC=0" ];
makeFlags = [
"HAVE_FFMPEG_STATIC=0"
# https://github.com/libretro/citra/blob/1a66174355b5ed948de48ef13c0ed508b6d6169f/Makefile#L90
"BUILD_DATE=01/01/1970_00:00"
];
meta = {
description = "Port of Citra to libretro";
license = lib.licenses.gpl2Plus;
@ -506,15 +520,11 @@ in
core = "mame";
extraNativeBuildInputs = [ python3 ];
extraBuildInputs = [ alsa-lib libGLU libGL ];
# Setting this is breaking compilation of src/3rdparty/genie for some reason
makeFlags = [ "ARCH=" ];
meta = {
description = "Port of MAME to libretro";
license = with lib.licenses; [ bsd3 gpl2Plus ];
# Build fail with errors:
# gcc: warning: <arch>: linker input file unused because linking not done
# gcc: error: <arch>: linker input file not found: No such file or directory
# Removing it from platforms instead of marking as broken to allow
# retroarchFull to be built
platforms = [ ];
};
};

View File

@ -29,6 +29,12 @@
"rev": "65460e3a9ad529f6901caf669abbda11f437ab55",
"hash": "sha256-+xfD1ZMKtbv5Lp12+5RM7Vl3eEF38kykKW8wj/2EN5w="
},
"beetle-pce": {
"owner": "libretro",
"repo": "beetle-pce-libretro",
"rev": "541463bd937dad175aec09c2a0c8d6a52d175386",
"hash": "sha256-wWS9reb6aN71Q7OlGst+32T8XX1yMCSOHUKHkXht3hg="
},
"beetle-pce-fast": {
"owner": "libretro",
"repo": "beetle-pce-fast-libretro",

View File

@ -17,6 +17,7 @@ CORES = {
"beetle-gba": {"repo": "beetle-gba-libretro"},
"beetle-lynx": {"repo": "beetle-lynx-libretro"},
"beetle-ngp": {"repo": "beetle-ngp-libretro"},
"beetle-pce": {"repo": "beetle-pce-libretro"},
"beetle-pce-fast": {"repo": "beetle-pce-fast-libretro"},
"beetle-pcfx": {"repo": "beetle-pcfx-libretro"},
"beetle-psx": {"repo": "beetle-psx-libretro"},

View File

@ -44,7 +44,6 @@ stdenv.mkDerivation rec {
];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE='Release'"
"-DENABLE_FFMPEG='true'"
"-DENABLE_LINK='true'"
"-DSYSCONFDIR=etc"

View File

@ -1,19 +1,19 @@
# Generated by ./update.sh - do not update manually!
# Last updated: 2023-09-13
# Last updated: 2023-09-27
{
compatList = {
rev = "463d5f3537eed71638d4f5809467afec1eb5988c";
rev = "0e93552d7d65a8eb5149d69488281e4abeeba396";
hash = "sha256:1hdsza3wf9a0yvj6h55gsl7xqvhafvbz1i8paz9kg7l49b0gnlh1";
};
mainline = {
version = "1557";
hash = "sha256:19wlia1g2ll9fwbn4yj57cax4lvs3d6w41z2yy2pjdq84yzgg1gs";
version = "1569";
hash = "sha256:17qs5fn75zqxz0c325zyj46z79pvm2j536afyg96glq6av2kql2b";
};
ea = {
version = "3864";
distHash = "sha256:02dxf9f33agnp91myxxklrdjalh6d32zjlg07p7v5v48mymnxhv9";
fullHash = "sha256:020ljbgb79i66y6fqj4xblzv4s808l50jy7wwl0d6jwpck1q3i11";
version = "3897";
distHash = "sha256:1kxn7hcrn7kkdjgkxpxjw2pdrg73jhlbv3gvhc6z8358bav7xcbs";
fullHash = "sha256:1zc1k90f4jzbm8l8fjfsnd77hljh4nqa78l7cczcc3yv2jwrgrz6";
};
}

View File

@ -34,7 +34,6 @@ stdenv.mkDerivation rec {
cmakeFlags = [
"-DBRLCAD_ENABLE_STRICT=OFF"
"-DCMAKE_BUILD_TYPE=Release"
];
meta = with lib; {

View File

@ -47,10 +47,11 @@ mkDerivation rec {
--replace 'PYTHONPATH=''${_krita_python_path}' 'PYTHONPATH=${pythonPath}'
'';
cmakeBuildType = "RelWithDebInfo";
cmakeFlags = [
"-DPYQT5_SIP_DIR=${python3Packages.pyqt5}/${python3Packages.python.sitePackages}/PyQt5/bindings"
"-DPYQT_SIP_DIR_OVERRIDE=${python3Packages.pyqt5}/${python3Packages.python.sitePackages}/PyQt5/bindings"
"-DCMAKE_BUILD_TYPE=RelWithDebInfo"
];
preInstall = ''

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "libpano13";
version = "2.9.21";
version = "2.9.22";
src = fetchurl {
url = "mirror://sourceforge/panotools/${pname}-${version}.tar.gz";
sha256 = "sha256-eeWhRSGZMF4pYUYnIO9ZQRUnecEnxblvw0DSSS5jNZA=";
sha256 = "sha256-r/xoMM2+ccKNJzHcv43qKs2m2f/UYJxtvzugxoRAqOM=";
};
buildInputs = [ perl libjpeg libpng libtiff ];

View File

@ -45,7 +45,6 @@ in stdenv.mkDerivation rec {
'';
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DPARAVIEW_ENABLE_FFMPEG=ON"
"-DPARAVIEW_ENABLE_GDAL=ON"
"-DPARAVIEW_ENABLE_MOTIONFX=ON"

View File

@ -0,0 +1,35 @@
{ lib
, stdenvNoCC
, fetchurl
, unzip
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "appcleaner";
version = "3.6.8";
src = fetchurl {
url = "https://freemacsoft.net/downloads/AppCleaner_${finalAttrs.version}.zip";
hash = "sha256-4BL3KUQkc8IOfM4zSwAYJSHktmcupoGzSTGxgP6z1r4=";
};
dontUnpack = true;
nativeBuildInputs = [ unzip ];
installPhase = ''
runHook preInstall
mkdir -p $out/Applications
unzip -d $out/Applications $src
runHook postInstall
'';
meta = with lib; {
description = "Uninstall unwanted apps";
homepage = "https://freemacsoft.net/appcleaner";
license = licenses.unfree;
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
maintainers = with maintainers; [ emilytrau Enzime ];
platforms = platforms.darwin;
};
})

View File

@ -15,6 +15,8 @@
, potrace
, openxr-loader
, embree, gmp, libharu
, mesa
, runCommand
}:
let
@ -26,7 +28,7 @@ let
};
in
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: rec {
pname = "blender";
version = "3.6.3";
@ -184,7 +186,45 @@ stdenv.mkDerivation rec {
done
'';
passthru = { inherit python; };
passthru = {
inherit python;
tests = {
render = runCommand "${pname}-test" { } ''
set -euo pipefail
export LIBGL_DRIVERS_PATH=${mesa.drivers}/lib/dri
export __EGL_VENDOR_LIBRARY_FILENAMES=${mesa.drivers}/share/glvnd/egl_vendor.d/50_mesa.json
cat <<'PYTHON' > scene-config.py
import bpy
bpy.context.scene.eevee.taa_render_samples = 32
bpy.context.scene.cycles.samples = 32
if ${if stdenv.isAarch64 then "True" else "False"}:
bpy.context.scene.cycles.use_denoising = False
bpy.context.scene.render.resolution_x = 100
bpy.context.scene.render.resolution_y = 100
bpy.context.scene.render.threads_mode = 'FIXED'
bpy.context.scene.render.threads = 1
PYTHON
mkdir $out
for engine in BLENDER_EEVEE CYCLES; do
echo "Rendering with $engine..."
# Beware that argument order matters
${finalAttrs.finalPackage}/bin/blender \
--background \
-noaudio \
--factory-startup \
--python-exit-code 1 \
--python scene-config.py \
--engine "$engine" \
--render-output "$out/$engine" \
--render-frame 1
done
'';
};
};
meta = with lib; {
description = "3D Creation/Animation/Publishing System";
@ -198,4 +238,4 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ goibhniu veprbl ];
mainProgram = "blender";
};
}
})

View File

@ -14,7 +14,7 @@
, libXtst
, zlib
, maven
, webkitgtk_4_1
, webkitgtk
, glib-networking
}:
@ -53,7 +53,7 @@ mavenJdk17.buildMavenPackage rec {
libXtst
zlib
] ++ lib.optionals stdenv.isLinux [
webkitgtk_4_1
webkitgtk
glib-networking
];
@ -109,7 +109,7 @@ mavenJdk17.buildMavenPackage rec {
makeWrapper $out/dbeaver/dbeaver $out/bin/dbeaver \
--prefix PATH : ${jdk17}/bin \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ glib gtk3 libXtst webkitgtk_4_1 glib-networking ])} \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ glib gtk3 libXtst webkitgtk glib-networking ])} \
--prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules" \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"

View File

@ -40,9 +40,10 @@ stdenv.mkDerivation rec {
substituteInPlace src/CMakeLists.txt --replace '@libirc_includes@' '${libirc.out}'
'';
cmakeBuildType = "None";
cmakeFlags = [
"-S" "/build/source/src"
"-DCMAKE_BUILD_TYPE=None"
"-DINSTALL_DATA_DIR=bin"
"-DQT5_BUILD=ON"
"-DWEB_ENGINE=ON"

View File

@ -52,9 +52,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=MinSizeRel"
];
cmakeBuildType = "MinSizeRel";
meta = {
homepage = "https://github.com/keyleds/keyleds";

View File

@ -46,7 +46,6 @@ in
dontWrapQtApps = true;
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=RELEASE"
"-DSDK_ARUCO_LIBPATH=${aruco}/lib/libaruco.a"
"-DSDK_XPLANE=${xplaneSdk}"
];

View File

@ -1,4 +1,4 @@
{ lib, buildDunePackage, fetchFromGitLab, ocaml
{ lib, buildDunePackage, fetchFromGitLab, fetchpatch, ocaml
, fmt, lwt_ppx, menhir, ocf_ppx, ppx_blob, xtmpl_ppx
, dune-build-info, dune-site, higlo, logs, lwt, ocf, ptime, uri, uutf, xtmpl
}:
@ -10,7 +10,6 @@ else
buildDunePackage rec {
pname = "stog";
version = "0.20.0";
duneVersion = "3";
minimalOCamlVersion = "4.12";
src = fetchFromGitLab {
domain = "framagit.org";
@ -20,6 +19,12 @@ buildDunePackage rec {
sha256 = "sha256:0krj5w4y05bcfx7hk9blmap8avl31gp7yi01lpqzs6ync23mvm0x";
};
# Compatibility with higlo 0.9
patches = fetchpatch {
url = "https://framagit.org/zoggy/stog/-/commit/ea0546ab4cda8cc5c4c820ebaf2e3dfddc2ab101.patch";
hash = "sha256-86GRHF9OjfcalGfA0Om2wXH99j4THCs9a4+o5ghuiJc=";
};
nativeBuildInputs = [ menhir ];
buildInputs = [ fmt lwt_ppx ocf_ppx ppx_blob xtmpl_ppx ];
propagatedBuildInputs = [

View File

@ -78,7 +78,7 @@ let
++ lib.optionals mediaSupport [ ffmpeg ]
);
version = "12.5.4";
version = "12.5.5";
sources = {
x86_64-linux = fetchurl {
@ -86,7 +86,7 @@ let
"https://cdn.mullvad.net/browser/${version}/mullvad-browser-linux64-${version}_ALL.tar.xz"
"https://github.com/mullvad/mullvad-browser/releases/download/${version}/mullvad-browser-linux64-${version}_ALL.tar.xz"
];
hash = "sha256-xjCsCg6XsnXAiNw6frgJVZRV9UBZA2EAcuHa2Bjq/ro=";
hash = "sha256-ISmhKitFReHSADGygzpoKwlBOJH2HfPDEtMjTB6fMhs=";
};
};
@ -225,7 +225,7 @@ stdenv.mkDerivation rec {
passthru = {
inherit sources;
updateScript = callPackage ../tor-browser-bundle-bin/update.nix {
updateScript = callPackage ../tor-browser/update.nix {
inherit pname version meta;
baseUrl = "https://cdn.mullvad.net/browser/";
prefix = "mullvad-browser-";

View File

@ -17,19 +17,19 @@
, palemoon-bin
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "palemoon-bin";
version = "32.3.1";
version = "32.4.0.1";
src = fetchzip {
urls = [
"https://rm-eu.palemoon.org/release/palemoon-${version}.linux-x86_64-gtk${if withGTK3 then "3" else "2"}.tar.xz"
"https://rm-us.palemoon.org/release/palemoon-${version}.linux-x86_64-gtk${if withGTK3 then "3" else "2"}.tar.xz"
"https://rm-eu.palemoon.org/release/palemoon-${finalAttrs.version}.linux-x86_64-gtk${if withGTK3 then "3" else "2"}.tar.xz"
"https://rm-us.palemoon.org/release/palemoon-${finalAttrs.version}.linux-x86_64-gtk${if withGTK3 then "3" else "2"}.tar.xz"
];
hash = if withGTK3 then
"sha256-1JYaxxkqgg/gLdZ+uGDB5BI0NKjHO4huk0b/M9QFuII="
"sha256-kGt3pIgCjVeSD6UXRvj5w9opWrMx3q3B/Y0S55kKS08="
else
"sha256-p/Lid6Uv3XTEg+43Gke5VLILhzENHoBP6XjGVHy7wCY=";
"sha256-kNvUC/ir7TKjvKXYFoEDOPAY75CEgeixmEV1tuB/WIM=";
};
preferLocalBuild = true;
@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
];
desktopItems = [(makeDesktopItem rec {
name = pname;
name = "palemoon-bin";
desktopName = "Pale Moon Web Browser";
comment = "Browse the World Wide Web";
keywords = [
@ -164,6 +164,7 @@ stdenv.mkDerivation rec {
longDescription = ''
Pale Moon is an Open Source, Goanna-based web browser focusing on
efficiency and customization.
Pale Moon offers you a browsing experience in a browser completely built
from its own, independently developed source that has been forked off from
Firefox/Mozilla code a number of years ago, with carefully selected
@ -186,4 +187,4 @@ stdenv.mkDerivation rec {
platforms = [ "x86_64-linux" ];
hydraPlatforms = [];
};
}
})

View File

@ -57,7 +57,7 @@
}:
lib.warnIf (useHardenedMalloc != null)
"tor-browser-bundle-bin: useHardenedMalloc is deprecated and enabling it can cause issues"
"tor-browser: useHardenedMalloc is deprecated and enabling it can cause issues"
(let
libPath = lib.makeLibraryPath libPkgs;
@ -92,7 +92,7 @@ lib.warnIf (useHardenedMalloc != null)
fteLibPath = lib.makeLibraryPath [ stdenv.cc.cc gmp ];
# Upstream source
version = "12.5.4";
version = "12.5.5";
lang = "ALL";
@ -104,7 +104,7 @@ lib.warnIf (useHardenedMalloc != null)
"https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
"https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
];
hash = "sha256-AIwqIz8QG7Fq3Vvd22QTNFH1fnZgtH25qUaECX50QCQ=";
hash = "sha256-FS1ywm/UJDZiSYPf0WHikoX/o6WGIP+lQQGFeD0g2dc=";
};
i686-linux = fetchurl {
@ -114,7 +114,7 @@ lib.warnIf (useHardenedMalloc != null)
"https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
"https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
];
hash = "sha256-s8UReyurIKlxG0bT0ecGUcXMTTHyYKy/AcygTE6ujqo=";
hash = "sha256-6ozGIQPC8QnZxS1oJ0ZEdZDMY2JkwRHs+7ZHUkqrL6U=";
};
};
@ -132,7 +132,7 @@ lib.warnIf (useHardenedMalloc != null)
});
in
stdenv.mkDerivation rec {
pname = "tor-browser-bundle-bin";
pname = "tor-browser";
inherit version;
src = sources.${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");
@ -459,21 +459,11 @@ stdenv.mkDerivation rec {
};
meta = with lib; {
description = "Tor Browser Bundle built by torproject.org";
longDescription = ''
Tor Browser Bundle is a bundle of the Tor daemon, Tor Browser (heavily patched version of
Firefox), several essential extensions for Tor Browser, and some tools that glue those
together with a convenient UI.
`tor-browser-bundle-bin` package is the official version built by torproject.org patched with
`patchelf` to work under nix and with bundled scripts adapted to the read-only nature of
the `/nix/store`.
'';
description = "Privacy-focused browser routing traffic through the Tor network";
homepage = "https://www.torproject.org/";
changelog = "https://gitweb.torproject.org/builders/tor-browser-build.git/plain/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt?h=maint-${version}";
platforms = attrNames sources;
maintainers = with maintainers; [ felschr panicgh joachifm hax404 ];
mainProgram = "tor-browser";
# MPL2.0+, GPL+, &c. While it's not entirely clear whether
# the compound is "libre" in a strict sense (some components place certain
# restrictions on redistribution), it's free enough for our purposes.

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "talosctl";
version = "1.5.2";
version = "1.5.3";
src = fetchFromGitHub {
owner = "siderolabs";
repo = "talos";
rev = "v${version}";
hash = "sha256-CEalMrXdLa/pGok1uB60PmxYmmDnSas38cUxvOpkoGk=";
hash = "sha256-RoodFtZ4BINyPxxpVkliMD9Sam0eRujvd3gXR2Hxk70=";
};
vendorHash = "sha256-JDhpRXYnNhVJ5BBKdUmCponRpckH54gMRoKLQ+wx5zM=";
vendorHash = "sha256-PIuSn4qp6bLPFJwkLEb+pX1ra49IkxXYDRzEFbVqVI0=";
ldflags = [ "-s" "-w" ];

View File

@ -2,24 +2,26 @@
rustPlatform.buildRustPackage rec {
pname = "cfdyndns";
version = "0.0.4";
version = "0.2.0";
src = fetchFromGitHub {
owner = "colemickens";
owner = "nrdxp";
repo = "cfdyndns";
rev = "v${version}";
hash = "sha256-kgpTKhMvxuy+Q9M5U/PKJt7pZ2kSQxkCNjNu8aIyutg=";
hash = "sha256-iwKMTWLK7pgz8AEmPVBO1bTWrXTokQJ+Z1U4CiiRdho=";
};
cargoHash = "sha256-78TQkRHEbSaCyCM48hH1h8GG0BGJmC2zc7gTZc2t9Nc=";
cargoLock.lockFile = ./Cargo.lock;
cargoLock.outputHashes."cloudflare-0.10.1" = "sha256-AJW4AQ34EDhxf7zMhFY2rqq5n4IaSVWJAYi+7jXEUVo=";
cargoLock.outputHashes."public-ip-0.2.2" = "sha256-DDdh90EAo3Ppsym4AntczFuiAQo4/QQ9TEPJjMB1XzY=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];
meta = with lib; {
description = "CloudFlare Dynamic DNS Client";
homepage = "https://github.com/colemickens/cfdyndns";
homepage = "https://github.com/nrdxp/cfdyndns";
license = lib.licenses.mit;
maintainers = with maintainers; [ colemickens ];
maintainers = with maintainers; [ colemickens nrdxp ];
platforms = with platforms; linux;
};
}

View File

@ -6,47 +6,47 @@ let
canary = "0.0.167";
development = "0.0.232";
} else {
stable = "0.0.273";
ptb = "0.0.59";
canary = "0.0.283";
development = "0.0.8778";
stable = "0.0.278";
ptb = "0.0.77";
canary = "0.0.312";
development = "0.0.8795";
};
version = versions.${branch};
srcs = rec {
x86_64-linux = {
stable = fetchurl {
url = "https://dl.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
sha256 = "sha256-eCfF7zC9JM/y14ovSJxMIvLY+IGv0Jvzn7MVgueltNs=";
hash = "sha256-eCfF7zC9JM/y14ovSJxMIvLY+IGv0Jvzn7MVgueltNs=";
};
ptb = fetchurl {
url = "https://dl-ptb.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
sha256 = "omPqp8iyQpp5UxoOlp0+iaQG6yuKVVGaYhl7I643dqQ=";
hash = "sha256-omPqp8iyQpp5UxoOlp0+iaQG6yuKVVGaYhl7I643dqQ=";
};
canary = fetchurl {
url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
sha256 = "sha256-ua99w5pJz8UZldMvYLB7SkcgAG2hQBdorbnugvFDktE=";
hash = "sha256-ua99w5pJz8UZldMvYLB7SkcgAG2hQBdorbnugvFDktE=";
};
development = fetchurl {
url = "https://dl-development.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";
sha256 = "sha256-AsHdQvDLzflhuYO8V4R+2zjQYpRo+aPa8HYXc3taayY=";
hash = "sha256-AsHdQvDLzflhuYO8V4R+2zjQYpRo+aPa8HYXc3taayY=";
};
};
x86_64-darwin = {
stable = fetchurl {
url = "https://dl.discordapp.net/apps/osx/${version}/Discord.dmg";
sha256 = "1vz2g83gz9ks9mxwx7gl7kys2xaw8ksnywwadrpsbj999fzlyyal";
hash = "sha256-c60p8RX5Rv8tx6io65XbqyzJJKaCVDeL5NtwMLNIX5M=";
};
ptb = fetchurl {
url = "https://dl-ptb.discordapp.net/apps/osx/${version}/DiscordPTB.dmg";
sha256 = "sha256-LS7KExVXkOv8O/GrisPMbBxg/pwoDXIOo1dK9wk1yB8=";
hash = "sha256-Dn+k51SyHpJ1C1gJx3ZLRzD/cdzhX9qANZU2KEn9lY0=";
};
canary = fetchurl {
url = "https://dl-canary.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
sha256 = "0mqpk1szp46mih95x42ld32rrspc6jx1j7qdaxf01whzb3d4pi9l";
hash = "sha256-iV131kzFcN2+eqUetqZShKqjAQfm64y6bxzAddV7wuw=";
};
development = fetchurl {
url = "https://dl-development.discordapp.net/apps/osx/${version}/DiscordDevelopment.dmg";
sha256 = "sha256-K4rlShYhmsjT2QHjb6+IbCXJFK+9REIx/gW68bcVSVc=";
hash = "sha256-d/i7LHbJbbUUk/7iU63Xh4RWxs8ZyiCpZSS68JFW2Ps=";
};
};
aarch64-darwin = x86_64-darwin;

View File

@ -23,16 +23,16 @@
}:
let
version = "3.1.2-13107";
_hash = "ad5b5393";
version = "3.2.1-17153";
_hash = "b69de82d";
srcs = {
x86_64-linux = fetchurl {
url = "https://dldir1.qq.com/qqfile/qq/QQNT/${_hash}/linuxqq_${version}_amd64.deb";
hash = "sha256-mBfeexWEYpGybFFianUFvlzMv0HoFR4EeFcwlGVXIRA=";
hash = "sha256-+GjTjv0K2vnlkb46KhMvRRFWuIEBz23Lg3QhiA7QzkA=";
};
aarch64-linux = fetchurl {
url = "https://dldir1.qq.com/qqfile/qq/QQNT/${_hash}/linuxqq_${version}_arm64.deb";
hash = "sha256-V6kR2lb63nnNIEhn64Yg0BYYlz7W0Cw60TwnKaJuLgs=";
hash = "sha256-BtmmVpKZF15aU7RRmXl9g5leg2jz5sT4vYXluq9aIYk=";
};
};
src = srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");

View File

@ -4,11 +4,11 @@ let
in
stdenv.mkDerivation rec {
pname = "rocketchat-desktop";
version = "3.9.7";
version = "3.9.8";
src = fetchurl {
url = "https://github.com/RocketChat/Rocket.Chat.Electron/releases/download/${version}/rocketchat-${version}-linux-amd64.deb";
hash = "sha256-DxY8cXWHBboH6Uh2i9DSJ2F8/OaGTRlIEaLzhQpXnKk=";
hash = "sha256-sx4WRAeitbBrz6jFvD0WF/EzR7cx4tOPoczbJ+tkw1s=";
};
nativeBuildInputs = [

View File

@ -86,9 +86,6 @@ mkDerivation rec {
"-DNO_SHIBBOLETH=1" # allows to compile without qtwebkit
];
# causes redefinition of _FORTIFY_SOURCE
hardeningDisable = [ "fortify3" ];
postBuild = ''
make doc-man
'';

View File

@ -42,7 +42,6 @@ mkDerivation rec {
};
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DQV2RAY_DISABLE_AUTO_UPDATE=on"
"-DQV2RAY_USE_V5_CORE=on"
"-DQV2RAY_TRANSLATION_PATH=${placeholder "out"}/share/qv2ray/lang"

View File

@ -76,13 +76,13 @@ let
in
stdenv.mkDerivation rec {
pname = "freerdp";
version = "2.11.1";
version = "2.11.2";
src = fetchFromGitHub {
owner = "FreeRDP";
repo = "FreeRDP";
rev = version;
sha256 = "sha256-x97I0TDPAd/zULM/FpAvYQTcArG2CwGoUUp/eEM4vdc=";
sha256 = "sha256-buInsfjzpY4EF7bSojy42YNXssbNriSQGYBFE/DUJ7A=";
};
postPatch = ''

View File

@ -51,9 +51,7 @@ stdenv.mkDerivation (finalAttrs: {
python.pkgs.numpy
];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
] ++ lib.optionals usePython [
cmakeFlags = lib.optionals usePython [
"-DUSE_PYTHON_CONFIG=ON"
];

View File

@ -15,7 +15,6 @@ stdenv.mkDerivation rec {
buildInputs = [ zlib rocksdb rapidjson ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DPORTABLE=off"
"-DRAPIDJSON_HOME=${rapidjson}"
"-DROCKSDB_HOME=${rocksdb}"

View File

@ -104,7 +104,6 @@ stdenv.mkDerivation rec {
"-DKICAD_BUILD_QA_TESTS=OFF"
]
++ optionals (debug) [
"-DCMAKE_BUILD_TYPE=Debug"
"-DKICAD_STDLIB_DEBUG=ON"
"-DKICAD_USE_VALGRIND=ON"
]
@ -115,6 +114,8 @@ stdenv.mkDerivation rec {
"-DKICAD_SANITIZE_THREADS=ON"
];
cmakeBuildType = if debug then "Debug" else "Release";
nativeBuildInputs = [
cmake
doxygen

View File

@ -39,7 +39,6 @@ stdenv.mkDerivation rec {
'';
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DGLAD_REPRODUCIBLE=On"
];

View File

@ -35,9 +35,8 @@ stdenv.mkDerivation rec {
preConfigure = ''
patchShebangs ./src/
'';
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Production"
];
cmakeBuildType = "Production";
meta = with lib; {
description = "A high-performance theorem prover and SMT solver";

View File

@ -21,8 +21,9 @@ stdenv.mkDerivation rec {
patchShebangs ./src/
'';
cmakeBuildType = "Production";
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Production"
"-DBUILD_SHARED_LIBS=1"
"-DANTLR3_JAR=${antlr3_4}/lib/antlr/antlr-3.4-complete.jar"
];

View File

@ -72,10 +72,11 @@ in stdenv.mkDerivation rec {
(lit.override { python = kleePython; })
];
cmakeBuildType = if debug then "Debug" else if !debug && includeDebugInfo then "RelWithDebInfo" else "MinSizeRel";
cmakeFlags = let
onOff = val: if val then "ON" else "OFF";
in [
"-DCMAKE_BUILD_TYPE=${if debug then "Debug" else if !debug && includeDebugInfo then "RelWithDebInfo" else "MinSizeRel"}"
"-DKLEE_RUNTIME_BUILD_TYPE=${if debugRuntime then "Debug" else "Release"}"
"-DLLVMCC=${clang}/bin/clang"
"-DLLVMCXX=${clang}/bin/clang++"

View File

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "lean4";
version = "4.0.0";
version = "4.1.0";
src = fetchFromGitHub {
owner = "leanprover";
repo = "lean4";
rev = "v${version}";
hash = "sha256-3Ni+NiD0iSsOruUyRpBd+aC0TZNYfOLhwqCpPHPruPg=";
hash = "sha256-6qbCafG0bL5KxQt2gL6hV4PFDsEMM0UXfldeOOqxsaE=";
};
postPatch = ''

View File

@ -2,7 +2,7 @@
stdenv.mkDerivation rec {
pname = "subgit";
version = "3.3.16";
version = "3.3.17";
meta = {
description = "A tool for a smooth, stress-free SVN to Git migration";
@ -22,6 +22,6 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://subgit.com/download/subgit-${version}.zip";
sha256 = "sha256-p7uBEG43N4Hed+8HYf3I9lQEvmYLV61oIyRrPHuGmUA=";
sha256 = "sha256-u8YhaF4zOlDpEYd/0VUN8k4X8E1G4PB+UkJjBfQKkJY=";
};
}

View File

@ -7,10 +7,10 @@
stdenv.mkDerivation rec {
pname = "bilibili";
version = "1.12.0-1";
version = "1.12.0-2";
src = fetchurl {
url = "https://github.com/msojocs/bilibili-linux/releases/download/v${version}/io.github.msojocs.bilibili_${version}_amd64.deb";
hash = "sha256-WSnHyO71VIZDXYTcTCXcXZUkw5ScbIscs9daQokj3kA=";
hash = "sha256-LnTRznIUXU7h0SyOCfVjfqhNv2OCRujNoM1PtGUVJeU=";
};
unpackPhase = ''

View File

@ -49,7 +49,6 @@ stdenv.mkDerivation rec {
'' ;
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DENABLE_DEPLOY_DEPENDENCIES=OFF"
"-DUSE_SYSTEM_FLATBUFFERS_LIBS=ON"
"-DUSE_SYSTEM_PROTO_LIBS=ON"

View File

@ -72,7 +72,6 @@ mkDerivation rec {
];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DQTROOT=${qtbase}"
"-GNinja"
] ++ lib.optionals (!withDbus) [

View File

@ -14,21 +14,21 @@
}:
let
version = "1.17.4";
version = "1.17.5";
# Using two URLs as the first one will break as soon as a new version is released
src_bin = fetchurl {
urls = [
"http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz"
"http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz"
];
sha256 = "68ebc6f9baba7be4429014b73bdf6da33516a399f011e9e535eb383aff97748b";
sha256 = "ywCcMfaWAeL2bjFZJaCa0XW60EHyfFCW17Bt1QBN8E8=";
};
src_oss = fetchurl {
urls = [
"http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz"
"http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz"
];
sha256 = "70e3599dd0a120ababa00d44c93ec8d2d001aea93e902355786ed90a7360cc99";
sha256 = "/C9LDcUxF6tJkn2aQV+nMILRpK5H3wxOMMxHEMTC/CI=";
};
in mkDerivation {

View File

@ -34,7 +34,9 @@ in mkDerivation rec {
ln -s ${webClientTv} build/dependencies/web-client-tv-${webClientTvBuildId}.tar.xz
'';
cmakeFlags = [ "-DCMAKE_BUILD_TYPE=RelWithDebInfo" "-DQTROOT=${qtbase}" ];
cmakeBuildType = "RelWithDebInfo";
cmakeFlags = [ "-DQTROOT=${qtbase}" ];
# plexmediaplayer currently segfaults under wayland
qtWrapperArgs = [ "--set" "QT_QPA_PLATFORM" "xcb" ];

View File

@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-k+rG5AZjz47Q6bpVcTK7r4s7Avg3O+1iw+skK+cn0rk=";
};
cmakeFlags = lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
cmakeBuildType = if debug then "Debug" else "Release";
nativeBuildInputs = [
cmake

View File

@ -38,6 +38,10 @@ processor=0
hardware_platform=0
operating_system=0
# With no OPTION, same as -s.
if [[ $# -eq 0 ]]; then
kernel_name=1
fi
@getopt@/bin/getopt --test > /dev/null && rc=$? || rc=$?
if [[ $rc -ne 4 ]]; then
@ -54,11 +58,6 @@ else
eval set -- "$PARSED"
fi
# With no OPTION, same as -s.
if [[ $# -eq 0 ]]; then
kernel_name=1
fi
# Process each argument, and set the appropriate flag if we recognize it.
while [[ $# -ge 1 ]]; do
case "$1" in
@ -132,44 +131,44 @@ fi
# Darwin *nodename* 22.1.0 Darwin Kernel Version 22.1.0: Sun Oct 9 20:14:30 PDT 2022; root:xnu-8792.41.9~2/RELEASE_ARM64_T8103 arm64 arm Darwin
# NixOS:
# Linux *nodename* 6.0.13 #1-NixOS SMP PREEMPT_DYNAMIC Wed Dec 14 10:41:06 UTC 2022 x86_64 GNU/Linux
output=()
if [[ "$all" = "1" ]]; then
echo -n "$KERNEL_NAME_VAL $NODENAME_VAL $KERNEL_RELEASE_VAL $KERNEL_VERSION_VAL $MACHINE_VAL "
output+=("$KERNEL_NAME_VAL" "$NODENAME_VAL" "$KERNEL_RELEASE_VAL" "$KERNEL_VERSION_VAL" "$MACHINE_VAL")
# in help: except omit -p and -i if unknown.
#echo -n "$PROCESSOR_VAL $HARDWARE_PLATFORM_VAL\n"
echo -n "$OPERATING_SYSTEM_VAL"
# output+=($PROCESSOR_VAL $HARDWARE_PLATFORM_VAL)
output+=("$OPERATING_SYSTEM_VAL")
fi
if [[ "$kernel_name" = "1" ]]; then
echo -n "$KERNEL_NAME_VAL"
output+=("$KERNEL_NAME_VAL")
fi
if [[ "$nodename" = "1" ]]; then
echo -n "$NODENAME_VAL"
output+=("$NODENAME_VAL")
fi
if [[ "$kernel_release" = "1" ]]; then
echo -n "$KERNEL_RELEASE_VAL"
output+=("$KERNEL_RELEASE_VAL")
fi
if [[ "$kernel_version" = "1" ]]; then
echo -n "$KERNEL_VERSION_VAL"
output+=("$KERNEL_VERSION_VAL")
fi
if [[ "$machine" = "1" ]]; then
echo -n "$MACHINE_VAL"
output+=("$MACHINE_VAL")
fi
if [[ "$processor" = "1" ]]; then
echo -n "$PROCESSOR_VAL"
output+=("$PROCESSOR_VAL")
fi
if [[ "$hardware_platform" = "1" ]]; then
echo -n "$HARDWARE_PLATFORM_VAL"
output+=("$HARDWARE_PLATFORM_VAL")
fi
if [[ "$operating_system" = "1" ]]; then
echo -n "$OPERATING_SYSTEM_VAL"
output+=("$OPERATING_SYSTEM_VAL")
fi
# for newline.
echo
echo "${output[@]}"

View File

@ -37,7 +37,9 @@ const downloadFileHttps = (fileName, url, expectedHash, hashType = 'sha1') => {
res.on('end', () => {
file.close()
const h = hash.read()
if (h != expectedHash) return reject(new Error(`hash mismatch, expected ${expectedHash}, got ${h}`))
if (expectedHash === undefined){
console.log(`Warning: lockfile url ${url} doesn't end in "#<hash>" to validate against. Downloaded file had hash ${h}.`);
} else if (h != expectedHash) return reject(new Error(`hash mismatch, expected ${expectedHash}, got ${h}`))
resolve()
})
res.on('error', e => reject(e))

View File

@ -0,0 +1,61 @@
{ lib
, stdenvNoCC
, fetchFromGitHub
, makeWrapper
, scdoc
, coreutils
, grim
, hyprland
, hyprpicker
, jq
, libnotify
, slurp
, wl-clipboard
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "grimblast";
version = "unstable-2023-09-06";
src = fetchFromGitHub {
owner = "hyprwm";
repo = "contrib";
rev = "5b67181fced4fb06d26afcf9614b35765c576168";
hash = "sha256-W23nMGmDnyBgxO8O/9jcZtiSpa0taMNcRAD1das/ttw=";
};
strictDeps = true;
nativeBuildInputs = [
makeWrapper
scdoc
];
makeFlags = [
"PREFIX=$(out)"
];
sourceRoot = "${finalAttrs.src.name}/grimblast";
postInstall = ''
wrapProgram $out/bin/grimblast --prefix PATH ':' \
"${lib.makeBinPath [
coreutils
grim
hyprland
hyprpicker
jq
libnotify
slurp
wl-clipboard
]}"
'';
meta = with lib; {
description = "A helper for screenshots within Hyprland, based on grimshot";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ donovanglover ];
mainProgram = "grimblast";
};
})

View File

@ -0,0 +1,41 @@
{ lib
, python3
, fetchFromGitHub
}:
python3.pkgs.buildPythonApplication rec {
pname = "ha-mqtt-discoverable-cli";
version = "0.2.1";
pyproject = true;
src = fetchFromGitHub {
owner = "unixorn";
repo = "ha-mqtt-discoverable-cli";
rev = "refs/tags/v${version}";
hash = "sha256-miFlrBmxVuIJjpsyYnbQt+QAGSrS4sHlJpCmxouM2Wc=";
};
nativeBuildInputs = with python3.pkgs; [
poetry-core
];
propagatedBuildInputs = with python3.pkgs; [
ha-mqtt-discoverable
];
# Project has no real tests
doCheck = false;
pythonImportsCheck = [
"ha_mqtt_discoverable_cli"
];
meta = with lib; {
description = "CLI for creating Home Assistant compatible MQTT entities that will be automatically discovered";
homepage = "https://github.com/unixorn/ha-mqtt-discoverable-cli";
changelog = "https://github.com/unixorn/ha-mqtt-discoverable-cli/releases/tag/v0.2.1";
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
mainProgram = "hmd";
};
}

View File

@ -0,0 +1,66 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchYarnDeps
, makeWrapper
, prefetch-yarn-deps
, yarn
, nodejs
}:
stdenv.mkDerivation rec {
pname = "pxder";
version = "2.12.8";
src = fetchFromGitHub {
owner = "Tsuk1ko";
repo = "pxder";
rev = "v${version}";
hash = "sha256-+WZbs10+id+nohTZzLjEofb6k8PMGd73YhY3FUTXx5Q=";
};
offlineCache = fetchYarnDeps {
yarnLock = "${src}/yarn.lock";
hash = "sha256-++MqWIUntXQwOYpgAJ3nhAtZ5nxmEreioVHQokYkw7w=";
};
nativeBuildInputs = [
makeWrapper
prefetch-yarn-deps
yarn
];
configurePhase = ''
runHook preConfigure
export HOME=$(mktemp -d)
yarn config --offline set yarn-offline-mirror "$offlineCache"
fixup-yarn-lock yarn.lock
yarn --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive install
runHook postConfigure
'';
installPhase = ''
runHook preInstall
yarn --offline --production install
mkdir -p "$out/lib/node_modules/pxder"
cp -r . "$out/lib/node_modules/pxder"
makeWrapper "${nodejs}/bin/node" "$out/bin/pxder" \
--add-flags "$out/lib/node_modules/pxder/bin/pxder"
runHook postInstall
'';
meta = {
description = "Download illusts from pixiv.net";
homepage = "https://github.com/Tsuk1ko/pxder";
license = lib.licenses.gpl3Plus;
mainProgram = "pxder";
maintainers = with lib.maintainers; [ vanilla ];
platforms = lib.platforms.all;
};
}

View File

@ -17,13 +17,13 @@
assert lib.elem lineEditingLibrary [ "isocline" "readline" ];
stdenv.mkDerivation (finalAttrs: {
pname = "trealla";
version = "2.27.15";
version = "2.27.48";
src = fetchFromGitHub {
owner = "trealla-prolog";
repo = "trealla";
rev = "v${finalAttrs.version}";
hash = "sha256-b6OIp0UTBGl463wgwVCyTbC3Id0mgEIUnla+U3qv738=";
hash = "sha256-6+1mhMEXpKN9DynCBkvKWqP4KihpC2HWa/PA1gnDSRA=";
};
postPatch = ''

View File

@ -2,11 +2,11 @@
stdenvNoCC.mkDerivation rec {
pname = "clash-geoip";
version = "20230812";
version = "20230912";
src = fetchurl {
url = "https://github.com/Dreamacro/maxmind-geoip/releases/download/${version}/Country.mmdb";
sha256 = "sha256-yO8zSQjNYGxaSXcOhFOIE4HsiMnCm3ZVYfVZg5xO96s=";
sha256 = "sha256-MyNlgsa+8OS7vkMq74KKmUVzBhmDpF4ED2Xdgl3GIS4=";
};
dontUnpack = true;

View File

@ -23,7 +23,6 @@ stdenv.mkDerivation rec {
cmakeFlags = [
"-DCMAKE_INSTALL_PREFIX=$out"
"-DCMAKE_BUILD_TYPE=Release"
"-DBUILD_TESTING=OFF"
"-DKDE_INSTALL_USE_QT_SYS_PATHS=ON"
];

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