diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 8240f18ce1b6..1115935011ca 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -560,6 +560,12 @@ githubId = 36147; name = "Alireza Meskin"; }; + alkasm = { + email = "alexreynolds00@gmail.com"; + github = "alkasm"; + githubId = 9651002; + name = "Alexander Reynolds"; + }; alkeryn = { email = "plbraundev@gmail.com"; github = "Alkeryn"; @@ -12441,6 +12447,12 @@ githubId = 1040871; name = "Mathis Antony"; }; + sven-of-cord = { + email = "sven@cord.com"; + github = "sven-of-cord"; + githubId = 98333944; + name = "Sven Over"; + }; svend = { email = "svend@svends.net"; github = "svend"; diff --git a/nixos/lib/systemd-unit-options.nix b/nixos/lib/systemd-unit-options.nix index 02e91fdf1e62..cae82433d856 100644 --- a/nixos/lib/systemd-unit-options.nix +++ b/nixos/lib/systemd-unit-options.nix @@ -20,10 +20,15 @@ in rec { merge = loc: defs: let defs' = filterOverrides defs; - defs'' = getValues defs'; in - if isList (head defs'') - then concatLists defs'' + if isList (head defs').value + then concatMap (def: + if builtins.typeOf def.value == "list" + then def.value + else + throw "The definitions for systemd unit options should be either all lists, representing repeatable options, or all non-lists, but for the option ${showOption loc}, the definitions are a mix of list and non-list ${lib.options.showDefs defs'}" + ) defs' + else mergeEqualOption loc defs'; }; diff --git a/nixos/modules/hardware/device-tree.nix b/nixos/modules/hardware/device-tree.nix index be67116ad507..5a8a8e27bee1 100644 --- a/nixos/modules/hardware/device-tree.nix +++ b/nixos/modules/hardware/device-tree.nix @@ -36,14 +36,11 @@ let /plugin/; / { compatible = "raspberrypi"; - fragment@0 { - target-path = "/soc"; - __overlay__ { - pps { - compatible = "pps-gpio"; - status = "okay"; - }; - }; + }; + &{/soc} { + pps { + compatible = "pps-gpio"; + status = "okay"; }; }; ''; @@ -88,13 +85,14 @@ let # Compile single Device Tree overlay source # file (.dts) into its compiled variant (.dtbo) - compileDTS = name: f: pkgs.callPackage({ dtc }: pkgs.stdenv.mkDerivation { + compileDTS = name: f: pkgs.callPackage({ stdenv, dtc }: stdenv.mkDerivation { name = "${name}-dtbo"; nativeBuildInputs = [ dtc ]; buildCommand = '' - dtc -I dts ${f} -O dtb -@ -o $out + $CC -E -nostdinc -I${getDev cfg.kernelPackage}/lib/modules/${cfg.kernelPackage.modDirVersion}/source/scripts/dtc/include-prefixes -undef -D__DTS__ -x assembler-with-cpp ${f} | \ + dtc -I dts -O dtb -@ -o $out ''; }) {}; diff --git a/nixos/modules/services/audio/navidrome.nix b/nixos/modules/services/audio/navidrome.nix index 3660e05310be..b50cb0415569 100644 --- a/nixos/modules/services/audio/navidrome.nix +++ b/nixos/modules/services/audio/navidrome.nix @@ -45,6 +45,8 @@ in { RootDirectory = "/run/navidrome"; ReadWritePaths = ""; BindReadOnlyPaths = [ + # navidrome uses online services to download additional album metadata / covers + "${config.environment.etc."ssl/certs/ca-certificates.crt".source}:/etc/ssl/certs/ca-certificates.crt" builtins.storeDir ] ++ lib.optional (cfg.settings ? MusicFolder) cfg.settings.MusicFolder; CapabilityBoundingSet = ""; diff --git a/nixos/modules/services/desktops/pipewire/wireplumber.nix b/nixos/modules/services/desktops/pipewire/wireplumber.nix index 1dbdd842c4a1..439a3ae68daa 100644 --- a/nixos/modules/services/desktops/pipewire/wireplumber.nix +++ b/nixos/modules/services/desktops/pipewire/wireplumber.nix @@ -37,11 +37,19 @@ in environment.systemPackages = [ cfg.package ]; environment.etc."wireplumber/main.lua.d/80-nixos.lua" = lib.mkIf (!pwUsedForAudio) { - text = '' + text = '' -- Pipewire is not used for audio, so prevent it from grabbing audio devices alsa_monitor.enable = function() end ''; }; + environment.etc."wireplumber/main.lua.d/80-systemwide.lua" = lib.mkIf config.services.pipewire.systemWide { + text = '' + -- When running system-wide, these settings need to be disabled (they + -- use functions that aren't available on the system dbus). + alsa_monitor.properties["alsa.reserve"] = false + default_access.properties["enable-flatpak-portal"] = false + ''; + }; systemd.packages = [ cfg.package ]; @@ -50,5 +58,10 @@ in systemd.services.wireplumber.wantedBy = [ "pipewire.service" ]; systemd.user.services.wireplumber.wantedBy = [ "pipewire.service" ]; + + systemd.services.wireplumber.environment = lib.mkIf config.services.pipewire.systemWide { + # Force wireplumber to use system dbus. + DBUS_SESSION_BUS_ADDRESS = "unix:path=/run/dbus/system_bus_socket"; + }; }; } diff --git a/nixos/modules/services/monitoring/grafana-agent.nix b/nixos/modules/services/monitoring/grafana-agent.nix index 021ddaa8ee0d..bbeda1846470 100644 --- a/nixos/modules/services/monitoring/grafana-agent.nix +++ b/nixos/modules/services/monitoring/grafana-agent.nix @@ -7,7 +7,7 @@ let in { meta = { - maintainers = with maintainers; [ zimbatm ]; + maintainers = with maintainers; [ flokli zimbatm ]; }; options.services.grafana-agent = { @@ -49,14 +49,7 @@ in }; default = { - server = { - # Don't bind on 0.0.0.0 - grpc_listen_address = "127.0.0.1"; - http_listen_address = "127.0.0.1"; - # Don't bind on the default port 80 - http_listen_port = 9090; - }; - prometheus = { + metrics = { wal_directory = "\${STATE_DIRECTORY}"; global.scrape_interval = "5s"; }; @@ -69,7 +62,12 @@ in }; example = { - loki.configs = [{ + metrics.global.remote_write = [{ + url = "\${METRICS_REMOTE_WRITE_URL}"; + basic_auth.username = "\${METRICS_REMOTE_WRITE_USERNAME}"; + basic_auth.password_file = "\${CREDENTIALS_DIRECTORY}/metrics_remote_write_password"; + }]; + logs.configs = [{ name = "default"; scrape_configs = [ { @@ -101,13 +99,6 @@ in basic_auth.password_file = "\${CREDENTIALS_DIRECTORY}/logs_remote_write_password"; }]; }]; - integrations = { - prometheus_remote_write = [{ - url = "\${METRICS_REMOTE_WRITE_URL}"; - basic_auth.username = "\${METRICS_REMOTE_WRITE_USERNAME}"; - basic_auth.password_file = "\${CREDENTIALS_DIRECTORY}/metrics_remote_write_password"; - }]; - }; }; }; }; diff --git a/nixos/tests/grafana-agent.nix b/nixos/tests/grafana-agent.nix index 97f752b350b0..a9f34d8cea31 100644 --- a/nixos/tests/grafana-agent.nix +++ b/nixos/tests/grafana-agent.nix @@ -23,9 +23,9 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: with subtest("Grafana-agent is running"): machine.wait_for_unit("grafana-agent.service") - machine.wait_for_open_port(9090) + machine.wait_for_open_port(12345) machine.succeed( - "curl -sSfN http://127.0.0.1:9090/-/healthy" + "curl -sSfN http://127.0.0.1:12345/-/healthy" ) machine.shutdown() ''; diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index 41c92a6d24e8..b06cb4d86245 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -162,7 +162,7 @@ let with on-the-fly code analysis, error prevention and automated refactorings for PHP and JavaScript code. ''; - maintainers = with maintainers; [ schristo ma27 ]; + maintainers = with maintainers; [ schristo ]; }; }); diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/applications/editors/neovim/default.nix index cd046b1871fa..022916c388dc 100644 --- a/pkgs/applications/editors/neovim/default.nix +++ b/pkgs/applications/editors/neovim/default.nix @@ -133,7 +133,7 @@ in # those contributions were copied from Vim (identified in the commit logs # by the vim-patch token). See LICENSE for details." license = with licenses; [ asl20 vim ]; - maintainers = with maintainers; [ manveru rvolosatovs ma27 ]; + maintainers = with maintainers; [ manveru rvolosatovs ]; platforms = platforms.unix; }; } diff --git a/pkgs/applications/misc/archivebox/default.nix b/pkgs/applications/misc/archivebox/default.nix index b70cf4407501..2d0990bab434 100644 --- a/pkgs/applications/misc/archivebox/default.nix +++ b/pkgs/applications/misc/archivebox/default.nix @@ -6,10 +6,21 @@ let python = python3.override { packageOverrides = self: super: { django = super.django_3.overridePythonAttrs (old: rec { - version = "3.1.7"; + version = "3.1.14"; src = old.src.override { inherit version; - sha256 = "sha256-Ms55Lum2oMu+w0ASPiKayfdl3/jCpK6SR6FLK6OjZac="; + sha256 = "72a4a5a136a214c39cf016ccdd6b69e2aa08c7479c66d93f3a9b5e4bb9d8a347"; + }; + meta = old.meta // { + knownVulnerabilities = [ + "CVE-2021-45115" + "CVE-2021-45116" + "CVE-2021-45452" + "CVE-2022-23833" + "CVE-2022-22818" + "CVE-2022-28347" + "CVE-2022-28346" + ]; }; }); }; diff --git a/pkgs/applications/misc/dmenu/wayland.nix b/pkgs/applications/misc/dmenu/wayland.nix index 6b8f92ddb1c2..8e4a98af1381 100644 --- a/pkgs/applications/misc/dmenu/wayland.nix +++ b/pkgs/applications/misc/dmenu/wayland.nix @@ -39,6 +39,6 @@ stdenv.mkDerivation rec { platforms = platforms.linux; description = "dmenu for wayland-compositors"; homepage = "https://github.com/nyyManni/dmenu-wayland"; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/applications/misc/kiwix/default.nix b/pkgs/applications/misc/kiwix/default.nix index f3406d4159b8..e64feb416555 100644 --- a/pkgs/applications/misc/kiwix/default.nix +++ b/pkgs/applications/misc/kiwix/default.nix @@ -12,13 +12,13 @@ mkDerivation rec { pname = "kiwix"; - version = "2.0.5"; + version = "2.2.1"; src = fetchFromGitHub { owner = pname; repo = "${pname}-desktop"; rev = version; - sha256 = "12v43bcg4g8fcp02y2srsfdvcb7dpl4pxb9z7a235006s0kfv8yn"; + sha256 = "sha256-ks2d/guMp5pb2tiwGxNp3htQVm65MsYvZ/6tNjGXNr8="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/misc/kiwix/lib.nix b/pkgs/applications/misc/kiwix/lib.nix index dcde5c390a47..9d365cd328c8 100644 --- a/pkgs/applications/misc/kiwix/lib.nix +++ b/pkgs/applications/misc/kiwix/lib.nix @@ -14,13 +14,13 @@ stdenv.mkDerivation rec { pname = "kiwix-lib"; - version = "9.4.1"; + version = "10.1.1"; src = fetchFromGitHub { owner = "kiwix"; repo = pname; rev = version; - sha256 = "034nk6l623v78clrs2d0k1vg69sbzrd8c0q79qiqmlkinck1nkxw"; + sha256 = "sha256-ECvdraN1J5XJQLeZDngxO5I7frwZ8+W8tFpbB7o8UeM="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/networking/instant-messengers/jami/client-gnome.nix b/pkgs/applications/networking/instant-messengers/jami/client-gnome.nix deleted file mode 100644 index 8cb748f54059..000000000000 --- a/pkgs/applications/networking/instant-messengers/jami/client-gnome.nix +++ /dev/null @@ -1,64 +0,0 @@ -{ version -, src -, jami-meta -, stdenv -, lib -, pkg-config -, cmake -, wrapQtAppsHook -, wrapGAppsHook -, gtk3-x11 -, networkmanager # for libnm -, libayatana-appindicator -, libnotify -, clutter-gtk -, libcanberra-gtk3 -, webkitgtk -, qrencode -, jami-libclient -, qttools -}: - -stdenv.mkDerivation { - pname = "jami-client-gnome"; - inherit version src; - - sourceRoot = "source/client-gnome"; - - preConfigure = '' - echo ${version} > version.txt - ''; - - nativeBuildInputs = [ - pkg-config - cmake - wrapGAppsHook - wrapQtAppsHook - ]; - # To spare double wrapping - dontWrapGApps = true; - preFixup = '' - qtWrapperArgs+=("''${gappsWrapperArgs[@]}") - # Users that set CLUTTER_BACKEND=wayland in their default environment will - # encounter a segfault due to: - # https://git.jami.net/savoirfairelinux/jami-client-gnome/-/issues/1100 . - qtWrapperArgs+=("--unset" "CLUTTER_BACKEND") - ''; - - buildInputs = [ - qttools - jami-libclient - gtk3-x11 - networkmanager - libayatana-appindicator - libnotify - clutter-gtk - libcanberra-gtk3 - webkitgtk - qrencode - ]; - - meta = jami-meta // { - description = "The client based on GTK" + jami-meta.description; - }; -} diff --git a/pkgs/applications/networking/instant-messengers/jami/client-qt.nix b/pkgs/applications/networking/instant-messengers/jami/client-qt.nix index 0c952fd1ecad..74bfbc600689 100644 --- a/pkgs/applications/networking/instant-messengers/jami/client-qt.nix +++ b/pkgs/applications/networking/instant-messengers/jami/client-qt.nix @@ -1,8 +1,8 @@ { version , src , jami-meta -, mkDerivation , lib +, stdenv , pkg-config , cmake , networkmanager # for libnm @@ -10,18 +10,19 @@ , qttools # for translations , wrapQtAppsHook , libnotify -, qrencode -, qtwebengine +, qt5compat +, qtbase , qtdeclarative -, qtquickcontrols2 +, qrencode , qtmultimedia +, qtnetworkauth , qtsvg +, qtwebengine , qtwebchannel -, qtgraphicaleffects # no gui without this , jami-libclient }: -mkDerivation { +stdenv.mkDerivation { pname = "jami-client-qt"; inherit version src; @@ -33,6 +34,7 @@ mkDerivation { ''; nativeBuildInputs = [ + wrapQtAppsHook pkg-config cmake python3 @@ -43,14 +45,20 @@ mkDerivation { jami-libclient networkmanager libnotify + qtbase + qt5compat qrencode - qtwebengine + qtnetworkauth qtdeclarative - qtquickcontrols2 qtmultimedia qtsvg qtwebchannel - qtgraphicaleffects + qtwebengine + ]; + + qtWrapperArgs = [ + # With wayland the titlebar is not themed and the wmclass is wrong. + "--set-default QT_QPA_PLATFORM xcb" ]; meta = jami-meta // { diff --git a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_common b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_common new file mode 100644 index 000000000000..5c3f607e5c0e --- /dev/null +++ b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_common @@ -0,0 +1,19 @@ +--disable-sound +--enable-video +--enable-ext-sound +--disable-speex-aec +--disable-g711-codec +--disable-l16-codec +--disable-gsm-codec +--disable-g722-codec +--disable-g7221-codec +--disable-speex-codec +--disable-ilbc-codec +--disable-opencore-amr +--disable-silk +--disable-sdl +--disable-ffmpeg +--disable-v4l2 +--disable-openh264 +--disable-resample +--disable-libwebrtc diff --git a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_linux b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_linux new file mode 100644 index 000000000000..d1292afe3a29 --- /dev/null +++ b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_linux @@ -0,0 +1 @@ +--enable-epoll diff --git a/pkgs/applications/networking/instant-messengers/jami/daemon.nix b/pkgs/applications/networking/instant-messengers/jami/daemon.nix index f39b731132ea..635cc569e86f 100644 --- a/pkgs/applications/networking/instant-messengers/jami/daemon.nix +++ b/pkgs/applications/networking/instant-messengers/jami/daemon.nix @@ -58,16 +58,22 @@ let pjsip-jami = pjsip.overrideAttrs (old: let - src-args = import ./pjproject-src.nix; - version = lib.concatStrings (lib.lists.take 7 (lib.stringToCharacters src-args.rev)); patch-src = src + "/daemon/contrib/src/pjproject/"; in - { - inherit version; + rec { + version = "e1f389d0b905011e0cb62cbdf7a8b37fc1bcde1a"; - src = fetchFromGitHub src-args; + src = fetchFromGitHub { + owner = "savoirfairelinux"; + repo = "pjproject"; + rev = version; + sha256 = "sha256-6t+3b7pvvwi+VD05vxtujabEJmWmJTAeyD/Dapav10Y="; + }; patches = old.patches ++ (map (x: patch-src + x) (readLinesToList ./config/pjsip_patches)); + + configureFlags = (readLinesToList ./config/pjsip_args_common) + ++ lib.optionals stdenv.isLinux (readLinesToList ./config/pjsip_args_linux); }); opendht-jami = opendht.override { diff --git a/pkgs/applications/networking/instant-messengers/jami/default.nix b/pkgs/applications/networking/instant-messengers/jami/default.nix index ef8959b57a97..32b5a2663898 100644 --- a/pkgs/applications/networking/instant-messengers/jami/default.nix +++ b/pkgs/applications/networking/instant-messengers/jami/default.nix @@ -4,21 +4,21 @@ , fetchzip , jack , udev -, libsForQt5 +, qt6Packages }: -rec { - version = "20211223.2.37be4c3"; +let + version = "20220503.1550.0f35faa"; src = fetchzip { url = "https://dl.jami.net/release/tarballs/jami_${version}.tar.gz"; - sha256 = "1zw9azwmxr4991nq5kl527lbwlj7psrissgvrkl1kxxbfbdncbhh"; + hash = "sha256-iCmsgjgGogNjj1k0sYRqx59ZEwFZcJOeVGBNyBlcy1M="; stripRoot = false; postFetch = '' cd $out - mv ring-project/* ./ - rm -r ring-project.rst ring-project client-android client-ios client-macosx client-uwp + mv jami-project/* ./ + rm -r jami-project.rst jami-project client-android client-ios client-macosx client-uwp rm daemon/contrib/tarballs/* ''; }; @@ -30,12 +30,11 @@ rec { platforms = platforms.linux; maintainers = [ maintainers.linsui ]; }; - +in +rec { jami-daemon = callPackage ./daemon.nix { inherit version src udev jack jami-meta; }; - jami-libclient = libsForQt5.callPackage ./libclient.nix { inherit version src jami-meta; }; + jami-libclient = qt6Packages.callPackage ./libclient.nix { inherit version src jami-meta; }; - jami-client-gnome = libsForQt5.callPackage ./client-gnome.nix { inherit version src jami-meta; }; - - jami-client-qt = libsForQt5.callPackage ./client-qt.nix { inherit version src jami-meta; }; + jami-client-qt = qt6Packages.callPackage ./client-qt.nix { inherit version src jami-meta; }; } diff --git a/pkgs/applications/networking/instant-messengers/jami/libclient.nix b/pkgs/applications/networking/instant-messengers/jami/libclient.nix index b5ea7431b915..d998fe7a0612 100644 --- a/pkgs/applications/networking/instant-messengers/jami/libclient.nix +++ b/pkgs/applications/networking/instant-messengers/jami/libclient.nix @@ -22,6 +22,7 @@ stdenv.mkDerivation { buildInputs = [ jami-daemon + jami-daemon.ffmpeg ]; patches = [ diff --git a/pkgs/applications/networking/instant-messengers/jami/pjproject-src.nix b/pkgs/applications/networking/instant-messengers/jami/pjproject-src.nix deleted file mode 100644 index 76e88d887555..000000000000 --- a/pkgs/applications/networking/instant-messengers/jami/pjproject-src.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - owner = "savoirfairelinux"; - repo = "pjproject"; - rev = "e1f389d0b905011e0cb62cbdf7a8b37fc1bcde1a"; - sha256 = "0inpmyb6mhrzr0g309d6clkc99lddqdvyf9xajz0igvgp9pvgpza"; -} diff --git a/pkgs/applications/networking/instant-messengers/jami/update.sh b/pkgs/applications/networking/instant-messengers/jami/update.sh index 10d9bb885c35..ecf14e25ddaf 100755 --- a/pkgs/applications/networking/instant-messengers/jami/update.sh +++ b/pkgs/applications/networking/instant-messengers/jami/update.sh @@ -3,11 +3,14 @@ set -e -jami_dir="$( dirname "${BASH_SOURCE[0]}" )" +jami_dir=$(readlink -e $(dirname "${BASH_SOURCE[0]}")) + +cd $jami_dir/../../../../.. # Update src version and hash version=$(curl -s 'https://dl.jami.net/release/tarballs/?C=M;O=D' | sed -n -E 's/^.*jami_([0-9.a-f]+)\.tar\.gz.*$/\1/p' | head -n 1) -update-source-version jami-libclient "$version" --file=pkgs/applications/networking/instant-messengers/jami/default.nix + +update-source-version jami-libclient "$version" --file=$jami_dir/default.nix src=$(nix-build --no-out-link -A jami-libclient.src) @@ -43,8 +46,15 @@ echo "${pjsip_patches}" > "$config_dir/pjsip_patches" # Update pjsip version pjsip_version=$(sed -n -E 's/.*PJPROJECT_VERSION := ([0-9a-f]+).*/\1/p' ${src}/daemon/contrib/src/pjproject/rules.mak) -nix-prefetch fetchFromGitHub \ - --owner savoirfairelinux \ - --repo pjproject \ - --rev ${pjsip_version} \ - --output nix > "${jami_dir}/pjproject-src.nix" +update-source-version jami-daemon.pjsip "$pjsip_version" --file=pkgs/applications/networking/instant-messengers/jami/daemon.nix + +pjsip_rules="${src}/daemon/contrib/src/pjproject/rules.mak" + +# Update pjsip args +pjsip_args_common=$(sed -n '/PJPROJECT_OPTIONS :=/,/with-gnutls/p' ${pjsip_rules} | sed -n -E 's/.*(--[0-9a-z=_-]+).*\\/\1/p') +echo -e "Common args for pjsip:\n${pjsip_args_common}\n" +echo "${pjsip_args_common}" > "$config_dir/pjsip_args_common" + +pjsip_args_linux=$(sed -n '/HAVE_LINUX/,/endif/p' ${pjsip_rules} | sed -n -E 's/.*(--[0-9a-z=_-]+).*/\1/p') +echo -e "Linux args for pjsip:\n${pjsip_args_linux}\n" +echo "${pjsip_args_linux}" > "$config_dir/pjsip_args_linux" diff --git a/pkgs/applications/networking/instant-messengers/matrix-commander/default.nix b/pkgs/applications/networking/instant-messengers/matrix-commander/default.nix index ad3248fabba9..85c3dc86ea0f 100644 --- a/pkgs/applications/networking/instant-messengers/matrix-commander/default.nix +++ b/pkgs/applications/networking/instant-messengers/matrix-commander/default.nix @@ -1,38 +1,63 @@ -{ stdenv, lib, fetchFromGitHub, cacert, python3 }: +{ lib +, fetchFromGitHub +, buildPythonApplication +, cacert +, setuptools +, matrix-nio +, python-magic +, markdown +, pillow +, urllib3 +, aiofiles +, notify2 +, dbus-python +, xdg +, python-olm +}: -stdenv.mkDerivation { +buildPythonApplication rec { pname = "matrix-commander"; - version = "unstable-2021-08-05"; + version = "2.37.3"; src = fetchFromGitHub { owner = "8go"; repo = "matrix-commander"; - rev = "7ab3fd9a0ef4eb19d882cb3701d2025b4d41b63a"; - sha256 = "sha256-WWf7GbJxGlqIdsS1d0T1DO0WN2RBepHGgJrl/nt7UIg="; + rev = "v${version}"; + sha256 = "sha256-X5tCPR0EqY1dxViwh8/tEjJM2oo81L3H703pPzWzUv8="; }; - buildInputs = [ - cacert - (python3.withPackages(ps: with ps; [ - matrix-nio - magic - markdown - pillow - urllib3 - aiofiles - notify2 - ]))]; + format = "pyproject"; - installPhase = '' - runHook preInstall + postPatch = '' + # Dependencies already bundled with Python + sed -i \ + -e '/uuid/d' \ + -e '/argparse/d' \ + -e '/asyncio/d' \ + -e '/datetime/d' \ + setup.cfg requirements.txt - mkdir -p $out/bin - cp $src/matrix-commander.py $out/bin/matrix-commander - chmod +x $out/bin/matrix-commander - - runHook postInstall + # Dependencies not correctly detected + sed -i \ + -e '/dbus-python/d' \ + setup.cfg requirements.txt ''; + propagatedBuildInputs = [ + cacert + setuptools + matrix-nio + python-magic + markdown + pillow + urllib3 + aiofiles + notify2 + dbus-python + xdg + python-olm + ]; + meta = with lib; { description = "Simple but convenient CLI-based Matrix client app for sending and receiving"; homepage = "https://github.com/8go/matrix-commander"; diff --git a/pkgs/applications/version-management/got/default.nix b/pkgs/applications/version-management/got/default.nix index f38bb042c435..fc0de31d4713 100644 --- a/pkgs/applications/version-management/got/default.nix +++ b/pkgs/applications/version-management/got/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "got"; - version = "0.69"; + version = "0.70"; src = fetchurl { url = "https://gameoftrees.org/releases/portable/got-portable-${version}.tar.gz"; - sha256 = "1cnl0yk866wzjwgas587kvb08njq7db71b5xqsdrwd1varp010vm"; + sha256 = "0kh7idgbiil58l043lkyjy9lz81yj03b6b3d7ra62jkrkzc4wlrf"; }; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix index 1b6625751345..61925e4ed0be 100644 --- a/pkgs/applications/window-managers/sway/default.nix +++ b/pkgs/applications/window-managers/sway/default.nix @@ -90,6 +90,6 @@ stdenv.mkDerivation rec { changelog = "https://github.com/swaywm/sway/releases/tag/${version}"; license = licenses.mit; platforms = platforms.linux; - maintainers = with maintainers; [ primeos synthetica ma27 ]; + maintainers = with maintainers; [ primeos synthetica ]; }; } diff --git a/pkgs/applications/window-managers/sway/lock-fancy.nix b/pkgs/applications/window-managers/sway/lock-fancy.nix index 8ca1dd778775..2eb817b9b1f8 100644 --- a/pkgs/applications/window-managers/sway/lock-fancy.nix +++ b/pkgs/applications/window-managers/sway/lock-fancy.nix @@ -46,6 +46,6 @@ in stdenv.mkDerivation rec { homepage = "https://github.com/Big-B/swaylock-fancy"; license = licenses.mit; platforms = platforms.linux; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/compilers/graalvm/community-edition/default.nix b/pkgs/development/compilers/graalvm/community-edition/default.nix index 724800898ace..6badaa3b4c8a 100644 --- a/pkgs/development/compilers/graalvm/community-edition/default.nix +++ b/pkgs/development/compilers/graalvm/community-edition/default.nix @@ -1,4 +1,4 @@ -{ callPackage, fetchpatch, zlib, Foundation }: +{ callPackage, Foundation }: /* Add new graal versions and products here and then see update.nix on how to generate the sources. @@ -7,15 +7,6 @@ let mkGraal = opts: callPackage (import ./mkGraal.nix opts) { inherit Foundation; - # remove this once zlib 1.2.13 is released - zlib = zlib.overrideAttrs (oldAttrs: { - patches = (oldAttrs.patches or [ ]) ++ [ - (fetchpatch { - url = "https://github.com/madler/zlib/commit/ec3df00224d4b396e2ac6586ab5d25f673caa4c2.patch"; - sha256 = "sha256-jSa3OCigBdpWFDllCWC2rgE9GxCNR0yjsc+bpwPDBEA="; - }) - ]; - }); }; /* diff --git a/pkgs/development/libraries/zimlib/default.nix b/pkgs/development/libraries/zimlib/default.nix index 9f8e357d3ab0..56438f8e1735 100644 --- a/pkgs/development/libraries/zimlib/default.nix +++ b/pkgs/development/libraries/zimlib/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub +{ lib, stdenv, fetchFromGitHub, fetchzip , meson, ninja, pkg-config , python3 , icu @@ -11,13 +11,19 @@ stdenv.mkDerivation rec { pname = "zimlib"; - version = "6.3.2"; + version = "7.2.2"; src = fetchFromGitHub { owner = "openzim"; repo = "libzim"; rev = version; - sha256 = "sha256-xlYu74akK9WFy86hcQe7zp11TImwl8llgDIZBRgmbAI="; + sha256 = "sha256-AEhhjinnnMA4NbYL7NVHYeRZX/zfNiidbY/VeFjZuQs="; + }; + + testData = fetchzip rec { + passthru.version = "0.4"; + url = "https://github.com/openzim/zim-testing-suite/releases/download/v${passthru.version}/zim-testing-suite-${passthru.version}.tar.gz"; + sha256 = "sha256-2eJqmvs/GrvOD/pq8dTubaiO9ZpW2WqTNQByv354Z0w="; }; nativeBuildInputs = [ @@ -39,6 +45,8 @@ stdenv.mkDerivation rec { patchShebangs scripts ''; + mesonFlags = [ "-Dtest_data_dir=${testData}" ]; + checkInputs = [ gtest ]; diff --git a/pkgs/development/mobile/adb-sync/default.nix b/pkgs/development/mobile/adb-sync/default.nix index c88ac5dbca5e..90087c48ddda 100644 --- a/pkgs/development/mobile/adb-sync/default.nix +++ b/pkgs/development/mobile/adb-sync/default.nix @@ -38,6 +38,6 @@ stdenv.mkDerivation { license = licenses.asl20; platforms = platforms.unix; hydraPlatforms = []; - maintainers = with maintainers; [ scolobb ma27 ]; + maintainers = with maintainers; [ scolobb ]; }; } diff --git a/pkgs/development/python-modules/ansible-lint/default.nix b/pkgs/development/python-modules/ansible-lint/default.nix index 9178cab6421a..a3867db819f4 100644 --- a/pkgs/development/python-modules/ansible-lint/default.nix +++ b/pkgs/development/python-modules/ansible-lint/default.nix @@ -20,13 +20,13 @@ buildPythonPackage rec { pname = "ansible-lint"; - version = "6.2.2"; + version = "6.3.0"; format = "pyproject"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "sha256-uOKVb+3pC9KBUOl/IJqK94fGAB9YS7ZhMRKhzhrqMR0="; + sha256 = "sha256-9X9SCuXYEM4GIVfcfWM5kK0vvsgbu7NMzEzjoMIfzTg="; }; postPatch = '' diff --git a/pkgs/development/python-modules/django-jinja2/default.nix b/pkgs/development/python-modules/django-jinja2/default.nix index 305e153ce602..8216ca4ff872 100644 --- a/pkgs/development/python-modules/django-jinja2/default.nix +++ b/pkgs/development/python-modules/django-jinja2/default.nix @@ -1,28 +1,45 @@ -{ lib, buildPythonPackage, fetchPypi, - django, jinja2, pytz, tox - }: +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, django +, jinja2 +, python +}: buildPythonPackage rec { pname = "django-jinja"; version = "2.10.2"; + disabled = pythonOlder "3.6"; + + format = "setuptools"; + + src = fetchFromGitHub { + owner = "niwinz"; + repo = "django-jinja"; + rev = version; + hash = "sha256-IZ4HjBQt6K8xbaYfO5DVlGKUVCQ3UciAUpfnqCjzyCE="; + }; + + propagatedBuildInputs = [ + django + jinja2 + ]; + + checkPhase = '' + runHook preCheck + + ${python.interpreter} testing/runtests.py + + runHook postCheck + ''; + meta = { description = "Simple and nonobstructive jinja2 integration with Django"; homepage = "https://github.com/niwinz/django-jinja"; + changelog = "https://github.com/niwinz/django-jinja/blob/${src.rev}/CHANGES.adoc"; license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ dotlambda ]; }; - - src = fetchPypi { - inherit pname version; - sha256 = "sha256-v9+7VcH1pnnWmtV11VDEcH04ZjQAkVLv4BQInzxNFBI="; - }; - - buildInputs = [ django pytz tox ]; - propagatedBuildInputs = [ django jinja2 ]; - - # python installed: The directory '/homeless-shelter/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.,appdirs==1.4.3,Django==1.11.1,django-jinja==2.2.2,Jinja2==2.9.6,MarkupSafe==1.0,packaging==16.8,pyparsing==2.2.0,pytz==2017.2,six==1.10.0 - doCheck = false; - checkPhase = '' - tox - ''; } diff --git a/pkgs/development/python-modules/dropbox/default.nix b/pkgs/development/python-modules/dropbox/default.nix index 3aa359b72da0..bb75c68e32eb 100644 --- a/pkgs/development/python-modules/dropbox/default.nix +++ b/pkgs/development/python-modules/dropbox/default.nix @@ -3,6 +3,7 @@ , pythonOlder , fetchFromGitHub , requests +, setuptools , six , stone , mock @@ -28,6 +29,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ requests + setuptools six stone ]; diff --git a/pkgs/development/python-modules/face_recognition/default.nix b/pkgs/development/python-modules/face_recognition/default.nix index 6b2c6411aa1f..b0c5266d6fb1 100644 --- a/pkgs/development/python-modules/face_recognition/default.nix +++ b/pkgs/development/python-modules/face_recognition/default.nix @@ -36,7 +36,7 @@ buildPythonPackage rec { meta = with lib; { license = licenses.mit; homepage = "https://github.com/ageitgey/face_recognition"; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; description = "The world's simplest facial recognition api for Python and the command line"; }; } diff --git a/pkgs/development/python-modules/face_recognition_models/default.nix b/pkgs/development/python-modules/face_recognition_models/default.nix index 6ec2634029b3..ccf20f494998 100644 --- a/pkgs/development/python-modules/face_recognition_models/default.nix +++ b/pkgs/development/python-modules/face_recognition_models/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { meta = with lib; { homepage = "https://github.com/ageitgey/face_recognition_models"; license = licenses.cc0; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; description = "Trained models for the face_recognition python library"; }; } diff --git a/pkgs/development/python-modules/pytesseract/default.nix b/pkgs/development/python-modules/pytesseract/default.nix index c99e6acbfbfe..a2fa23834a6e 100644 --- a/pkgs/development/python-modules/pytesseract/default.nix +++ b/pkgs/development/python-modules/pytesseract/default.nix @@ -36,6 +36,6 @@ buildPythonPackage rec { homepage = "https://pypi.org/project/pytesseract/"; license = licenses.asl20; description = "A Python wrapper for Google Tesseract"; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/scrap-engine/default.nix b/pkgs/development/python-modules/scrap-engine/default.nix new file mode 100644 index 000000000000..07d942f01099 --- /dev/null +++ b/pkgs/development/python-modules/scrap-engine/default.nix @@ -0,0 +1,24 @@ +{ lib +, buildPythonPackage +, fetchPypi +, setuptools-scm +}: + +buildPythonPackage rec { + pname = "scrap_engine"; + version = "1.2.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-dn/9wxK1UHd3cc3Jo1Cp9tynOFUlndH+cZfIc244ysE="; + }; + + nativeBuildInputs = [ setuptools-scm ]; + + meta = with lib; { + maintainers = with maintainers; [ fgaz ]; + description = "A 2D ascii game engine for the terminal"; + homepage = "https://github.com/lxgr-linux/scrap_engine"; + license = licenses.gpl3Only; + }; +} diff --git a/pkgs/development/python-modules/types-redis/default.nix b/pkgs/development/python-modules/types-redis/default.nix index a0070b4d16c7..735398d57ab2 100644 --- a/pkgs/development/python-modules/types-redis/default.nix +++ b/pkgs/development/python-modules/types-redis/default.nix @@ -5,12 +5,12 @@ buildPythonPackage rec { pname = "types-redis"; - version = "4.2.7"; + version = "4.2.8"; format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "sha256-7s5XPo39USOPrh34TTYCM1+8vTuosGQIHMD/jsHwWKE="; + sha256 = "sha256-L+NNQLx4UduHUs2mIQxKi+zRuv2a213xieEVg3cL+aA="; }; # Module doesn't have tests diff --git a/pkgs/development/python-modules/watchdog/default.nix b/pkgs/development/python-modules/watchdog/default.nix index ee1e866f4a66..177848497b81 100644 --- a/pkgs/development/python-modules/watchdog/default.nix +++ b/pkgs/development/python-modules/watchdog/default.nix @@ -20,6 +20,10 @@ buildPythonPackage rec { sha256 = "sha256-bQMUkSaGSr0ycV1OkmfSdUzt4lppBSkBOZNWrTvF7P8="; }; + patches = lib.optionals (stdenv.isDarwin && !stdenv.isAarch64) [ + ./force-kqueue.patch + ]; + buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ]; propagatedBuildInputs = [ @@ -42,6 +46,8 @@ buildPythonPackage rec { disabledTests = [ # probably failing because of an encoding related issue "test_create_wrong_encoding" + ] ++ lib.optionals (stdenv.isDarwin && !stdenv.isAarch64) [ + "test_delete" ]; disabledTestPaths = [ @@ -58,8 +64,5 @@ buildPythonPackage rec { homepage = "https://github.com/gorakhargosh/watchdog"; license = licenses.asl20; maintainers = with maintainers; [ goibhniu ]; - # error: use of undeclared identifier 'kFSEventStreamEventFlagItemCloned' - # builds fine on aarch64-darwin - broken = stdenv.isDarwin && !stdenv.isAarch64; }; } diff --git a/pkgs/development/python-modules/watchdog/force-kqueue.patch b/pkgs/development/python-modules/watchdog/force-kqueue.patch new file mode 100644 index 000000000000..de222d891214 --- /dev/null +++ b/pkgs/development/python-modules/watchdog/force-kqueue.patch @@ -0,0 +1,159 @@ +diff --git a/setup.py b/setup.py +index 072dfc8..64732bb 100644 +--- a/setup.py ++++ b/setup.py +@@ -39,7 +39,7 @@ _apple_devices = ('appletv', 'iphone', 'ipod', 'ipad', 'watch') + is_macos = sys.platform == 'darwin' and not machine().lower().startswith(_apple_devices) + + ext_modules = [] +-if is_macos or os.getenv('FORCE_MACOS_MACHINE', '0') == '1': ++if False: + ext_modules = [ + Extension( + name='_watchdog_fsevents', +diff --git a/tests/test_emitter.py b/tests/test_emitter.py +index bec052c..242fbea 100644 +--- a/tests/test_emitter.py ++++ b/tests/test_emitter.py +@@ -42,13 +42,11 @@ if platform.is_linux(): + InotifyEmitter as Emitter, + InotifyFullEmitter, + ) +-elif platform.is_darwin(): +- from watchdog.observers.fsevents import FSEventsEmitter as Emitter + elif platform.is_windows(): + from watchdog.observers.read_directory_changes import ( + WindowsApiEmitter as Emitter + ) +-elif platform.is_bsd(): ++elif platform.is_bsd() or platform.is_darwin(): + from watchdog.observers.kqueue import ( + KqueueEmitter as Emitter + ) +@@ -57,12 +55,6 @@ logging.basicConfig(level=logging.DEBUG) + logger = logging.getLogger(__name__) + + +-if platform.is_darwin(): +- # enable more verbose logs +- fsevents_logger = logging.getLogger("fsevents") +- fsevents_logger.setLevel(logging.DEBUG) +- +- + @pytest.fixture(autouse=True) + def setup_teardown(tmpdir): + global p, emitter, event_queue +@@ -85,9 +77,6 @@ def start_watching(path=None, use_full_emitter=False, recursive=True): + else: + emitter = Emitter(event_queue, ObservedWatch(path, recursive=recursive)) + +- if platform.is_darwin(): +- emitter.suppress_history = True +- + emitter.start() + + +@@ -345,7 +334,7 @@ def test_separate_consecutive_moves(): + if platform.is_windows(): + expected_events = [a_deleted, d_created] + +- if platform.is_bsd(): ++ if platform.is_bsd() or platform.is_darwin(): + # Due to the way kqueue works, we can't really order + # 'Created' and 'Deleted' events in time, so creation queues first + expected_events = [d_created, a_deleted, dir_modif, dir_modif] +@@ -355,7 +344,7 @@ def test_separate_consecutive_moves(): + + + @pytest.mark.flaky(max_runs=5, min_passes=1, rerun_filter=rerun_filter) +-@pytest.mark.skipif(platform.is_bsd(), reason="BSD create another set of events for this test") ++@pytest.mark.skipif(platform.is_bsd() or platform.is_darwin(), reason="BSD create another set of events for this test") + def test_delete_self(): + mkdir(p('dir1')) + start_watching(p('dir1')) +@@ -365,7 +354,7 @@ def test_delete_self(): + assert not emitter.is_alive() + + +-@pytest.mark.skipif(platform.is_windows() or platform.is_bsd(), ++@pytest.mark.skipif(platform.is_windows() or platform.is_bsd() or platform.is_darwin(), + reason="Windows|BSD create another set of events for this test") + def test_fast_subdirectory_creation_deletion(): + root_dir = p('dir1') +@@ -429,7 +418,7 @@ def test_recursive_on(): + assert event.src_path == p('dir1', 'dir2', 'dir3') + assert isinstance(event, DirModifiedEvent) + +- if not platform.is_bsd(): ++ if not (platform.is_bsd() or platform.is_darwin()): + event = event_queue.get(timeout=5)[0] + assert event.src_path == p('dir1', 'dir2', 'dir3', 'a') + assert isinstance(event, FileModifiedEvent) +@@ -452,26 +441,6 @@ def test_recursive_off(): + if platform.is_linux(): + expect_event(FileClosedEvent(p('b'))) + +- # currently limiting these additional events to macOS only, see https://github.com/gorakhargosh/watchdog/pull/779 +- if platform.is_darwin(): +- mkdir(p('dir1', 'dir2')) +- with pytest.raises(Empty): +- event_queue.get(timeout=5) +- mkfile(p('dir1', 'dir2', 'somefile')) +- with pytest.raises(Empty): +- event_queue.get(timeout=5) +- +- mkdir(p('dir3')) +- expect_event(DirModifiedEvent(p())) # the contents of the parent directory changed +- +- mv(p('dir1', 'dir2', 'somefile'), p('somefile')) +- expect_event(FileMovedEvent(p('dir1', 'dir2', 'somefile'), p('somefile'))) +- expect_event(DirModifiedEvent(p())) +- +- mv(p('dir1', 'dir2'), p('dir2')) +- expect_event(DirMovedEvent(p('dir1', 'dir2'), p('dir2'))) +- expect_event(DirModifiedEvent(p())) +- + + @pytest.mark.skipif(platform.is_windows(), + reason="Windows create another set of events for this test") +@@ -493,7 +462,7 @@ def test_renaming_top_level_directory(): + + expect_event(DirMovedEvent(p('a', 'b'), p('a2', 'b'))) + +- if platform.is_bsd(): ++ if platform.is_bsd() or platform.is_darwin(): + expect_event(DirModifiedEvent(p())) + + open(p('a2', 'b', 'c'), 'a').close() +@@ -584,7 +553,7 @@ def test_move_nested_subdirectories(): + expect_event(DirMovedEvent(p('dir1', 'dir2', 'dir3'), p('dir2', 'dir3'))) + expect_event(FileMovedEvent(p('dir1', 'dir2', 'dir3', 'a'), p('dir2', 'dir3', 'a'))) + +- if platform.is_bsd(): ++ if platform.is_bsd() or platform.is_darwin(): + event = event_queue.get(timeout=5)[0] + assert p(event.src_path) == p() + assert isinstance(event, DirModifiedEvent) +@@ -643,7 +612,7 @@ def test_move_nested_subdirectories_on_windows(): + + + @pytest.mark.flaky(max_runs=5, min_passes=1, rerun_filter=rerun_filter) +-@pytest.mark.skipif(platform.is_bsd(), reason="BSD create another set of events for this test") ++@pytest.mark.skipif(platform.is_bsd() or platform.is_darwin(), reason="BSD create another set of events for this test") + def test_file_lifecyle(): + start_watching() + +diff --git a/tests/test_fsevents.py b/tests/test_fsevents.py +index 4a4fabf..49886a1 100644 +--- a/tests/test_fsevents.py ++++ b/tests/test_fsevents.py +@@ -3,8 +3,7 @@ + import pytest + from watchdog.utils import platform + +-if not platform.is_darwin(): # noqa +- pytest.skip("macOS only.", allow_module_level=True) ++pytest.skip("doesn't work with Nix yet", allow_module_level=True) + + import logging + import os diff --git a/pkgs/development/tools/deadnix/default.nix b/pkgs/development/tools/deadnix/default.nix index 3de058fb70c3..53f30595cef6 100644 --- a/pkgs/development/tools/deadnix/default.nix +++ b/pkgs/development/tools/deadnix/default.nix @@ -5,16 +5,16 @@ rustPlatform.buildRustPackage rec { pname = "deadnix"; - version = "0.1.5"; + version = "0.1.6"; src = fetchFromGitHub { owner = "astro"; repo = "deadnix"; rev = "v${version}"; - sha256 = "1fyagp6m6adwfcisi1zvs5dflcvrmpx4q1fr8pqzb93zv4m3ar84"; + sha256 = "sha256-a3zEPblkvj9cjGEQB6LKqB+h8C2df7p+IgkwqsUptmY="; }; - cargoSha256 = "102akpvs2hvf5hl9rh5cspxzqly68wk7qhx0g1zhfp1ka58gnr4p"; + cargoSha256 = "sha256-zMVXl7kJEavv5zfSm0bTYtd8J3j/LtY3ikPUK2hod+E="; meta = with lib; { description = "Find and remove unused code in .nix source files"; diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 279e0da7155f..4457db094301 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -194,6 +194,9 @@ stdenv.mkDerivation { # mass rebuild. postFixup = ""; + # Break dependency on pkgsBuildBuild.gcc when building a cross-binutils + stripDebugList = if stdenv.hostPlatform != stdenv.targetPlatform then "bin lib ${stdenv.hostPlatform.config}" else null; + # INFO: Otherwise it fails with: # `./sanity.sh: line 36: $out/bin/size: not found` doInstallCheck = (buildPlatform == hostPlatform) && (hostPlatform == targetPlatform); diff --git a/pkgs/development/tools/misc/editorconfig-checker/default.nix b/pkgs/development/tools/misc/editorconfig-checker/default.nix index 13377334cce4..ff9593532642 100644 --- a/pkgs/development/tools/misc/editorconfig-checker/default.nix +++ b/pkgs/development/tools/misc/editorconfig-checker/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "editorconfig-checker"; - version = "2.4.0"; + version = "2.5.0"; src = fetchFromGitHub { owner = "editorconfig-checker"; repo = "editorconfig-checker"; rev = version; - sha256 = "sha256-uP+AgQO1k9fic7r0pOKqO5lUHKEf7Pwaw2U2a6ghzz0="; + sha256 = "sha256-zbE/je5ZxCX83hxl88c8/FoZzOLatrSEjSAI+eIOVQQ="; }; vendorSha256 = "sha256-SrBrYyExeDHXhezvtfGLtm8NM1eX4/8kzwUICQLZDjo="; diff --git a/pkgs/development/tools/misc/strace/default.nix b/pkgs/development/tools/misc/strace/default.nix index 1fd8db8c6e2e..bee5d227f4d6 100644 --- a/pkgs/development/tools/misc/strace/default.nix +++ b/pkgs/development/tools/misc/strace/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "strace"; - version = "5.17"; + version = "5.18"; src = fetchurl { url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-X7KY29EzH9HhvJTFwyOVhg03YQG4fGzT0bqfmqFcFh8="; + sha256 = "sha256-YCk+p5rJJT1gDNyb4HetKYjKIihKQ5yeZr5RUNs9EYc="; }; depsBuildBuild = [ buildPackages.stdenv.cc ]; diff --git a/pkgs/development/tools/rust/cargo-make/default.nix b/pkgs/development/tools/rust/cargo-make/default.nix index 92439d2a572b..d099bf5f8765 100644 --- a/pkgs/development/tools/rust/cargo-make/default.nix +++ b/pkgs/development/tools/rust/cargo-make/default.nix @@ -37,6 +37,6 @@ rustPlatform.buildRustPackage rec { description = "A Rust task runner and build tool"; homepage = "https://github.com/sagiegurari/cargo-make"; license = licenses.asl20; - maintainers = with maintainers; [ xrelkd ma27 ]; + maintainers = with maintainers; [ xrelkd ]; }; } diff --git a/pkgs/development/tools/spr/default.nix b/pkgs/development/tools/spr/default.nix new file mode 100644 index 000000000000..c19bf5b174ba --- /dev/null +++ b/pkgs/development/tools/spr/default.nix @@ -0,0 +1,27 @@ +{ lib +, rustPlatform +, fetchCrate +, Security +, stdenv +}: + +rustPlatform.buildRustPackage rec { + pname = "spr"; + version = "1.3.2"; + + src = fetchCrate { + inherit pname version; + sha256 = "sha256-6IPNA1Ivj3o+X733a8Kxh1STODS5lLZaK4lh0lxU4bo="; + }; + + cargoSha256 = "sha256-m/mHOiuaFJtiuyFr2Z3ovk/Q06vxwvUBAiz0rF4R3kU="; + + buildInputs = lib.optional stdenv.isDarwin Security; + + meta = with lib; { + description = "Submit pull requests for individual, amendable, rebaseable commits to GitHub"; + homepage = "https://github.com/getcord/spr"; + license = licenses.mit; + maintainers = with maintainers; [ sven-of-cord ]; + }; +} diff --git a/pkgs/development/tools/wasm-bindgen-cli/default.nix b/pkgs/development/tools/wasm-bindgen-cli/default.nix index e239de15b24f..14e140229dfd 100644 --- a/pkgs/development/tools/wasm-bindgen-cli/default.nix +++ b/pkgs/development/tools/wasm-bindgen-cli/default.nix @@ -34,7 +34,7 @@ rustPlatform.buildRustPackage rec { homepage = "https://rustwasm.github.io/docs/wasm-bindgen/"; license = with licenses; [ asl20 /* or */ mit ]; description = "Facilitating high-level interactions between wasm modules and JavaScript"; - maintainers = with maintainers; [ ma27 nitsky rizary ]; + maintainers = with maintainers; [ nitsky rizary ]; mainProgram = "wasm-bindgen"; }; } diff --git a/pkgs/games/gamehub/default.nix b/pkgs/games/gamehub/default.nix new file mode 100644 index 000000000000..87796d58c732 --- /dev/null +++ b/pkgs/games/gamehub/default.nix @@ -0,0 +1,67 @@ +{ stdenv +, lib +, fetchFromGitHub +, meson +, ninja +, vala +, pkg-config +, desktop-file-utils +, glib +, gtk3 +, glib-networking +, libgee +, libsoup +, json-glib +, sqlite +, webkitgtk +, libmanette +, libXtst +, wrapGAppsHook +}: + +stdenv.mkDerivation rec { + pname = "GameHub"; + version = "0.16.3-2"; + + src = fetchFromGitHub { + owner = "tkashkin"; + repo = pname; + rev = "${version}-master"; + hash = "sha256-dBGzXwDO9BvnEIcdfqlGnMzUdBqaVA96Ds0fY6eukes="; + }; + + nativeBuildInputs = [ + desktop-file-utils + meson + ninja + pkg-config + vala + wrapGAppsHook + ]; + + buildInputs = [ + glib + glib-networking + gtk3 + json-glib + libgee + libmanette + libsoup + libXtst + sqlite + webkitgtk + ]; + + meta = with lib; { + homepage = "https://tkashkin.github.io/projects/gamehub"; + description = "Unified library for all your games"; + longDescription = '' + GameHub is a unified library for all your games. It allows you to store + your games from different platforms into one program to make it easier + for you to manage your games. + ''; + maintainers = with maintainers; [ pasqui23 ]; + license = with licenses; [ gpl3Only ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/games/pokete/default.nix b/pkgs/games/pokete/default.nix new file mode 100644 index 000000000000..9d4469e1705c --- /dev/null +++ b/pkgs/games/pokete/default.nix @@ -0,0 +1,54 @@ +{ lib +, python3 +, fetchFromGitHub +, testers +, pokete +}: + +python3.pkgs.buildPythonApplication rec { + pname = "pokete"; + version = "0.7.2"; + + format = "other"; + + src = fetchFromGitHub { + owner = "lxgr-linux"; + repo = "pokete"; + rev = version; + sha256 = "sha256-P6007qY6MsnQH4LGiNPoKCUt3+YI0OinKFdosaj3Wrc="; + }; + + pythonPath = with python3.pkgs; [ + scrap-engine + pynput + ]; + + buildPhase = '' + ${python3.interpreter} -O -m compileall . + ''; + + installPhase = '' + mkdir -p $out/share/pokete + cp -r assets pokete_classes pokete_data mods *.py $out/share/pokete/ + mkdir -p $out/bin + ln -s $out/share/pokete/pokete.py $out/bin/pokete + ''; + + postFixup = '' + wrapPythonProgramsIn $out/share/pokete "$pythonPath" + ''; + + passthru.tests = { + pokete-version = testers.testVersion { + package = pokete; + command = "pokete --help"; + }; + }; + + meta = with lib; { + description = "A terminal based Pokemon like game"; + homepage = "https://lxgr-linux.github.io/pokete"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ fgaz ]; + }; +} diff --git a/pkgs/servers/documize-community/default.nix b/pkgs/servers/documize-community/default.nix index 66ba25f8bf4b..3a49ad012ff5 100644 --- a/pkgs/servers/documize-community/default.nix +++ b/pkgs/servers/documize-community/default.nix @@ -33,7 +33,7 @@ buildGoModule rec { meta = with lib; { description = "Open source Confluence alternative for internal & external docs built with Golang + EmberJS"; license = licenses.agpl3; - maintainers = with maintainers; [ ma27 elseym ]; + maintainers = with maintainers; [ elseym ]; mainProgram = "documize"; homepage = "https://www.documize.com/"; }; diff --git a/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix b/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix index 875db1777fba..a171051223bc 100644 --- a/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix +++ b/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix @@ -21,6 +21,6 @@ buildGoModule rec { inherit (src.meta) homepage; description = "A dnsmasq exporter for Prometheus"; license = licenses.asl20; - maintainers = with maintainers; [ willibutz globin ma27 ]; + maintainers = with maintainers; [ willibutz globin ]; }; } diff --git a/pkgs/servers/web-apps/hedgedoc/default.nix b/pkgs/servers/web-apps/hedgedoc/default.nix index c38aac202d21..92f1713372ff 100644 --- a/pkgs/servers/web-apps/hedgedoc/default.nix +++ b/pkgs/servers/web-apps/hedgedoc/default.nix @@ -116,7 +116,7 @@ mkYarnPackage rec { description = "Realtime collaborative markdown notes on all platforms"; license = licenses.agpl3; homepage = "https://hedgedoc.org"; - maintainers = with maintainers; [ willibutz ma27 globin ]; + maintainers = with maintainers; [ willibutz globin ]; platforms = platforms.linux; }; } diff --git a/pkgs/shells/zsh/default.nix b/pkgs/shells/zsh/default.nix index e5967ac1f78b..7e177a1744cd 100644 --- a/pkgs/shells/zsh/default.nix +++ b/pkgs/shells/zsh/default.nix @@ -19,6 +19,7 @@ in stdenv.mkDerivation { pname = "zsh"; inherit version; + outputs = [ "out" "doc" "info" "man" ]; src = fetchurl { url = "mirror://sourceforge/zsh/zsh-${version}.tar.xz"; @@ -50,9 +51,8 @@ stdenv.mkDerivation { checkFlags = map (T: "TESTNUM=${T}") (lib.stringToCharacters "ABCDEVW"); # XXX: think/discuss about this, also with respect to nixos vs nix-on-X - postInstall = lib.optionalString stdenv.isLinux '' + postInstall = '' make install.info install.html - '' + '' mkdir -p $out/etc/ cat > $out/etc/zprofile < /dev/null && pwd ) # Version of Pulumi from # https://www.pulumi.com/docs/get-started/install/versions/ -VERSION="3.31.0" +VERSION="3.34.1" # An array of plugin names. The respective repository inside Pulumi's # Github organization is called pulumi-$name by convention. @@ -109,8 +109,6 @@ function genSrcs() { local tmpdir tmpdir="$(mktemp -d)" - local i=0 - for plugVers in "${plugins[@]}"; do local plug=${plugVers%=*} local version=${plugVers#*=} @@ -118,7 +116,6 @@ function genSrcs() { # https://github.com/pulumi/pulumi/blob/06d4dde8898b2a0de2c3c7ff8e45f97495b89d82/pkg/workspace/plugins.go#L197 local url="https://api.pulumi.com/releases/plugins/pulumi-resource-${plug}-v${version}-${1}-${2}.tar.gz" genSrc "${url}" "${plug}" "${tmpdir}" & - ((++i)) done wait diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix index 9d046e7aff48..ae0a38b6d316 100644 --- a/pkgs/tools/misc/diffoscope/default.nix +++ b/pkgs/tools/misc/diffoscope/default.nix @@ -125,7 +125,7 @@ python3Packages.buildPythonApplication rec { ''; homepage = "https://diffoscope.org/"; license = licenses.gpl3Plus; - maintainers = with maintainers; [ dezgeg ma27 danielfullmer ]; + maintainers = with maintainers; [ dezgeg danielfullmer ]; platforms = platforms.unix; }; } diff --git a/pkgs/tools/misc/docker-ls/default.nix b/pkgs/tools/misc/docker-ls/default.nix index a56107ebce13..230887ffd09f 100644 --- a/pkgs/tools/misc/docker-ls/default.nix +++ b/pkgs/tools/misc/docker-ls/default.nix @@ -22,7 +22,7 @@ buildGoModule rec { ''; homepage = "https://github.com/mayflower/docker-ls"; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; platforms = docker.meta.platforms; license = licenses.mit; }; diff --git a/pkgs/tools/misc/mongodb-tools/default.nix b/pkgs/tools/misc/mongodb-tools/default.nix index 4ede64b83aa1..45e9a08a356f 100644 --- a/pkgs/tools/misc/mongodb-tools/default.nix +++ b/pkgs/tools/misc/mongodb-tools/default.nix @@ -1,58 +1,50 @@ -{ lib -, buildGoPackage -, fetchFromGitHub -, openssl -, pkg-config -, libpcap -}: +{ lib, buildGoModule, fetchFromGitHub, openssl, pkg-config, libpcap }: -let - tools = [ - "bsondump" - "mongoimport" - "mongoexport" - "mongodump" - "mongorestore" - "mongostat" - "mongofiles" - "mongotop" - ]; +buildGoModule rec { + pname = "mongo-tools"; version = "100.5.3"; -in buildGoPackage { - pname = "mongo-tools"; - inherit version; - - goPackagePath = "github.com/mongodb/mongo-tools"; - subPackages = tools; - src = fetchFromGitHub { - rev = version; owner = "mongodb"; repo = "mongo-tools"; + rev = version; sha256 = "sha256-8RkpBCFVxKVsu4h2z+rhlwvYfbSDHZUg8erO4+2GRbw="; }; + vendorSha256 = null; + nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl libpcap ]; # Mongodb incorrectly names all of their binaries main # Let's work around this with our own installer - buildPhase = '' - # move vendored codes so nixpkgs go builder could find it - runHook preBuild + buildPhase = + let + tools = [ + "bsondump" + "mongodump" + "mongoexport" + "mongofiles" + "mongoimport" + "mongorestore" + "mongostat" + "mongotop" + ]; in + '' + # move vendored codes so nixpkgs go builder could find it + runHook preBuild - ${lib.concatMapStrings (t: '' - go build -o "$out/bin/${t}" -tags ssl -ldflags "-s -w" $goPackagePath/${t}/main - '') tools} + ${lib.concatMapStrings (t: '' + go build -o "$out/bin/${t}" -tags ssl -ldflags "-s -w" ./${t}/main + '') tools} - runHook postBuild - ''; + runHook postBuild + ''; meta = { homepage = "https://github.com/mongodb/mongo-tools"; description = "Tools for the MongoDB"; - maintainers = with lib.maintainers; [ bryanasdev000 ]; license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ bryanasdev000 ]; }; } diff --git a/pkgs/tools/misc/termtosvg/default.nix b/pkgs/tools/misc/termtosvg/default.nix index a89ed808c8b1..a4e624f18f31 100644 --- a/pkgs/tools/misc/termtosvg/default.nix +++ b/pkgs/tools/misc/termtosvg/default.nix @@ -15,6 +15,6 @@ python3Packages.buildPythonApplication rec { homepage = "https://nbedos.github.io/termtosvg/"; description = "Record terminal sessions as SVG animations"; license = licenses.bsd3; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/tools/misc/unclutter-xfixes/default.nix b/pkgs/tools/misc/unclutter-xfixes/default.nix index 710932af5e92..d04846637a0c 100644 --- a/pkgs/tools/misc/unclutter-xfixes/default.nix +++ b/pkgs/tools/misc/unclutter-xfixes/default.nix @@ -16,6 +16,9 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkg-config asciidoc libxslt docbook_xsl ]; buildInputs = [ xlibsWrapper libev libXi libXfixes ]; + prePatch = '' + substituteInPlace Makefile --replace 'PKG_CONFIG =' 'PKG_CONFIG ?=' + ''; makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; installFlags = [ "PREFIX=$(out)" ]; diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix index faf4b558ad64..fd038d7acb12 100644 --- a/pkgs/tools/misc/youtube-dl/default.nix +++ b/pkgs/tools/misc/youtube-dl/default.nix @@ -75,7 +75,7 @@ buildPythonPackage rec { it however you like. ''; license = licenses.publicDomain; - maintainers = with maintainers; [ bluescreen303 fpletz ma27 ]; + maintainers = with maintainers; [ bluescreen303 fpletz ]; platforms = with platforms; linux ++ darwin; }; } diff --git a/pkgs/tools/misc/yubikey-manager/default.nix b/pkgs/tools/misc/yubikey-manager/default.nix index f7dc1fc54f2e..de8c6777ae61 100644 --- a/pkgs/tools/misc/yubikey-manager/default.nix +++ b/pkgs/tools/misc/yubikey-manager/default.nix @@ -2,14 +2,14 @@ python3Packages.buildPythonPackage rec { pname = "yubikey-manager"; - version = "4.0.8"; + version = "4.0.9"; format = "pyproject"; src = fetchFromGitHub { repo = "yubikey-manager"; - rev = version; + rev = "refs/tags/${version}"; owner = "Yubico"; - sha256 = "sha256-OszXOu/NhoX4WutsT4Z1LsY54KTOWRKt13yDo2fzDbA="; + sha256 = "sha256-MwM/b1QP6pkyBjz/r6oC4sW1mKC0CKMay45a0wCktk0="; }; postPatch = '' diff --git a/pkgs/tools/networking/bandwhich/default.nix b/pkgs/tools/networking/bandwhich/default.nix index 35d342beb1a9..07483f24e226 100644 --- a/pkgs/tools/networking/bandwhich/default.nix +++ b/pkgs/tools/networking/bandwhich/default.nix @@ -37,7 +37,7 @@ rustPlatform.buildRustPackage rec { ''; homepage = "https://github.com/imsnif/bandwhich"; license = licenses.mit; - maintainers = with maintainers; [ Br1ght0ne ma27 SuperSandro2000 ]; + maintainers = with maintainers; [ Br1ght0ne SuperSandro2000 ]; platforms = platforms.unix; }; } diff --git a/pkgs/tools/networking/zerotierone/default.nix b/pkgs/tools/networking/zerotierone/default.nix index 5a9239e2737c..e06d8bb2f41d 100644 --- a/pkgs/tools/networking/zerotierone/default.nix +++ b/pkgs/tools/networking/zerotierone/default.nix @@ -15,13 +15,13 @@ let pname = "zerotierone"; - version = "1.8.9"; + version = "1.10.0"; src = fetchFromGitHub { owner = "zerotier"; repo = "ZeroTierOne"; rev = version; - sha256 = "sha256-N1VqzjaFJRJiSG4qHqRy4Fs8TlkUqyDoq0/3JQdGwfA="; + sha256 = "sha256-2lxXgQArHTFCuSBbKRSaLka42p2INLDg0z3TZ+J5msc="; }; in stdenv.mkDerivation { inherit pname version src; @@ -29,7 +29,7 @@ in stdenv.mkDerivation { cargoDeps = rustPlatform.fetchCargoTarball { src = "${src}/zeroidc"; name = "${pname}-${version}"; - sha256 = "sha256-PDsJtz279P2IpgiL0T92IbcANeGSUnGKhEH1dj9VtbM="; + sha256 = "sha256-Q9uBUD5xxo5gcTQTedVqQv+Z7B1TTPWtaTSuWo7WEPM="; }; postPatch = "cp ${src}/zeroidc/Cargo.lock Cargo.lock"; @@ -39,7 +39,8 @@ in stdenv.mkDerivation { --replace '/usr/bin/ronn' '${buildPackages.ronn}/bin/ronn' \ substituteInPlace ./make-linux.mk \ - --replace 'armv5' 'armv6' + --replace '-march=armv6zk' "" \ + --replace '-mcpu=arm1176jzf-s' "" ''; nativeBuildInputs = [ diff --git a/pkgs/tools/nix/statix/default.nix b/pkgs/tools/nix/statix/default.nix index d25f51ae5aa2..e4e3cb857503 100644 --- a/pkgs/tools/nix/statix/default.nix +++ b/pkgs/tools/nix/statix/default.nix @@ -5,16 +5,16 @@ rustPlatform.buildRustPackage rec { # also update version of the vim plugin in # pkgs/applications/editors/vim/plugins/overrides.nix # the version can be found in flake.nix of the source code - version = "0.5.4"; + version = "0.5.6"; src = fetchFromGitHub { owner = "nerdypepper"; repo = pname; rev = "v${version}"; - sha256 = "sha256-9208bR3awxXR1MSh9HbsKeen5V4r4hPuJFkK/CMJRfg="; + sha256 = "sha256-OQk80eTUufVUbYvZ38el2lmkgkU+5gr0hLTrBvzIp4A="; }; - cargoSha256 = "sha256-f1/PMbXUiqjFI8Y0mvgEyNqGGYqGq3nV094mg1aZIHM="; + cargoSha256 = "sha256-j+FcV5JtO66Aa0ncIUfjuWtqnMmFb7zW7rNXttYBUU4="; buildFeatures = lib.optional withJson "json"; diff --git a/pkgs/tools/security/gitls/default.nix b/pkgs/tools/security/gitls/default.nix new file mode 100644 index 000000000000..f6ef854ce810 --- /dev/null +++ b/pkgs/tools/security/gitls/default.nix @@ -0,0 +1,34 @@ +{ lib +, buildGoModule +, gitls +, fetchFromGitHub +, testers +}: + +buildGoModule rec { + pname = "gitls"; + version = "1.0.3"; + + src = fetchFromGitHub { + owner = "hahwul"; + repo = pname; + rev = "v${version}"; + hash = "sha256-snoWnq+xmaxWzFthhO/gOYQDUMbpIZR9VkqcPaHzS6g="; + }; + + vendorSha256 = "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="; + + passthru.tests.version = testers.testVersion { + package = gitls; + command = "gitls -version"; + version = "v${version}"; + }; + + meta = with lib; { + description = "Tools to enumerate git repository URL"; + homepage = "https://github.com/hahwul/gitls"; + changelog = "https://github.com/hahwul/gitls/releases/tag/v${version}"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/tools/security/pwdsafety/default.nix b/pkgs/tools/security/pwdsafety/default.nix index 2a6ed328e49e..ce4e149e7700 100644 --- a/pkgs/tools/security/pwdsafety/default.nix +++ b/pkgs/tools/security/pwdsafety/default.nix @@ -1,20 +1,20 @@ -{ buildGoModule +{ lib +, buildGoModule , fetchFromGitHub -, lib }: buildGoModule rec { pname = "pwdsafety"; - version = "0.1.4"; + version = "0.3"; src = fetchFromGitHub { owner = "edoardottt"; repo = pname; rev = "v${version}"; - sha256 = "1qnkabgc2924qg9x1ij51jq7lnxzcj1ygdp3x4mzi9gl532i191w"; + hash = "sha256-ryMLiehJVZhQ3ZQf4/g7ILeJri78A6z5jfell0pD9E8="; }; - vendorSha256 = "0avm4zwwqv476yrraaf5xkc1lac0mwnmzav5wckifws6r4x3xrsb"; + vendorSha256 = "sha256-b+tWTQUyYDzY2O28hwy5vI6b6S889TCiVh7hQhw/KAc="; meta = with lib; { description = "Command line tool checking password safety"; diff --git a/pkgs/tools/security/sherlock/default.nix b/pkgs/tools/security/sherlock/default.nix new file mode 100644 index 000000000000..7d402fd8f3f0 --- /dev/null +++ b/pkgs/tools/security/sherlock/default.nix @@ -0,0 +1,56 @@ +{ stdenv, lib, fetchFromGitHub, python3, makeWrapper }: +let + pyenv = python3.withPackages (pp: with pp; [ + beautifulsoup4 + certifi + colorama + lxml + pysocks + requests + requests-futures + soupsieve + stem + torrequest + ]); +in +stdenv.mkDerivation rec { + pname = "sherlock"; + version = "0.14.0"; + + src = fetchFromGitHub { + owner = "sherlock-project"; + repo = pname; + rev = "f8566960d461783558b7bcba5c818d9275de492a"; + sha256 = "sha256-6jG/SmsiEL63EcBrx2fcQDYbmMCA+A7Jsc3E4f5NGts="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + postPatch = '' + substituteInPlace sherlock/sherlock.py \ + --replace "os.path.dirname(__file__)" "\"$out/share\"" + ''; + + installPhase = '' + runHook preInstall + mkdir -p $out/bin $out/share + cp ./sherlock/*.py $out/bin/ + cp --recursive ./sherlock/resources/ $out/share + makeWrapper ${pyenv.interpreter} $out/bin/sherlock --add-flags "$out/bin/sherlock.py" + runHook postInstall + ''; + + checkPhase = '' + runHook preCheck + cd $srcRoot/sherlock + ${pyenv.interpreter} -m unittest tests.all.SherlockSiteCoverageTests --verbose + runHook postCheck + ''; + + meta = with lib; { + homepage = "https://sherlock-project.github.io/"; + description = "Hunt down social media accounts by username across social networks"; + license = licenses.mit; + maintainers = with maintainers; [ applePrincess ]; + }; +} diff --git a/pkgs/tools/text/zim-tools/default.nix b/pkgs/tools/text/zim-tools/default.nix new file mode 100644 index 000000000000..319eb47be271 --- /dev/null +++ b/pkgs/tools/text/zim-tools/default.nix @@ -0,0 +1,31 @@ +{ lib, stdenv, fetchFromGitHub +, meson, ninja, pkg-config +, docopt_cpp, file, gumbo, mustache-hpp, zimlib, zlib +, gtest +}: + +stdenv.mkDerivation rec { + pname = "zim-tools"; + version = "3.1.1"; + + src = fetchFromGitHub { + owner = "openzim"; + repo = "zim-tools"; + rev = version; + sha256 = "sha256-xZae1o4L9AdGDqBnFDZniWNM/dLsYRcS0OLWw9+Wecs="; + }; + + nativeBuildInputs = [ meson ninja pkg-config ]; + buildInputs = [ docopt_cpp file gumbo mustache-hpp zimlib zlib ]; + + checkInputs = [ gtest ]; + doCheck = true; + + meta = { + description = "Various ZIM command line tools"; + homepage = "https://github.com/openzim/zim-tools"; + maintainers = with lib.maintainers; [ robbinch ]; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/tools/text/zimwriterfs/default.nix b/pkgs/tools/text/zimwriterfs/default.nix deleted file mode 100644 index 9a7e495df2b8..000000000000 --- a/pkgs/tools/text/zimwriterfs/default.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ lib, stdenv -, fetchFromGitHub - -, autoconf -, automake -, libtool -, pkg-config - -, file -, icu -, gumbo -, xz -, xapian -, zimlib -, zlib -}: - -stdenv.mkDerivation rec { - pname = "zimwriterfs"; - version = "1.0"; - - src = fetchFromGitHub { - owner = "wikimedia"; - repo = "openzim"; - rev = "${pname}-${version}"; - sha256 = "1vkrrq929a8s3m5rri1lg0l2vd0mc9n2fsb2z1g88k4n4j2l6f19"; - }; - - nativeBuildInputs = [ automake autoconf libtool pkg-config ]; - buildInputs = [ file icu gumbo xz zimlib zlib xapian ]; - setSourceRoot = '' - sourceRoot=$(echo */zimwriterfs) - ''; - preConfigure = "./autogen.sh"; - - meta = { - description = "A console tool to create ZIM files"; - homepage = "http://git.wikimedia.org/log/openzim"; - maintainers = with lib.maintainers; [ robbinch ]; - license = lib.licenses.gpl3; - platforms = with lib.platforms; [ linux ]; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index d9014d8384fa..170960f2f91f 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -623,6 +623,7 @@ mapAliases ({ jack2Full = jack2; # moved from top-level 2021-03-14 + jami-client-gnome = throw "jami-client-gnome has been removed: abandoned upstream"; # Added 2022-05-15 jamomacore = throw "jamomacore has been removed: abandoned upstream"; # Added 2020-11-21 jbidwatcher = throw "jbidwatcher was discontinued in march 2021"; # Added 2021-03-15 jbuilder = throw "'jbuilder' has been renamed to/replaced by 'dune_1'"; # Converted to throw 2022-02-22 @@ -1528,6 +1529,7 @@ mapAliases ({ zabbix30 = throw "Zabbix 3.0.x is end of life, see https://www.zabbix.com/documentation/5.0/manual/installation/upgrade/sources for a direct upgrade path to 5.0.x"; # Added 2021-04-07 zdfmediathk = throw "'zdfmediathk' has been renamed to/replaced by 'mediathekview'"; # Converted to throw 2022-02-22 zimreader = throw "zimreader has been removed from nixpkgs as it has been replaced by kiwix-serve and stopped working with modern zimlib versions"; # Added 2021-03-28 + zimwriterfs = throw "zimwriterfs is now part of zim-tools"; # Added 2022-06-10. # TODO(ekleog): add ‘wasm’ alias to ‘ocamlPackages.wasm’ after 19.03 # branch-off diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index edbea9c87074..943f7f9025cf 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2309,6 +2309,8 @@ with pkgs; gitless = callPackage ../applications/version-management/gitless { }; + gitls = callPackage ../tools/security/gitls { }; + gistyc = with python3Packages; toPythonApplication gistyc; gitlint = python3Packages.callPackage ../tools/misc/gitlint { }; @@ -12047,7 +12049,7 @@ with pkgs; zinnia = callPackage ../tools/inputmethods/zinnia { }; tegaki-zinnia-japanese = callPackage ../tools/inputmethods/tegaki-zinnia-japanese { }; - zimwriterfs = callPackage ../tools/text/zimwriterfs { }; + zim-tools = callPackage ../tools/text/zim-tools { }; zld = callPackage ../development/tools/zld { }; @@ -16348,6 +16350,10 @@ with pkgs; spooles = callPackage ../development/libraries/science/math/spooles {}; + spr = callPackage ../development/tools/spr { + inherit (darwin.apple_sdk.frameworks) Security; + }; + spruce = callPackage ../development/tools/misc/spruce {}; sqlc = callPackage ../development/tools/database/sqlc { }; @@ -21886,6 +21892,8 @@ with pkgs; fusionInventory = callPackage ../servers/monitoring/fusion-inventory { }; + gamehub = callPackage ../games/gamehub { }; + gatling = callPackage ../servers/http/gatling { }; gitlab-pages = callPackage ../servers/http/gitlab-pages { }; @@ -26587,6 +26595,8 @@ with pkgs; gjay = callPackage ../applications/audio/gjay { }; + sherlock = callPackage ../tools/security/sherlock { }; + rhythmbox = callPackage ../applications/audio/rhythmbox { }; puddletag = libsForQt5.callPackage ../applications/audio/puddletag { }; @@ -28138,7 +28148,7 @@ with pkgs; canonicaljson; }; - matrix-commander = callPackage ../applications/networking/instant-messengers/matrix-commander { }; + matrix-commander = python3Packages.callPackage ../applications/networking/instant-messengers/matrix-commander { }; matrix-dl = callPackage ../applications/networking/instant-messengers/matrix-dl { }; @@ -30884,7 +30894,7 @@ with pkgs; xdg-user-dirs = callPackage ../tools/X11/xdg-user-dirs { }; xdg-utils = callPackage ../tools/X11/xdg-utils { - w3m = w3m-batch; + w3m = buildPackages.w3m-batch; }; xdgmenumaker = callPackage ../applications/misc/xdgmenumaker { }; @@ -32231,6 +32241,8 @@ with pkgs; target = "server"; }; + pokete = callPackage ../games/pokete { }; + powermanga = callPackage ../games/powermanga { }; prboom-plus = callPackage ../games/prboom-plus { }; @@ -35505,12 +35517,12 @@ with pkgs; btcdeb = callPackage ../applications/blockchains/btcdeb { }; - inherit (callPackage ../applications/networking/instant-messengers/jami { + jami = callPackages ../applications/networking/instant-messengers/jami { # TODO: remove once `udev` is `systemdMinimal` everywhere. udev = systemdMinimal; jack = libjack2; - }) - jami-daemon jami-libclient jami-client-gnome jami-client-qt; + }; + inherit (jami) jami-daemon jami-libclient jami-client-qt; jitsi-meet-electron = callPackage ../applications/networking/instant-messengers/jitsi-meet-electron { electron = electron_17; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 01a47e8360b6..72043221a4db 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9519,6 +9519,8 @@ in { scramp = callPackage ../development/python-modules/scramp { }; + scrap-engine = callPackage ../development/python-modules/scrap-engine { }; + scrapy = callPackage ../development/python-modules/scrapy { }; scrapy-deltafetch = callPackage ../development/python-modules/scrapy-deltafetch { };