diff --git a/nixos/modules/services/backup/borgbackup.nix b/nixos/modules/services/backup/borgbackup.nix index 7b29eb41e72a..ea1d393c7b02 100644 --- a/nixos/modules/services/backup/borgbackup.nix +++ b/nixos/modules/services/backup/borgbackup.nix @@ -58,7 +58,7 @@ let '' + optionalString (cfg.prune.keep != { }) '' borg prune $extraArgs \ ${mkKeepArgs cfg} \ - ${optionalString (cfg.prune.prefix != null) "--prefix ${escapeShellArg cfg.prune.prefix} \\"} + ${optionalString (cfg.prune.prefix != null) "--glob-archives ${escapeShellArg "${cfg.prune.prefix}*"}"} \ $extraPruneArgs ${cfg.postPrune} ''; diff --git a/nixos/modules/services/databases/surrealdb.nix b/nixos/modules/services/databases/surrealdb.nix index 27269eb02f64..02cd11655e1e 100644 --- a/nixos/modules/services/databases/surrealdb.nix +++ b/nixos/modules/services/databases/surrealdb.nix @@ -37,6 +37,20 @@ in { default = 8000; example = 8000; }; + + userNamePath = mkOption { + type = types.path; + description = lib.mdDoc '' + Path to read the username from. + ''; + }; + + passwordPath = mkOption { + type = types.path; + description = lib.mdDoc '' + Path to read the password from. + ''; + }; }; }; @@ -50,8 +64,19 @@ in { wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; + script = '' + ${pkgs.surrealdb}/bin/surreal start \ + --user $(${pkgs.systemd}/bin/systemd-creds cat SURREALDB_USERNAME) \ + --pass $(${pkgs.systemd}/bin/systemd-creds cat SURREALDB_PASSWORD) \ + --bind ${cfg.host}:${toString cfg.port} \ + -- ${cfg.dbPath} + ''; serviceConfig = { - ExecStart = "${pkgs.surrealdb}/bin/surreal start --bind ${cfg.host}:${toString cfg.port} ${optionalString (cfg.dbPath != null) "-- ${cfg.dbPath}"}"; + LoadCredential = [ + "SURREALDB_USERNAME:${cfg.userNamePath}" + "SURREALDB_PASSWORD:${cfg.passwordPath}" + ]; + DynamicUser = true; Restart = "on-failure"; StateDirectory = "surrealdb"; diff --git a/pkgs/applications/networking/remote/rustdesk/default.nix b/pkgs/applications/networking/remote/rustdesk/default.nix index 341cc22976a9..fbbef2dc6193 100644 --- a/pkgs/applications/networking/remote/rustdesk/default.nix +++ b/pkgs/applications/networking/remote/rustdesk/default.nix @@ -38,6 +38,11 @@ rustPlatform.buildRustPackage rec { sha256 = "sha256-IlrfqwNyaSHE9Ct0mn7MUxEg7p1Ku34eOMYelEAYFW8="; }; + patches = [ + # based on https://github.com/rustdesk/rustdesk/pull/1900 + ./fix-for-rust-1.65.diff + ]; + cargoSha256 = "sha256-1OMWEk+DerltF7kwdo4d04rbgIFLHBRq3vZaL7jtrdE="; LIBCLANG_PATH="${llvmPackages.libclang.lib}/lib"; diff --git a/pkgs/applications/networking/remote/rustdesk/fix-for-rust-1.65.diff b/pkgs/applications/networking/remote/rustdesk/fix-for-rust-1.65.diff new file mode 100644 index 000000000000..a70f51e0a76a --- /dev/null +++ b/pkgs/applications/networking/remote/rustdesk/fix-for-rust-1.65.diff @@ -0,0 +1,31 @@ +diff --git a/libs/hbb_common/src/config.rs b/libs/hbb_common/src/config.rs +index 74982de5..308bcf80 100644 +--- a/libs/hbb_common/src/config.rs ++++ b/libs/hbb_common/src/config.rs +@@ -656,7 +656,7 @@ const PEERS: &str = "peers"; + + impl PeerConfig { + pub fn load(id: &str) -> PeerConfig { +- let _ = CONFIG.read().unwrap(); // for lock ++ let _lock = CONFIG.read().unwrap(); + match confy::load_path(&Self::path(id)) { + Ok(config) => config, + Err(err) => { +@@ -667,7 +667,7 @@ impl PeerConfig { + } + + pub fn store(&self, id: &str) { +- let _ = CONFIG.read().unwrap(); // for lock ++ let _lock = CONFIG.read().unwrap(); + if let Err(err) = confy::store_path(Self::path(id), self) { + log::error!("Failed to store config: {}", err); + } +@@ -808,7 +808,7 @@ pub struct LanPeers { + + impl LanPeers { + pub fn load() -> LanPeers { +- let _ = CONFIG.read().unwrap(); // for lock ++ let _lock = CONFIG.read().unwrap(); + match confy::load_path(&Config::file_("_lan_peers")) { + Ok(peers) => peers, + Err(err) => { diff --git a/pkgs/development/interpreters/luajit/default.nix b/pkgs/development/interpreters/luajit/default.nix index 2d47b0395c36..1f830ac65d0d 100644 --- a/pkgs/development/interpreters/luajit/default.nix +++ b/pkgs/development/interpreters/luajit/default.nix @@ -127,6 +127,8 @@ stdenv.mkDerivation rec { homepage = "http://luajit.org"; license = licenses.mit; platforms = platforms.linux ++ platforms.darwin; + # See https://github.com/LuaJIT/LuaJIT/issues/628 + badPlatforms = [ "riscv64-linux" "riscv64-linux" ]; maintainers = with maintainers; [ thoughtpolice smironov vcunat lblasc ]; } // extraMeta; } diff --git a/pkgs/development/interpreters/nickel/default.nix b/pkgs/development/interpreters/nickel/default.nix index 01b7fd54106c..00fd78bdd0c4 100644 --- a/pkgs/development/interpreters/nickel/default.nix +++ b/pkgs/development/interpreters/nickel/default.nix @@ -5,16 +5,16 @@ rustPlatform.buildRustPackage rec { pname = "nickel"; - version = "0.2.1"; + version = "0.3.0"; src = fetchFromGitHub { owner = "tweag"; repo = pname; rev = "refs/tags/${version}"; # because pure ${version} doesn't work - hash = "sha256-Sf0UJAfUtP7oU31VkVqCtdRmfjaHV34gYeUPNsTmQvo="; + hash = "sha256-L2MQ0dS9mZ+SOFoS/rclPtEl3/iFyEKn6Bse/ysHyKo="; }; - cargoSha256 = "sha256-oY4PYMZBN5+nsARHV+A5D7a6fUt9UMHBn83ONgaQp8E="; + cargoSha256 = "sha256-3ucWGmylRatJOl8zktSRMXr5p6L+5+LQV6ALJTtQpiA="; meta = with lib; { homepage = "https://nickel-lang.org/"; diff --git a/pkgs/development/misc/resholve/default.nix b/pkgs/development/misc/resholve/default.nix index 3e901070a2e2..34dd36a21243 100644 --- a/pkgs/development/misc/resholve/default.nix +++ b/pkgs/development/misc/resholve/default.nix @@ -22,6 +22,7 @@ rec { resholve = callPackage ./resholve.nix { inherit (source) rSrc version; inherit (deps.oil) oildev; + inherit (deps) configargparse; inherit resholve-utils; }; # funcs to validate and phrase invocations of resholve diff --git a/pkgs/development/misc/resholve/deps.nix b/pkgs/development/misc/resholve/deps.nix index 43882c20cf6c..ef0ebaa670c1 100644 --- a/pkgs/development/misc/resholve/deps.nix +++ b/pkgs/development/misc/resholve/deps.nix @@ -1,4 +1,6 @@ -{ callPackage +{ lib +, callPackage +, fetchFromGitHub , python27 , ... }: @@ -15,5 +17,64 @@ rec { # binlore = callPackage ./binlore.nix { }; - oil = callPackage ./oildev.nix { inherit python27; }; + oil = callPackage ./oildev.nix { + inherit python27; + inherit six; + inherit typing; + }; + configargparse = python27.pkgs.buildPythonPackage rec { + pname = "configargparse"; + version = "1.5.3"; + + src = fetchFromGitHub { + owner = "bw2"; + repo = "ConfigArgParse"; + rev = "v${version}"; + sha256 = "1dsai4bilkp2biy9swfdx2z0k4akw4lpvx12flmk00r80hzgbglz"; + }; + + doCheck = false; + + pythonImportsCheck = [ "configargparse" ]; + + meta = with lib; { + description = "A drop-in replacement for argparse"; + homepage = "https://github.com/bw2/ConfigArgParse"; + license = licenses.mit; + }; + }; + six = python27.pkgs.buildPythonPackage rec { + pname = "six"; + version = "1.16.0"; + + src = python27.pkgs.fetchPypi { + inherit pname version; + sha256 = "1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"; + }; + + doCheck = false; + + meta = { + description = "A Python 2 and 3 compatibility library"; + homepage = "https://pypi.python.org/pypi/six/"; + license = lib.licenses.mit; + }; + }; + typing = python27.pkgs.buildPythonPackage rec { + pname = "typing"; + version = "3.10.0.0"; + + src = python27.pkgs.fetchPypi { + inherit pname version; + sha256 = "13b4ad211f54ddbf93e5901a9967b1e07720c1d1b78d596ac6a439641aa1b130"; + }; + + doCheck = false; + + meta = with lib; { + description = "Backport of typing module to Python versions older than 3.5"; + homepage = "https://docs.python.org/3/library/typing.html"; + license = licenses.psfl; + }; + }; } diff --git a/pkgs/development/misc/resholve/oildev.nix b/pkgs/development/misc/resholve/oildev.nix index 854cbb2a0056..d9659513996d 100644 --- a/pkgs/development/misc/resholve/oildev.nix +++ b/pkgs/development/misc/resholve/oildev.nix @@ -13,6 +13,8 @@ , cmark , file , glibcLocales +, six +, typing }: rec { @@ -95,7 +97,7 @@ rec { nativeBuildInputs = [ re2c file makeWrapper ]; - propagatedBuildInputs = with python27.pkgs; [ six typing ]; + propagatedBuildInputs = [ six typing ]; doCheck = true; diff --git a/pkgs/development/misc/resholve/resholve.nix b/pkgs/development/misc/resholve/resholve.nix index 6a71962fd4c5..d0ed5105ae4c 100644 --- a/pkgs/development/misc/resholve/resholve.nix +++ b/pkgs/development/misc/resholve/resholve.nix @@ -6,6 +6,7 @@ , rSrc , version , oildev +, configargparse , binlore , resholve-utils }: @@ -19,7 +20,7 @@ python27.pkgs.buildPythonApplication { propagatedBuildInputs = [ oildev - python27.pkgs.configargparse + configargparse ]; postPatch = '' diff --git a/pkgs/development/python-modules/acquire/default.nix b/pkgs/development/python-modules/acquire/default.nix index 0b69bc68b046..9b247091bcf6 100644 --- a/pkgs/development/python-modules/acquire/default.nix +++ b/pkgs/development/python-modules/acquire/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "acquire"; - version = "3.2"; + version = "3.3"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "fox-it"; repo = "acquire"; rev = version; - hash = "sha256-YwmrdqWG5qD621+jQMVyTM0Uy0yXCVPv9zfVhZ+ohg0="; + hash = "sha256-S7EZZxNcoLcZyyRNGlZj6nGoCAlqCxNdh3azIVKvOTM="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; diff --git a/pkgs/development/python-modules/dbus-fast/default.nix b/pkgs/development/python-modules/dbus-fast/default.nix index 2b5ab21c4eac..f53a895141e1 100644 --- a/pkgs/development/python-modules/dbus-fast/default.nix +++ b/pkgs/development/python-modules/dbus-fast/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "dbus-fast"; - version = "1.80.0"; + version = "1.82.0"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "Bluetooth-Devices"; repo = pname; rev = "v${version}"; - hash = "sha256-TeOS4tfJmEQnbHkoRueyTmmIAw2De9w6gWjzD1hlwVI="; + hash = "sha256-mJJElYWTN09zVkx36GqPoILdALAo+fO2JlX4n0dmQ5M="; }; nativeBuildInputs = [ diff --git a/pkgs/development/tools/memray/default.nix b/pkgs/development/tools/memray/default.nix index 74f65ef6303b..ee62838dc8c3 100644 --- a/pkgs/development/tools/memray/default.nix +++ b/pkgs/development/tools/memray/default.nix @@ -8,14 +8,14 @@ python3.pkgs.buildPythonApplication rec { pname = "memray"; - version = "1.4.1"; + version = "1.5.0"; format = "setuptools"; src = fetchFromGitHub { owner = "bloomberg"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-Lq2qDTGkyG3qZaxF3umUHBWf0Dgy1ds6bTUe4y3u7Qc="; + hash = "sha256-BnsboMjlMDfDsqR3UU/bxQpyUaqCDuglaqwTPOF79Fc="; }; nativeBuildInputs = [ diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix index 12c3ce59e675..8577db773e3f 100644 --- a/pkgs/games/spring/default.nix +++ b/pkgs/games/spring/default.nix @@ -1,63 +1,51 @@ { lib , stdenv -, fetchFromGitHub -, cmake -, xz -, boost -, libdevil -, zlib -, p7zip -, openal -, libvorbis -, glew -, freetype -, xorg -, SDL2 -, libGLU -, libGL , asciidoc +, boost +, cmake +, curl , docbook_xsl , docbook_xsl_ns -, curl -, makeWrapper +, fetchurl +, freetype +, glew , jdk -, python -, systemd +, libdevil +, libGL +, libGLU , libunwind -, which +, libvorbis +, makeWrapper , minizip +, openal +, p7zip +, python3 +, SDL2 +, xorg +, xz +, zlib , withAI ? true # support for AI Interfaces and Skirmish AIs }: stdenv.mkDerivation rec { pname = "spring"; - version = "105.0.1-${buildId}-g${shortRev}"; - # usually the latest in https://github.com/spring/spring/commits/maintenance - rev = "8581792eac65e07cbed182ccb1e90424ce3bd8fc"; - shortRev = builtins.substring 0 7 rev; - buildId = "1486"; + version = "106.0"; - # taken from https://github.com/spring/spring/commits/maintenance - src = fetchFromGitHub { - owner = "spring"; - repo = pname; - inherit rev; - sha256 = "05lvd8grqmv7vl8rrx02rhl0qhmm58dyi6s78b64j3fkia4sfj1r"; - fetchSubmodules = true; + src = fetchurl { + url = "https://springrts.com/dl/buildbot/default/master/${version}/source/spring_${version}_src.tar.gz"; + sha256 = "sha256-mSA4ioIv68NMEB72lYnwDb1QOuWr1VHwu4+grAoHlV0="; }; - # The cmake included module correcly finds nix's glew, however - # it has to be the bundled FindGLEW for headless or dedicated builds - prePatch = '' + postPatch = '' + patchShebangs . + substituteInPlace ./rts/build/cmake/FindAsciiDoc.cmake \ --replace "PATHS /usr /usr/share /usr/local /usr/local/share" "PATHS ${docbook_xsl}"\ --replace "xsl/docbook/manpages" "share/xml/docbook-xsl/manpages" - substituteInPlace ./rts/Rendering/GL/myGL.cpp \ - --replace "static constexpr const GLubyte* qcriProcName" "static const GLubyte* qcriProcName" - patchShebangs . - rm rts/build/cmake/FindGLEW.cmake - echo "${version} maintenance" > VERSION + # The cmake included module correcly finds nix's glew, however + # it has to be the bundled FindGLEW for headless or dedicated builds + rm rts/build/cmake/FindGLEW.cmake ''; cmakeFlags = [ @@ -68,34 +56,29 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake makeWrapper docbook_xsl docbook_xsl_ns asciidoc ]; buildInputs = [ - xz boost - libdevil - zlib - p7zip - openal - libvorbis + curl freetype + glew + libdevil + libGL + libGLU + libunwind + libvorbis + minizip + openal + p7zip SDL2 xorg.libX11 xorg.libXcursor - libGLU - libGL - glew - curl - systemd - libunwind - which - minizip + xz + zlib ] - ++ lib.optional withAI jdk - ++ lib.optional withAI python; - - NIX_CFLAGS_COMPILE = "-fpermissive"; # GL header minor incompatibility + ++ lib.optionals withAI [ python3 jdk ]; postInstall = '' wrapProgram "$out/bin/spring" \ - --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc systemd ]}" + --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc ]}" ''; meta = with lib; { @@ -103,6 +86,6 @@ stdenv.mkDerivation rec { description = "A powerful real-time strategy (RTS) game engine"; license = licenses.gpl2Plus; maintainers = with maintainers; [ qknight domenkozar sorki ]; - platforms = [ "i686-linux" "x86_64-linux" ]; + platforms = [ "x86_64-linux" ]; }; } diff --git a/pkgs/servers/search/meilisearch/default.nix b/pkgs/servers/search/meilisearch/default.nix index 58be11c6f12c..9b447275e5ef 100644 --- a/pkgs/servers/search/meilisearch/default.nix +++ b/pkgs/servers/search/meilisearch/default.nix @@ -8,21 +8,30 @@ , nixosTests }: -let version = "0.30.0"; +let version = "0.30.2"; in rustPlatform.buildRustPackage { pname = "meilisearch"; inherit version; + src = fetchFromGitHub { owner = "meilisearch"; repo = "MeiliSearch"; rev = "v${version}"; - sha256 = "sha256-nw2aSEdd21iiFrV2EPOyCfSru84eNM59wsL+ipcSoDw="; + hash = "sha256-kxANzEORvR+BJDfLUD1FLorBuYjnUQixgD2jDoX6jrg="; }; - cargoSha256 = "sha256-0JdI5I63ImdUUBQuC4LYqHpEA1xJ5QJ+3n3MTaIHKDI="; + + cargoHash = "sha256-IYNIr7PBNNloPizaauFYR9/NPnBMS8kQi+RNsKsNjLE="; + # Default features include mini dashboard which downloads something from the internet. buildNoDefaultFeatures = true; - buildInputs = lib.optionals stdenv.isDarwin [ Security DiskArbitration Foundation ]; + + buildInputs = lib.optionals stdenv.isDarwin [ + Security + DiskArbitration + Foundation + ]; + passthru.tests = { meilisearch = nixosTests.meilisearch; }; @@ -33,6 +42,7 @@ rustPlatform.buildRustPackage { meta = with lib; { description = "Powerful, fast, and an easy to use search engine "; homepage = "https://docs.meilisearch.com/"; + changelog = "https://github.com/meilisearch/meilisearch/releases/tag/v${version}"; license = licenses.mit; maintainers = with maintainers; [ happysalada ]; platforms = [ "aarch64-darwin" "x86_64-linux" "x86_64-darwin" ]; diff --git a/pkgs/tools/admin/credhub-cli/default.nix b/pkgs/tools/admin/credhub-cli/default.nix index 86ce097c1bec..cc02d8b6fc14 100644 --- a/pkgs/tools/admin/credhub-cli/default.nix +++ b/pkgs/tools/admin/credhub-cli/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "credhub-cli"; - version = "2.9.8"; + version = "2.9.9"; src = fetchFromGitHub { owner = "cloudfoundry-incubator"; repo = "credhub-cli"; rev = version; - sha256 = "sha256-lhnH4+/fwZKEDN1465T8+elinTkhjYbOX2aj5eRnwZk="; + sha256 = "sha256-hqmPv+/TNGzI9yMB7AnK7UOw6MI0jeII8A5KSIlulyk="; }; # these tests require network access that we're not going to give them diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 39fa2fdfbf9c..3b08da5eb7d2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -32809,7 +32809,7 @@ with pkgs; wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped); neovim-unwrapped = callPackage ../applications/editors/neovim { CoreServices = darwin.apple_sdk.frameworks.CoreServices; - lua = luajit; + lua = if (stdenv.hostPlatform.isRiscV64 || stdenv.hostPlatform.isRiscV64) then lua5_1 else luajit; }; neovimUtils = callPackage ../applications/editors/neovim/utils.nix { @@ -34823,8 +34823,7 @@ with pkgs; # You still can override by passing more arguments. space-orbit = callPackage ../games/space-orbit { }; - spring = callPackage ../games/spring - { stdenv = gcc10StdenvCompat; asciidoc = asciidoc-full; }; + spring = callPackage ../games/spring { asciidoc = asciidoc-full; }; springLobby = callPackage ../games/spring/springlobby.nix { };