diff --git a/.github/labeler.yml b/.github/labeler.yml index 412dff9c06f8..9381ff672269 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -65,6 +65,11 @@ - pkgs/development/lua-modules/**/* - pkgs/top-level/lua-packages.nix +"6.topic: mate": + - nixos/modules/services/x11/desktop-managers/mate.nix + - nixos/tests/mate.nix + - pkgs/desktops/mate/**/* + "6.topic: nixos": - nixos/**/* - pkgs/os-specific/linux/nixos-rebuild/**/* diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 2fbfe0d2c902..4c3980bcc1bb 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -377,6 +377,7 @@ in { man = handleTest ./man.nix {}; mariadb-galera = handleTest ./mysql/mariadb-galera.nix {}; mastodon = discoverTests (import ./web-apps/mastodon { inherit handleTestOn; }); + mate = handleTest ./mate.nix {}; matomo = handleTest ./matomo.nix {}; matrix-appservice-irc = handleTest ./matrix/appservice-irc.nix {}; matrix-conduit = handleTest ./matrix/conduit.nix {}; diff --git a/nixos/tests/evcc.nix b/nixos/tests/evcc.nix index c223977a9d82..b445735ede98 100644 --- a/nixos/tests/evcc.nix +++ b/nixos/tests/evcc.nix @@ -88,7 +88,6 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : with subtest("Check journal for errors"): _, output = machine.execute("journalctl -o cat -u evcc.service") assert "FATAL" not in output - assert "ERROR" not in output with subtest("Check systemd hardening"): _, output = machine.execute("systemd-analyze security evcc.service | grep -v '✓'") diff --git a/nixos/tests/mate.nix b/nixos/tests/mate.nix new file mode 100644 index 000000000000..78ba59c5fc20 --- /dev/null +++ b/nixos/tests/mate.nix @@ -0,0 +1,58 @@ +import ./make-test-python.nix ({ pkgs, lib, ... }: { + name = "mate"; + + meta = { + maintainers = lib.teams.mate.members; + }; + + nodes.machine = { ... }: { + imports = [ + ./common/user-account.nix + ]; + + services.xserver.enable = true; + + services.xserver.displayManager = { + lightdm.enable = true; + autoLogin = { + enable = true; + user = "alice"; + }; + }; + + services.xserver.desktopManager.mate.enable = true; + + # Silence log spam due to no sound drivers loaded: + # ALSA lib confmisc.c:855:(parse_card) cannot find card '0' + hardware.pulseaudio.enable = true; + }; + + testScript = { nodes, ... }: + let + user = nodes.machine.users.users.alice; + in + '' + with subtest("Wait for login"): + machine.wait_for_x() + machine.wait_for_file("${user.home}/.Xauthority") + machine.succeed("xauth merge ${user.home}/.Xauthority") + + with subtest("Check that logging in has given the user ownership of devices"): + machine.succeed("getfacl -p /dev/snd/timer | grep -q ${user.name}") + + with subtest("Check if MATE session components actually start"): + machine.wait_until_succeeds("pgrep marco") + machine.wait_for_window("marco") + machine.wait_until_succeeds("pgrep mate-panel") + machine.wait_for_window("Top Panel") + machine.wait_for_window("Bottom Panel") + machine.wait_until_succeeds("pgrep caja") + machine.wait_for_window("Caja") + + with subtest("Open MATE terminal"): + machine.succeed("su - ${user.name} -c 'DISPLAY=:0.0 mate-terminal >&2 &'") + machine.wait_for_window("Terminal") + machine.sleep(20) + machine.screenshot("screen") + ''; +}) diff --git a/pkgs/applications/backup/timeshift/unwrapped.nix b/pkgs/applications/backup/timeshift/unwrapped.nix index eaf3f9013817..8e86b35cf7cc 100644 --- a/pkgs/applications/backup/timeshift/unwrapped.nix +++ b/pkgs/applications/backup/timeshift/unwrapped.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "timeshift"; - version = "22.11.1"; + version = "22.11.2"; src = fetchFromGitHub { owner = "linuxmint"; repo = "timeshift"; rev = version; - sha256 = "JYYiqJzLszaCJSl7fDb9Oz8tdIYAnqEbJoRg4zw3wbg="; + sha256 = "yZNERRoNZ1K7BRiAu7sqVQyhghsS/AeZSODMVSm46oY="; }; patches = [ diff --git a/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix b/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix index eedfaee00c59..605b5bc286ab 100644 --- a/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix +++ b/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix @@ -20,13 +20,13 @@ stdenv.mkDerivation rec { pname = "lightdm-slick-greeter"; - version = "1.6.0"; + version = "1.6.1"; src = fetchFromGitHub { owner = "linuxmint"; repo = "slick-greeter"; rev = version; - sha256 = "sha256-XoGha0DyrtrGXW72Zvnk1FrvULPMYc0FvQj4JFSKxXo="; + sha256 = "sha256-k/E3bR63kesHQ/we+ctC0UEYE5YdZ6Lv5lYuXqCOvKA="; }; nativeBuildInputs = [ @@ -56,6 +56,7 @@ stdenv.mkDerivation rec { substituteInPlace src/slick-greeter.vala \ --replace "/usr/bin/numlockx" "${numlockx}/bin/numlockx" \ --replace "/usr/share/xsessions/" "/run/current-system/sw/share/xsessions/" \ + --replace "/usr/share/wayland-sessions/" "/run/current-system/sw/share/wayland-sessions/" \ --replace "/usr/bin/slick-greeter" "${placeholder "out"}/bin/slick-greeter" substituteInPlace src/session-list.vala \ diff --git a/pkgs/applications/misc/tut/default.nix b/pkgs/applications/misc/tut/default.nix index 97677407fc15..b5e23f15b0ba 100644 --- a/pkgs/applications/misc/tut/default.nix +++ b/pkgs/applications/misc/tut/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "tut"; - version = "1.0.30"; + version = "1.0.34"; src = fetchFromGitHub { owner = "RasmusLindroth"; repo = pname; rev = version; - sha256 = "sha256-Cr9aDfreTDeFV5mws29pYRUkUjHVcLGEZyUvZYAp3B8="; + sha256 = "sha256-AnuPTv9W+2yDcM803DZaNIn4S7A78JEv6S8pA18whVA="; }; - vendorSha256 = "sha256-ECaePGmSaf0vuKbvgdUMOF8oCpc14srFFMmPJPFFqw4="; + vendorHash = "sha256-go7eZHhrQ1ZcLOn56a3Azn3eRyAesAkgLabPbwzKtds="; meta = with lib; { description = "A TUI for Mastodon with vim inspired keys"; diff --git a/pkgs/applications/virtualization/youki/default.nix b/pkgs/applications/virtualization/youki/default.nix new file mode 100644 index 000000000000..54a88a334f8a --- /dev/null +++ b/pkgs/applications/virtualization/youki/default.nix @@ -0,0 +1,48 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, pkg-config +, installShellFiles +, dbus +, libseccomp +, systemd +}: + +rustPlatform.buildRustPackage rec { + pname = "youki"; + version = "0.0.4"; + + src = fetchFromGitHub { + owner = "containers"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-XwapCfu6Me0xSe+qFz9BFRYpQvG+ztb6QyhGejYRPb4="; + }; + + nativeBuildInputs = [ pkg-config installShellFiles ]; + + buildInputs = [ dbus libseccomp systemd ]; + + postInstall = '' + installShellCompletion --cmd youki \ + --bash <($out/bin/youki completion -s bash) \ + --fish <($out/bin/youki completion -s fish) \ + --zsh <($out/bin/youki completion -s zsh) + ''; + + cargoBuildFlags = [ "-p" "youki" ]; + cargoTestFlags = [ "-p" "youki" ]; + + cargoSha256 = "sha256-PT1kVo4gQFH9sIprEoAioNvDL/soMHcA2utEiQJPS/0="; + + doCheck = false; # test failed + + meta = with lib; { + description = "A container runtime written in Rust"; + homepage = "https://containers.github.io/youki/"; + changelog = "https://github.com/containers/youki/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ candyc1oud ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix b/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix index ceee75dd6979..b3a16ed3fc35 100644 --- a/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix +++ b/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix @@ -35,13 +35,13 @@ stdenv.mkDerivation rec { pname = "cinnamon-control-center"; - version = "5.6.0"; + version = "5.6.1"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; - hash = "sha256-WK35uDckIYU4HwuYtLj+CFVJD8O78LTQcnOvjp/et2s="; + hash = "sha256-rp3K7SqGw8da2U61VjKiqUyT5vCUVk4XZdRYtLwRtfQ="; }; buildInputs = [ diff --git a/pkgs/desktops/cinnamon/cinnamon-desktop/default.nix b/pkgs/desktops/cinnamon/cinnamon-desktop/default.nix index 0a724023418b..c9c718fb7da9 100644 --- a/pkgs/desktops/cinnamon/cinnamon-desktop/default.nix +++ b/pkgs/desktops/cinnamon/cinnamon-desktop/default.nix @@ -18,13 +18,13 @@ stdenv.mkDerivation rec { pname = "cinnamon-desktop"; - version = "5.6.0"; + version = "5.6.1"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; - hash = "sha256-ajtKvy9CMr+Vsmdn49ZWYtbniZV1dqWJGTou3QY4oPc="; + hash = "sha256-h2Jl/4SreniZtxziDwM0iwHXgGBrnHu8NLkIX7VGP18="; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix b/pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix index 981b6a5d4578..e6a615bb12af 100644 --- a/pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix +++ b/pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix @@ -29,13 +29,13 @@ stdenv.mkDerivation rec { pname = "cinnamon-screensaver"; - version = "5.6.2"; + version = "5.6.3"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; - hash = "sha256-xsxNGDFiBzVtoCV94iUuia45FRJGyGO522u6p1AIR6g="; + hash = "sha256-S4+9ZTpDwwvYTc3gz0YQBYjgygp8KP94azkiJcH6xCk="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix b/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix index 47a1e092d15c..1fcc9fb6a29a 100644 --- a/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix +++ b/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix @@ -32,13 +32,13 @@ stdenv.mkDerivation rec { pname = "cinnamon-settings-daemon"; - version = "5.6.0"; + version = "5.6.1"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; - hash = "sha256-VUGOBvMInruX1JVk9ECP8++FUrBQwDJhkZT/1pPg2wU="; + hash = "sha256-QR77O3rFfY0+6cKoS75xoFRplNo4nvTMtR2rNKZERYE="; }; patches = [ diff --git a/pkgs/desktops/cinnamon/mint-cursor-themes/default.nix b/pkgs/desktops/cinnamon/mint-cursor-themes/default.nix index c2190a65308d..31b453b0bea9 100644 --- a/pkgs/desktops/cinnamon/mint-cursor-themes/default.nix +++ b/pkgs/desktops/cinnamon/mint-cursor-themes/default.nix @@ -5,13 +5,14 @@ stdenvNoCC.mkDerivation rec { pname = "mint-cursor-themes"; - version = "unstable-2022-11-29"; + version = "1.0.1"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; - rev = "aa6bb767831ac43d1768c2e639de713a4a1eba8d"; - hash = "sha256-UQnRrylUo9zuDiAwQ1COtXMtq4XTbxtMle41p+pzxJc="; + # They don't really do tags, this is just a named commit. + rev = "e17f8a4620827235dabbe5221bd0ee8c44dad0d5"; + hash = "sha256-yLUmIVh884uDVkNil7qxf6t/gykipzBvPgzwmY3zvQk="; }; installPhase = '' diff --git a/pkgs/desktops/cinnamon/muffin/default.nix b/pkgs/desktops/cinnamon/muffin/default.nix index 7b9957f2392c..58a9008e3387 100644 --- a/pkgs/desktops/cinnamon/muffin/default.nix +++ b/pkgs/desktops/cinnamon/muffin/default.nix @@ -1,7 +1,6 @@ { stdenv , lib , fetchFromGitHub -, fetchpatch , substituteAll , cairo , cinnamon-desktop @@ -36,7 +35,7 @@ stdenv.mkDerivation rec { pname = "muffin"; - version = "5.6.2"; + version = "5.6.3"; outputs = [ "out" "dev" "man" ]; @@ -44,7 +43,7 @@ stdenv.mkDerivation rec { owner = "linuxmint"; repo = pname; rev = version; - hash = "sha256-bHEBzl0aBXsHOhSWJUz428pG5M6L0s/Q6acKO+2oMXo="; + hash = "sha256-qcm1CRUMKFx4KDXBnaIVLHuZTzSMEWEBFTWMe85pJDE="; }; patches = [ @@ -52,13 +51,6 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; zenity = gnome.zenity; }) - - # compositor: Fix crash when restarting Cinnamon - # https://github.com/linuxmint/muffin/pull/655 - (fetchpatch { - url = "https://github.com/linuxmint/muffin/commit/1a941ec603a1565dbd2f943f7da6e877d1541bcb.patch"; - sha256 = "sha256-6x64rWQ20ZjM9z79Pg6QMDPeFN5VNdDHBueRvy2kA6c="; - }) ]; nativeBuildInputs = [ diff --git a/pkgs/desktops/cinnamon/nemo/default.nix b/pkgs/desktops/cinnamon/nemo/default.nix index ef5762cd1417..58be1f5b81cb 100644 --- a/pkgs/desktops/cinnamon/nemo/default.nix +++ b/pkgs/desktops/cinnamon/nemo/default.nix @@ -23,24 +23,19 @@ stdenv.mkDerivation rec { pname = "nemo"; - version = "5.6.1"; + version = "5.6.2"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; - sha256 = "sha256-ztx3Y+n9Bpzuz06mbkis3kdlM/0JrOaMDbRF5glzkDE="; + sha256 = "sha256-JwwSeY+TsbYc2ZXoxR9aja0Hb8AmrWK79cv1ApAgcpQ="; }; patches = [ # Load extensions from NEMO_EXTENSION_DIR environment variable # https://github.com/NixOS/nixpkgs/issues/78327 ./load-extensions-from-env.patch - - # Don't populate nemo actions from /run/current-system/sw/share - # They should only be loaded exactly once from $out/share - # https://github.com/NixOS/nixpkgs/issues/190781 - ./fix-nemo-actions-duplicate-menu-items.patch ]; outputs = [ "out" "dev" ]; diff --git a/pkgs/desktops/cinnamon/nemo/fix-nemo-actions-duplicate-menu-items.patch b/pkgs/desktops/cinnamon/nemo/fix-nemo-actions-duplicate-menu-items.patch deleted file mode 100644 index 3a555774c450..000000000000 --- a/pkgs/desktops/cinnamon/nemo/fix-nemo-actions-duplicate-menu-items.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff --git a/libnemo-private/nemo-action-manager.c b/libnemo-private/nemo-action-manager.c -index 4dac198..b671421 100644 ---- a/libnemo-private/nemo-action-manager.c -+++ b/libnemo-private/nemo-action-manager.c -@@ -146,6 +146,8 @@ set_up_actions_directories (NemoActionManager *action_manager) - data_dirs = (gchar **) g_get_system_data_dirs (); - - for (i = 0; i < g_strv_length (data_dirs); i++) { -+ if (g_strcmp0 (data_dirs[i], "/run/current-system/sw/share") == 0) -+ continue; - path = g_build_filename (data_dirs[i], "nemo", "actions", NULL); - uri = g_filename_to_uri (path, NULL, NULL); - -diff --git a/src/nemo-action-config-widget.c b/src/nemo-action-config-widget.c -index fc4075e..6e1c837 100644 ---- a/src/nemo-action-config-widget.c -+++ b/src/nemo-action-config-widget.c -@@ -221,6 +221,8 @@ refresh_widget (NemoActionConfigWidget *widget) - data_dirs = (gchar **) g_get_system_data_dirs (); - - for (i = 0; i < g_strv_length (data_dirs); i++) { -+ if (g_strcmp0 (data_dirs[i], "/run/current-system/sw/share") == 0) -+ continue; - path = g_build_filename (data_dirs[i], "nemo", "actions", NULL); - populate_from_directory (widget, path); - g_clear_pointer (&path, g_free); -@@ -390,6 +392,8 @@ static void setup_dir_monitors (NemoActionConfigWidget *widget) - - guint i; - for (i = 0; i < g_strv_length (data_dirs); i++) { -+ if (g_strcmp0 (data_dirs[i], "/run/current-system/sw/share") == 0) -+ continue; - gchar *path = g_build_filename (data_dirs[i], "nemo", "actions", NULL); - try_monitor_path (widget, path); - g_free (path); -diff --git a/src/nemo-script-config-widget.c b/src/nemo-script-config-widget.c -index 3a2d349..b8a85b4 100644 ---- a/src/nemo-script-config-widget.c -+++ b/src/nemo-script-config-widget.c -@@ -288,6 +288,8 @@ static void setup_dir_monitors (NemoScriptConfigWidget *widget) - - guint i; - for (i = 0; i < g_strv_length (data_dirs); i++) { -+ if (g_strcmp0 (data_dirs[i], "/run/current-system/sw/share") == 0) -+ continue; - gchar *path = g_build_filename (data_dirs[i], "nemo", "actions", NULL); - try_monitor_path (widget, path); - g_free (path); diff --git a/pkgs/desktops/cinnamon/nemo/wrapper.nix b/pkgs/desktops/cinnamon/nemo/wrapper.nix index 7f7633d19a85..604247566b84 100644 --- a/pkgs/desktops/cinnamon/nemo/wrapper.nix +++ b/pkgs/desktops/cinnamon/nemo/wrapper.nix @@ -24,6 +24,10 @@ symlinkJoin { --set "NEMO_PYTHON_EXTENSION_DIR" "$out/share/nemo-python/extensions" done + # Don't populate the same nemo actions twice when having this globally installed + # https://github.com/NixOS/nixpkgs/issues/190781#issuecomment-1365601853 + rm -r $out/share/nemo/actions + # Point to wrapped binary in all service files for file in "share/dbus-1/services/nemo.FileManager1.service" \ "share/dbus-1/services/nemo.service" diff --git a/pkgs/desktops/cinnamon/xviewer/default.nix b/pkgs/desktops/cinnamon/xviewer/default.nix index 73ba5d99d397..9002c10e6120 100644 --- a/pkgs/desktops/cinnamon/xviewer/default.nix +++ b/pkgs/desktops/cinnamon/xviewer/default.nix @@ -27,13 +27,13 @@ stdenv.mkDerivation rec { pname = "xviewer"; - version = "3.2.11"; + version = "3.2.12"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; - sha256 = "sha256-EyrK4mnAHt/Lypuz7XX7+GFGfkfC5VDIit2WYZawI04="; + sha256 = "sha256-tiZeC862gHbZt76sbxseUu9vWN+1huftXpE7lQLkGKU="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/virtual-display/default.nix b/pkgs/development/python-modules/PyVirtualDisplay/default.nix similarity index 100% rename from pkgs/development/python-modules/virtual-display/default.nix rename to pkgs/development/python-modules/PyVirtualDisplay/default.nix diff --git a/pkgs/development/python-modules/hydra-core/default.nix b/pkgs/development/python-modules/hydra-core/default.nix index 17dda8404b4a..d16b1137312c 100644 --- a/pkgs/development/python-modules/hydra-core/default.nix +++ b/pkgs/development/python-modules/hydra-core/default.nix @@ -7,6 +7,7 @@ , importlib-resources , jre_headless , omegaconf +, packaging , pytestCheckHook , pythonOlder , substituteAll @@ -48,6 +49,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ antlr4-python3-runtime omegaconf + packaging ] ++ lib.optionals (pythonOlder "3.9") [ importlib-resources ]; @@ -69,6 +71,8 @@ buildPythonPackage rec { pythonImportsCheck = [ "hydra" + # See https://github.com/NixOS/nixpkgs/issues/208843 + "hydra.version" ]; meta = with lib; { diff --git a/pkgs/development/python-modules/nocturne/default.nix b/pkgs/development/python-modules/nocturne/default.nix new file mode 100644 index 000000000000..42424f1dacc9 --- /dev/null +++ b/pkgs/development/python-modules/nocturne/default.nix @@ -0,0 +1,61 @@ +{ buildPythonPackage +, cmake +, fetchFromGitHub +, gtest +, hydra-core +, lib +, nlohmann_json +, pybind11 +, PyVirtualDisplay +, sfml +, substituteAll +}: + +buildPythonPackage rec { + pname = "nocturne"; + version = "unstable-2022-10-15"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "facebookresearch"; + repo = pname; + rev = "ae0a4e361457caf6b7e397675cc86f46161405ed"; + hash = "sha256-pFVbl4m7qX1mJgleNabRboS9klDDsbzUa4PYL5+Jupc="; + }; + + # Simulate the git submodules but with nixpkgs dependencies + postUnpack = '' + rm -rf $sourceRoot/third_party/* + ln -s ${nlohmann_json.src} $sourceRoot/third_party/json + ln -s ${pybind11.src} $sourceRoot/third_party/pybind11 + ''; + + patches = [ + (substituteAll { + src = ./dependencies.patch; + gtest_src = gtest.src; + }) + ]; + + nativeBuildInputs = [ cmake ]; + dontUseCmakeConfigure = true; + + buildInputs = [ sfml ]; + + # hydra-core and PyVirtualDisplay are not declared as dependences but they are requirements + propagatedBuildInputs = [ hydra-core PyVirtualDisplay ]; + + # Test suite requires hydra-submitit-launcher which is not packaged as of 2022-01-02 + doCheck = false; + + pythonImportsCheck = [ + "nocturne" + ]; + + meta = with lib; { + description = "A data-driven, fast driving simulator for multi-agent coordination under partial observability"; + homepage = "https://github.com/facebookresearch/nocturne"; + license = licenses.mit; + maintainers = with maintainers; [ samuela ]; + }; +} diff --git a/pkgs/development/python-modules/nocturne/dependencies.patch b/pkgs/development/python-modules/nocturne/dependencies.patch new file mode 100644 index 000000000000..18843ff6309f --- /dev/null +++ b/pkgs/development/python-modules/nocturne/dependencies.patch @@ -0,0 +1,27 @@ +diff --git a/nocturne/cpp/CMakeLists.txt b/nocturne/cpp/CMakeLists.txt +index c67815f..e1f825b 100644 +--- a/nocturne/cpp/CMakeLists.txt ++++ b/nocturne/cpp/CMakeLists.txt +@@ -62,8 +62,7 @@ include(FetchContent) + + FetchContent_Declare( + googletest +- GIT_REPOSITORY https://github.com/google/googletest.git +- GIT_TAG main ++ SOURCE_DIR @gtest_src@ + ) + + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) +diff --git a/setup.py b/setup.py +index 4863ae6..b5d3545 100644 +--- a/setup.py ++++ b/setup.py +@@ -92,6 +92,8 @@ def main(): + # with open("./requirements.txt", "r") as f: + # requires = f.read().splitlines() + setup( ++ # Adding `packages=` is necessary to get `python setup.py install` to work ++ packages=["nocturne", "cfgs"], + ext_modules=[CMakeExtension("nocturne", "./nocturne")], + cmdclass=dict(build_ext=CMakeBuild), + ) diff --git a/pkgs/development/python-modules/pytest-xvfb/default.nix b/pkgs/development/python-modules/pytest-xvfb/default.nix index c3dabe7f6e30..f4038c557797 100644 --- a/pkgs/development/python-modules/pytest-xvfb/default.nix +++ b/pkgs/development/python-modules/pytest-xvfb/default.nix @@ -2,7 +2,7 @@ , buildPythonPackage , fetchPypi , pytest -, virtual-display +, PyVirtualDisplay , isPy27 }: @@ -19,7 +19,7 @@ buildPythonPackage rec { buildInputs = [ pytest ]; propagatedBuildInputs = [ - virtual-display + PyVirtualDisplay ]; meta = with lib; { diff --git a/pkgs/development/python-modules/thefuzz/default.nix b/pkgs/development/python-modules/thefuzz/default.nix new file mode 100644 index 000000000000..e521182a395a --- /dev/null +++ b/pkgs/development/python-modules/thefuzz/default.nix @@ -0,0 +1,50 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +, pytestCheckHook +, hypothesis +, python-Levenshtein +}: + +buildPythonPackage rec { + pname = "thefuzz"; + version = "0.19.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-b3Em2y8silQhKwXjp0DkX0KRxJfXXSB1Fyj2Nbt0qj0="; + }; + + propagatedBuildInputs = [ python-Levenshtein ]; + + # Skip linting + postPatch = '' + substituteInPlace test_thefuzz.py --replace "import pycodestyle" "" + ''; + + pythonImportsCheck = [ + "thefuzz" + ]; + + checkInputs = [ + hypothesis + pytestCheckHook + ]; + + disabledTests = [ + # Skip linting + "test_pep8_conformance" + ]; + + meta = with lib; { + description = "Fuzzy string matching for Python"; + homepage = "https://github.com/seatgeek/thefuzz"; + changelog = "https://github.com/seatgeek/thefuzz/blob/${version}/CHANGES.rst"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ sumnerevans ]; + }; +} diff --git a/pkgs/development/tools/oh-my-posh/default.nix b/pkgs/development/tools/oh-my-posh/default.nix index 3094937a7e36..45abd9cd83b4 100644 --- a/pkgs/development/tools/oh-my-posh/default.nix +++ b/pkgs/development/tools/oh-my-posh/default.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "oh-my-posh"; - version = "12.26.2"; + version = "12.35.2"; src = fetchFromGitHub { owner = "jandedobbeleer"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-WznHvGNpb2iGz+jZFtphkxsGeT0Y25CO5MMjmAl7GV0="; + hash = "sha256-6w8m7AuSEFhoYhjAJMXmwpsYuIMCvTiFKasUnBgYYCM="; }; - vendorHash = "sha256-OrtKFkWXqVoXKmN6BT8YbCNjR1gRTT4gPNwmirn7fjU="; + vendorHash = "sha256-WiH4qu8DODEhAkxUm6VDcBwFyQO7kNjaiaWPDHCHj9E="; sourceRoot = "source/src"; @@ -36,6 +36,7 @@ buildGoModule rec { ]; postInstall = '' + mv $out/bin/{src,oh-my-posh} mkdir -p $out/share/oh-my-posh cp -r ${src}/themes $out/share/oh-my-posh/ installShellCompletion --cmd oh-my-posh \ diff --git a/pkgs/development/tools/parsing/byacc/default.nix b/pkgs/development/tools/parsing/byacc/default.nix index d3a3cd702319..fe30f1b3b190 100644 --- a/pkgs/development/tools/parsing/byacc/default.nix +++ b/pkgs/development/tools/parsing/byacc/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "byacc"; - version = "20221106"; + version = "20221229"; src = fetchurl { urls = let @@ -14,7 +14,7 @@ stdenv.mkDerivation (finalAttrs: { "https://invisible-mirror.net/archives/byacc/${pname}-${version}.tgz" "ftp://ftp.invisible-island.net/byacc/${pname}-${version}.tgz" ]; - hash = "sha256-qJm+Inu8rJz3cA99u1qElGiPH58GF7UQdi2urOR7nRI="; + hash = "sha256-ExbG95D6+maIQn8f+RJnth2LeHO0Q8Yg7vaabv8FA7w="; }; configureFlags = [ diff --git a/pkgs/servers/home-automation/evcc/default.nix b/pkgs/servers/home-automation/evcc/default.nix index 956fc1cbca72..715ab8dd349c 100644 --- a/pkgs/servers/home-automation/evcc/default.nix +++ b/pkgs/servers/home-automation/evcc/default.nix @@ -16,20 +16,20 @@ buildGoModule rec { pname = "evcc"; - version = "0.109.2"; + version = "0.110.1"; src = fetchFromGitHub { owner = "evcc-io"; repo = pname; rev = version; - hash = "sha256-/Mklf+F9OHq56Qj/kn8JpRAgWwCZqwsH9EwrBFdi/mQ="; + hash = "sha256-SIBVvVl1O+vqQug6LTzKEzFAay82ot4e+rXd17Djvqc="; }; - vendorHash = "sha256-H3ACmang+DPOCnccHLG6YzKvi7Rf5k8RkJDD1CgGBrw="; + vendorHash = "sha256-YP6/3+jVbavBE6ZSopryC1SgQc5kzE+gWpNbwptBMG8="; npmDeps = fetchNpmDeps { inherit src; - hash = "sha256-oxoENlZNThW1PrwcGwiNP5Q7BZyhhtuCwXFey0t3Kz8="; + hash = "sha256-hc3IkWiafKBGtGPEPWWbj4XQsGh+PrGGnBV2bzEAn0s="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/system/acpica-tools/default.nix b/pkgs/tools/system/acpica-tools/default.nix index bf42608411a8..88f39e8a63e4 100644 --- a/pkgs/tools/system/acpica-tools/default.nix +++ b/pkgs/tools/system/acpica-tools/default.nix @@ -7,11 +7,13 @@ stdenv.mkDerivation rec { pname = "acpica-tools"; - version = "20220331"; + version = "20221020"; src = fetchurl { - url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar.gz"; - hash = "sha256-rK/2ixTx4IBOu/xLlyaKTMvvz6BTsC7Zkk8rFNipjiE="; + # 20221020 has a weird filename published: https://acpica.org/node/201 + name = "acpica-unix-${version}.tar.gz"; + url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar_0.gz"; + hash = "sha256-M6LjlKygylfUAYr+PaNA361etFsbkwDoHdWV/aB88cU="; }; nativeBuildInputs = [ bison flex ]; diff --git a/pkgs/tools/system/retry/default.nix b/pkgs/tools/system/retry/default.nix index 2dcd1aa37660..34d4bbb13960 100644 --- a/pkgs/tools/system/retry/default.nix +++ b/pkgs/tools/system/retry/default.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "retry"; - version = "1.0.4"; + version = "1.0.5"; src = fetchFromGitHub { owner = "minfrin"; repo = "retry"; rev = "${pname}-${version}"; - hash = "sha256-C6PYt5NjDT4w1yuWnw1+Z/L3j1S5zwTGsI44yrMnPUs="; + hash = "sha256-5H2MnnThi4rT/o3oTkGDKXStQwob4G9mMsZewItPub4="; }; nativeBuildInputs = [ autoreconfHook txt2man which ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d4c7a2678d82..d4e42bac24e9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -33796,6 +33796,8 @@ with pkgs; youtube-music = callPackage ../applications/audio/youtube-music { }; + youki = callPackage ../applications/virtualization/youki { }; + yt-dlp = with python3Packages; toPythonApplication yt-dlp; yt-dlp-light = with python3Packages; toPythonApplication yt-dlp-light; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index c444f6bb9d64..84b81abbd981 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -227,6 +227,7 @@ mapAliases ({ unittest2 = throw "unittest2 has been removed as it's a backport of unittest that's unmaintained and not needed beyond Python 3.4."; # added 2022-12-01 uproot3 = throw "uproot3 has been removed, use uproot instead"; # added 2022-12-13 uproot3-methods = throw "uproot3-methods has been removed"; # added 2022-12-13 + virtual-display = throw "virtual-display has been renamed to PyVirtualDisplay"; # added 2023-01-07 Wand = wand; # added 2022-11-13 WazeRouteCalculator = wazeroutecalculator; # added 2021-09-29 weakrefmethod = throw "weakrefmethod was removed since it's not needed in Python >= 3.4"; # added 2022-12-01 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d8e87bdf7169..c829f96f7b86 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6309,6 +6309,8 @@ self: super: with self; { nocaselist = callPackage ../development/python-modules/nocaselist { }; + nocturne = callPackage ../development/python-modules/nocturne { }; + nodeenv = callPackage ../development/python-modules/nodeenv { }; nodepy-runtime = callPackage ../development/python-modules/nodepy-runtime { }; @@ -9486,6 +9488,8 @@ self: super: with self; { pyvicare = callPackage ../development/python-modules/pyvicare { }; + PyVirtualDisplay = callPackage ../development/python-modules/PyVirtualDisplay { }; + pyvis = callPackage ../development/python-modules/pyvis { }; pyvisa = callPackage ../development/python-modules/pyvisa { }; @@ -11241,6 +11245,8 @@ self: super: with self; { cudnnSupport = false; }; + thefuzz = callPackage ../development/python-modules/thefuzz { }; + thermobeacon-ble = callPackage ../development/python-modules/thermobeacon-ble { }; thermopro-ble = callPackage ../development/python-modules/thermopro-ble { }; @@ -11896,8 +11902,6 @@ self: super: with self; { virtkey = callPackage ../development/python-modules/virtkey { }; - virtual-display = callPackage ../development/python-modules/virtual-display { }; - virtualenv = callPackage ../development/python-modules/virtualenv { }; virtualenv-clone = callPackage ../development/python-modules/virtualenv-clone { };