diff --git a/nixos/modules/services/mail/exim.nix b/nixos/modules/services/mail/exim.nix index cd0da4fc5098..a9504acee351 100644 --- a/nixos/modules/services/mail/exim.nix +++ b/nixos/modules/services/mail/exim.nix @@ -116,8 +116,9 @@ in wantedBy = [ "multi-user.target" ]; restartTriggers = [ config.environment.etc."exim.conf".source ]; serviceConfig = { - ExecStart = "${cfg.package}/bin/exim -bdf -q${cfg.queueRunnerInterval}"; - ExecReload = "${coreutils}/bin/kill -HUP $MAINPID"; + ExecStart = "+${cfg.package}/bin/exim -bdf -q${cfg.queueRunnerInterval}"; + ExecReload = "+${coreutils}/bin/kill -HUP $MAINPID"; + User = cfg.user; }; preStart = '' if ! test -d ${cfg.spoolDir}; then diff --git a/nixos/modules/services/networking/tinc.nix b/nixos/modules/services/networking/tinc.nix index 09b23a60a4af..7db83e6a584b 100644 --- a/nixos/modules/services/networking/tinc.nix +++ b/nixos/modules/services/networking/tinc.nix @@ -349,91 +349,94 @@ in ###### implementation - config = mkIf (cfg.networks != { }) { + config = mkIf (cfg.networks != { }) ( + let + etcConfig = foldr (a: b: a // b) { } + (flip mapAttrsToList cfg.networks (network: data: + flip mapAttrs' data.hosts (host: text: nameValuePair + ("tinc/${network}/hosts/${host}") + ({ mode = "0644"; user = "tinc.${network}"; inherit text; }) + ) // { + "tinc/${network}/tinc.conf" = { + mode = "0444"; + text = '' + ${toTincConf ({ Interface = "tinc.${network}"; } // data.settings)} + ${data.extraConfig} + ''; + }; + } + )); + in { + environment.etc = etcConfig; - environment.etc = foldr (a: b: a // b) { } - (flip mapAttrsToList cfg.networks (network: data: - flip mapAttrs' data.hosts (host: text: nameValuePair - ("tinc/${network}/hosts/${host}") - ({ mode = "0644"; user = "tinc.${network}"; inherit text; }) - ) // { - "tinc/${network}/tinc.conf" = { - mode = "0444"; - text = '' - ${toTincConf ({ Interface = "tinc.${network}"; } // data.settings)} - ${data.extraConfig} - ''; + systemd.services = flip mapAttrs' cfg.networks (network: data: nameValuePair + ("tinc.${network}") + (let version = getVersion data.package; in { + description = "Tinc Daemon - ${network}"; + wantedBy = [ "multi-user.target" ]; + path = [ data.package ]; + reloadTriggers = mkIf (versionAtLeast version "1.1pre") [ (builtins.toJSON etcConfig) ]; + restartTriggers = mkIf (versionOlder version "1.1pre") [ (builtins.toJSON etcConfig) ]; + serviceConfig = { + Type = "simple"; + Restart = "always"; + RestartSec = "3"; + ExecReload = mkIf (versionAtLeast version "1.1pre") "${data.package}/bin/tinc -n ${network} reload"; + ExecStart = "${data.package}/bin/tincd -D -U tinc.${network} -n ${network} ${optionalString (data.chroot) "-R"} --pidfile /run/tinc.${network}.pid -d ${toString data.debugLevel}"; }; - } - )); + preStart = '' + mkdir -p /etc/tinc/${network}/hosts + chown tinc.${network} /etc/tinc/${network}/hosts + mkdir -p /etc/tinc/${network}/invitations + chown tinc.${network} /etc/tinc/${network}/invitations - systemd.services = flip mapAttrs' cfg.networks (network: data: nameValuePair - ("tinc.${network}") - ({ - description = "Tinc Daemon - ${network}"; - wantedBy = [ "multi-user.target" ]; - path = [ data.package ]; - restartTriggers = [ config.environment.etc."tinc/${network}/tinc.conf".source ]; - serviceConfig = { - Type = "simple"; - Restart = "always"; - RestartSec = "3"; - ExecReload = mkIf (versionAtLeast (getVersion data.package) "1.1pre") "${data.package}/bin/tinc -n ${network} reload"; - ExecStart = "${data.package}/bin/tincd -D -U tinc.${network} -n ${network} ${optionalString (data.chroot) "-R"} --pidfile /run/tinc.${network}.pid -d ${toString data.debugLevel}"; + # Determine how we should generate our keys + if type tinc >/dev/null 2>&1; then + # Tinc 1.1+ uses the tinc helper application for key generation + ${if data.ed25519PrivateKeyFile != null then " # ed25519 Keyfile managed by nix" else '' + # Prefer ED25519 keys (only in 1.1+) + [ -f "/etc/tinc/${network}/ed25519_key.priv" ] || tinc -n ${network} generate-ed25519-keys + ''} + ${if data.rsaPrivateKeyFile != null then " # RSA Keyfile managed by nix" else '' + [ -f "/etc/tinc/${network}/rsa_key.priv" ] || tinc -n ${network} generate-rsa-keys 4096 + ''} + # In case there isn't anything to do + true + else + # Tinc 1.0 uses the tincd application + [ -f "/etc/tinc/${network}/rsa_key.priv" ] || tincd -n ${network} -K 4096 + fi + ''; + }) + ); + + environment.systemPackages = let + cli-wrappers = pkgs.stdenv.mkDerivation { + name = "tinc-cli-wrappers"; + nativeBuildInputs = [ pkgs.makeWrapper ]; + buildCommand = '' + mkdir -p $out/bin + ${concatStringsSep "\n" (mapAttrsToList (network: data: + optionalString (versionAtLeast data.package.version "1.1pre") '' + makeWrapper ${data.package}/bin/tinc "$out/bin/tinc.${network}" \ + --add-flags "--pidfile=/run/tinc.${network}.pid" \ + --add-flags "--config=/etc/tinc/${network}" + '') cfg.networks)} + ''; }; - preStart = '' - mkdir -p /etc/tinc/${network}/hosts - chown tinc.${network} /etc/tinc/${network}/hosts - mkdir -p /etc/tinc/${network}/invitations - chown tinc.${network} /etc/tinc/${network}/invitations + in [ cli-wrappers ]; - # Determine how we should generate our keys - if type tinc >/dev/null 2>&1; then - # Tinc 1.1+ uses the tinc helper application for key generation - ${if data.ed25519PrivateKeyFile != null then " # ed25519 Keyfile managed by nix" else '' - # Prefer ED25519 keys (only in 1.1+) - [ -f "/etc/tinc/${network}/ed25519_key.priv" ] || tinc -n ${network} generate-ed25519-keys - ''} - ${if data.rsaPrivateKeyFile != null then " # RSA Keyfile managed by nix" else '' - [ -f "/etc/tinc/${network}/rsa_key.priv" ] || tinc -n ${network} generate-rsa-keys 4096 - ''} - # In case there isn't anything to do - true - else - # Tinc 1.0 uses the tincd application - [ -f "/etc/tinc/${network}/rsa_key.priv" ] || tincd -n ${network} -K 4096 - fi - ''; - }) - ); - - environment.systemPackages = let - cli-wrappers = pkgs.stdenv.mkDerivation { - name = "tinc-cli-wrappers"; - nativeBuildInputs = [ pkgs.makeWrapper ]; - buildCommand = '' - mkdir -p $out/bin - ${concatStringsSep "\n" (mapAttrsToList (network: data: - optionalString (versionAtLeast data.package.version "1.1pre") '' - makeWrapper ${data.package}/bin/tinc "$out/bin/tinc.${network}" \ - --add-flags "--pidfile=/run/tinc.${network}.pid" \ - --add-flags "--config=/etc/tinc/${network}" - '') cfg.networks)} - ''; - }; - in [ cli-wrappers ]; - - users.users = flip mapAttrs' cfg.networks (network: _: - nameValuePair ("tinc.${network}") ({ - description = "Tinc daemon user for ${network}"; - isSystemUser = true; - group = "tinc.${network}"; - }) - ); - users.groups = flip mapAttrs' cfg.networks (network: _: - nameValuePair "tinc.${network}" {} - ); - }; + users.users = flip mapAttrs' cfg.networks (network: _: + nameValuePair ("tinc.${network}") ({ + description = "Tinc daemon user for ${network}"; + isSystemUser = true; + group = "tinc.${network}"; + }) + ); + users.groups = flip mapAttrs' cfg.networks (network: _: + nameValuePair "tinc.${network}" {} + ); + }); meta.maintainers = with maintainers; [ minijackson mic92 ]; } diff --git a/nixos/modules/services/web-apps/hedgedoc.nix b/nixos/modules/services/web-apps/hedgedoc.nix index a623e45691df..90ca3002c592 100644 --- a/nixos/modules/services/web-apps/hedgedoc.nix +++ b/nixos/modules/services/web-apps/hedgedoc.nix @@ -291,7 +291,8 @@ in }; defaultNotePath = mkOption { type = types.nullOr types.str; - default = "./public/default.md"; + default = "${cfg.package}/public/default.md"; + defaultText = literalExpression "\"\${cfg.package}/public/default.md\""; description = lib.mdDoc '' Path to the default Note file. (Non-canonical paths are relative to HedgeDoc's base directory) @@ -299,7 +300,8 @@ in }; docsPath = mkOption { type = types.nullOr types.str; - default = "./public/docs"; + default = "${cfg.package}/public/docs"; + defaultText = literalExpression "\"\${cfg.package}/public/docs\""; description = lib.mdDoc '' Path to the docs directory. (Non-canonical paths are relative to HedgeDoc's base directory) @@ -307,7 +309,8 @@ in }; indexPath = mkOption { type = types.nullOr types.str; - default = "./public/views/index.ejs"; + default = "${cfg.package}/public/views/index.ejs"; + defaultText = literalExpression "\"\${cfg.package}/public/views/index.ejs\""; description = lib.mdDoc '' Path to the index template file. (Non-canonical paths are relative to HedgeDoc's base directory) @@ -315,7 +318,8 @@ in }; hackmdPath = mkOption { type = types.nullOr types.str; - default = "./public/views/hackmd.ejs"; + default = "${cfg.package}/public/views/hackmd.ejs"; + defaultText = literalExpression "\"\${cfg.package}/public/views/hackmd.ejs\""; description = lib.mdDoc '' Path to the hackmd template file. (Non-canonical paths are relative to HedgeDoc's base directory) @@ -323,8 +327,8 @@ in }; errorPath = mkOption { type = types.nullOr types.str; - default = null; - defaultText = literalExpression "./public/views/error.ejs"; + default = "${cfg.package}/public/views/error.ejs"; + defaultText = literalExpression "\"\${cfg.package}/public/views/error.ejs\""; description = lib.mdDoc '' Path to the error template file. (Non-canonical paths are relative to HedgeDoc's base directory) @@ -332,8 +336,8 @@ in }; prettyPath = mkOption { type = types.nullOr types.str; - default = null; - defaultText = literalExpression "./public/views/pretty.ejs"; + default = "${cfg.package}/public/views/pretty.ejs"; + defaultText = literalExpression "\"\${cfg.package}/public/views/pretty.ejs\""; description = lib.mdDoc '' Path to the pretty template file. (Non-canonical paths are relative to HedgeDoc's base directory) @@ -341,8 +345,8 @@ in }; slidePath = mkOption { type = types.nullOr types.str; - default = null; - defaultText = literalExpression "./public/views/slide.hbs"; + default = "${cfg.package}/public/views/slide.hbs"; + defaultText = literalExpression "\"\${cfg.package}/public/views/slide.hbs\""; description = lib.mdDoc '' Path to the slide template file. (Non-canonical paths are relative to HedgeDoc's base directory) @@ -351,7 +355,7 @@ in uploadsPath = mkOption { type = types.str; default = "${cfg.workDir}/uploads"; - defaultText = literalExpression "/var/lib/${name}/uploads"; + defaultText = literalExpression "\"\${cfg.workDir}/uploads\""; description = lib.mdDoc '' Path under which uploaded files are saved. ''; diff --git a/nixos/modules/system/boot/binfmt.nix b/nixos/modules/system/boot/binfmt.nix index 87e66f73be0e..7f817e5d350d 100644 --- a/nixos/modules/system/boot/binfmt.nix +++ b/nixos/modules/system/boot/binfmt.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: let - inherit (lib) mkOption types optionalString stringAfter; + inherit (lib) mkOption mkDefault types optionalString stringAfter; cfg = config.boot.binfmt; @@ -281,7 +281,7 @@ in { config = { boot.binfmt.registrations = builtins.listToAttrs (map (system: { name = system; - value = let + value = { config, ... }: let interpreter = getEmulator system; qemuArch = getQemuArch system; @@ -292,13 +292,13 @@ in { in if preserveArgvZero then "${wrapper}/bin/${wrapperName}" else interpreter; - in { - inherit preserveArgvZero; + in ({ + preserveArgvZero = mkDefault preserveArgvZero; - interpreter = interpreterReg; - wrapInterpreterInShell = !preserveArgvZero; - interpreterSandboxPath = dirOf (dirOf interpreterReg); - } // (magics.${system} or (throw "Cannot create binfmt registration for system ${system}")); + interpreter = mkDefault interpreterReg; + wrapInterpreterInShell = mkDefault (!config.preserveArgvZero); + interpreterSandboxPath = mkDefault (dirOf (dirOf config.interpreter)); + } // (magics.${system} or (throw "Cannot create binfmt registration for system ${system}"))); }) cfg.emulatedSystems); nix.settings = lib.mkIf (cfg.emulatedSystems != []) { extra-platforms = cfg.emulatedSystems ++ lib.optional pkgs.stdenv.hostPlatform.isx86_64 "i686-linux"; diff --git a/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix b/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix index 641018969949..b6d158a7a7c8 100644 --- a/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix +++ b/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix @@ -6,9 +6,12 @@ , SDL2 , gtk3, gtksourceview3 , alsa-lib, libao, openal, libpulseaudio -, libicns, Cocoa, OpenAL +, libicns, makeWrapper, darwin }: +let + inherit (darwin.apple_sdk_11_0.frameworks) Cocoa OpenAL; +in stdenv.mkDerivation { pname = "bsnes-hd"; version = "10.6-beta"; @@ -35,8 +38,9 @@ stdenv.mkDerivation { ./macos-copy-app-to-prefix.patch ]; - nativeBuildInputs = [ pkg-config wrapGAppsHook ] - ++ lib.optionals stdenv.isDarwin [ libicns ]; + nativeBuildInputs = [ pkg-config ] + ++ lib.optionals stdenv.isLinux [ wrapGAppsHook ] + ++ lib.optionals stdenv.isDarwin [ libicns makeWrapper ]; buildInputs = [ SDL2 libao ] ++ lib.optionals stdenv.isLinux [ libX11 libXv udev gtk3 gtksourceview3 alsa-lib openal libpulseaudio ] @@ -44,10 +48,17 @@ stdenv.mkDerivation { enableParallelBuilding = true; - makeFlags = [ "-C" "bsnes" "hiro=gtk3" "prefix=$(out)" ]; + makeFlags = [ "-C" "bsnes" "prefix=$(out)" ] + ++ lib.optionals stdenv.isLinux [ "hiro=gtk3" ] + ++ lib.optionals stdenv.isDarwin [ "hiro=cocoa" ]; + + postInstall = lib.optionalString stdenv.isDarwin '' + mkdir -p $out/bin + makeWrapper $out/{Applications/bsnes.app/Contents/MacOS,bin}/bsnes + ''; # https://github.com/bsnes-emu/bsnes/issues/107 - preFixup = '' + preFixup = lib.optionalString stdenv.isLinux '' gappsWrapperArgs+=( --prefix GDK_BACKEND : x11 ) @@ -59,9 +70,6 @@ stdenv.mkDerivation { license = licenses.gpl3Only; maintainers = with maintainers; [ stevebob ]; platforms = platforms.unix; - # ../nall/traits.hpp:19:14: error: no member named 'is_floating_point_v' in namespace 'std'; did you mean 'is_floating_point'? - # using std::is_floating_point_v; - broken = (stdenv.isDarwin && stdenv.isx86_64); mainProgram = "bsnes"; }; } diff --git a/pkgs/applications/misc/epr/default.nix b/pkgs/applications/misc/epr/default.nix index 478422a1c5c8..20b2b4ba8d90 100644 --- a/pkgs/applications/misc/epr/default.nix +++ b/pkgs/applications/misc/epr/default.nix @@ -2,13 +2,13 @@ python3Packages.buildPythonApplication rec { pname = "epr"; - version = "2.3.0b"; + version = "2.4.13"; src = fetchFromGitHub { owner = "wustho"; repo = pname; rev = "v${version}"; - sha256 = "1a6md3015284hzmx0sby5kl59p7lwv73sq7sid35vrr15zrl0aw7"; + sha256 = "sha256-1qsqYlqGlCRhl7HINrcTDt5bGlb7g5PmaERylT+UvEg="; }; meta = with lib; { diff --git a/pkgs/applications/networking/maestral-qt/default.nix b/pkgs/applications/networking/maestral-qt/default.nix index 62f44f6f134a..cc19511d87cc 100644 --- a/pkgs/applications/networking/maestral-qt/default.nix +++ b/pkgs/applications/networking/maestral-qt/default.nix @@ -7,14 +7,14 @@ python3.pkgs.buildPythonApplication rec { pname = "maestral-qt"; - version = "1.6.3"; + version = "1.6.5"; disabled = python3.pythonOlder "3.7"; src = fetchFromGitHub { owner = "SamSchott"; repo = "maestral-qt"; rev = "refs/tags/v${version}"; - sha256 = "sha256-Fvr5WhrhxPBeAMsrVj/frg01qgt2SeWgrRJYgBxRFHc="; + hash = "sha256-yKsCM8LZ/GR/bc2WW+Ml1vSroB4iaxh09Az/B+aIVBU="; }; format = "pyproject"; diff --git a/pkgs/applications/version-management/fornalder/Cargo.lock b/pkgs/applications/version-management/fornalder/Cargo.lock deleted file mode 100644 index 5f1cafc9096a..000000000000 --- a/pkgs/applications/version-management/fornalder/Cargo.lock +++ /dev/null @@ -1,597 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "addr2line" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - -[[package]] -name = "ahash" -version = "0.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "739f4a8db6605981345c5654f3a85b056ce52f37a39d34da03f25bf2151ea16e" - -[[package]] -name = "aho-corasick" -version = "0.7.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" -dependencies = [ - "memchr", -] - -[[package]] -name = "ansi_term" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" -dependencies = [ - "winapi", -] - -[[package]] -name = "atty" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" -dependencies = [ - "hermit-abi", - "libc", - "winapi", -] - -[[package]] -name = "autocfg" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" - -[[package]] -name = "backtrace" -version = "0.3.66" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab84319d616cfb654d03394f38ab7e6f0919e181b1b57e1fd15e7fb4077d9a7" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", -] - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "cc" -version = "1.0.73" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11" - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "chrono" -version = "0.4.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" -dependencies = [ - "libc", - "num-integer", - "num-traits", - "time", - "winapi", -] - -[[package]] -name = "clap" -version = "2.34.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c" -dependencies = [ - "ansi_term", - "atty", - "bitflags", - "strsim", - "textwrap", - "unicode-width", - "vec_map", -] - -[[package]] -name = "either" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f107b87b6afc2a64fd13cac55fe06d6c8859f12d4b14cbcdd2c67d0976781be" - -[[package]] -name = "error-chain" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc" -dependencies = [ - "backtrace", - "version_check", -] - -[[package]] -name = "fallible-iterator" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" - -[[package]] -name = "fallible-streaming-iterator" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" - -[[package]] -name = "fastrand" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499" -dependencies = [ - "instant", -] - -[[package]] -name = "fornalder" -version = "0.1.0" -dependencies = [ - "chrono", - "error-chain", - "io", - "itertools", - "regex", - "rusqlite", - "serde", - "serde_json", - "structopt", - "tempfile", -] - -[[package]] -name = "gimli" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" - -[[package]] -name = "hashbrown" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" -dependencies = [ - "ahash", -] - -[[package]] -name = "hashlink" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d99cf782f0dc4372d26846bec3de7804ceb5df083c2d4462c0b8d2330e894fa8" -dependencies = [ - "hashbrown", -] - -[[package]] -name = "heck" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "hermit-abi" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" -dependencies = [ - "libc", -] - -[[package]] -name = "instant" -version = "0.1.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "io" -version = "0.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85c839d30624bc6b3dced6a4652823d1967fb7939d4848ad002d509b1fc916b2" - -[[package]] -name = "itertools" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d" - -[[package]] -name = "lazy_static" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" - -[[package]] -name = "libc" -version = "0.2.126" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836" - -[[package]] -name = "libsqlite3-sys" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64d31059f22935e6c31830db5249ba2b7ecd54fd73a9909286f0a67aa55c2fbd" -dependencies = [ - "cc", - "pkg-config", - "vcpkg", -] - -[[package]] -name = "memchr" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" - -[[package]] -name = "miniz_oxide" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f5c75688da582b8ffc1f1799e9db273f32133c49e048f614d22ec3256773ccc" -dependencies = [ - "adler", -] - -[[package]] -name = "num-integer" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" -dependencies = [ - "autocfg", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" -dependencies = [ - "autocfg", -] - -[[package]] -name = "object" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21158b2c33aa6d4561f1c0a6ea283ca92bc54802a93b263e910746d679a7eb53" -dependencies = [ - "memchr", -] - -[[package]] -name = "pkg-config" -version = "0.3.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" - -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", -] - -[[package]] -name = "proc-macro2" -version = "1.0.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd96a1e8ed2596c337f8eae5f24924ec83f5ad5ab21ea8e455d3566c69fbcaf7" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "quote" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bcdf212e9776fbcb2d23ab029360416bb1706b1aea2d1a5ba002727cbcab804" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "redox_syscall" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534cfe58d6a18cc17120fbf4635d53d14691c1fe4d951064df9bd326178d7d5a" -dependencies = [ - "bitflags", -] - -[[package]] -name = "regex" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.6.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244" - -[[package]] -name = "remove_dir_all" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" -dependencies = [ - "winapi", -] - -[[package]] -name = "rusqlite" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5f38ee71cbab2c827ec0ac24e76f82eca723cee92c509a65f67dee393c25112" -dependencies = [ - "bitflags", - "fallible-iterator", - "fallible-streaming-iterator", - "hashlink", - "libsqlite3-sys", - "memchr", - "smallvec", -] - -[[package]] -name = "rustc-demangle" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" - -[[package]] -name = "ryu" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695" - -[[package]] -name = "serde" -version = "1.0.140" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc855a42c7967b7c369eb5860f7164ef1f6f81c20c7cc1141f2a604e18723b03" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.140" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f2122636b9fe3b81f1cb25099fcf2d3f542cdb1d45940d56c713158884a05da" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_json" -version = "1.0.82" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82c2c1fdcd807d1098552c5b9a36e425e42e9fbd7c6a37a8425f390f781f7fa7" -dependencies = [ - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "smallvec" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1" - -[[package]] -name = "strsim" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" - -[[package]] -name = "structopt" -version = "0.3.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c6b5c64445ba8094a6ab0c3cd2ad323e07171012d9c98b0b15651daf1787a10" -dependencies = [ - "clap", - "lazy_static", - "structopt-derive", -] - -[[package]] -name = "structopt-derive" -version = "0.4.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0" -dependencies = [ - "heck", - "proc-macro-error", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "syn" -version = "1.0.98" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c50aef8a904de4c23c788f104b7dddc7d6f79c647c7c8ce4cc8f73eb0ca773dd" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "tempfile" -version = "3.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4" -dependencies = [ - "cfg-if", - "fastrand", - "libc", - "redox_syscall", - "remove_dir_all", - "winapi", -] - -[[package]] -name = "textwrap" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" -dependencies = [ - "unicode-width", -] - -[[package]] -name = "time" -version = "0.1.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" -dependencies = [ - "libc", - "wasi", - "winapi", -] - -[[package]] -name = "unicode-ident" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c61ba63f9235225a22310255a29b806b907c9b8c964bcbd0a2c70f3f2deea7" - -[[package]] -name = "unicode-segmentation" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99" - -[[package]] -name = "unicode-width" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" - -[[package]] -name = "vcpkg" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" - -[[package]] -name = "vec_map" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" - -[[package]] -name = "version_check" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" - -[[package]] -name = "wasi" -version = "0.10.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" diff --git a/pkgs/applications/version-management/fornalder/default.nix b/pkgs/applications/version-management/fornalder/default.nix index 9dd25cf12e3c..85f1ad6e6ba2 100644 --- a/pkgs/applications/version-management/fornalder/default.nix +++ b/pkgs/applications/version-management/fornalder/default.nix @@ -1,29 +1,29 @@ -{ fetchFromGitHub, rustPlatform, lib }: +{ lib, rustPlatform, fetchFromGitHub, makeWrapper, gnuplot }: rustPlatform.buildRustPackage rec { pname = "fornalder"; - version = "unstable-2022-07-23"; + version = "unstable-2022-12-25"; src = fetchFromGitHub { owner = "hpjansson"; repo = pname; - rev = "44129f01910a9f16d97d0a3d8b1b376bf3338ea6"; - sha256 = "sha256-YODgR98SnpL6SM2nKrnzhpsEzYQFqduqigua/SXhazk="; + rev = "3248128fe320d88183d17a65e936092e07d6529b"; + sha256 = "sha256-IPSxVWJs4EhyBdA1NXpD8v3fusewt1ELpn/kbZt7c5Q="; }; - cargoLock.lockFile = ./Cargo.lock; + cargoSha256 = "sha256-eK+oQbOQj8pKiOTXzIgRjzVB7Js8MMa9V6cF9D98Ftc="; - postPatch = '' - ln -s ${./Cargo.lock} Cargo.lock + nativeBuildInputs = [ makeWrapper ]; + + postInstall = '' + wrapProgram $out/bin/fornalder \ + --suffix PATH : ${lib.makeBinPath [ gnuplot ]} ''; - # tests don't typecheck - doCheck = false; - meta = with lib; { description = "Visualize long-term trends in collections of Git repositories"; homepage = "https://github.com/hpjansson/fornalder"; license = licenses.gpl3Only; - maintainers = with maintainers; [ astro ]; + maintainers = with maintainers; [ astro figsoda ]; }; } diff --git a/pkgs/applications/video/openshot-qt/libopenshot-audio.nix b/pkgs/applications/video/openshot-qt/libopenshot-audio.nix index bf77e8a8f0da..438eae467098 100644 --- a/pkgs/applications/video/openshot-qt/libopenshot-audio.nix +++ b/pkgs/applications/video/openshot-qt/libopenshot-audio.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , alsa-lib , cmake , doxygen @@ -28,6 +29,11 @@ stdenv.mkDerivation rec { sha256 = "sha256-XtwTZsj/L/sw/28E7Qr5UyghGlBFFXvbmZLGXBB8vg0="; }; + patches = [ + # https://forum.juce.com/t/juce-and-macos-11-arm/40285/24 + ./undef-fpret-on-aarch64-darwin.patch + ]; + nativeBuildInputs = [ cmake doxygen @@ -63,7 +69,5 @@ stdenv.mkDerivation rec { license = with licenses; gpl3Plus; maintainers = with maintainers; [ AndersonTorres ]; platforms = with platforms; unix; - # never built on aarch64-darwin since first introduction in nixpkgs - broken = stdenv.isDarwin && stdenv.isAarch64; }; } diff --git a/pkgs/applications/video/openshot-qt/libopenshot.nix b/pkgs/applications/video/openshot-qt/libopenshot.nix index 8a98010ef642..22ed82fd3d0b 100644 --- a/pkgs/applications/video/openshot-qt/libopenshot.nix +++ b/pkgs/applications/video/openshot-qt/libopenshot.nix @@ -35,8 +35,9 @@ stdenv.mkDerivation rec { export _REL_PYTHON_MODULE_PATH=$(toPythonPath $out) ''; - nativeBuildInputs = [ + nativeBuildInputs = lib.optionals stdenv.isLinux [ alsa-lib + ] ++ [ cmake doxygen pkg-config diff --git a/pkgs/applications/video/openshot-qt/undef-fpret-on-aarch64-darwin.patch b/pkgs/applications/video/openshot-qt/undef-fpret-on-aarch64-darwin.patch new file mode 100644 index 000000000000..c391f77dda8b --- /dev/null +++ b/pkgs/applications/video/openshot-qt/undef-fpret-on-aarch64-darwin.patch @@ -0,0 +1,13 @@ +diff --git a/JuceLibraryCode/modules/juce_core/native/juce_osx_ObjCHelpers.h b/JuceLibraryCode/modules/juce_core/native/juce_osx_ObjCHelpers.h +index 2593790..0b5983d 100644 +--- a/JuceLibraryCode/modules/juce_core/native/juce_osx_ObjCHelpers.h ++++ b/JuceLibraryCode/modules/juce_core/native/juce_osx_ObjCHelpers.h +@@ -209,7 +209,7 @@ static inline ReturnValue ObjCMsgSendSuper (struct objc_super* s, SEL sel, Param + typedef id (*MsgSendSuperFn) (struct objc_super*, SEL, ...); + static inline MsgSendSuperFn getMsgSendSuperFn() noexcept { return (MsgSendSuperFn) (void*) objc_msgSendSuper; } + +-#if ! JUCE_IOS ++#if JUCE_INTEL && ! JUCE_IOS + typedef double (*MsgSendFPRetFn) (id, SEL op, ...); + static inline MsgSendFPRetFn getMsgSendFPRetFn() noexcept { return (MsgSendFPRetFn) (void*) objc_msgSend_fpret; } + #endif diff --git a/pkgs/applications/window-managers/hyprwm/hypr/default.nix b/pkgs/applications/window-managers/hyprwm/hypr/default.nix index 673fa90c5005..2485552fce6e 100644 --- a/pkgs/applications/window-managers/hyprwm/hypr/default.nix +++ b/pkgs/applications/window-managers/hyprwm/hypr/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , cairo , cmake , glib @@ -15,6 +16,7 @@ , xcbutilcursor , xcbutilkeysyms , xcbutilwm +, xcbutil , xmodmap }: @@ -31,6 +33,15 @@ stdenv.mkDerivation (finalAttrs: { patches = [ ./000-dont-set-compiler.diff + # TODO: remove on next release + (fetchpatch { + url = "https://github.com/hyprwm/Hypr/commit/08d6af2caf882247943f0e8518ad782f35d1aba4.patch"; + sha256 = "sha256-WjR12ZH8CE+l9xSeQUAPYW5r5HzoPpod5YqDPJTdTY8="; + }) + (fetchpatch { + url = "https://github.com/hyprwm/Hypr/commit/7512a3ab91865b1e11b8c4a9dfdffb25c2b153de.patch"; + sha256 = "sha256-0Hq5n115z0U44op7A1FO9tUOeMEPV0QgD5E5zcmend0="; + }) ]; nativeBuildInputs = [ @@ -51,8 +62,12 @@ stdenv.mkDerivation (finalAttrs: { xcbutilcursor xcbutilkeysyms xcbutilwm + xcbutil ]; + # src/ewmh/ewmh.cpp:67:28: error: non-constant-expression cannot be narrowed from type 'int' to 'uint32_t' (aka 'unsigned int') in initializer list + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-Wno-c++11-narrowing"; + installPhase = '' runHook preInstall @@ -71,7 +86,6 @@ stdenv.mkDerivation (finalAttrs: { license = licenses.bsd3; maintainers = with maintainers; [ AndersonTorres ]; inherit (libX11.meta) platforms; - broken = stdenv.isDarwin; # xcb/xcb_atom.h not found mainProgram = "Hypr"; }; }) diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix index f66b81299a24..7bae2fc7cfb2 100644 --- a/pkgs/build-support/vm/default.nix +++ b/pkgs/build-support/vm/default.nix @@ -977,6 +977,40 @@ rec { packages = commonDebPackages ++ [ "diffutils" "libc-bin" ]; }; + ubuntu2204i386 = { + name = "ubuntu-22.04-jammy-i386"; + fullName = "Ubuntu 22.04 Jammy (i386)"; + packagesLists = + [ (fetchurl { + url = "mirror://ubuntu/dists/jammy/main/binary-i386/Packages.xz"; + sha256 = "sha256-iZBmwT0ep4v+V3sayybbOgZBOFFZwPGpOKtmuLMMVPQ="; + }) + (fetchurl { + url = "mirror://ubuntu/dists/jammy/universe/binary-i386/Packages.xz"; + sha256 = "sha256-DO2LdpZ9rDDBhWj2gvDWd0TJJVZHxKsYTKTi6GXjm1E="; + }) + ]; + urlPrefix = "mirror://ubuntu"; + packages = commonDebPackages ++ [ "diffutils" "libc-bin" ]; + }; + + ubuntu2204x86_64 = { + name = "ubuntu-22.04-jammy-amd64"; + fullName = "Ubuntu 22.04 Jammy (amd64)"; + packagesLists = + [ (fetchurl { + url = "mirror://ubuntu/dists/jammy/main/binary-amd64/Packages.xz"; + sha256 = "sha256-N8tX8VVMv6ccWinun/7hipqMF4K7BWjgh0t/9M6PnBE="; + }) + (fetchurl { + url = "mirror://ubuntu/dists/jammy/universe/binary-amd64/Packages.xz"; + sha256 = "sha256-0pyyTJP+xfQyVXBrzn60bUd5lSA52MaKwbsUpvNlXOI="; + }) + ]; + urlPrefix = "mirror://ubuntu"; + packages = commonDebPackages ++ [ "diffutils" "libc-bin" ]; + }; + debian10i386 = { name = "debian-10.13-buster-i386"; fullName = "Debian 10.13 Buster (i386)"; diff --git a/pkgs/development/libraries/libwebsockets/default.nix b/pkgs/development/libraries/libwebsockets/default.nix index 0b8d8d8e5817..a535763b8c19 100644 --- a/pkgs/development/libraries/libwebsockets/default.nix +++ b/pkgs/development/libraries/libwebsockets/default.nix @@ -20,6 +20,8 @@ stdenv.mkDerivation rec { hash = "sha256-why8LAcc4XN0JdTJ1JoNWijKENL5mOHBsi9K4wpYr2c="; }; + outputs = [ "out" "dev" ]; + buildInputs = [ openssl zlib libuv ]; nativeBuildInputs = [ cmake ]; @@ -31,10 +33,23 @@ stdenv.mkDerivation rec { "-DDISABLE_WERROR=ON" "-DLWS_BUILD_HASH=no_hash" ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "-DLWS_WITHOUT_TESTAPPS=ON" - ++ lib.optional withExternalPoll "-DLWS_WITH_EXTERNAL_POLL=ON"; + ++ lib.optional withExternalPoll "-DLWS_WITH_EXTERNAL_POLL=ON" + ++ ( + if stdenv.hostPlatform.isStatic then + [ "-DLWS_WITH_SHARED=OFF" ] + else + [ "-DLWS_WITH_STATIC=OFF" "-DLWS_LINK_TESTAPPS_DYNAMIC=ON" ] + ); postInstall = '' - rm -r ${placeholder "out"}/share/libwebsockets-test-server + # Fix path that will be incorrect on move to "dev" output. + substituteInPlace "$out/lib/cmake/libwebsockets/LibwebsocketsTargets-release.cmake" \ + --replace "\''${_IMPORT_PREFIX}" "$out" + + # The package builds a few test programs that are not usually necessary. + # Move those to the dev output. + moveToOutput "bin/libwebsockets-test-*" "$dev" + moveToOutput "share/libwebsockets-test-*" "$dev" ''; # $out/share/libwebsockets-test-server/plugins/libprotocol_*.so refers to crtbeginS.o diff --git a/pkgs/development/python-modules/fireflyalgorithm/default.nix b/pkgs/development/python-modules/fireflyalgorithm/default.nix index 3a51dcbd5994..86e5f9b79f24 100644 --- a/pkgs/development/python-modules/fireflyalgorithm/default.nix +++ b/pkgs/development/python-modules/fireflyalgorithm/default.nix @@ -9,16 +9,16 @@ buildPythonPackage rec { pname = "FireflyAlgorithm"; - version = "0.3.3"; + version = "0.3.4"; format = "pyproject"; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "firefly-cpp"; repo = pname; - rev = version; - sha256 = "sha256-C2bm2Eb2kqfCnGORAzHX7hh4qj1MtDSkAu77lcZWQKc="; + rev = "refs/tags/${version}"; + hash = "sha256-rJOcPQU/oz/qP787OpZsfbjSsT2dWvhJLTs4N5TriWc="; }; nativeBuildInputs = [ @@ -40,6 +40,7 @@ buildPythonPackage rec { meta = with lib; { description = "An implementation of the stochastic nature-inspired algorithm for optimization"; homepage = "https://github.com/firefly-cpp/FireflyAlgorithm"; + changelog = "https://github.com/firefly-cpp/FireflyAlgorithm/blob/${version}/CHANGELOG.md"; license = licenses.mit; maintainers = with maintainers; [ firefly-cpp ]; }; diff --git a/pkgs/development/python-modules/hahomematic/default.nix b/pkgs/development/python-modules/hahomematic/default.nix index 4bb409389931..c8af931174ee 100644 --- a/pkgs/development/python-modules/hahomematic/default.nix +++ b/pkgs/development/python-modules/hahomematic/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "hahomematic"; - version = "2022.12.9"; + version = "2022.12.11"; format = "pyproject"; disabled = pythonOlder "3.9"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "danielperna84"; repo = pname; rev = "refs/tags/${version}"; - sha256 = "sha256-Pmgdu22pZOciHveyXY212QPMMPdwvYCc9HshSqBOunE="; + sha256 = "sha256-s9nxFi7XOcBy7Q1PnnyVKWoyusXnypqmI3BRVtS3p+k="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/maestral/default.nix b/pkgs/development/python-modules/maestral/default.nix index c69dac517679..3effa9282562 100644 --- a/pkgs/development/python-modules/maestral/default.nix +++ b/pkgs/development/python-modules/maestral/default.nix @@ -9,24 +9,25 @@ , desktop-notifier , dropbox , fasteners +, importlib-metadata , keyring , keyrings-alt , packaging , pathspec , Pyro5 , requests +, rich , setuptools -, sdnotify , survey +, typing-extensions , watchdog -, importlib-metadata , pytestCheckHook , nixosTests }: buildPythonPackage rec { pname = "maestral"; - version = "1.6.3"; + version = "1.6.5"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -35,7 +36,7 @@ buildPythonPackage rec { owner = "SamSchott"; repo = "maestral"; rev = "refs/tags/v${version}"; - hash = "sha256-JVzaWwdHAn5JOruLEN9Z2/5eV1oh3J2NQffNI3RqYfA="; + hash = "sha256-YCPMPkvMaZ0uzTiiCbXFDpgDS0yGlfF0wKK2HhYmH+Y="; }; propagatedBuildInputs = [ @@ -44,18 +45,18 @@ buildPythonPackage rec { dbus-python dropbox fasteners + importlib-metadata keyring keyrings-alt packaging pathspec Pyro5 requests + rich setuptools - sdnotify survey + typing-extensions watchdog - ] ++ lib.optionals (pythonOlder "3.8") [ - importlib-metadata ]; makeWrapperArgs = [ diff --git a/pkgs/development/python-modules/pytools/default.nix b/pkgs/development/python-modules/pytools/default.nix index 3e811a39f00c..229815d966a6 100644 --- a/pkgs/development/python-modules/pytools/default.nix +++ b/pkgs/development/python-modules/pytools/default.nix @@ -11,12 +11,12 @@ buildPythonPackage rec { pname = "pytools"; - version = "2022.1.12"; + version = "2022.1.14"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "sha256-TWKHXpoqsqJOOTqai3mUkvGnIb/6hArzgHv9Qocd0fQ="; + sha256 = "sha256-QQFzcWELsqA2hVl8UoUgXmWXx/F3OD2VyLhxJEsSwU4="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/sanic-testing/default.nix b/pkgs/development/python-modules/sanic-testing/default.nix index 907950abdfb0..acb174c86997 100644 --- a/pkgs/development/python-modules/sanic-testing/default.nix +++ b/pkgs/development/python-modules/sanic-testing/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "sanic-testing"; - version = "22.9.0"; + version = "22.12.0"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "sanic-org"; repo = "sanic-testing"; rev = "refs/tags/v${version}"; - hash = "sha256-o0uXeIw2wV9sxGkEH5jPrQvRj1W2CsUU2n+8R8Ta12Y="; + hash = "sha256-pFTF2SQ9giRzPhG24FLqLPJRXaFdQ7Xi5EeltS7J3DI="; }; outputs = [ diff --git a/pkgs/development/python-modules/sqlobject/default.nix b/pkgs/development/python-modules/sqlobject/default.nix index 2cd80b086723..7da5f8e58027 100644 --- a/pkgs/development/python-modules/sqlobject/default.nix +++ b/pkgs/development/python-modules/sqlobject/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "sqlobject"; - version = "3.10.0"; + version = "3.10.1"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -19,7 +19,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "SQLObject"; inherit version; - hash = "sha256-i/wBFu8z/DS5Gtj00ZKrbuPsvqDH3O5GmbrknGbvJ7A="; + hash = "sha256-/PPqJ/ha8GRQpY/uQOLIF0v90p9tZKrHTCMkusiIuEQ="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/tools/build-managers/scala-cli/default.nix b/pkgs/development/tools/build-managers/scala-cli/default.nix index 307efdd9458a..9381922a5fb5 100644 --- a/pkgs/development/tools/build-managers/scala-cli/default.nix +++ b/pkgs/development/tools/build-managers/scala-cli/default.nix @@ -10,7 +10,6 @@ , jre }: -assert lib.versionAtLeast jre.version "17.0.0"; let pname = "scala-cli"; sources = builtins.fromJSON (builtins.readFile ./sources.json); @@ -22,7 +21,11 @@ stdenv.mkDerivation { inherit pname version; nativeBuildInputs = [ installShellFiles makeWrapper ] ++ lib.optional stdenv.isLinux autoPatchelfHook; - buildInputs = [ coreutils zlib stdenv.cc.cc ]; + buildInputs = + assert lib.assertMsg (lib.versionAtLeast jre.version "17.0.0") '' + scala-cli requires Java 17 or newer, but ${jre.name} is ${jre.version} + ''; + [ coreutils zlib stdenv.cc.cc ]; src = let asset = assets."${stdenv.hostPlatform.system}" or (throw "Unsupported platform ${stdenv.hostPlatform.system}"); diff --git a/pkgs/servers/irc/ergochat/default.nix b/pkgs/servers/irc/ergochat/default.nix index cbcc0cfaad21..d89dd020d7e2 100644 --- a/pkgs/servers/irc/ergochat/default.nix +++ b/pkgs/servers/irc/ergochat/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "ergo"; - version = "2.10.0"; + version = "2.11.0"; src = fetchFromGitHub { owner = "ergochat"; repo = "ergo"; rev = "v${version}"; - sha256 = "sha256-SydseZSEuFhbaU4OMnT8zFLbRfmeKwXsZZeDh8mbZco="; + sha256 = "sha256-sZ2HSfYa7Xiu7dw8dUgqaf/tCh66bLlrXC+46J5i3iQ="; }; vendorSha256 = null; diff --git a/pkgs/servers/prowlarr/default.nix b/pkgs/servers/prowlarr/default.nix index 015a6242e87c..9bf1ecd12953 100644 --- a/pkgs/servers/prowlarr/default.nix +++ b/pkgs/servers/prowlarr/default.nix @@ -16,14 +16,14 @@ let }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); hash = { - x64-linux_hash = "sha256-vPei97xs5jpYhWSjXUkbu5/ETeMzOMqLOZHh7N0AHvY="; - arm64-linux_hash = "sha256-NTZtQVLVo5ZPxciwjz/abXO5VrxIg72L1y3H4aasJug="; - x64-osx_hash = "sha256-5UIiXLo91KAOCPeBEDJD4LfH8XXlSqXRSseCSrTDjes="; + x64-linux_hash = "sha256-OYCZPP8w3HSxph8mg5MWDsjG7ubSFsPtpEQY7TWJ198="; + arm64-linux_hash = "sha256-kts6pOKaBVrr3uOba9UXsMLnzAA5EalfZk+v5PKqbMQ="; + x64-osx_hash = "sha256-/TEvsgeQUZdMFoPoZkCaJQCiJPguLt3AxiCbMg+Q/8M="; }."${arch}-${os}_hash"; in stdenv.mkDerivation rec { pname = "prowlarr"; - version = "0.4.10.2111"; + version = "1.0.0.2171"; src = fetchurl { url = "https://github.com/Prowlarr/Prowlarr/releases/download/v${version}/Prowlarr.develop.${version}.${os}-core-${arch}.tar.gz"; diff --git a/pkgs/tools/networking/sing-box/default.nix b/pkgs/tools/networking/sing-box/default.nix new file mode 100644 index 000000000000..99d320f4f85c --- /dev/null +++ b/pkgs/tools/networking/sing-box/default.nix @@ -0,0 +1,54 @@ +{ lib +, stdenv +, buildGoModule +, fetchFromGitHub +, installShellFiles +, buildPackages +}: + +buildGoModule rec { + pname = "sing-box"; + version = "1.1.1"; + + src = fetchFromGitHub { + owner = "SagerNet"; + repo = pname; + rev = "v${version}"; + hash = "sha256-CNy+C5E5iAZHZ7PsS0Hj43irCuCvy/bes3kovvH81/o="; + }; + + vendorHash = "sha256-fUHfvqzbu2P7N413dDuV41myhReNSYvgF+Cc6SgG6y4="; + + tags = [ + "with_quic" + "with_grpc" + "with_wireguard" + "with_shadowsocksr" + "with_ech" + "with_utls" + "with_acme" + "with_clash_api" + "with_v2ray_api" + "with_gvisor" + ]; + + subPackages = [ + "cmd/sing-box" + ]; + + nativeBuildInputs = [ installShellFiles ]; + + postInstall = let emulator = stdenv.hostPlatform.emulator buildPackages; in '' + installShellCompletion --cmd sing-box \ + --bash <(${emulator} $out/bin/sing-box completion bash) \ + --fish <(${emulator} $out/bin/sing-box completion fish) \ + --zsh <(${emulator} $out/bin/sing-box completion zsh ) + ''; + + meta = with lib;{ + homepage = "https://sing-box.sagernet.org"; + description = "The universal proxy platform"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ nickcao ]; + }; +} diff --git a/pkgs/tools/system/rsyslog/default.nix b/pkgs/tools/system/rsyslog/default.nix index fdb7bba0a3eb..09be16b1c945 100644 --- a/pkgs/tools/system/rsyslog/default.nix +++ b/pkgs/tools/system/rsyslog/default.nix @@ -62,11 +62,11 @@ stdenv.mkDerivation rec { pname = "rsyslog"; - version = "8.2210.0"; + version = "8.2212.0"; src = fetchurl { url = "https://www.rsyslog.com/files/download/rsyslog/${pname}-${version}.tar.gz"; - hash = "sha256-ZD7ieROdaUoHyf8/8Q3FITvfh0mD0n03NSXpXgX6CU0="; + hash = "sha256-U7Wahy49xzhM3BSavpdEkWd29wV9kF899nItLrGwTzU="; }; nativeBuildInputs = [ @@ -187,7 +187,7 @@ stdenv.mkDerivation rec { homepage = "https://www.rsyslog.com/"; description = "Enhanced syslog implementation"; changelog = "https://raw.githubusercontent.com/rsyslog/rsyslog/v${version}/ChangeLog"; - license = licenses.gpl3; + license = licenses.gpl3Only; platforms = platforms.linux; maintainers = with maintainers; [ ]; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 777422059fbd..d9145f3fbbbc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2175,9 +2175,7 @@ with pkgs; ares = darwin.apple_sdk_11_0.callPackage ../applications/emulators/bsnes/ares { }; - bsnes-hd = callPackage ../applications/emulators/bsnes/bsnes-hd { - inherit (darwin.apple_sdk.frameworks) Cocoa OpenAL; - }; + bsnes-hd = darwin.apple_sdk_11_0.callPackage ../applications/emulators/bsnes/bsnes-hd { }; higan = callPackage ../applications/emulators/bsnes/higan { }; @@ -4775,7 +4773,9 @@ with pkgs; hunt = callPackage ../tools/misc/hunt { }; - hypr = callPackage ../applications/window-managers/hyprwm/hypr { }; + hypr = callPackage ../applications/window-managers/hyprwm/hypr { + cairo = cairo.override { xcbSupport = true; }; + }; hyprland = callPackage ../applications/window-managers/hyprwm/hyprland { stdenv = gcc11Stdenv; @@ -11693,6 +11693,8 @@ with pkgs; skydns = callPackage ../servers/skydns { }; + sing-box = callPackage ../tools/networking/sing-box { }; + sipcalc = callPackage ../tools/networking/sipcalc { }; skribilo = callPackage ../tools/typesetting/skribilo { @@ -16025,6 +16027,7 @@ with pkgs; lua51Packages = recurseIntoAttrs lua5_1.pkgs; lua52Packages = recurseIntoAttrs lua5_2.pkgs; lua53Packages = recurseIntoAttrs lua5_3.pkgs; + lua54Packages = recurseIntoAttrs lua5_4.pkgs; luajitPackages = recurseIntoAttrs luajit.pkgs; luaPackages = lua52Packages;