diff options
34 files changed, 674 insertions, 395 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 91e8c9591fb..1cdce85531c 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3991,6 +3991,16 @@ githubId = 19825977; name = "Hiren Shah"; }; + hiro98 = { + email = "hiro@protagon.space"; + github = "vale981"; + githubId = 4025991; + name = "Valentin Boettcher"; + keys = [{ + longkeyid = "rsa2048/0xC22D4DE4D7B32D19"; + fingerprint = "45A9 9917 578C D629 9F5F B5B4 C22D 4DE4 D7B3 2D19"; + }]; + }; hjones2199 = { email = "hjones2199@gmail.com"; github = "hjones2199"; @@ -7031,6 +7041,12 @@ githubId = 628342; name = "Tim Steinbach"; }; + netcrns = { + email = "jason.wing@gmx.de"; + github = "netcrns"; + githubId = 34162313; + name = "Jason Wing"; + }; netixx = { email = "dev.espinetfrancois@gmail.com"; github = "netixx"; diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix index 35637c8fc86..f517f95a812 100644 --- a/pkgs/applications/editors/vscode/vscode.nix +++ b/pkgs/applications/editors/vscode/vscode.nix @@ -45,6 +45,7 @@ in Open source source code editor developed by Microsoft for Windows, Linux and macOS ''; + mainProgram = "code"; longDescription = '' Open source source code editor developed by Microsoft for Windows, Linux and macOS. It includes support for debugging, embedded Git diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix index badda6b17ee..aa1ef4f8eff 100644 --- a/pkgs/applications/misc/josm/default.nix +++ b/pkgs/applications/misc/josm/default.nix @@ -1,24 +1,26 @@ -{ lib, stdenv, fetchurl, fetchsvn, makeWrapper, unzip, jre, libXxf86vm }: +{ lib, stdenv, fetchurl, fetchsvn, makeWrapper, unzip, jre, libXxf86vm +, extraJavaOpts ? "-Djosm.restart=true -Djava.net.useSystemProxies=true" +}: let pname = "josm"; - version = "17702"; + version = "17833"; srcs = { jar = fetchurl { url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar"; - sha256 = "1p7p0jd87sxrs5n0r82apkilx0phgmjw7vpdg8qrr5msda4rsmpk"; + sha256 = "sha256-i3seRVfCLXNvUkWAAPZK0XloRHuXWCNp1tqnVr7CQ7Y="; }; macosx = fetchurl { url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java16.zip"; - sha256 = "0r17cphxm852ykb8mkil29rr7sb0bj5w69qd5wz8zf2f9djk9npk"; + sha256 = "sha256-PM/wNXqtEwalhorWHqVHWsaiGv60SFrHXZrb1Mw/QqQ="; }; pkg = fetchsvn { url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested"; rev = version; - sha256 = "1b7dryvakph8znh2ahgywch66l4bl5rmgsr79axnz1xi12g8ac12"; + sha256 = "sha256-IjCFngixh2+7SifrV3Ohi1BjIOP+QSWg/QjeqbbP7aw="; }; }; in -stdenv.mkDerivation { +stdenv.mkDerivation rec { inherit pname version; dontUnpack = true; @@ -36,8 +38,7 @@ stdenv.mkDerivation { # Add libXxf86vm to path because it is needed by at least Kendzi3D plugin makeWrapper ${jre}/bin/java $out/bin/josm \ - --add-flags "-Djosm.restart=true -Djava.net.useSystemProxies=true" \ - --add-flags "-jar $out/share/josm/josm.jar" \ + --add-flags "${extraJavaOpts} -jar $out/share/josm/josm.jar" \ --prefix LD_LIBRARY_PATH ":" '${libXxf86vm}/lib' ''; diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix index 501956ec938..0508830918f 100644 --- a/pkgs/applications/networking/cluster/helm/default.nix +++ b/pkgs/applications/networking/cluster/helm/default.nix @@ -2,15 +2,15 @@ buildGoModule rec { pname = "helm"; - version = "3.5.3"; + version = "3.5.4"; src = fetchFromGitHub { owner = "helm"; repo = "helm"; rev = "v${version}"; - sha256 = "sha256-7xO07JDy6ujWlDF+5Xd3myRQ8ajTppCXz9fNe4yizVw="; + sha256 = "sha256-u8GJVOubPlIG88TFG5+OvbovMz4Q595wWo2YCwuTgG8="; }; - vendorSha256 = "sha256-lpEoUgABtJczwShNdvD+zYAPDFTJqILSei2YY6mQ2mw="; + vendorSha256 = "sha256-zdZxGiwgx8c0zt9tQebJi7k/LNNYjhNInsVeBbxPsgE="; doCheck = false; diff --git a/pkgs/applications/version-management/yadm/default.nix b/pkgs/applications/version-management/yadm/default.nix index b75af94af56..fc8bee5fcb7 100644 --- a/pkgs/applications/version-management/yadm/default.nix +++ b/pkgs/applications/version-management/yadm/default.nix @@ -1,17 +1,18 @@ -{ lib, stdenv, fetchFromGitHub, git, gnupg }: +{ lib, stdenv, fetchFromGitHub, git, gnupg, installShellFiles }: -let version = "2.5.0"; in -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "yadm"; - inherit version; + version = "3.1.0"; buildInputs = [ git gnupg ]; + nativeBuildInputs = [ installShellFiles ]; + src = fetchFromGitHub { owner = "TheLocehiliosan"; repo = "yadm"; rev = version; - sha256 = "128qlx8mp7h5ifapqqgsj3fwghn3q6x6ya0y33h5r7gnassd3njr"; + sha256 = "0ga0p28nvqilswa07bzi93adk7wx6d5pgxlacr9wl9v1h6cds92s"; }; dontConfigure = true; @@ -20,12 +21,16 @@ stdenv.mkDerivation { installPhase = '' runHook preInstall install -Dt $out/bin yadm - install -Dt $out/share/man/man1 yadm.1 - install -D completion/yadm.zsh_completion $out/share/zsh/site-functions/_yadm - install -D completion/yadm.bash_completion $out/share/bash-completion/completions/yadm.bash runHook postInstall ''; + postInstall = '' + installManPage yadm.1 + installShellCompletion --cmd yadm \ + --zsh completion/zsh/_yadm \ + --bash completion/bash/yadm + ''; + meta = { homepage = "https://github.com/TheLocehiliosan/yadm"; description = "Yet Another Dotfiles Manager"; @@ -35,7 +40,7 @@ stdenv.mkDerivation { * Provides a way to use alternate files on a specific OS or host. * Supplies a method of encrypting confidential data so it can safely be stored in your repository. ''; - license = lib.licenses.gpl3; + license = lib.licenses.gpl3Plus; maintainers = with lib.maintainers; [ abathur ]; platforms = lib.platforms.unix; }; diff --git a/pkgs/development/libraries/amdvlk/default.nix b/pkgs/development/libraries/amdvlk/default.nix index 1d0256f3b27..5693a5968b6 100644 --- a/pkgs/development/libraries/amdvlk/default.nix +++ b/pkgs/development/libraries/amdvlk/default.nix @@ -21,13 +21,13 @@ let in stdenv.mkDerivation rec { pname = "amdvlk"; - version = "2021.Q1.6"; + version = "2021.Q2.2"; src = fetchRepoProject { name = "${pname}-src"; manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git"; rev = "refs/tags/v-${version}"; - sha256 = "FSQ/bYlvdw0Ih3Yl329o8Gizw0YcZTLtiI222Ju4M8w="; + sha256 = "4k9ZkBxJGuNUO44F9D+u54eUREl5/8zxjxhaShhzGv0="; }; buildInputs = [ @@ -70,12 +70,8 @@ in stdenv.mkDerivation rec { installPhase = '' install -Dm755 -t $out/lib icd/amdvlk${suffix}.so - install -Dm644 -t $out/share/vulkan/icd.d ../drivers/AMDVLK/json/Redhat/amd_icd${suffix}.json - - substituteInPlace $out/share/vulkan/icd.d/amd_icd${suffix}.json --replace \ - "/usr/lib64" "$out/lib" - substituteInPlace $out/share/vulkan/icd.d/amd_icd${suffix}.json --replace \ - "/usr/lib" "$out/lib" + install -Dm644 -t $out/share/vulkan/icd.d icd/amd_icd${suffix}.json + install -Dm644 -t $out/share/vulkan/implicit_layer.d icd/amd_icd${suffix}.json patchelf --set-rpath "$rpath" $out/lib/amdvlk${suffix}.so ''; diff --git a/pkgs/development/libraries/libgpiod/default.nix b/pkgs/development/libraries/libgpiod/default.nix index 8f6d9fcab5e..ccf1c470364 100644 --- a/pkgs/development/libraries/libgpiod/default.nix +++ b/pkgs/development/libraries/libgpiod/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "libgpiod"; - version = "1.6.2"; + version = "1.6.3"; src = fetchurl { url = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${version}.tar.gz"; - sha256 = "1k8mxkzvd6y9aawxghddrjkldzskhb6607qhbwjfl9f945ns87qa"; + sha256 = "sha256-60RgcL4URP19MtMrvKU8Lzu7CiEZPbhhmM9gULeihEE="; }; patches = [ diff --git a/pkgs/development/libraries/libosmium/default.nix b/pkgs/development/libraries/libosmium/default.nix index c5b801f5d47..976c39a9ef1 100644 --- a/pkgs/development/libraries/libosmium/default.nix +++ b/pkgs/development/libraries/libosmium/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libosmium"; - version = "2.16.0"; + version = "2.17.0"; src = fetchFromGitHub { owner = "osmcode"; repo = "libosmium"; rev = "v${version}"; - sha256 = "1na51g6xfm1bx0d0izbg99cwmqn0grp0g41znn93xnhs202qnb2h"; + sha256 = "sha256-q938WA+vJDqGVutVzWdEP7ujDAmfj3vluliomVd0om0="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/development/python-modules/graphql-core/default.nix b/pkgs/development/python-modules/graphql-core/default.nix index 5c29a1135a9..85021d126a1 100644 --- a/pkgs/development/python-modules/graphql-core/default.nix +++ b/pkgs/development/python-modules/graphql-core/default.nix @@ -1,27 +1,21 @@ -{ buildPythonPackage +{ lib +, buildPythonPackage , fetchFromGitHub -, lib -, pythonOlder - -, coveralls -, promise -, pytestCheckHook , pytest-benchmark -, pytest-mock -, rx -, six +, pytestCheckHook +, pythonOlder }: buildPythonPackage rec { pname = "graphql-core"; - version = "3.1.3"; + version = "3.1.4"; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "graphql-python"; repo = pname; rev = "v${version}"; - sha256 = "0qy1i6vffwad74ymdsh1qjf5b6ph4z0vyxzkkc6yppwczhzmi1ps"; + sha256 = "sha256-lamV5Rd37WvFBJ+zJUb+UhqxoNUrRhoMJx1NodbQUjs="; }; checkInputs = [ @@ -29,12 +23,12 @@ buildPythonPackage rec { pytestCheckHook ]; + pythonImportsCheck = [ "graphql" ]; + meta = with lib; { description = "Port of graphql-js to Python"; homepage = "https://github.com/graphql-python/graphql-core"; license = licenses.mit; - maintainers = with maintainers; [ - kamadorueda - ]; + maintainers = with maintainers; [ kamadorueda ]; }; } diff --git a/pkgs/development/python-modules/pyface/default.nix b/pkgs/development/python-modules/pyface/default.nix index 7ad1fb41526..3a29fd79f77 100644 --- a/pkgs/development/python-modules/pyface/default.nix +++ b/pkgs/development/python-modules/pyface/default.nix @@ -1,5 +1,5 @@ { lib, fetchPypi, buildPythonPackage -, setuptools, six, traits +, importlib-metadata, importlib-resources, six, traits }: buildPythonPackage rec { @@ -11,10 +11,12 @@ buildPythonPackage rec { sha256 = "a7031ec4cfff034affc822e47ff5e6c1a0272e576d79465cdbbe25f721740322"; }; - propagatedBuildInputs = [ setuptools six traits ]; + propagatedBuildInputs = [ importlib-metadata importlib-resources six traits ]; doCheck = false; # Needs X server + pythonImportsCheck = [ "pyface" ]; + meta = with lib; { description = "Traits-capable windowing framework"; homepage = "https://github.com/enthought/pyface"; diff --git a/pkgs/development/python-modules/pytest-sanic/default.nix b/pkgs/development/python-modules/pytest-sanic/default.nix index 84330cfd62e..ae1c56f95b7 100644 --- a/pkgs/development/python-modules/pytest-sanic/default.nix +++ b/pkgs/development/python-modules/pytest-sanic/default.nix @@ -46,5 +46,9 @@ buildPythonPackage rec { homepage = "https://github.com/yunstanford/pytest-sanic/"; license = licenses.asl20; maintainers = [ maintainers.costrouc ]; + # pytest-sanic is incompatible with Sanic 21.3, see + # https://github.com/sanic-org/sanic/issues/2095 and + # https://github.com/yunstanford/pytest-sanic/issues/50. + broken = lib.versionAtLeast sanic.version "21.3.0"; }; } diff --git a/pkgs/development/python-modules/sanic-routing/default.nix b/pkgs/development/python-modules/sanic-routing/default.nix new file mode 100644 index 00000000000..76eb72dc708 --- /dev/null +++ b/pkgs/development/python-modules/sanic-routing/default.nix @@ -0,0 +1,28 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +, pytest-asyncio +}: + +buildPythonPackage rec { + pname = "sanic-routing"; + version = "0.6.2"; + + src = fetchFromGitHub { + owner = "sanic-org"; + repo = "sanic-routing"; + rev = "v${version}"; + hash = "sha256-ZMl8PB9E401pUfUJ4tW7nBx1TgPQQtx9erVni3zP+lo="; + }; + + checkInputs = [ pytestCheckHook pytest-asyncio ]; + pythonImportsCheck = [ "sanic_routing" ]; + + meta = with lib; { + description = "Core routing component for the Sanic web framework"; + homepage = "https://github.com/sanic-org/sanic-routing"; + license = licenses.mit; + maintainers = with maintainers; [ AluisioASG ]; + }; +} diff --git a/pkgs/development/python-modules/sanic-testing/default.nix b/pkgs/development/python-modules/sanic-testing/default.nix new file mode 100644 index 00000000000..fa1dfc6870b --- /dev/null +++ b/pkgs/development/python-modules/sanic-testing/default.nix @@ -0,0 +1,40 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +, httpcore +, httpx +, pytest-asyncio +, sanic +, websockets +}: + +buildPythonPackage rec { + pname = "sanic-testing"; + version = "0.3.1"; + + src = fetchFromGitHub { + owner = "sanic-org"; + repo = "sanic-testing"; + rev = "v${version}"; + hash = "sha256-hBAq+/BKs0a01M89Nb8HaClqxB+W5PTfjVzef/m9SWs="; + }; + + propagatedBuildInputs = [ httpx sanic websockets httpcore ]; + + # `sanic` is explicitly set to null when building `sanic` itself + # to prevent infinite recursion. In that case we skip running + # the package at all. + doCheck = sanic != null; + dontUsePythonImportsCheck = sanic == null; + + checkInputs = [ pytestCheckHook pytest-asyncio ]; + pythonImportsCheck = [ "sanic_testing" ]; + + meta = with lib; { + description = "Core testing clients for the Sanic web framework"; + homepage = "https://github.com/sanic-org/sanic-testing"; + license = licenses.mit; + maintainers = with maintainers; [ AluisioASG ]; + }; +} diff --git a/pkgs/development/python-modules/sanic/default.nix b/pkgs/development/python-modules/sanic/default.nix index e5995ed0b1e..31dcc86e0bc 100644 --- a/pkgs/development/python-modules/sanic/default.nix +++ b/pkgs/development/python-modules/sanic/default.nix @@ -1,42 +1,44 @@ { lib, buildPythonPackage, fetchPypi, doCheck ? true -, aiofiles, httptools, httpx, multidict, ujson, uvloop, websockets -, pytestCheckHook, beautifulsoup4, gunicorn, httpcore, uvicorn -, pytest-asyncio, pytest-benchmark, pytest-dependency, pytest-sanic, pytest-sugar, pytestcov +, aiofiles, httptools, multidict, sanic-routing, ujson, uvloop, websockets +, pytestCheckHook, beautifulsoup4, gunicorn, uvicorn, sanic-testing +, pytest-benchmark, pytest-sanic, pytest-sugar, pytestcov }: buildPythonPackage rec { pname = "sanic"; - version = "21.3.2"; + version = "21.3.4"; src = fetchPypi { inherit pname version; - sha256 = "84a04c5f12bf321bed3942597787f1854d15c18f157aebd7ced8c851ccc49e08"; + sha256 = "1cbd12b9138b3ca69656286b0be91fff02b826e8cb72dd76a2ca8c5eb1288d8e"; }; postPatch = '' + # Loosen dependency requirements. substituteInPlace setup.py \ - --replace '"multidict==5.0.0"' '"multidict"' \ - --replace '"httpx==0.15.4"' '"httpx"' \ - --replace '"httpcore==0.3.0"' '"httpcore"' \ - --replace '"pytest==5.2.1"' '"pytest"' + --replace '"pytest==5.2.1"' '"pytest"' \ + --replace '"gunicorn==20.0.4"' '"gunicorn"' \ + --replace '"pytest-sanic",' "" + # Patch a request headers test to allow brotli encoding + # (we build httpx with brotli support, upstream doesn't). + substituteInPlace tests/test_headers.py \ + --replace "deflate\r\n" "deflate, br\r\n" ''; propagatedBuildInputs = [ - aiofiles httptools httpx multidict ujson uvloop websockets + sanic-routing httptools uvloop ujson aiofiles websockets multidict ]; checkInputs = [ - pytestCheckHook beautifulsoup4 gunicorn httpcore uvicorn - pytest-asyncio pytest-benchmark pytest-dependency pytest-sanic pytest-sugar pytestcov + sanic-testing gunicorn pytestcov beautifulsoup4 pytest-sanic pytest-sugar + pytest-benchmark pytestCheckHook uvicorn ]; inherit doCheck; disabledTests = [ "test_gunicorn" # No "examples" directory in pypi distribution. - "test_logo" # Fails to filter out "DEBUG asyncio:selector_events.py:59 Using selector: EpollSelector" "test_zero_downtime" # No "examples.delayed_response.app" module in pypi distribution. - "test_reloader_live" # OSError: [Errno 98] error while attempting to bind on address ('127.0.0.1', 42104) ]; __darwinAllowLocalNetworking = true; @@ -45,8 +47,8 @@ buildPythonPackage rec { meta = with lib; { description = "A microframework based on uvloop, httptools, and learnings of flask"; - homepage = "https://github.com/channelcat/sanic/"; + homepage = "https://github.com/sanic-org/sanic/"; license = licenses.mit; - maintainers = [ maintainers.costrouc ]; + maintainers = with maintainers; [ costrouc AluisioASG ]; }; } diff --git a/pkgs/development/tools/analysis/rizin/cutter.nix b/pkgs/development/tools/analysis/rizin/cutter.nix index a4c2d0d45c1..c1d8ab99063 100644 --- a/pkgs/development/tools/analysis/rizin/cutter.nix +++ b/pkgs/development/tools/analysis/rizin/cutter.nix @@ -11,13 +11,13 @@ mkDerivation rec { pname = "cutter"; - version = "2.0.1"; + version = "2.0.2"; src = fetchFromGitHub { owner = "rizinorg"; repo = "cutter"; rev = "v${version}"; - sha256 = "sha256-IQCJOUgefSdMSa27E6I/CL35Kx5pHq/u+5Q0FHUAR1E="; + sha256 = "sha256-CVVUXx6wt9vH3B7NrrlRGnOIrhXQPjV7GmX3O+KtMSM="; fetchSubmodules = true; }; diff --git a/pkgs/development/tools/analysis/rizin/default.nix b/pkgs/development/tools/analysis/rizin/default.nix index 20184ac53a1..4e9543ef371 100644 --- a/pkgs/development/tools/analysis/rizin/default.nix +++ b/pkgs/development/tools/analysis/rizin/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "rizin"; - version = "0.2.0"; + version = "0.2.1"; src = fetchurl { url = "https://github.com/rizinorg/rizin/releases/download/v${version}/rizin-src-v${version}.tar.xz"; - sha256 = "sha256-CGHeo247syha+rVtiAQz0XkEYK9p4DHTnLK2FhBOvE8="; + sha256 = "sha256-lxVsPI+qLenZ0pelvxtHlQ6fhWdQeqoEEHrUGZ5Rdmg="; }; mesonFlags = [ diff --git a/pkgs/development/tools/build-managers/apache-maven/default.nix b/pkgs/development/tools/build-managers/apache-maven/default.nix index 3a1866e0b39..9e0103170e9 100644 --- a/pkgs/development/tools/build-managers/apache-maven/default.nix +++ b/pkgs/development/tools/build-managers/apache-maven/default.nix @@ -2,16 +2,15 @@ assert jdk != null; -let version = "3.6.3"; in stdenv.mkDerivation rec { pname = "apache-maven"; - inherit version; + version = "3.8.1"; builder = ./builder.sh; src = fetchurl { url = "mirror://apache/maven/maven-3/${version}/binaries/${pname}-${version}-bin.tar.gz"; - sha256 = "1i9qlj3vy4j1yyf22nwisd0pg88n9qzp9ymfhwqabadka7br3b96"; + sha256 = "00pgmc9v2s2970wgl2ksvpqy4lxx17zhjm9fgd10fkamxc2ik2mr"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/tools/database/movine/default.nix b/pkgs/development/tools/database/movine/default.nix new file mode 100644 index 00000000000..fd5debcb9a2 --- /dev/null +++ b/pkgs/development/tools/database/movine/default.nix @@ -0,0 +1,54 @@ +{ rustPlatform +, fetchFromGitHub +, lib +, stdenv +, pkg-config +, postgresql +, sqlite +, openssl +, Security +, libiconv +}: + +rustPlatform.buildRustPackage rec { + pname = "movine"; + version = "0.11.0"; + + src = fetchFromGitHub { + owner = "byronwasti"; + repo = pname; + rev = "v${version}"; + sha256 = "0rms8np8zd23xzrd5avhp2q1ndhdc8f49lfwpff9h0slw4rnzfnj"; + }; + + cargoSha256 = "sha256-4ghfenwmauR4Ft9n7dvBflwIMXPdFq1vh6FpIegHnZk="; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ postgresql sqlite ] ++ ( + if !stdenv.isDarwin then [ openssl ] else [ Security libiconv ] + ); + + meta = with lib; { + description = "A migration manager written in Rust, that attempts to be smart yet minimal"; + homepage = "https://github.com/byronwasti/movine"; + license = licenses.mit; + longDescription = '' + Movine is a simple database migration manager that aims to be compatible + with real-world migration work. Many migration managers get confused + with complicated development strategies for migrations. Oftentimes + migration managers do not warn you if the SQL saved in git differs from + what was actually run on the database. Movine solves this issue by + keeping track of the unique hashes for the <literal>up.sql</literal> and + <literal>down.sql</literal> for each migration, and provides tools for + fixing issues. This allows users to easily keep track of whether their + local migration history matches the one on the database. + + This project is currently in early stages. + + Movine does not aim to be an ORM. + Consider <link xling:href="https://diesel.rs/">diesel</link> instead if + you want an ORM. + ''; + maintainers = with maintainers; [ netcrns ]; + }; +} diff --git a/pkgs/development/tools/roswell/default.nix b/pkgs/development/tools/roswell/default.nix new file mode 100644 index 00000000000..98445ea875a --- /dev/null +++ b/pkgs/development/tools/roswell/default.nix @@ -0,0 +1,38 @@ +{ lib, stdenv, fetchFromGitHub, curl, autoconf, automake, makeWrapper, sbcl }: + +stdenv.mkDerivation rec { + pname = "roswell"; + version = "21.01.14.108"; + + src = fetchFromGitHub { + owner = "roswell"; + repo = pname; + rev = "v${version}"; + sha256 = "1hj9q3ig7naky3pb3jkl9yjc9xkg0k7js3glxicv0aqffx9hkp3p"; + }; + + preConfigure = '' + sh bootstrap + ''; + + configureFlags = [ "--prefix=${placeholder "out"}" ]; + + postInstall = '' + wrapProgram $out/bin/ros \ + --add-flags 'lisp=sbcl-bin/system sbcl-bin.version=system' \ + --prefix PATH : ${lib.makeBinPath [ sbcl ]} --argv0 ros + ''; + + nativeBuildInputs = [ autoconf automake makeWrapper ]; + + buildInputs = [ sbcl curl ]; + + meta = with lib; { + description = "Roswell is a Lisp implementation installer/manager, launcher, and much more"; + license = licenses.mit; + maintainers = with maintainers; [ hiro98 ]; + platforms = platforms.linux; + homepage = "https://github.com/roswell/roswell"; + mainProgram = "ros"; + }; +} diff --git a/pkgs/games/soldat-unstable/default.nix b/pkgs/games/soldat-unstable/default.nix index 19ff4b5c6c0..496d51e31c4 100644 --- a/pkgs/games/soldat-unstable/default.nix +++ b/pkgs/games/soldat-unstable/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, fetchpatch, fpc, zip, makeWrapper +{ lib, stdenv, fetchFromGitHub, fpc, zip, makeWrapper , SDL2, freetype, physfs, openal, gamenetworkingsockets , xorg, autoPatchelfHook }: @@ -39,14 +39,14 @@ in stdenv.mkDerivation rec { pname = "soldat"; - version = "unstable-2021-02-09"; + version = "unstable-2021-04-27"; src = fetchFromGitHub { name = "soldat"; owner = "Soldat"; repo = "soldat"; - rev = "c304c3912ca7a88461970a859049d217a44c6375"; - sha256 = "09sl2zybfcmnl2n3qghp0gylmr71y01534l6nq0y9llbdy0bf306"; + rev = "4d17667c316ff08934e97448b7f290a8dc434e81"; + sha256 = "1pf557psmhfaagblfwdn36cw80j7bgs0lgjq8hmjbv58dysw3jdb"; }; nativeBuildInputs = [ fpc makeWrapper autoPatchelfHook ]; @@ -54,15 +54,6 @@ stdenv.mkDerivation rec { buildInputs = [ SDL2 freetype physfs openal gamenetworkingsockets ]; runtimeDependencies = [ xorg.libX11 ]; - patches = [ - # fix an argument parsing issue which prevents - # us from passing nix store paths to soldat - (fetchpatch { - url = "https://github.com/sternenseemann/soldat/commit/9f7687430f5fe142c563b877d2206f5c9bbd5ca0.patch"; - sha256 = "0wsrazb36i7v4idg06jlzfhqwf56q9szzz7jp5cg4wsvcky3wajf"; - }) - ]; - buildPhase = '' runHook preBuild diff --git a/pkgs/misc/frescobaldi/default.nix b/pkgs/misc/frescobaldi/default.nix index 82a3aa8c7be..070babc0cbc 100644 --- a/pkgs/misc/frescobaldi/default.nix +++ b/pkgs/misc/frescobaldi/default.nix @@ -2,13 +2,13 @@ buildPythonApplication rec { pname = "frescobaldi"; - version = "3.1.1"; + version = "3.1.3"; src = fetchFromGitHub { owner = "wbsoft"; repo = "frescobaldi"; rev = "v${version}"; - sha256 = "07hjlq29npasn2bsb3qrzr1gikyvcc85avx0sxybfih329bvjk03"; + sha256 = "1p8f4vn2dpqndw1dylmg7wms6vi69zcfj544c908s4r8rrmbycyf"; }; propagatedBuildInputs = with python3Packages; [ @@ -19,6 +19,12 @@ buildPythonApplication rec { nativeBuildInputs = [ pyqtwebengine.wrapQtAppsHook ]; + # Needed because source is fetched from git + preBuild = '' + make -C i18n + make -C linux + ''; + # no tests in shipped with upstream doCheck = false; diff --git a/pkgs/os-specific/linux/firmware/sof-firmware/default.nix b/pkgs/os-specific/linux/firmware/sof-firmware/default.nix index b474c48e341..5ee39c5bf33 100644 --- a/pkgs/os-specific/linux/firmware/sof-firmware/default.nix +++ b/pkgs/os-specific/linux/firmware/sof-firmware/default.nix @@ -3,29 +3,28 @@ with lib; stdenv.mkDerivation rec { pname = "sof-firmware"; - version = "1.6"; + version = "1.7"; src = fetchFromGitHub { owner = "thesofproject"; repo = "sof-bin"; - rev = "cbdec6963b2c2d58b0080955d3c11b96ff4c92f0"; - sha256 = "0la2pw1zpv50cywiqcfb00cxqvjc73drxwjchyzi54l508817nxh"; + rev = "v${version}"; + sha256 = "sha256-Z0Z4HLsIIuW8E1kFNhAECmzj1HkJVfbEw13B8V7PZLk="; }; - phases = [ "unpackPhase" "installPhase" ]; + dontFixup = true; # binaries must not be stripped or patchelfed installPhase = '' - mkdir -p $out/lib/firmware - - patchShebangs go.sh - ROOT=$out SOF_VERSION=v${version} ./go.sh + mkdir -p $out/lib/firmware/intel/ + cp -a sof-v${version} $out/lib/firmware/intel/sof + cp -a sof-tplg-v${version} $out/lib/firmware/intel/sof-tplg ''; meta = with lib; { description = "Sound Open Firmware"; homepage = "https://www.sofproject.org/"; license = with licenses; [ bsd3 isc ]; - maintainers = with maintainers; [ lblasc evenbrenden ]; + maintainers = with maintainers; [ lblasc evenbrenden hmenke ]; platforms = with platforms; linux; }; } diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index 7d83d68e73c..765118be119 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -36,10 +36,10 @@ rec { else legacy_390; beta = generic { - version = "460.27.04"; - sha256_64bit = "plTqtc5QZQwM0f3MeMZV0N5XOiuSXCCDklL/qyy8HM8="; - settingsSha256 = "hU9J0VSrLXs7N14zq6U5LbBLZXEIyTfih/Bj6eFcMf0="; - persistencedSha256 = "PmqhoPskqhJe2FxMrQh9zX1BWQCR2kkfDwvA89+XALA="; + version = "465.27"; + sha256_64bit = "fmn/qFve5qqqa26n4dsoOwGZ+ash5Bon3JBI8kncMXE="; + settingsSha256 = "3BFLCx0dcrQY4Mv1joMsiVPwTPyufgsNT5pFgp1Mk/A="; + persistencedSha256 = "HtoFGTiBnAeQyRTOMlve5poaQh63LHRD+DHJxZO+c90="; }; # Vulkan developer beta driver diff --git a/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix b/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix index 16dcfe9ba06..511dd162785 100644 --- a/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix +++ b/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix @@ -10,12 +10,12 @@ buildGoModule rec { pname = "oci-seccomp-bpf-hook"; - version = "1.2.2"; + version = "1.2.3"; src = fetchFromGitHub { owner = "containers"; repo = "oci-seccomp-bpf-hook"; rev = "v${version}"; - sha256 = "sha256-SRphs8zwKz6jlAixVZkHdww0jroaBNK82kSLj1gs6Wg="; + sha256 = "sha256-EKD6tkdQCPlVlb9ScvRwDxYAtbbv9PIqBHH6SvtPDsE="; }; vendorSha256 = null; @@ -56,6 +56,5 @@ buildGoModule rec { license = licenses.asl20; maintainers = with maintainers; [ saschagrunert ]; platforms = platforms.linux; - badPlatforms = [ "aarch64-linux" ]; }; } diff --git a/pkgs/servers/http/gitlab-pages/default.nix b/pkgs/servers/http/gitlab-pages/default.nix index 920a3299929..33c556fb54a 100644 --- a/pkgs/servers/http/gitlab-pages/default.nix +++ b/pkgs/servers/http/gitlab-pages/default.nix @@ -2,23 +2,23 @@ buildGoModule rec { pname = "gitlab-pages"; - version = "1.35.0"; + version = "1.38.0"; src = fetchFromGitLab { owner = "gitlab-org"; repo = "gitlab-pages"; rev = "v${version}"; - sha256 = "sha256-5AkzbOutBXy59XvMwfyH6A8ETwjP2QokG/Rz31/nCpk="; + sha256 = "sha256-QaqZGTkNAzQEqlwccAWPDP91BSc9vRDEsCBca/lEXW4="; }; - vendorSha256 = "sha256-g8FDWpZmbZSkJAzoEiI8/JZLTTgG7uJ4sS35axaEXLY="; + vendorSha256 = "sha256-uuwuiGQWLIQ5UJuCKDBEvCPo2+AXtJ54ARK431qiakc="; subPackages = [ "." ]; - doCheck = false; # Broken meta = with lib; { description = "Daemon used to serve static websites for GitLab users"; homepage = "https://gitlab.com/gitlab-org/gitlab-pages"; + changelog = "https://gitlab.com/gitlab-org/gitlab-pages/-/blob/v${version}/CHANGELOG.md"; license = licenses.mit; - maintainers = with maintainers; [ das_j ]; + maintainers = with maintainers; [ ajs124 das_j ]; }; } diff --git a/pkgs/tools/admin/pulumi/data.nix b/pkgs/tools/admin/pulumi/data.nix index 5a1dcfe16ec..3e7d11f4827 100644 --- a/pkgs/tools/admin/pulumi/data.nix +++ b/pkgs/tools/admin/pulumi/data.nix @@ -1,178 +1,186 @@ # DO NOT EDIT! This file is generated automatically by update.sh { }: { - version = "2.24.1"; + version = "3.1.0"; pulumiPkgs = { x86_64-linux = [ { - url = "https://get.pulumi.com/releases/sdk/pulumi-v2.24.1-linux-x64.tar.gz"; - sha256 = "1c3a0ibwchl0lmcb8hr4j0x9b7hfsd0pfg6ay808zg1v8ddrj3xm"; + url = "https://get.pulumi.com/releases/sdk/pulumi-v3.1.0-linux-x64.tar.gz"; + sha256 = "103r0rih8qzpswij3bxls9gsb832n4ykwrzbki9b21w2ymj7k3x1"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v1.10.0-linux-amd64.tar.gz"; - sha256 = "1gqbs33mqqssymn48glm9h5qfkc1097ygk0mdanfigyhwv6rdmnc"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.0.0-linux-amd64.tar.gz"; + sha256 = "1f6r59qk48x73nm17swcs3cp3qw616m7p36bvgsc1s96h23k805w"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v3.36.0-linux-amd64.tar.gz"; - sha256 = "0dg5szlslp863slv6lfd8g98946ljvxhvq64b3j4zk6rsn0badvh"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.0.0-linux-amd64.tar.gz"; + sha256 = "12rnb18p7z709gvw50hvmx9v7f2wd3pwcncwz4g3ragd7f6a4kja"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v2.14.2-linux-amd64.tar.gz"; - sha256 = "00ibqxb1qzwi93dsq56av0vxq80lx2rr8wll4q6d8wlph215hlqs"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v3.0.0-linux-amd64.tar.gz"; + sha256 = "0xs7i9l871x5kr22jg7jjw0rgyvs4j4hazr4n9375xgzc8ysrk09"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v2.9.1-linux-amd64.tar.gz"; - sha256 = "04sk6km29ssqkv0xw26vq3iik2kfzc3dnzacn324m7fddv3p9wx9"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.0.0-linux-amd64.tar.gz"; + sha256 = "08588m5s6j1xhig4jprlkjgxk1sif4h3f6as7ixnvssin2vhhhl9"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v2.17.1-linux-amd64.tar.gz"; - sha256 = "0b3bz952wz7fsbk51j0mlfsyyg9ymc9wnq8kgm7dvs1p5zgzv4ni"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v3.0.0-linux-amd64.tar.gz"; + sha256 = "01dqah12p23658awcp0sx5h696rdyjl79vd9dm5075jdaix1f648"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v3.7.0-linux-amd64.tar.gz"; - sha256 = "0l1y8fckx7k3lasb6rzy3v58cl1x3qzbb999wi14z16z2a63zwsw"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.0.0-linux-amd64.tar.gz"; + sha256 = "0m8q1cswdml0hsc4vkq38pm2izs3lig57fg4a8ghqqi3ykni344d"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v2.9.1-linux-amd64.tar.gz"; - sha256 = "178l4h7wj9pn1283zajaqm7fwcfwzpzq7swrgr8q880qsa611gjs"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v3.0.0-linux-amd64.tar.gz"; + sha256 = "06j5k599i8giy5v6scggw8zx1pyfm6w20biwcizv81zk0zkg3fzp"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v4.19.0-linux-amd64.tar.gz"; - sha256 = "0iliagpyvzn63pwcdq74w8ag9vc7asqpq658b19zly4jd6z3cwkd"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.0.0-linux-amd64.tar.gz"; + sha256 = "1bzy4zf473w49fz2n9lg5ncgblq2a5jh70nf6cfwc7kcla407in0"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v3.4.0-linux-amd64.tar.gz"; - sha256 = "0zp3rwhngj009a9s6w2vyvgyhj7nd03mwm44x62ikhnz6f414kr9"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.0.0-linux-amd64.tar.gz"; + sha256 = "0d17ccf84jj6a9hpdrnsziyw790i0y5zk18qgqh4qq79irwz6df2"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v3.8.1-linux-amd64.tar.gz"; - sha256 = "1xhrj950lk6qdazg4flymn3dmkbivc2rd71k8sdy9zfanyxnq8vv"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.0.0-linux-amd64.tar.gz"; + sha256 = "1j8232vw457fl0jhy08abs5hcx8nd2lll3zg9bp3s352wz2r5xl4"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v0.7.1-linux-amd64.tar.gz"; - sha256 = "0n2p14iam44icms4c8qrjfy1z7p4m6igxckvqxr0gphi8ngk4ggh"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.0.0-linux-amd64.tar.gz"; + sha256 = "0lqnb1xrb5ma8ssvn63lh92ihja6zx4nrx40pici1ggaln4sphn0"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v2.8.3-linux-amd64.tar.gz"; - sha256 = "0l9r0gqhhjbkv4vn4cxm2s9zf93005w8vrb103w101h1gc5gh93l"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.0.0-linux-amd64.tar.gz"; + sha256 = "0s7an3qvczhajs54i0ir3jjmwxpv9w94viqrik506k198j0qnl3b"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v2.5.1-linux-amd64.tar.gz"; - sha256 = "0clck5cra6bplfxd0nb6vkji50gg4ah4yfvc7202hi3w2b9hfjjg"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.0.0-linux-amd64.tar.gz"; + sha256 = "0ljxjv8rm4li61vgjbpmxw8w6d2pym5li3w61dqi3kka4ix25aww"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v2.5.1-linux-amd64.tar.gz"; - sha256 = "1cd2bm030fa9spv7bx817id419lz1c54i8h84ifinkx88ig7ngyx"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.0.0-linux-amd64.tar.gz"; + sha256 = "1mxkwcricqnnbj0dp3wqidci6rgfn7daxkjprcnrndhgcdghq7sv"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-openstack-v2.17.1-linux-amd64.tar.gz"; - sha256 = "1q9sx2lszmkcgphp3vwx0lvs5vc67sk98rn8s6ywhz0p426wakmr"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.0.0-linux-amd64.tar.gz"; + sha256 = "04gaimdzh04v7f11xw1b7p95rbb142kbnix1zqas68wd6vpw9kyp"; + } + { + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-openstack-v3.0.0-linux-amd64.tar.gz"; + sha256 = "1535c95ncgdifyz5m29gagpcr7lhhddlffmj9lmwch55w2xlk86k"; } { url = "https://api.pulumi.com/releases/plugins/pulumi-resource-packet-v3.2.2-linux-amd64.tar.gz"; sha256 = "0glbjhgrb2hiyhd6kwmy7v384j8zw641pw9737g1fczv3x16a3s3"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v2.9.0-linux-amd64.tar.gz"; - sha256 = "0n486h5f683yq6z53s9l9x5air1vk4nz1skiirsprz7a12cy2xkn"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.0.0-linux-amd64.tar.gz"; + sha256 = "13j13kp0sbwp65l73mdcqiv4cszslxin567ccdkk2rw8vs1ni7x0"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v3.1.1-linux-amd64.tar.gz"; - sha256 = "1zpwlvdgjvhnhlzyppqg76csma8kan33amxa1svlhcai8b168878"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.0.0-linux-amd64.tar.gz"; + sha256 = "0pah7s9wwaj8zp371blmj4c1bgyhh0dgsfr9axj0k4lhpqlyikmj"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v3.5.1-linux-amd64.tar.gz"; - sha256 = "16b1449vb6inlyjpb1iyr5j5mwg1g2d6bcd5g2kmxcsw4yhc7ai7"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v4.0.0-linux-amd64.tar.gz"; + sha256 = "0bk26k1igqljjpwkkvri6dp14cfw9l9a2dvg2as3v5930w4jxql8"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v2.13.1-linux-amd64.tar.gz"; - sha256 = "1z6v5vz0p9g3hrrgrchx2wnbparkbf5b8vn9pwnw69nkplr1qzff"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v3.0.0-linux-amd64.tar.gz"; + sha256 = "1lxb03z80r8a2vfckyw5yf036ii30gdi3rch4sriksfv30il9kbc"; } ]; x86_64-darwin = [ { - url = "https://get.pulumi.com/releases/sdk/pulumi-v2.24.1-darwin-x64.tar.gz"; - sha256 = "1x6z0drvaxrps47nisvw513vgskaf86mz8fzlhqfkddp2k5la5j1"; + url = "https://get.pulumi.com/releases/sdk/pulumi-v3.1.0-darwin-x64.tar.gz"; + sha256 = "1lfqm4s72bwrycspr9nbgfvf5i6p50x8lk81pcs6zbzz6iff4x7z"; + } + { + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.0.0-darwin-amd64.tar.gz"; + sha256 = "0nycqlz3lkwirr8rs4sqdqbzn2igv51hjyfjjsgnhx85kjzlkas6"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v1.10.0-darwin-amd64.tar.gz"; - sha256 = "05cz7b738bcai4aiya4rkjhmkh9pg6za4xp2snb9nx0jkw2vw2ms"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.0.0-darwin-amd64.tar.gz"; + sha256 = "1kim1lk9dycsanc2vcsr4fgfhk90zyjf24vvwmmkk70nq1lnwqp3"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v3.36.0-darwin-amd64.tar.gz"; - sha256 = "0k74x9a6b9xngrp1cgdal86h23m95r5sa3q036ms4py0phq47r2w"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "0kvr057hdwcxf7gj788sv6ysz25ap3z0akqhhb20mlzv3shwiiji"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v2.14.2-darwin-amd64.tar.gz"; - sha256 = "05ggw10z0pp45yqq8bl32l3xjxvgwbs58czpw74whydqbd3qy8av"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "14d530fbzmq5m3njl31qkgwwfyipad9iqjhv3cd8pcl87blaxxki"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v2.9.1-darwin-amd64.tar.gz"; - sha256 = "022458yxscfg56s2nqdr95wp2ffm7sni4kaksj87i6c5ddc9f1gx"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "0q29dyrnramr2bl89503gnbm4zq2x3bn7kaiwbhg6r17xa6rkji4"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v2.17.1-darwin-amd64.tar.gz"; - sha256 = "09nd5nfvjqgpbjs82bm5ym5wdg37mg863wvdp8s3fd8id4gdqb24"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.0.0-darwin-amd64.tar.gz"; + sha256 = "0v8iha0n1kqvaxrjll2mv9znc9lzqj7mqxgxig2g89qqjs6p69ql"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v3.7.0-darwin-amd64.tar.gz"; - sha256 = "0iflll8lkk3s3dx3xl0iqmxac9nlspjnv8gmjfqwpryzk8h1fmzy"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "0ffic6mqr1zyskrv60q9wg7jc0hq23l5g0pdh3clpnn2m1xnxnxm"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v2.9.1-darwin-amd64.tar.gz"; - sha256 = "10vp75fc41yk9lg5x7wyhs4mn2f4krfnw4jn5xys7dd475blm6rh"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v5.0.0-darwin-amd64.tar.gz"; + sha256 = "1793qry84bch32zbc70c777y04qgys6n0vxsxzxqgz2j4r9vmi6a"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v4.19.0-darwin-amd64.tar.gz"; - sha256 = "061s8snsgz044ilh2s48810bmayypdyq9aqkhgal6v3l86jl8m95"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.0.0-darwin-amd64.tar.gz"; + sha256 = "1lzjjk2da1xla012xrs9jfcdsbpmkh48n6lypmbr2ixh13pdwk1b"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v3.4.0-darwin-amd64.tar.gz"; - sha256 = "1p6xxhy30qzprxk3kwiwimw5m0c73fk7c9j4vrzj2z4kpgj8qx7w"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.0.0-darwin-amd64.tar.gz"; + sha256 = "1i3zmflwjjfc13j7w9acavgrbblm9fri041z6qpb3ikcq5s9lqcm"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v3.8.1-darwin-amd64.tar.gz"; - sha256 = "14gqwz5nalbv97vl9apwda0xxl7cgkp5mixrc10xvx6a94w5758p"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.0.0-darwin-amd64.tar.gz"; + sha256 = "1lkrx2cayhhv432dvzvz8q4i1gfi659rkl59c0y0dkwbs8x425zb"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v0.7.1-darwin-amd64.tar.gz"; - sha256 = "0i0h1iz999pbz23gbs75bj3lxfg9a6044g4bwdwf3agxf3k9pji3"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "10439p96wpxr13pxhii7li2cjq53pgr8c48ir63d2n4b8fn8iklr"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v2.8.3-darwin-amd64.tar.gz"; - sha256 = "1nwwqq1nn1zr6mia2wd82lzqsa8l3rr50hl1mf6l6ffyxz1q1lzj"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "1n35b1cqglpwvcxdcgxwmv5j1qp8gwrjzh25884l0b72krna9alr"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v2.5.1-darwin-amd64.tar.gz"; - sha256 = "0zkd3rm6z8bc7pcbwl0bbbn0zb3jrl69b84g62ma9vzskccrxxpr"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "0qx4p0jz3n66r3kgpgs25qbzlmwdqf80353nywyijv3ham6hpicf"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v2.5.1-darwin-amd64.tar.gz"; - sha256 = "0v4qqp1x8xi0fqiczmmh2qbf3azbgf09cphia5w8r2kkrn4i0jxn"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "18vrp0zzi92x4l5nkjszvd0zr7pk6nl6s3h5a3hvsz5qrj2830q3"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-openstack-v2.17.1-darwin-amd64.tar.gz"; - sha256 = "1788ayj5zwlmvhd1qp6rzrcbman5i0hy1hw2fmgcrf66v5qc1f18"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-openstack-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "0159ng9c9hshmng8ipss7hncqs5qp8plmr1qjadka6vyp1mxn2c3"; } { url = "https://api.pulumi.com/releases/plugins/pulumi-resource-packet-v3.2.2-darwin-amd64.tar.gz"; sha256 = "0621njipng32x43lw8n49mapq10lnvibg8vlvgciqsfvrbpz1yp5"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v2.9.0-darwin-amd64.tar.gz"; - sha256 = "08af55rrzpm42vx7w1i1cmfk48czjfwln737prp5mwcvddmg5s1g"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "0h9zdiaanvm2yds9z0c5fmz0f05apdhm4w28d2i929djxh57jqrr"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v3.1.1-darwin-amd64.tar.gz"; - sha256 = "1j30gkz1m9ap8pd2r3lb3nl82bq5bq3h7y6jq2c0dmv3ksnp197f"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.0.0-darwin-amd64.tar.gz"; + sha256 = "15pzcymjr9bzx47sq86llzfg0hydyf4cn0bb95zxjqrx8y37rql8"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v3.5.1-darwin-amd64.tar.gz"; - sha256 = "1s5kbqri9k7cpajkgnl2s5l0nznzridj5iscwd9n1nj4bsr44lap"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v4.0.0-darwin-amd64.tar.gz"; + sha256 = "1wkak84yg5a4b5791pdwcl0fr089yjk853hwp44x3rhdh8xrdq1p"; } { - url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v2.13.1-darwin-amd64.tar.gz"; - sha256 = "133xspppmydjri5ba2yxc331ljzd8wj88q3hzmgvp0m50il1ks71"; + url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v3.0.0-darwin-amd64.tar.gz"; + sha256 = "1g2q3zbhxmpk2qp3c9hz0vn0xh95pnl7pd5b5kcizbrdfgjlaabq"; } ]; }; diff --git a/pkgs/tools/admin/pulumi/update.sh b/pkgs/tools/admin/pulumi/update.sh index 31ac38ab275..d8c5a698300 100755 --- a/pkgs/tools/admin/pulumi/update.sh +++ b/pkgs/tools/admin/pulumi/update.sh @@ -3,31 +3,32 @@ # Version of Pulumi from # https://www.pulumi.com/docs/get-started/install/versions/ -VERSION="2.24.1" +VERSION="3.1.0" # Grab latest release ${VERSION} from # https://github.com/pulumi/pulumi-${NAME}/releases plugins=( - "auth0=1.10.0" - "aws=3.36.0" - "cloudflare=2.14.2" - "consul=2.9.1" - "datadog=2.17.1" - "digitalocean=3.7.0" - "docker=2.9.1" - "gcp=4.19.0" - "github=3.4.0" - "gitlab=3.8.1" - "hcloud=0.7.1" - "kubernetes=2.8.3" - "mailgun=2.5.1" - "mysql=2.5.1" - "openstack=2.17.1" + "auth0=2.0.0" + "aws=4.0.0" + "cloudflare=3.0.0" + "consul=3.0.0" + "datadog=3.0.0" + "digitalocean=4.0.0" + "docker=3.0.0" + "gcp=5.0.0" + "github=4.0.0" + "gitlab=4.0.0" + "hcloud=1.0.0" + "kubernetes=3.0.0" + "linode=3.0.0" + "mailgun=3.0.0" + "mysql=3.0.0" + "openstack=3.0.0" "packet=3.2.2" - "postgresql=2.9.0" - "random=3.1.1" - "vault=3.5.1" - "vsphere=2.13.1" + "postgresql=3.0.0" + "random=4.0.0" + "vault=4.0.0" + "vsphere=3.0.0" ) function genMainSrc() { diff --git a/pkgs/tools/misc/ffsend/default.nix b/pkgs/tools/misc/ffsend/default.nix index ff1c4c7b892..75e1084e0bd 100644 --- a/pkgs/tools/misc/ffsend/default.nix +++ b/pkgs/tools/misc/ffsend/default.nix @@ -1,5 +1,6 @@ { lib, stdenv, fetchFromGitLab, rustPlatform, cmake, pkg-config, openssl -, darwin, installShellFiles +, installShellFiles +, CoreFoundation, CoreServices, Security, AppKit, libiconv , x11Support ? stdenv.isLinux || stdenv.hostPlatform.isBSD , xclip ? null, xsel ? null @@ -29,7 +30,7 @@ buildRustPackage rec { nativeBuildInputs = [ cmake pkg-config installShellFiles ]; buildInputs = - if stdenv.isDarwin then (with darwin.apple_sdk.frameworks; [ CoreFoundation CoreServices Security AppKit ]) + if stdenv.isDarwin then [ libiconv CoreFoundation CoreServices Security AppKit ] else [ openssl ]; preBuild = lib.optionalString (x11Support && usesX11) ( diff --git a/pkgs/tools/networking/fastd/default.nix b/pkgs/tools/networking/fastd/default.nix index ed7bb0b01d3..af75641a5b9 100644 --- a/pkgs/tools/networking/fastd/default.nix +++ b/pkgs/tools/networking/fastd/default.nix @@ -1,5 +1,16 @@ -{ lib, stdenv, fetchFromGitHub, bison, meson, ninja, pkg-config -, libuecc, libsodium, libcap, json_c, openssl }: +{ lib +, stdenv +, fetchFromGitHub +, bison +, meson +, ninja +, pkg-config +, libuecc +, libsodium +, libcap +, json_c +, openssl +}: stdenv.mkDerivation rec { pname = "fastd"; @@ -12,8 +23,27 @@ stdenv.mkDerivation rec { sha256 = "1p4k50dk8byrghbr0fwmgwps8df6rlkgcd603r14i71m5g27z5gw"; }; - nativeBuildInputs = [ pkg-config bison meson ninja ]; - buildInputs = [ libuecc libsodium libcap json_c openssl ]; + nativeBuildInputs = [ + bison + meson + ninja + pkg-config + ]; + + buildInputs = [ + json_c + libcap + libsodium + libuecc + openssl + ]; + + # some options are only available on x86 + mesonFlags = lib.optionals (!stdenv.isx86_64 && !stdenv.isi686) [ + "-Dcipher_salsa20_xmm=disabled" + "-Dcipher_salsa2012_xmm=disabled" + "-Dmac_ghash_pclmulqdq=disabled" + ]; enableParallelBuilding = true; diff --git a/pkgs/tools/package-management/protontricks/default.nix b/pkgs/tools/package-management/protontricks/default.nix index ec5017c54c7..bc161f38f28 100644 --- a/pkgs/tools/package-management/protontricks/default.nix +++ b/pkgs/tools/package-management/protontricks/default.nix @@ -3,6 +3,7 @@ , fetchFromGitHub , setuptools_scm , vdf +, bash , steam-run , winetricks , zenity @@ -11,13 +12,13 @@ buildPythonApplication rec { pname = "protontricks"; - version = "1.4.4"; + version = "1.5.0"; src = fetchFromGitHub { owner = "Matoking"; repo = pname; rev = version; - sha256 = "0i7p0jj7avmq3b2qlcpwcflipndrnwsvwvhc5aal7rm95aa7xhja"; + hash = "sha256-IHgoi5VUN3ORbufkruPb6wR7pTekJFQHhhDrnjOWzWM="; }; patches = [ @@ -34,6 +35,7 @@ buildPythonApplication rec { makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ + bash steam-run (winetricks.override { # Remove default build of wine to reduce closure size. @@ -45,15 +47,7 @@ buildPythonApplication rec { ]; checkInputs = [ pytestCheckHook ]; - disabledTests = [ - # Steam runtime is hard-coded with steam-run.patch and can't be configured - "test_run_steam_runtime_not_found" - "test_unknown_steam_runtime_detected" - - # Steam runtime 2 currently isn't supported - # See https://github.com/NixOS/nixpkgs/issues/100655 - "test_run_winetricks_steam_runtime_v2" - ]; + pythonImportsCheck = [ "protontricks" ]; meta = with lib; { description = "A simple wrapper for running Winetricks commands for Proton-enabled games"; diff --git a/pkgs/tools/package-management/protontricks/steam-run.patch b/pkgs/tools/package-management/protontricks/steam-run.patch index 619d80bd8a7..5e91de58dbe 100644 --- a/pkgs/tools/package-management/protontricks/steam-run.patch +++ b/pkgs/tools/package-management/protontricks/steam-run.patch @@ -1,16 +1,18 @@ diff --git a/src/protontricks/cli.py b/src/protontricks/cli.py -index fec0563..d158b96 100755 +index 9641970..6a2b268 100755 --- a/src/protontricks/cli.py +++ b/src/protontricks/cli.py -@@ -14,7 +14,7 @@ import os - import logging +@@ -15,8 +15,8 @@ import sys from . import __version__ --from .steam import (find_proton_app, find_steam_path, find_steam_runtime_path, -+from .steam import (find_proton_app, find_steam_path, - get_steam_apps, get_steam_lib_paths) - from .winetricks import get_winetricks_path from .gui import select_steam_app_with_gui +-from .steam import (find_legacy_steam_runtime_path, find_proton_app, +- find_steam_path, get_steam_apps, get_steam_lib_paths) ++from .steam import (find_proton_app, find_steam_path, get_steam_apps, ++ get_steam_lib_paths) + from .util import run_command + from .winetricks import get_winetricks_path + @@ -75,8 +75,7 @@ def main(args=None): "WINE: path to a custom 'wine' executable\n" "WINESERVER: path to a custom 'wineserver' executable\n" @@ -21,70 +23,73 @@ index fec0563..d158b96 100755 ), formatter_class=argparse.RawTextHelpFormatter ) -@@ -133,14 +132,10 @@ def main(args=None): +@@ -138,18 +137,9 @@ def main(args=None): + ) sys.exit(-1) - # 2. Find Steam Runtime if enabled -- steam_runtime_path = None -+ steam_runtime = False - +- # 2. Find the pre-installed legacy Steam Runtime if enabled +- legacy_steam_runtime_path = None +- use_steam_runtime = True +- ++ # 2. Use Steam Runtime if enabled if os.environ.get("STEAM_RUNTIME", "") != "0" and not args.no_runtime: -- steam_runtime_path = find_steam_runtime_path(steam_root=steam_root) +- legacy_steam_runtime_path = find_legacy_steam_runtime_path( +- steam_root=steam_root +- ) - -- if not steam_runtime_path: +- if not legacy_steam_runtime_path: - print("Steam Runtime was enabled but couldn't be found!") - sys.exit(-1) -+ steam_runtime = True ++ use_steam_runtime = True else: + use_steam_runtime = False logger.info("Steam Runtime disabled.") - -@@ -201,7 +196,7 @@ def main(args=None): - winetricks_path=winetricks_path, +@@ -212,7 +202,6 @@ def main(args=None): proton_app=proton_app, steam_app=steam_app, -- steam_runtime_path=steam_runtime_path, -+ steam_runtime=steam_runtime, - command=[winetricks_path, "--gui"] + use_steam_runtime=use_steam_runtime, +- legacy_steam_runtime_path=legacy_steam_runtime_path, + command=[winetricks_path, "--gui"], + use_bwrap=use_bwrap ) - -@@ -269,7 +264,7 @@ def main(args=None): - winetricks_path=winetricks_path, +@@ -282,7 +271,6 @@ def main(args=None): proton_app=proton_app, steam_app=steam_app, -- steam_runtime_path=steam_runtime_path, -+ steam_runtime=steam_runtime, + use_steam_runtime=use_steam_runtime, +- legacy_steam_runtime_path=legacy_steam_runtime_path, + use_bwrap=use_bwrap, command=[winetricks_path] + args.winetricks_command) elif args.command: - run_command( -@@ -277,7 +272,7 @@ def main(args=None): - proton_app=proton_app, +@@ -292,7 +280,6 @@ def main(args=None): steam_app=steam_app, command=args.command, -- steam_runtime_path=steam_runtime_path, -+ steam_runtime=steam_runtime, + use_steam_runtime=use_steam_runtime, +- legacy_steam_runtime_path=legacy_steam_runtime_path, + use_bwrap=use_bwrap, # Pass the command directly into the shell *without* # escaping it - cwd=steam_app.install_path, diff --git a/src/protontricks/steam.py b/src/protontricks/steam.py -index fa5772d..4f30cd3 100644 +index 8554e24..509afb6 100644 --- a/src/protontricks/steam.py +++ b/src/protontricks/steam.py -@@ -11,7 +11,7 @@ from .util import lower_dict - +@@ -13,8 +13,8 @@ from .util import lower_dict __all__ = ( "COMMON_STEAM_DIRS", "SteamApp", "find_steam_path", -- "find_steam_proton_app", "find_proton_app", "find_steam_runtime_path", -+ "find_steam_proton_app", "find_proton_app", - "find_appid_proton_prefix", "get_steam_lib_paths", "get_steam_apps", - "get_custom_proton_installations" + "find_steam_proton_app", "find_proton_app", +- "find_legacy_steam_runtime_path", "find_appid_proton_prefix", +- "get_steam_lib_paths", "get_steam_apps", "get_custom_proton_installations" ++ "find_appid_proton_prefix", "get_steam_lib_paths", ++ "get_steam_apps", "get_custom_proton_installations" ) -@@ -254,37 +254,6 @@ def find_steam_path(): + + COMMON_STEAM_DIRS = [ +@@ -283,37 +283,6 @@ def find_steam_path(): return None, None --def find_steam_runtime_path(steam_root): +-def find_legacy_steam_runtime_path(steam_root): - """ -- Find the Steam Runtime either using the STEAM_RUNTIME env or +- Find the legacy Steam Runtime either using the STEAM_RUNTIME env or - steam_root - """ - env_steam_runtime = os.environ.get("STEAM_RUNTIME", "") @@ -117,162 +122,149 @@ index fa5772d..4f30cd3 100644 APPINFO_STRUCT_SECTION = "<LLLLQ20sL" diff --git a/src/protontricks/util.py b/src/protontricks/util.py -index d513b46..c48e41f 100644 +index 40fa752..9da5509 100644 --- a/src/protontricks/util.py +++ b/src/protontricks/util.py -@@ -6,7 +6,7 @@ import stat - from pathlib import Path - from subprocess import check_output, run, PIPE - --__all__ = ("get_runtime_library_paths", "create_wine_bin_dir", "run_command") -+__all__ = ("create_wine_bin_dir", "run_command") - - logger = logging.getLogger("protontricks") - -@@ -25,93 +25,10 @@ def lower_dict(d): +@@ -25,24 +25,6 @@ def lower_dict(d): return {k.lower(): v for k, v in d.items()} --def get_host_library_paths(): +-def get_legacy_runtime_library_paths(legacy_steam_runtime_path, proton_app): - """ -- Get host library paths to use when creating the LD_LIBRARY_PATH environment -- variable for use with newer Steam Runtime installations +- Get LD_LIBRARY_PATH value to use when running a command using Steam Runtime - """ -- # The traditional Steam Runtime does the following when running the -- # `run.sh --print-steam-runtime-library-paths` command. -- # Since that command is unavailable with newer Steam Runtime releases, -- # do it ourselves here. -- result = run( -- ["/sbin/ldconfig", "-XNv"], -- check=True, stdout=PIPE, stderr=PIPE -- ) -- lines = result.stdout.decode("utf-8").split("\n") -- paths = [ -- line.split(":")[0] for line in lines -- if line.startswith("/") and ":" in line -- ] -- -- return ":".join(paths) -- -- --RUNTIME_ROOT_GLOB_PATTERNS = ( -- "var/*/files/", -- "*/files/" --) -- -- --def get_runtime_library_paths(steam_runtime_path, proton_app): -- """ -- Get LD_LIBRARY_PATH value to run a command using Steam Runtime -- """ -- def find_runtime_app_root(runtime_app): -- """ -- Find the runtime root (the directory containing the root fileystem -- used for the container) for separately installed Steam Runtime app -- """ -- for pattern in RUNTIME_ROOT_GLOB_PATTERNS: -- try: -- return next( -- runtime_app.install_path.glob(pattern) -- ) -- except StopIteration: -- pass -- -- raise RuntimeError( -- "Could not find Steam Runtime runtime root for {}".format( -- runtime_app.name -- ) -- ) -- -- if proton_app.required_tool_appid: -- # bwrap based Steam Runtime is used for Proton installations that -- # use separate Steam runtimes -- # TODO: Try to run the Wine binaries inside an user namespace somehow. -- # Newer Steam Runtime environments may rely on a newer glibc than what -- # is available on the host system, which may cause potential problems -- # otherwise. -- runtime_root = find_runtime_app_root(proton_app.required_tool_app) -- return "".join([ -- str(proton_app.install_path / "dist" / "lib"), os.pathsep, -- str(proton_app.install_path / "dist" / "lib64"), os.pathsep, -- get_host_library_paths(), os.pathsep, -- str(runtime_root / "lib" / "i386-linux-gnu"), os.pathsep, -- str(runtime_root / "lib" / "x86_64-linux-gnu") -- ]) -- -- # Traditional LD_LIBRARY_PATH based Steam Runtime is used otherwise - steam_runtime_paths = check_output([ -- str(steam_runtime_path / "run.sh"), +- str(legacy_steam_runtime_path / "run.sh"), - "--print-steam-runtime-library-paths" - ]) - steam_runtime_paths = str(steam_runtime_paths, "utf-8") - # Add Proton installation directory first into LD_LIBRARY_PATH - # so that libwine.so.1 is picked up correctly (see issue #3) - return "".join([ -- str(proton_app.install_path / "dist" / "lib"), os.pathsep, -- str(proton_app.install_path / "dist" / "lib64"), os.pathsep, +- str(proton_app.proton_dist_path / "lib"), os.pathsep, +- str(proton_app.proton_dist_path / "lib64"), os.pathsep, - steam_runtime_paths - ]) - - - WINE_SCRIPT_TEMPLATE = ( -- "#!/bin/bash\n" -+ "#!/bin/sh\n" - "# Helper script created by Protontricks to run Wine binaries using Steam Runtime\n" -- "export LD_LIBRARY_PATH=\"$PROTON_LD_LIBRARY_PATH\"\n" -- "exec \"$PROTON_PATH\"/dist/bin/{name} \"$@\"" -+ "exec steam-run \"$PROTON_PATH\"/dist/bin/{name} \"$@\"" + def get_host_library_paths(): + """ + Get host library paths to use when creating the LD_LIBRARY_PATH environment +@@ -54,7 +36,7 @@ def get_host_library_paths(): + # Since that command is unavailable with newer Steam Runtime releases, + # do it ourselves here. + result = run( +- ["/sbin/ldconfig", "-XNv"], ++ ["steam-run", "ldconfig", "-XNv"], + check=True, stdout=PIPE, stderr=PIPE + ) + lines = result.stdout.decode("utf-8").split("\n") +@@ -72,7 +54,7 @@ RUNTIME_ROOT_GLOB_PATTERNS = ( ) -@@ -172,7 +89,7 @@ def create_wine_bin_dir(proton_app): +-def get_runtime_library_paths(proton_app, use_bwrap=True): ++def get_runtime_library_paths(proton_app, proton_app_only=True): + """ + Get LD_LIBRARY_PATH value to use when running a command using Steam Runtime + """ +@@ -95,7 +77,7 @@ def get_runtime_library_paths(proton_app, use_bwrap=True): + ) + ) + +- if use_bwrap: ++ if proton_app_only: + return "".join([ + str(proton_app.proton_dist_path / "lib"), os.pathsep, + str(proton_app.proton_dist_path / "lib64"), os.pathsep +@@ -111,14 +93,19 @@ def get_runtime_library_paths(proton_app, use_bwrap=True): + ]) + +-WINE_SCRIPT_RUNTIME_V1_TEMPLATE = ( +- "#!/bin/bash\n" +- "# Helper script created by Protontricks to run Wine binaries using Steam Runtime\n" +- "export LD_LIBRARY_PATH=\"$PROTON_LD_LIBRARY_PATH\"\n" +- "exec \"$PROTON_DIST_PATH\"/bin/{name} \"$@\"" +-) ++# Add Proton installation directory first into LD_LIBRARY_PATH ++# so that libwine.so.1 is picked up correctly (see issue #3) ++WINE_SCRIPT_RUNTIME_V1_TEMPLATE = """#!/usr/bin/env -S steam-run bash ++# Helper script created by Protontricks to run Wine binaries using Steam Runtime ++export LD_LIBRARY_PATH="$PROTON_LD_LIBRARY_PATH":"$LD_LIBRARY_PATH" ++exec "$PROTON_DIST_PATH"/bin/{name} "$@" ++""" + +-WINE_SCRIPT_RUNTIME_V2_TEMPLATE = """#!/bin/bash ++# The run script calls pressure-vessel-unruntime which will unset ++# LD_LIBRARY_PATH defined by steam-run. This will cause Pressure ++# Vessel to segfault, so just call pressure-vessel-wrap directly ++# instead. ++WINE_SCRIPT_RUNTIME_V2_TEMPLATE = """#!/usr/bin/env bash + # Helper script created by Protontricks to run Wine binaries using Steam Runtime + PROTONTRICKS_PROXY_SCRIPT_PATH="{script_path}" + if [[ -n "$PROTONTRICKS_INSIDE_STEAM_RUNTIME" ]]; then +@@ -127,9 +114,13 @@ if [[ -n "$PROTONTRICKS_INSIDE_STEAM_RUNTIME" ]]; then + export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PROTON_LD_LIBRARY_PATH" + "$PROTON_DIST_PATH"/bin/{name} "$@" + else +- exec "$STEAM_RUNTIME_PATH"/run --share-pid --batch --filesystem=/mnt \ +- --filesystem=/tmp --filesystem=/run/media --filesystem=/etc \ +- --filesystem=/opt --filesystem=/home --filesystem=/usr -- \ ++ exec steam-run "$STEAM_RUNTIME_PATH"/pressure-vessel/bin/pressure-vessel-wrap \ ++ --runtime-archive=$(echo "$STEAM_RUNTIME_PATH"/*runtime.tar.gz) \ ++ --variable-dir="${{PRESSURE_VESSEL_VARIABLE_DIR:-$STEAM_RUNTIME_PATH/var}}" \ ++ --share-pid --batch \ ++ --filesystem=/mnt --filesystem=/tmp --filesystem=/run/media \ ++ --filesystem=/etc --filesystem=/opt --filesystem=/home \ ++ --filesystem=/usr -- \ + env PROTONTRICKS_INSIDE_STEAM_RUNTIME=1 \ + "$PROTONTRICKS_PROXY_SCRIPT_PATH" "$@" + fi +@@ -194,7 +185,6 @@ def create_wine_bin_dir(proton_app, use_bwrap=True): def run_command( winetricks_path, proton_app, steam_app, command, -- steam_runtime_path=None, -+ steam_runtime=False, + use_steam_runtime=False, +- legacy_steam_runtime_path=None, + use_bwrap=True, **kwargs): """Run an arbitrary command with the correct environment variables - for the given Proton app -@@ -180,13 +97,13 @@ def run_command( - The environment variables are set for the duration of the call - and restored afterwards - -- If 'steam_runtime_path' is provided, run the command using Steam Runtime -+ If 'steam_runtime' is provided, run the command using Steam Runtime - """ - # Check for incomplete Steam Runtime installation - runtime_install_incomplete = \ - proton_app.required_tool_appid and not proton_app.required_tool_app - -- if steam_runtime_path and runtime_install_incomplete: -+ if steam_runtime and runtime_install_incomplete: - raise RuntimeError( - "{} is missing the required Steam Runtime. You may need to launch " - "a Steam app using this Proton version to finish the " -@@ -234,7 +151,7 @@ def run_command( - os.environ.pop("WINEARCH", "") +@@ -271,7 +261,7 @@ def run_command( + os.environ["STEAM_RUNTIME_PATH"] = \ + str(proton_app.required_tool_app.install_path) + os.environ["PROTON_LD_LIBRARY_PATH"] = \ +- get_runtime_library_paths(proton_app, use_bwrap=use_bwrap) ++ get_runtime_library_paths(proton_app, proton_app_only=use_bwrap) - wine_bin_dir = None -- if steam_runtime_path: -+ if steam_runtime: - if proton_app.required_tool_app: runtime_name = proton_app.required_tool_app.name logger.info( -@@ -251,8 +168,6 @@ def run_command( +@@ -294,11 +284,8 @@ def run_command( + "Current Steam Runtime not recognized by Protontricks." + ) + else: +- # Legacy Steam Runtime requires a different LD_LIBRARY_PATH + os.environ["PROTON_LD_LIBRARY_PATH"] = \ +- get_legacy_runtime_library_paths( +- legacy_steam_runtime_path, proton_app +- ) ++ get_runtime_library_paths(proton_app, proton_app_only=True) + + # When Steam Runtime is enabled, create a set of helper scripts # that load the underlying Proton Wine executables with Steam Runtime - # and Proton libraries instead of system libraries - wine_bin_dir = create_wine_bin_dir(proton_app=proton_app) -- os.environ["PROTON_LD_LIBRARY_PATH"] = \ -- get_runtime_library_paths(steam_runtime_path, proton_app) +@@ -306,8 +293,6 @@ def run_command( + wine_bin_dir = create_wine_bin_dir( + proton_app=proton_app, use_bwrap=use_bwrap + ) +- os.environ["LEGACY_STEAM_RUNTIME_PATH"] = \ +- str(legacy_steam_runtime_path) + os.environ["PATH"] = "".join([ str(wine_bin_dir), os.pathsep, os.environ["PATH"] - ]) diff --git a/tests/test_cli.py b/tests/test_cli.py -index b612dfa..c4d1de0 100644 +index 1955d81..1de44b3 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py -@@ -115,9 +115,6 @@ class TestCLIRun: +@@ -117,15 +117,10 @@ class TestCLIRun: assert str(command.args[0]).endswith(".local/bin/winetricks") assert command.args[1] == "winecfg" assert command.env["PATH"].startswith(str(wine_bin_dir)) @@ -282,3 +274,61 @@ index b612dfa..c4d1de0 100644 assert command.env["WINE"] == str(wine_bin_dir / "wine") assert command.env["WINELOADER"] == str(wine_bin_dir / "wine") assert command.env["WINESERVER"] == str(wine_bin_dir / "wineserver") + +- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \ +- str(steam_runtime_dir / "steam-runtime") + assert "STEAM_RUNTIME_PATH" not in command.env + + for name in ("wine", "wineserver"): +@@ -166,16 +161,14 @@ class TestCLIRun: + assert command.env["PATH"].startswith(str(wine_bin_dir)) + + # Compared to the traditional Steam Runtime, PROTON_LD_LIBRARY_PATH +- # will be different ++ # will be the same (it would be different without steam-run.patch) + proton_install_path = Path(proton_app.install_path) + assert command.env["PROTON_LD_LIBRARY_PATH"] == "".join([ + str(proton_install_path / "dist" / "lib"), os.pathsep, + str(proton_install_path / "dist" / "lib64"), os.pathsep + ]) + +- # Environment variables for both legacy and new Steam Runtime exist +- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \ +- str(steam_runtime_dir / "steam-runtime") ++ # Environment variable for new Steam Runtime exists + assert command.env["STEAM_RUNTIME_PATH"] == \ + str(steam_runtime_soldier.install_path) + +@@ -238,10 +231,7 @@ class TestCLIRun: + str(runtime_root / "lib" / "i386-linux-gnu"), os.pathsep, + str(runtime_root / "lib" / "x86_64-linux-gnu") + ])) +- +- # Environment variables for both legacy and new Steam Runtime exist +- assert command.env["LEGACY_STEAM_RUNTIME_PATH"] == \ +- str(steam_runtime_dir / "steam-runtime") ++ # Environment variable for new Steam Runtime exists + assert command.env["STEAM_RUNTIME_PATH"] == \ + str(steam_runtime_soldier.install_path) + +@@ -324,20 +314,6 @@ class TestCLIRun: + + assert "Zenity is not installed" in result + +- def test_run_steam_runtime_not_found( +- self, cli, steam_dir, steam_app_factory): +- """ +- Try performing a command with Steam Runtime enabled but no +- available Steam Runtime installation +- """ +- steam_app_factory(name="Fake game 1", appid=10) +- result = cli( +- ["10", "winecfg"], env={"STEAM_RUNTIME": "invalid/path"}, +- expect_exit=True +- ) +- +- assert "Steam Runtime was enabled but couldn't be found" in result +- + def test_run_proton_not_found(self, cli, steam_dir, steam_app_factory): + steam_app_factory(name="Fake game 1", appid=10) + result = cli(["10", "winecfg"], expect_exit=True) diff --git a/pkgs/tools/text/chroma/default.nix b/pkgs/tools/text/chroma/default.nix index 390793ffaf1..388d9b92273 100644 --- a/pkgs/tools/text/chroma/default.nix +++ b/pkgs/tools/text/chroma/default.nix @@ -2,15 +2,14 @@ buildGoModule rec { pname = "chroma"; - version = "0.8.2"; + version = "0.9.1"; src = fetchFromGitHub { owner = "alecthomas"; repo = pname; rev = "v${version}"; - sha256 = "0vzxd0jvjaakwjvkkkjppakjb00z44k7gb5ng1i4924agh24n5ka"; + sha256 = "0zzk4wcjgxa9lsx8kwpmxvcw67f2fr7ai37jxmdahnws0ai2c2f7"; leaveDotGit = true; - fetchSubmodules = true; }; nativeBuildInputs = [ git ]; @@ -27,7 +26,7 @@ buildGoModule rec { --replace 'date = "?"' "date = \"$date\"" ''; - vendorSha256 = "16cnc4scgkx8jan81ymha2q1kidm6hzsnip5mmgbxpqcc2h7hv9m"; + vendorSha256 = "0y8mp08zccn9qxrsj9j7vambz8dwzsxbbgrlppzam53rg8rpxhrg"; subPackages = [ "cmd/chroma" ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 51658440cad..ecf7c8177ab 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4459,7 +4459,9 @@ in ferm = callPackage ../tools/networking/ferm { }; - ffsend = callPackage ../tools/misc/ffsend { }; + ffsend = callPackage ../tools/misc/ffsend { + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Security AppKit; + }; fgallery = callPackage ../tools/graphics/fgallery { }; @@ -11523,6 +11525,8 @@ in sbcl_2_1_2 = callPackage ../development/compilers/sbcl/2.1.2.nix {}; sbcl = sbcl_2_1_2; + roswell = callPackage ../development/tools/roswell/default.nix { }; + scala_2_10 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.10"; jre = jdk8; }; scala_2_11 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.11"; jre = jdk8; }; scala_2_12 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.12"; jre = jdk8; }; @@ -16637,6 +16641,10 @@ in mono-addins = callPackage ../development/libraries/mono-addins { }; + movine = callPackage ../development/tools/database/movine { + inherit (darwin.apple_sdk.frameworks) Security; + }; + movit = callPackage ../development/libraries/movit { }; mosquitto = callPackage ../servers/mqtt/mosquitto { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 10c07d8d4b4..90f766ed459 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7195,9 +7195,22 @@ in { samsungtvws = callPackage ../development/python-modules/samsungtvws { }; + sanic = callPackage ../development/python-modules/sanic { + # pytest-sanic is doing ok for the sole purpose of testing Sanic. + pytest-sanic = self.pytest-sanic.overridePythonAttrs (oldAttrs: { + doCheck = false; + meta.broken = false; + }); + # Don't pass any `sanic` to avoid dependency loops. `sanic-testing` + # has special logic to disable tests when this is the case. + sanic-testing = self.sanic-testing.override { sanic = null; }; + }; + sanic-auth = callPackage ../development/python-modules/sanic-auth { }; - sanic = callPackage ../development/python-modules/sanic { }; + sanic-routing = callPackage ../development/python-modules/sanic-routing { }; + + sanic-testing = callPackage ../development/python-modules/sanic-testing { }; sapi-python-client = callPackage ../development/python-modules/sapi-python-client { }; |