diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 72218bf38f7d..3d9b794efc8f 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -4657,6 +4657,12 @@ githubId = 30475873; name = "Andrei Hava"; }; + devplayer0 = { + email = "dev@nul.ie"; + github = "devplayer0"; + githubId = 1427254; + name = "Jack O'Sullivan"; + }; devusb = { email = "mhelton@devusb.us"; github = "devusb"; @@ -15890,6 +15896,12 @@ githubId = 801525; name = "rembo10"; }; + remexre = { + email = "nathan+nixpkgs@remexre.com"; + github = "remexre"; + githubId = 4196789; + name = "Nathan Ringo"; + }; renatoGarcia = { email = "fgarcia.renato@gmail.com"; github = "renatoGarcia"; diff --git a/nixos/tests/ayatana-indicators.nix b/nixos/tests/ayatana-indicators.nix index c9cbbda4c601..a7de640f9e37 100644 --- a/nixos/tests/ayatana-indicators.nix +++ b/nixos/tests/ayatana-indicators.nix @@ -29,6 +29,7 @@ in { packages = with pkgs; [ ayatana-indicator-datetime ayatana-indicator-messages + ayatana-indicator-session ] ++ (with pkgs.lomiri; [ lomiri-indicator-network telephony-service diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index 757c36ba76bb..21b33ce25c47 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -1373,6 +1373,18 @@ final: prev: meta.homepage = "https://github.com/ekickx/clipboard-image.nvim/"; }; + cloak-nvim = buildVimPlugin { + pname = "cloak.nvim"; + version = "2024-02-02"; + src = fetchFromGitHub { + owner = "laytan"; + repo = "cloak.nvim"; + rev = "9abe4e986e924fc54a972c1b0ff52b65a0622624"; + sha256 = "0jnhxxq2c7bprkicqxqi17fybfgpzv0z1jxrqm346hmnmm8amgvw"; + }; + meta.homepage = "https://github.com/laytan/cloak.nvim/"; + }; + close-buffers-vim = buildVimPlugin { pname = "close-buffers.vim"; version = "2020-09-23"; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 5dbf858595b6..516734783087 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -114,6 +114,7 @@ https://github.com/p00f/clangd_extensions.nvim/,HEAD, https://github.com/rhysd/clever-f.vim/,, https://github.com/bbchung/clighter8/,, https://github.com/ekickx/clipboard-image.nvim/,, +https://github.com/laytan/cloak.nvim/,HEAD, https://github.com/asheq/close-buffers.vim/,HEAD, https://github.com/winston0410/cmd-parser.nvim/,, https://github.com/FelipeLema/cmp-async-path/,HEAD, diff --git a/pkgs/applications/emulators/emulationstation/default.nix b/pkgs/applications/emulators/emulationstation/default.nix deleted file mode 100644 index f0434ecdedf4..000000000000 --- a/pkgs/applications/emulators/emulationstation/default.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, curl, boost, eigen -, freeimage, freetype, libGLU, libGL, rapidjson, SDL2, alsa-lib -, vlc }: - -stdenv.mkDerivation { - pname = "emulationstation"; - version = "2.11.2"; - - src = fetchFromGitHub { - fetchSubmodules = true; - owner = "RetroPie"; - repo = "EmulationStation"; - rev = "cda7de687924c4c1ab83d6b0ceb88aa734fe6cfe"; - hash = "sha256-J5h/578FVe4DXJx/AvpRnCIUpqBeFtmvFhUDYH5SErQ="; - }; - - nativeBuildInputs = [ pkg-config cmake ]; - buildInputs = [ alsa-lib boost curl eigen freeimage freetype libGLU libGL rapidjson SDL2 vlc ]; - - installPhase = '' - install -D ../emulationstation $out/bin/emulationstation - cp -r ../resources/ $out/bin/resources/ - ''; - - meta = { - description = "A flexible emulator front-end supporting keyboardless navigation and custom system themes"; - homepage = "https://emulationstation.org"; - maintainers = [ lib.maintainers.edwtjo ]; - license = lib.licenses.mit; - platforms = lib.platforms.linux; - mainProgram = "emulationstation"; - }; -} diff --git a/pkgs/applications/networking/cloudflared/default.nix b/pkgs/applications/networking/cloudflared/default.nix index 97515d4ead7a..8ef403599688 100644 --- a/pkgs/applications/networking/cloudflared/default.nix +++ b/pkgs/applications/networking/cloudflared/default.nix @@ -7,13 +7,13 @@ buildGoModule rec { pname = "cloudflared"; - version = "2024.1.5"; + version = "2023.10.0"; src = fetchFromGitHub { owner = "cloudflare"; repo = "cloudflared"; rev = "refs/tags/${version}"; - hash = "sha256-g7FUwEs/wEcX1vRgfoQZw+uMzx6ng3j4vFwhlHs6WKg="; + hash = "sha256-T+hxNvsckL8PAVb4GjXhnkVi3rXMErTjRgGxCUypwVA="; }; vendorHash = null; diff --git a/pkgs/by-name/ay/ayatana-indicator-session/package.nix b/pkgs/by-name/ay/ayatana-indicator-session/package.nix new file mode 100644 index 000000000000..e4400a0e2343 --- /dev/null +++ b/pkgs/by-name/ay/ayatana-indicator-session/package.nix @@ -0,0 +1,112 @@ +{ stdenv +, lib +, fetchFromGitHub +, gitUpdater +, nixosTests +, cmake +, dbus +, glib +, gnome +, gsettings-desktop-schemas +, gtest +, intltool +, libayatana-common +, librda +, lomiri +, mate +, pkg-config +, systemd +, wrapGAppsHook +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "ayatana-indicator-session"; + version = "23.10.3"; + + src = fetchFromGitHub { + owner = "AyatanaIndicators"; + repo = "ayatana-indicator-session"; + rev = finalAttrs.version; + hash = "sha256-m2+qZxBrarenR41M41mCteFRXIEGkVDavRWQwM3G4tk="; + }; + + postPatch = '' + # Queries systemd user unit dir via pkg_get_variable, can't override prefix + substituteInPlace data/CMakeLists.txt \ + --replace-fail 'pkg_get_variable(SYSTEMD_USER_DIR systemd systemduserunitdir)' 'set(SYSTEMD_USER_DIR "''${CMAKE_INSTALL_PREFIX}/lib/systemd/user")' \ + --replace-fail '/etc' "\''${CMAKE_INSTALL_SYSCONFDIR}" + ''; + + strictDeps = true; + + nativeBuildInputs = [ + cmake + intltool + pkg-config + wrapGAppsHook + ]; + + buildInputs = [ + lomiri.cmake-extras + glib + gsettings-desktop-schemas + libayatana-common + librda + systemd + + # TODO these bloat the closure size alot, just so the indicator doesn't have the potential to crash. + # is there a better way to give it access to DE-specific schemas as needed? + # https://github.com/AyatanaIndicators/ayatana-indicator-session/blob/88846bad7ee0aa8e0bb122816d06f9bc887eb464/src/service.c#L1387-L1413 + gnome.gnome-settings-daemon + mate.mate-settings-daemon + ]; + + nativeCheckInputs = [ + dbus + ]; + + checkInputs = [ + gtest + ]; + + cmakeFlags = [ + (lib.cmakeBool "ENABLE_TESTS" finalAttrs.finalPackage.doCheck) + (lib.cmakeBool "GSETTINGS_LOCALINSTALL" true) + (lib.cmakeBool "GSETTINGS_COMPILE" true) + (lib.cmakeFeature "CMAKE_CTEST_ARGUMENTS" (lib.concatStringsSep ";" [ + # Exclude tests + "-E" (lib.strings.escapeShellArg "(${lib.concatStringsSep "|" [ + # Currently broken: https://github.com/AyatanaIndicators/ayatana-indicator-session/issues/90 + "^test-service" + ]})") + ])) + ]; + + doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; + + # DBus communication + enableParallelChecking = false; + + passthru = { + ayatana-indicators = [ "ayatana-indicator-session" ]; + tests.vm = nixosTests.ayatana-indicators; + updateScript = gitUpdater { }; + }; + + meta = with lib; { + description = "Ayatana Indicator showing session management, status and user switching"; + longDescription = '' + This Ayatana Indicator is designed to be placed on the right side of a + panel and give the user easy control for + - changing their instant message status, + - switching to another user, + - starting a guest session, or + - controlling the status of their own session. + ''; + homepage = "https://github.com/AyatanaIndicators/ayatana-indicator-session"; + changelog = "https://github.com/AyatanaIndicators/ayatana-indicator-session/blob/${finalAttrs.version}/ChangeLog"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ OPNA2608 ]; + platforms = platforms.linux; + }; +}) diff --git a/pkgs/by-name/cr/cronutils/package.nix b/pkgs/by-name/cr/cronutils/package.nix new file mode 100644 index 000000000000..40c03a0e55bb --- /dev/null +++ b/pkgs/by-name/cr/cronutils/package.nix @@ -0,0 +1,54 @@ +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "cronutils"; + version = "1.10"; + + outputs = [ "out" "man" ]; + + src = fetchFromGitHub { + owner = "google"; + repo = "cronutils"; + rev = "version/${finalAttrs.version}"; + hash = "sha256-XJksfX4jqE32l4HipvO26iv9W4c0Iss6DenlEatdL1k="; + }; + + patches = [ + # Add missing libgen.h include. Backported from https://github.com/google/cronutils/pull/11. + (fetchpatch { + url = "https://github.com/google/cronutils/commit/5d742fc154fc1adcfebc646dca0c45b0f0060844.patch"; + hash = "sha256-o1ylZ+fKL1fQYSKSOkujDsh4CUQya0wJ47uGNNC6mVQ="; + }) + # Fix function declaration without a prototype. Backported from https://github.com/google/cronutils/pull/11. + (fetchpatch { + url = "https://github.com/google/cronutils/commit/c39df37c6c280e3f73ea57cfa598b8447e5a58fe.patch"; + hash = "sha256-og/xEWn0M7+mkbLGY14nkYpV3ckr7eYrb0X22Zxmq8w="; + }) + # Remove `LDLIBS+=-lrt` from Makefile. Backported from https://github.com/google/cronutils/pull/11. + (fetchpatch { + url = "https://github.com/google/cronutils/commit/de72c648d12d102b79d4e3bb57830f2d79f5702a.patch"; + hash = "sha256-njftI3RbrjRtXpXKFHNE9HroIZr5tqVnEK77lu4+/sI="; + }) + ]; + + makeFlags = [ "prefix=$(out)" ]; + + env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin (toString [ + "-D_DARWIN_C_SOURCE" + # runstat.c:81:81: error: format string is not a string literal + "-Wno-format-nonliteral" + ]); + + meta = with lib; { + changelog = "https://github.com/google/cronutils/releases/tag/version%2F${finalAttrs.version}"; + description = "Utilities to assist running periodic batch processing jobs"; + homepage = "https://github.com/google/cronutils"; + license = licenses.asl20; + maintainers = with maintainers; [ katexochen ]; + platforms = platforms.all; + }; +}) diff --git a/pkgs/by-name/em/emulationstation/package.nix b/pkgs/by-name/em/emulationstation/package.nix new file mode 100644 index 000000000000..7358aa5ed99c --- /dev/null +++ b/pkgs/by-name/em/emulationstation/package.nix @@ -0,0 +1,81 @@ +{ lib +, SDL2 +, alsa-lib +, boost +, cmake +, curl +, fetchFromGitHub +, freeimage +, freetype +, libGL +, libGLU +, libvlc +, pkg-config +, rapidjson +, stdenv +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "emulationstation"; + version = "2.11.2"; + + src = fetchFromGitHub { + owner = "RetroPie"; + repo = "EmulationStation"; + rev = "v${finalAttrs.version}"; + fetchSubmodules = true; + hash = "sha256-J5h/578FVe4DXJx/AvpRnCIUpqBeFtmvFhUDYH5SErQ="; + }; + + nativeBuildInputs = [ + SDL2 + cmake + pkg-config + ]; + + buildInputs = [ + SDL2 + alsa-lib + boost + curl + freeimage + freetype + libGL + libGLU + libvlc + rapidjson + ]; + + strictDeps = true; + + cmakeFlags = [ + (lib.cmakeBool "GL" true) + ]; + + installPhase = '' + runHook preInstall + + install -Dm755 ../emulationstation $out/bin/emulationstation + mkdir -p $out/share/emulationstation/ + cp -r ../resources $out/share/emulationstation/ + + runHook preInstall + ''; + + # es-core/src/resources/ResourceManager.cpp: resources are searched at the + # same place of binaries. + postFixup = '' + pushd $out + ln -s $out/share/emulationstation/resources $out/bin/ + popd + ''; + + meta = { + homepage = "https://github.com/RetroPie/EmulationStation"; + description = "A flexible emulator front-end supporting keyboardless navigation and custom system themes (forked by RetroPie)"; + license = with lib.licenses; [ mit ]; + mainProgram = "emulationstation"; + maintainers = with lib.maintainers; [ AndersonTorres edwtjo ]; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/by-name/fr/frankenphp/package.nix b/pkgs/by-name/fr/frankenphp/package.nix index feae8eaef7f7..423a1dd1f2e5 100644 --- a/pkgs/by-name/fr/frankenphp/package.nix +++ b/pkgs/by-name/fr/frankenphp/package.nix @@ -3,6 +3,7 @@ , buildGoModule , fetchFromGitHub , php +, brotli , testers , frankenphp , darwin @@ -25,13 +26,13 @@ let pieBuild = stdenv.hostPlatform.isMusl; in buildGoModule rec { pname = "frankenphp"; - version = "1.0.3"; + version = "1.1.0"; src = fetchFromGitHub { owner = "dunglas"; repo = "frankenphp"; rev = "v${version}"; - hash = "sha256-DNU127IZ+lw2+NqzrU07ioJKCjjCsnqgS+cqUlX7TUw="; + hash = "sha256-tQ35GZuw7Ag1YfmOUarVY45yk4yugNLJetEV4m2w3GE="; }; sourceRoot = "source/caddy"; @@ -39,9 +40,9 @@ in buildGoModule rec { # frankenphp requires C code that would be removed with `go mod tidy` # https://github.com/golang/go/issues/26366 proxyVendor = true; - vendorHash = "sha256-ZkbhpY8+BSTSdzQGsvXUfTBdTPUvQ8tHjbnr0lYho5I="; + vendorHash = "sha256-sv3IcNj1rjolgF0HZZnJ3dLV9+QeRw3ItRguz6Un9CY="; - buildInputs = [ phpUnwrapped ] ++ phpUnwrapped.buildInputs; + buildInputs = [ phpUnwrapped brotli ] ++ phpUnwrapped.buildInputs; nativeBuildInputs = [ makeBinaryWrapper ] ++ lib.optionals stdenv.isDarwin [ pkg-config darwin.cctools darwin.autoSignDarwinBinariesHook ]; subPackages = [ "frankenphp" ]; diff --git a/pkgs/development/libraries/linenoise/create-pkg-config-file.sh b/pkgs/development/libraries/linenoise/create-pkg-config-file.sh deleted file mode 100755 index e3c38f05ab4c..000000000000 --- a/pkgs/development/libraries/linenoise/create-pkg-config-file.sh +++ /dev/null @@ -1,13 +0,0 @@ -cat < linenoise.pc -prefix=$out -exec_prefix=\${prefix} -libdir=\${exec_prefix}/lib -includedir=\${prefix}/include - -Name: linenoise -Description: A minimal, zero-config, BSD licensed, readline replacement. -Requires: -Version: 1.0.10 -Cflags: -I\${includedir}/ \${prefix}/src/linenoise.c - -EOF diff --git a/pkgs/development/libraries/linenoise/default.nix b/pkgs/development/libraries/linenoise/default.nix index e337e32b2353..a934ec19d7c1 100644 --- a/pkgs/development/libraries/linenoise/default.nix +++ b/pkgs/development/libraries/linenoise/default.nix @@ -1,29 +1,48 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib +, stdenv +, fetchFromGitHub +, validatePkgConfig +}: stdenv.mkDerivation { pname = "linenoise"; - version = "1.0.10"; # Its version 1.0 plus 10 commits + version = "1.0-34-g93b2db9"; src = fetchFromGitHub { owner = "antirez"; repo = "linenoise"; - rev = "c894b9e59f02203dbe4e2be657572cf88c4230c3"; - sha256 = "0wasql7ph5g473zxhc2z47z3pjp42q0dsn4gpijwzbxawid71b4w"; + rev = "1.0-34-g93b2db9"; + hash = "sha256-GsrYg16gpjHkkmpCU3yGzqNS/buZl+JoWALLvwzmT4A="; }; - buildPhase = ./create-pkg-config-file.sh; + nativeBuildInputs = [ validatePkgConfig ]; + + buildPhase = '' + runHook preBuild + + $CC -c -o linenoise.o linenoise.c + $CC -shared -o liblinenoise.so linenoise.o + $AR rcs liblinenoise.a linenoise.o + + runHook postBuild + ''; installPhase = '' - mkdir -p $out/{lib/pkgconfig,src,include} - cp linenoise.c $out/src/ - cp linenoise.h $out/include/ - cp linenoise.pc $out/lib/pkgconfig/ + runHook preInstall + + install -d $out/lib/pkgconfig $out/include + install -m644 linenoise.h $out/include/ + install -m644 liblinenoise.a $out/lib/ + install -m644 liblinenoise.so $out/lib/ + substituteAll ${./linenoise.pc.in} $out/lib/pkgconfig/linenoise.pc + + runHook postInstall ''; meta = { homepage = "https://github.com/antirez/linenoise"; description = "A minimal, zero-config, BSD licensed, readline replacement"; - maintainers = with lib.maintainers; [ fstamour ]; + maintainers = with lib.maintainers; [ fstamour remexre ]; platforms = lib.platforms.unix; license = lib.licenses.bsd2; }; diff --git a/pkgs/development/libraries/linenoise/linenoise.pc.in b/pkgs/development/libraries/linenoise/linenoise.pc.in new file mode 100644 index 000000000000..feb917dab0d9 --- /dev/null +++ b/pkgs/development/libraries/linenoise/linenoise.pc.in @@ -0,0 +1,10 @@ +prefix=@out@ +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: linenoise +Description: A minimal, zero-config, BSD licensed, readline replacement. +Version: @version@ +Libs: -L${libdir} -llinenoise +Cflags: -I${includedir} diff --git a/pkgs/development/python-modules/boto3-stubs/default.nix b/pkgs/development/python-modules/boto3-stubs/default.nix index 1adb7e70c59a..7e0585b8f6f8 100644 --- a/pkgs/development/python-modules/boto3-stubs/default.nix +++ b/pkgs/development/python-modules/boto3-stubs/default.nix @@ -365,14 +365,14 @@ buildPythonPackage rec { pname = "boto3-stubs"; - version = "1.34.33"; + version = "1.34.34"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-WXuVCQ6rw+EI6AS24jVgYRwx0H6VGZzzVIzPdIIGK+Y="; + hash = "sha256-lnidW9vZ7hDcplEsdwegfPUu97Guq3kqlCx9axMX09w="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/georss-generic-client/default.nix b/pkgs/development/python-modules/georss-generic-client/default.nix index 73cafe77bb90..b3679a93a2fd 100644 --- a/pkgs/development/python-modules/georss-generic-client/default.nix +++ b/pkgs/development/python-modules/georss-generic-client/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "georss-generic-client"; - version = "0.7"; + version = "0.8"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -16,7 +16,7 @@ buildPythonPackage rec { owner = "exxamalte"; repo = "python-georss-generic-client"; rev = "v${version}"; - hash = "sha256-58NpACrJK29NUnx3RrsLFPPo+6A/JlIlkrv8N9juMu0="; + hash = "sha256-Y19zMHL6DjAqiDi47Lmst8m9d9kEtTgyRiECKo6CqZY="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/homeconnect/default.nix b/pkgs/development/python-modules/homeconnect/default.nix index edf600921f1a..296fb482c16d 100644 --- a/pkgs/development/python-modules/homeconnect/default.nix +++ b/pkgs/development/python-modules/homeconnect/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "homeconnect"; - version = "0.7.2"; + version = "0.7.4"; format = "pyproject"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-wCx8Jh3NBTnYI+essH9toacjUaT4fS61SaAAZDCYZ4g="; + hash = "sha256-lkal6Dy4cRRZ893I3/jyQ3+sDZMrHN0UMGff0ab4pvk="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/pyhomematic/default.nix b/pkgs/development/python-modules/pyhomematic/default.nix index c3e26156f5a2..03e7babfb4fe 100644 --- a/pkgs/development/python-modules/pyhomematic/default.nix +++ b/pkgs/development/python-modules/pyhomematic/default.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "pyhomematic"; - version = "0.1.77"; + version = "0.1.78"; format = "setuptools"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "00d95c21b95a17bc07586f69c976fb343a103adc0954d7b2d56c7160665625cb"; + sha256 = "sha256-uB9aDa1urIwL2DBdBwPi0sHWPW7SUZ3EaAjuMLSOudc="; }; checkPhase = '' diff --git a/pkgs/development/python-modules/qemu/default.nix b/pkgs/development/python-modules/qemu/default.nix new file mode 100644 index 000000000000..ba730548bca8 --- /dev/null +++ b/pkgs/development/python-modules/qemu/default.nix @@ -0,0 +1,63 @@ +{ lib +, buildPythonPackage +, pythonOlder +, qemu +, setuptools +, fuseSupport ? false, fusepy +, tuiSupport ? false, urwid, urwid-readline, pygments +}: + +buildPythonPackage { + pname = "qemu"; + version = "0.6.1.0a1"; + pyproject = true; + + disabled = pythonOlder "3.6"; + + src = qemu.src; + + prePatch = '' + cd python + ''; + + # ensure the version matches qemu-xxx/python/VERSION + preConfigure = '' + if [ "$version" != "$(cat ./VERSION)" ]; then + echo "The nix package version attribute is not in sync with the QEMU source version" > /dev/stderr + echo "Please update the version attribute in the nix expression of python3Packages.qemu to '$version'" > /dev/stderr + exit 1 + fi + ''; + + buildInputs = [ + setuptools + ]; + + propagatedBuildInputs = [ ] + ++ lib.optionals fuseSupport [ fusepy ] + ++ lib.optionals tuiSupport [ urwid urwid-readline pygments ]; + + # Project requires avocado-framework for testing, therefore replacing check phase + checkPhase = '' + for bin in $out/bin/*; do + $bin --help + done + ''; + + pythonImportsCheck = [ "qemu" ]; + + preFixup = + (lib.optionalString (! tuiSupport) '' + rm $out/bin/qmp-tui + '') + + (lib.optionalString (! fuseSupport) '' + rm $out/bin/qom-fuse + ''); + + meta = with lib; { + homepage = "http://www.qemu.org/"; + description = "Python tooling used by the QEMU project to build, configure, and test QEMU"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ devplayer0 davhau ]; + }; +} diff --git a/pkgs/development/python-modules/tesla-fleet-api/default.nix b/pkgs/development/python-modules/tesla-fleet-api/default.nix index e74f5b0c0edb..0af92c2a4a92 100644 --- a/pkgs/development/python-modules/tesla-fleet-api/default.nix +++ b/pkgs/development/python-modules/tesla-fleet-api/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "tesla-fleet-api"; - version = "0.2.5"; + version = "0.2.6"; pyproject = true; disabled = pythonOlder "3.10"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "Teslemetry"; repo = "python-tesla-fleet-api"; rev = "refs/tags/v${version}"; - hash = "sha256-zQPaOmSGqOeJ5E+m60g4ftXWI9woTxblJjRIocphR5E="; + hash = "sha256-Kp/amNhDVGuGr2IA5t4R3HpVqUagI8Dzn+PkV15bO6w="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/xiaomi-ble/default.nix b/pkgs/development/python-modules/xiaomi-ble/default.nix index 52946718a6c7..6e2ac49cc348 100644 --- a/pkgs/development/python-modules/xiaomi-ble/default.nix +++ b/pkgs/development/python-modules/xiaomi-ble/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "xiaomi-ble"; - version = "0.24.1"; + version = "0.25.2"; format = "pyproject"; disabled = pythonOlder "3.9"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "Bluetooth-Devices"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-hKrvV/OzWq07Rb6pU5otNg/A86WnxMKFfs8oA04VvqI="; + hash = "sha256-awztZiUgEMGR8m/aXhDBLdm4IXIKIAHgX922m+PTTfg="; }; postPatch = '' diff --git a/pkgs/development/tools/database/litefs/default.nix b/pkgs/development/tools/database/litefs/default.nix index e1d66de4063a..e3dbdd780cd8 100644 --- a/pkgs/development/tools/database/litefs/default.nix +++ b/pkgs/development/tools/database/litefs/default.nix @@ -39,5 +39,6 @@ buildGoModule rec { homepage = "https://github.com/superfly/litefs"; license = licenses.asl20; maintainers = with maintainers; [ dit7ya ]; + mainProgram = "litefs"; }; } diff --git a/pkgs/development/tools/language-servers/ruff-lsp/default.nix b/pkgs/development/tools/language-servers/ruff-lsp/default.nix index 7abb3ea9a64e..460a5b98136c 100644 --- a/pkgs/development/tools/language-servers/ruff-lsp/default.nix +++ b/pkgs/development/tools/language-servers/ruff-lsp/default.nix @@ -64,10 +64,11 @@ buildPythonPackage rec { ]; meta = with lib; { + changelog = "https://github.com/astral-sh/ruff-lsp/releases/tag/v${version}"; description = "A Language Server Protocol implementation for Ruff"; homepage = "https://github.com/astral-sh/ruff-lsp"; - changelog = "https://github.com/astral-sh/ruff-lsp/releases/tag/v${version}"; license = licenses.mit; + mainProgram = "ruff-lsp"; maintainers = with maintainers; [ figsoda kalekseev ]; }; } diff --git a/pkgs/os-specific/linux/kernel/zen-kernels.nix b/pkgs/os-specific/linux/kernel/zen-kernels.nix index 7a3beba7db33..0286319f6583 100644 --- a/pkgs/os-specific/linux/kernel/zen-kernels.nix +++ b/pkgs/os-specific/linux/kernel/zen-kernels.nix @@ -11,9 +11,9 @@ let }; # ./update-zen.py lqx lqxVariant = { - version = "6.7.2"; #lqx - suffix = "lqx2"; #lqx - sha256 = "0w82k39rqps8xwxnp87b16nfh4nmiys8532vrc8akjl1ffj68bqd"; #lqx + version = "6.7.3"; #lqx + suffix = "lqx1"; #lqx + sha256 = "19yia3bvzl9yax7z550hw9nb2n7xjmd87gsva52dy1khj49285nx"; #lqx isLqx = true; }; zenKernelsFor = { version, suffix, sha256, isLqx }: buildLinux (args // { diff --git a/pkgs/servers/web-apps/wordpress/packages/default.nix b/pkgs/servers/web-apps/wordpress/packages/default.nix index 715e9556bc7f..cce6897cb919 100644 --- a/pkgs/servers/web-apps/wordpress/packages/default.nix +++ b/pkgs/servers/web-apps/wordpress/packages/default.nix @@ -9,12 +9,17 @@ let packages = self: generatedJson = { inherit plugins themes languages; }; + sourceJson = { + plugins = builtins.fromJSON (builtins.readFile ./wordpress-plugins.json); + themes = builtins.fromJSON (builtins.readFile ./wordpress-themes.json); + languages = builtins.fromJSON (builtins.readFile ./wordpress-languages.json); + }; in { # Create a generic WordPress package. Most arguments are just passed # to `mkDerivation`. The version is automatically filtered for weird characters. mkWordpressDerivation = self.callPackage ({ stdenvNoCC, lib, filterWPString, gettext, wp-cli }: - { type, pname, version, ... }@args: + { type, pname, version, license, ... }@args: assert lib.any (x: x == type) [ "plugin" "theme" "language" ]; stdenvNoCC.mkDerivation ({ pname = "wordpress-${type}-${pname}"; @@ -31,6 +36,10 @@ let packages = self: passthru = { wpName = pname; + }; + + meta = { + license = lib.licenses.${license}; } // (args.passthru or {}); } // lib.optionalAttrs (type == "language") { nativeBuildInputs = [ gettext wp-cli ]; @@ -51,9 +60,9 @@ let packages = self: # Create a derivation from the official wordpress.org packages. # This takes the type, the pname and the data generated from the go tool. mkOfficialWordpressDerivation = self.callPackage ({ mkWordpressDerivation, fetchWordpress }: - { type, pname, data }: + { type, pname, data, license }: mkWordpressDerivation { - inherit type pname; + inherit type pname license; version = data.version; src = fetchWordpress type data; @@ -79,7 +88,8 @@ let packages = self: throw "fetchWordpress: invalid package type ${type}"; }) {}; - } // lib.mapAttrs (type: pkgs: lib.makeExtensible (_: lib.mapAttrs (pname: data: self.mkOfficialWordpressDerivation { type = lib.removeSuffix "s" type; inherit pname data; }) pkgs)) generatedJson; + } // lib.mapAttrs ( + type: pkgs: lib.makeExtensible (_: lib.mapAttrs (pname: data: self.mkOfficialWordpressDerivation {type = lib.removeSuffix "s" type; inherit pname data; license = sourceJson.${type}.${pname}; }) pkgs)) generatedJson; # This creates an extensible scope. in lib.recursiveUpdate ((lib.makeExtensible (_: (lib.makeScope newScope packages))).extend (selfWP: superWP: {})) (callPackage ./thirdparty.nix {}) diff --git a/pkgs/servers/web-apps/wordpress/packages/generate.sh b/pkgs/servers/web-apps/wordpress/packages/generate.sh index 1619850e8a2a..0abf3e341a41 100755 --- a/pkgs/servers/web-apps/wordpress/packages/generate.sh +++ b/pkgs/servers/web-apps/wordpress/packages/generate.sh @@ -12,9 +12,9 @@ nixFlags="--option experimental-features nix-command eval --raw --impure --expr" export NIX_PATH=nixpkgs=../../../../.. export WP_VERSION=$(nix $nixFlags '(import {}).wordpress.version') -PLUGINS=`cat wordpress-plugins.json | jq -r '.[]' | sed -z 's/\n/,/g;s/,$/\n/'` -THEMES=`cat wordpress-themes.json | jq -r '.[]' | sed -z 's/\n/,/g;s/,$/\n/'` -LANGUAGES=`cat wordpress-languages.json | jq -r '.[]' | sed -z 's/\n/,/g;s/,$/\n/'` +PLUGINS=`cat wordpress-plugins.json | jq -r 'keys|.[]' | sed -z 's/\n/,/g;s/,$/\n/'` +THEMES=`cat wordpress-themes.json | jq -r 'keys|.[]' | sed -z 's/\n/,/g;s/,$/\n/'` +LANGUAGES=`cat wordpress-languages.json | jq -r 'keys|.[]' | sed -z 's/\n/,/g;s/,$/\n/'` wp4nix -p $PLUGINS -pl en wp4nix -t $THEMES -tl en diff --git a/pkgs/servers/web-apps/wordpress/packages/thirdparty.nix b/pkgs/servers/web-apps/wordpress/packages/thirdparty.nix index a60c06854183..24836f3ac42c 100644 --- a/pkgs/servers/web-apps/wordpress/packages/thirdparty.nix +++ b/pkgs/servers/web-apps/wordpress/packages/thirdparty.nix @@ -1,14 +1,25 @@ -{fetchzip}: { - plugins.civicrm = fetchzip rec { - name = "civicrm"; +{fetchzip, stdenv, lib}: { + plugins.civicrm = stdenv.mkDerivation rec { + pname = "civicrm"; version = "5.56.0"; - url = "https://storage.googleapis.com/${name}/${name}-stable/${version}/${name}-${version}-wordpress.zip"; - hash = "sha256-XsNFxVL0LF+OHlsqjjTV41x9ERLwMDq9BnKKP3Px2aI="; + src = fetchzip { + inherit version; + name = pname; + url = "https://storage.googleapis.com/${pname}/${pname}-stable/${version}/${pname}-${version}-wordpress.zip"; + hash = "sha256-XsNFxVL0LF+OHlsqjjTV41x9ERLwMDq9BnKKP3Px2aI="; + }; + meta.license = lib.licenses.agpl3Only; }; - themes.geist = fetchzip rec { - name = "geist"; + themes.geist = stdenv.mkDerivation rec { + pname = "geist"; version = "2.0.3"; - url = "https://github.com/christophery/geist/archive/refs/tags/${version}.zip"; - hash = "sha256-c85oRhqu5E5IJlpgqKJRQITur1W7x40obOvHZbPevzU="; + src = fetchzip { + inherit version; + name = pname; + url = "https://github.com/christophery/geist/archive/refs/tags/${version}.zip"; + hash = "sha256-c85oRhqu5E5IJlpgqKJRQITur1W7x40obOvHZbPevzU="; + }; + meta.license = lib.licenses.gpl2Only; }; } + diff --git a/pkgs/servers/web-apps/wordpress/packages/wordpress-languages.json b/pkgs/servers/web-apps/wordpress/packages/wordpress-languages.json index e1fa4e2b3aba..2c6fa9785c8b 100644 --- a/pkgs/servers/web-apps/wordpress/packages/wordpress-languages.json +++ b/pkgs/servers/web-apps/wordpress/packages/wordpress-languages.json @@ -1,5 +1,5 @@ -[ - "de_DE" -, "fr_FR" -, "ro_RO" -] +{ + "de_DE": "gpl2Plus" +, "fr_FR": "gpl2Plus" +, "ro_RO": "gpl2Plus" +} diff --git a/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json b/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json index 185017124343..f8e8074ab82c 100644 --- a/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json +++ b/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json @@ -1,38 +1,38 @@ -[ - "add-widget-after-content" -, "akismet" -, "antispam-bee" -, "async-javascript" -, "breeze" -, "code-syntax-block" -, "cookie-notice" -, "co-authors-plus" -, "disable-xml-rpc" -, "embed-extended" -, "gutenberg" -, "hello-dolly" -, "hkdev-maintenance-mode" -, "jetpack" -, "jetpack-lite" -, "lightbox-photoswipe" -, "login-lockdown" -, "mailpoet" -, "merge-minify-refresh" -, "opengraph" -, "simple-login-captcha" -, "simple-mastodon-verification" -, "static-mail-sender-configurator" -, "tc-custom-javascript" -, "webp-converter-for-media" -, "webp-express" -, "wordpress-seo" -, "worker" -, "wp-change-email-sender" -, "wp-fastest-cache" -, "wp-gdpr-compliance" -, "wp-mail-smtp" -, "wp-statistics" -, "wp-swiper" -, "wp-user-avatars" -, "wpforms-lite" -] +{ + "add-widget-after-content": "gpl3Plus" +, "akismet": "gpl2Plus" +, "antispam-bee": "gpl2Plus" +, "async-javascript": "gpl2Plus" +, "breeze": "gpl2Plus" +, "code-syntax-block": "gpl2Plus" +, "cookie-notice": "mit" +, "co-authors-plus": "gpl2Plus" +, "disable-xml-rpc": "gpl2Plus" +, "embed-extended": "gpl2Plus" +, "gutenberg": "gpl2Plus" +, "hello-dolly": "gpl2Plus" +, "hkdev-maintenance-mode": "gpl2Plus" +, "jetpack": "gpl2Plus" +, "jetpack-lite": "gpl2Only" +, "lightbox-photoswipe": "gpl2Only" +, "login-lockdown": "gpl2Plus" +, "mailpoet": "gpl3Only" +, "merge-minify-refresh": "gpl2Plus" +, "opengraph": "asl20" +, "simple-login-captcha": "gpl2Plus" +, "simple-mastodon-verification": "gpl2Plus" +, "static-mail-sender-configurator": "mit" +, "tc-custom-javascript": "gpl2Plus" +, "webp-converter-for-media": "gpl2Plus" +, "webp-express": "gpl3Only" +, "wordpress-seo": "gpl3Only" +, "worker": "gpl3Plus" +, "wp-change-email-sender": "gpl2Plus" +, "wp-fastest-cache": "gpl2Plus" +, "wp-gdpr-compliance": "gpl2Plus" +, "wp-mail-smtp": "gpl3Plus" +, "wp-statistics": "gpl3Only" +, "wp-swiper": "gpl2Plus" +, "wp-user-avatars": "gpl2Plus" +, "wpforms-lite": "gpl2Plus" +} diff --git a/pkgs/servers/web-apps/wordpress/packages/wordpress-themes.json b/pkgs/servers/web-apps/wordpress/packages/wordpress-themes.json index 028ee47614a2..b41c2f18f816 100644 --- a/pkgs/servers/web-apps/wordpress/packages/wordpress-themes.json +++ b/pkgs/servers/web-apps/wordpress/packages/wordpress-themes.json @@ -1,7 +1,7 @@ -[ - "twentynineteen" -, "twentytwenty" -, "twentytwentytwo" -, "twentytwentyone" -, "twentytwentythree" -] +{ + "twentynineteen": "gpl2Plus" +, "twentytwenty": "gpl2Plus" +, "twentytwentytwo": "gpl2Plus" +, "twentytwentyone": "gpl2Plus" +, "twentytwentythree": "gpl2Plus" +} diff --git a/pkgs/tools/misc/remind/default.nix b/pkgs/tools/misc/remind/default.nix index 46a69bbbc2b2..bd049671336e 100644 --- a/pkgs/tools/misc/remind/default.nix +++ b/pkgs/tools/misc/remind/default.nix @@ -15,11 +15,11 @@ let in tcl.mkTclDerivation rec { pname = "remind"; - version = "04.02.08"; + version = "04.02.09"; src = fetchurl { url = "https://dianne.skoll.ca/projects/remind/download/remind-${version}.tar.gz"; - sha256 = "sha256-GBuX5sQbY7oXcm8QTlWXcX6lrwgqQRF1UTBZ3zPTChU="; + sha256 = "sha256-ZEaEYLQFpwXfp7ONsUt4I/ENqPADruooFRfdtJhrhyo="; }; propagatedBuildInputs = tclLibraries; diff --git a/pkgs/tools/misc/ttyplot/default.nix b/pkgs/tools/misc/ttyplot/default.nix index 1f5e5911d7a1..a1dbf674e98e 100644 --- a/pkgs/tools/misc/ttyplot/default.nix +++ b/pkgs/tools/misc/ttyplot/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "ttyplot"; - version = "1.6.1"; + version = "1.6.2"; src = fetchFromGitHub { owner = "tenox7"; repo = "ttyplot"; rev = version; - hash = "sha256-SQ5keCcwzQsSxfSevQwRa1eNf+8JXsrh1vljehI4tPc="; + hash = "sha256-HBJvTDhp1CA96gRU2Q+lMxcFaZ+txXcmNb8Cg1BFiH4="; }; buildInputs = [ diff --git a/pkgs/tools/security/metasploit/Gemfile b/pkgs/tools/security/metasploit/Gemfile index 0227191fedeb..7475d019a7be 100644 --- a/pkgs/tools/security/metasploit/Gemfile +++ b/pkgs/tools/security/metasploit/Gemfile @@ -1,4 +1,4 @@ # frozen_string_literal: true source "https://rubygems.org" -gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.3.53" +gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.3.54" diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock index 862a4d197782..d25c247fad96 100644 --- a/pkgs/tools/security/metasploit/Gemfile.lock +++ b/pkgs/tools/security/metasploit/Gemfile.lock @@ -1,9 +1,9 @@ GIT remote: https://github.com/rapid7/metasploit-framework - revision: 45efd21e748da75cc37d999dbfa3ec6c4fc4d0e9 - ref: refs/tags/6.3.53 + revision: 038a5b20f97601ac1f73edcc4642f1add35ef08f + ref: refs/tags/6.3.54 specs: - metasploit-framework (6.3.53) + metasploit-framework (6.3.54) actionpack (~> 7.0.0) activerecord (~> 7.0.0) activesupport (~> 7.0.0) @@ -464,4 +464,4 @@ DEPENDENCIES metasploit-framework! BUNDLED WITH - 2.5.3 + 2.5.5 diff --git a/pkgs/tools/security/metasploit/default.nix b/pkgs/tools/security/metasploit/default.nix index fc5a7d0ac4eb..d86b14b46d25 100644 --- a/pkgs/tools/security/metasploit/default.nix +++ b/pkgs/tools/security/metasploit/default.nix @@ -15,13 +15,13 @@ let }; in stdenv.mkDerivation rec { pname = "metasploit-framework"; - version = "6.3.53"; + version = "6.3.54"; src = fetchFromGitHub { owner = "rapid7"; repo = "metasploit-framework"; rev = "refs/tags/${version}"; - hash = "sha256-LyI5Ne2ztO0Or1btT0jG96PYNZVMTwEZNwYCEIc6Rd4="; + hash = "sha256-LGAvqtmtrEuhC61LohEgFBSSLR52orHVSnJqcl60yjs="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/security/metasploit/gemset.nix b/pkgs/tools/security/metasploit/gemset.nix index 88af87f272c2..c614fa81f15c 100644 --- a/pkgs/tools/security/metasploit/gemset.nix +++ b/pkgs/tools/security/metasploit/gemset.nix @@ -664,12 +664,12 @@ platforms = []; source = { fetchSubmodules = false; - rev = "45efd21e748da75cc37d999dbfa3ec6c4fc4d0e9"; - sha256 = "1pj57a3i00h66wch2kscjlsxi8zpqr44zvanmw7fvd5kxlskj8ig"; + rev = "038a5b20f97601ac1f73edcc4642f1add35ef08f"; + sha256 = "0fyanig74skj9bav38kn3qnr450l408s4jxd1fhlpb5dv6m2yq1c"; type = "git"; url = "https://github.com/rapid7/metasploit-framework"; }; - version = "6.3.53"; + version = "6.3.54"; }; metasploit-model = { groups = ["default"]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 14590787975d..e21acbd7dfe5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2684,8 +2684,6 @@ with pkgs; emu2 = callPackage ../applications/emulators/emu2 { }; - emulationstation = callPackage ../applications/emulators/emulationstation { }; - fceux = libsForQt5.callPackage ../applications/emulators/fceux { }; firebird-emu = libsForQt5.callPackage ../applications/emulators/firebird-emu { }; @@ -4694,7 +4692,10 @@ with pkgs; cloudbrute = callPackage ../tools/security/cloudbrute { }; - cloudflared = callPackage ../applications/networking/cloudflared { }; + cloudflared = callPackage ../applications/networking/cloudflared { + # https://github.com/cloudflare/cloudflared/issues/1054 + buildGoModule = buildGo120Module; + }; cloudflare-dyndns = callPackage ../applications/networking/cloudflare-dyndns { }; @@ -34732,6 +34733,13 @@ with pkgs; inherit (darwin) sigtool; }; + qemu-python-utils = python3Packages.toPythonApplication ( + python3Packages.qemu.override { + fuseSupport = true; + tuiSupport = true; + } + ); + qemu-utils = qemu.override { toolsOnly = true; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 36856493cd29..ce5c7df5799c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2389,7 +2389,9 @@ self: super: with self; { cose = callPackage ../development/python-modules/cose { }; - cot = callPackage ../development/python-modules/cot { }; + cot = callPackage ../development/python-modules/cot { + qemu = pkgs.qemu; + }; cov-core = callPackage ../development/python-modules/cov-core { }; @@ -5002,7 +5004,9 @@ self: super: with self; { guessit = callPackage ../development/python-modules/guessit { }; - guestfs = callPackage ../development/python-modules/guestfs { }; + guestfs = callPackage ../development/python-modules/guestfs { + qemu = pkgs.qemu; + }; gudhi = callPackage ../development/python-modules/gudhi { }; @@ -12280,6 +12284,10 @@ self: super: with self; { qgrid = callPackage ../development/python-modules/qgrid { }; + qemu = callPackage ../development/python-modules/qemu { + qemu = pkgs.qemu; + }; + qiling = callPackage ../development/python-modules/qiling { }; qimage2ndarray = callPackage ../development/python-modules/qimage2ndarray { };