diff options
53 files changed, 626 insertions, 437 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index f7a7ce20c708..7d2849e5b60e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2546,6 +2546,16 @@ githubId = 11909469; name = "Fabian Geiselhart"; }; + fabianhauser = { + email = "fabian.nixos@fh2.ch"; + github = "fabianhauser"; + githubId = 368799; + name = "Fabian Hauser"; + keys = [{ + longkeyid = "rsa4096/0x8A52A140BEBF7D2C"; + fingerprint = "50B7 11F4 3DFD 2018 DCE6 E8D0 8A52 A140 BEBF 7D2C"; + }]; + }; fadenb = { email = "tristan.helmich+nixos@gmail.com"; github = "fadenb"; @@ -3867,6 +3877,12 @@ githubId = 11947756; name = "Julien Dehos"; }; + julm = { + email = "julm+nix@sourcephile.fr"; + github = "ju1m"; + githubId = 21160136; + name = "Julien Moutinho"; + }; jumper149 = { email = "felixspringer149@gmail.com"; github = "jumper149"; diff --git a/nixos/doc/manual/release-notes/rl-2009.xml b/nixos/doc/manual/release-notes/rl-2009.xml index 436611253385..d1eecd65085c 100644 --- a/nixos/doc/manual/release-notes/rl-2009.xml +++ b/nixos/doc/manual/release-notes/rl-2009.xml @@ -94,6 +94,22 @@ services.mysql.initialScript = pkgs.writeText "mariadb-init.sql" '' When MariaDB data directory is just upgraded (not initialized), the users are not created or modified. </para> </listitem> + <listitem> + <para> + MySQL server is now started with additional systemd sandbox/hardening options for better security. The PrivateTmp, ProtectHome, and ProtectSystem options + may be problematic when MySQL is attempting to read from or write to your filesystem anywhere outside of its own state directory, for example when + calling <literal>LOAD DATA INFILE or SELECT * INTO OUTFILE</literal>. In this scenario a variant of the following may be required: + - allow MySQL to read from /home and /tmp directories when using <literal>LOAD DATA INFILE</literal> +<programlisting> +systemd.services.mysql.serviceConfig.ProtectHome = lib.mkForce "read-only"; +</programlisting> + - allow MySQL to write to custom folder <literal>/var/data</literal> when using <literal>SELECT * INTO OUTFILE</literal>, assuming the mysql user has write + access to <literal>/var/data</literal> +<programlisting> +systemd.services.mysql.serviceConfig.ReadWritePaths = [ "/var/data" ]; +</programlisting> + </para> + </listitem> </itemizedlist> </section> diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index c82c70a7b869..448d432853d3 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -126,6 +126,7 @@ ./programs/gpaste.nix ./programs/gnupg.nix ./programs/gphoto2.nix + ./programs/hamster.nix ./programs/iftop.nix ./programs/iotop.nix ./programs/java.nix diff --git a/nixos/modules/programs/hamster.nix b/nixos/modules/programs/hamster.nix new file mode 100644 index 000000000000..ddf26a22fb53 --- /dev/null +++ b/nixos/modules/programs/hamster.nix @@ -0,0 +1,15 @@ +{ config, lib, pkgs, ... }: + +with lib; + +{ + meta.maintainers = maintainers.fabianhauser; + + options.programs.hamster.enable = + mkEnableOption "Whether to enable hamster time tracking."; + + config = lib.mkIf config.programs.hamster.enable { + environment.systemPackages = [ pkgs.hamster ]; + services.dbus.packages = [ pkgs.hamster ]; + }; +} diff --git a/nixos/modules/services/databases/mysql.nix b/nixos/modules/services/databases/mysql.nix index 51885881cf73..2e8c5b7640b2 100644 --- a/nixos/modules/services/databases/mysql.nix +++ b/nixos/modules/services/databases/mysql.nix @@ -334,7 +334,8 @@ in environment.etc."my.cnf".source = cfg.configFile; systemd.tmpfiles.rules = [ - "d '${cfg.dataDir}' 0700 ${cfg.user} mysql -" + "d '${cfg.dataDir}' 0700 ${cfg.user} mysql - -" + "z '${cfg.dataDir}' 0700 ${cfg.user} mysql - -" ]; systemd.services.mysql = let @@ -357,21 +358,17 @@ in preStart = if isMariaDB then '' if ! test -e ${cfg.dataDir}/mysql; then ${mysql}/bin/mysql_install_db --defaults-file=/etc/my.cnf ${mysqldOptions} - touch /tmp/mysql_init + touch ${cfg.dataDir}/mysql_init fi '' else '' if ! test -e ${cfg.dataDir}/mysql; then ${mysql}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} --initialize-insecure - touch /tmp/mysql_init + touch ${cfg.dataDir}/mysql_init fi ''; serviceConfig = { - User = cfg.user; - Group = "mysql"; Type = if hasNotify then "notify" else "simple"; - RuntimeDirectory = "mysqld"; - RuntimeDirectoryMode = "0755"; Restart = "on-abort"; RestartSec = "5s"; # The last two environment variables are used for starting Galera clusters @@ -398,7 +395,7 @@ in done ''} - if [ -f /tmp/mysql_init ] + if [ -f ${cfg.dataDir}/mysql_init ] then ${concatMapStrings (database: '' # Create initial databases @@ -452,7 +449,7 @@ in cat ${toString cfg.initialScript} | ${mysql}/bin/mysql -u root -N ''} - rm /tmp/mysql_init + rm ${cfg.dataDir}/mysql_init fi ${optionalString (cfg.ensureDatabases != []) '' @@ -476,6 +473,35 @@ in # ensureDatbases & ensureUsers depends on this script being run as root # when the user has secured their mysql install "+${setupScript}"; + # User and group + User = cfg.user; + Group = "mysql"; + # Runtime directory and mode + RuntimeDirectory = "mysqld"; + RuntimeDirectoryMode = "0755"; + # Access write directories + ReadWritePaths = [ cfg.dataDir ]; + # Capabilities + CapabilityBoundingSet = ""; + # Security + NoNewPrivileges = true; + # Sandboxing + ProtectSystem = "strict"; + ProtectHome = true; + PrivateTmp = true; + PrivateDevices = true; + ProtectHostname = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectControlGroups = true; + RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ]; + LockPersonality = true; + MemoryDenyWriteExecute = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + PrivateMounts = true; + # System Call Filtering + SystemCallArchitectures = "native"; }; }; diff --git a/nixos/modules/services/hardware/fwupd.nix b/nixos/modules/services/hardware/fwupd.nix index e586af25c2b1..222ac8e487eb 100644 --- a/nixos/modules/services/hardware/fwupd.nix +++ b/nixos/modules/services/hardware/fwupd.nix @@ -6,6 +6,23 @@ with lib; let cfg = config.services.fwupd; + + customEtc = { + "fwupd/daemon.conf" = { + source = pkgs.writeText "daemon.conf" '' + [fwupd] + BlacklistDevices=${lib.concatStringsSep ";" cfg.blacklistDevices} + BlacklistPlugins=${lib.concatStringsSep ";" cfg.blacklistPlugins} + ''; + }; + "fwupd/uefi.conf" = { + source = pkgs.writeText "uefi.conf" '' + [uefi] + OverrideESPMountPoint=${config.boot.loader.efi.efiSysMountPoint} + ''; + }; + }; + originalEtc = let mkEtcFile = n: nameValuePair n { source = "${cfg.package}/etc/${n}"; }; @@ -96,22 +113,8 @@ in { environment.systemPackages = [ cfg.package ]; - environment.etc = { - "fwupd/daemon.conf" = { - source = pkgs.writeText "daemon.conf" '' - [fwupd] - BlacklistDevices=${lib.concatStringsSep ";" cfg.blacklistDevices} - BlacklistPlugins=${lib.concatStringsSep ";" cfg.blacklistPlugins} - ''; - }; - "fwupd/uefi.conf" = { - source = pkgs.writeText "uefi.conf" '' - [uefi] - OverrideESPMountPoint=${config.boot.loader.efi.efiSysMountPoint} - ''; - }; - - } // originalEtc // extraTrustedKeys // testRemote; + # customEtc overrides some files from the package + environment.etc = originalEtc // customEtc // extraTrustedKeys // testRemote; services.dbus.packages = [ cfg.package ]; diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix index 99892a28115c..a8e51fc09014 100644 --- a/nixos/modules/system/boot/systemd.nix +++ b/nixos/modules/system/boot/systemd.nix @@ -826,8 +826,13 @@ in config = { warnings = concatLists (mapAttrsToList (name: service: - optional (service.serviceConfig.Type or "" == "oneshot" && service.serviceConfig.Restart or "no" != "no") - "Service ‘${name}.service’ with ‘Type=oneshot’ must have ‘Restart=no’") cfg.services); + let + type = service.serviceConfig.Type or ""; + restart = service.serviceConfig.Restart or "no"; + in optional + (type == "oneshot" && (restart == "always" || restart == "on-success")) + "Service '${name}.service' with 'Type=oneshot' cannot have 'Restart=always' or 'Restart=on-success'") + cfg.services); system.build.units = cfg.units; diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix index c5661f3336f7..acf373fc41af 100644 --- a/pkgs/applications/audio/ft2-clone/default.nix +++ b/pkgs/applications/audio/ft2-clone/default.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation rec { pname = "ft2-clone"; - version = "1.24"; + version = "1.25_fix"; src = fetchFromGitHub { owner = "8bitbubsy"; repo = "ft2-clone"; rev = "v${version}"; - sha256 = "0wb7xsc2m9f4q5zsf5ai6h6c0558lkziv30b5a8ic64wp0layr6k"; + sha256 = "0q2mcp3xpgwilmiwzr9nnxlyg9c1kynh6cxzlyd95n520j00s6i7"; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/applications/graphics/krop/default.nix b/pkgs/applications/graphics/krop/default.nix index 2337dfb370ef..ee4906769770 100644 --- a/pkgs/applications/graphics/krop/default.nix +++ b/pkgs/applications/graphics/krop/default.nix @@ -2,22 +2,24 @@ python3Packages.buildPythonApplication rec { pname = "krop"; - version = "0.5.1"; + version = "0.6.0"; src = fetchFromGitHub { owner = "arminstraub"; repo = pname; rev = "v${version}"; - sha256 = "0b1zqpks4vzq7sfhf7r9qrshr77f1ncj18x7d0fa3g29rxa42dcr"; + sha256 = "1ygzc7vlwszqmsd3v1dsqp1dpsn6inx7g8gck63alvf88dbn8m3s"; }; propagatedBuildInputs = with python3Packages; [ pyqt5 pypdf2 poppler-qt5 - libsForQt5.poppler ghostscript ]; + buildInputs = [ + libsForQt5.poppler + ]; nativeBuildInputs = [ qt5.wrapQtAppsHook ]; makeWrapperArgs = [ diff --git a/pkgs/applications/misc/hamster/default.nix b/pkgs/applications/misc/hamster/default.nix new file mode 100644 index 000000000000..57b36e00436e --- /dev/null +++ b/pkgs/applications/misc/hamster/default.nix @@ -0,0 +1,62 @@ +{ stdenv, fetchFromGitHub, python3Packages, intltool, glib, itstool +, wrapGAppsHook, gobject-introspection, pango, gdk-pixbuf, atk, wafHook }: + +python3Packages.buildPythonApplication rec { + pname = "hamster"; + version = "3.0.2"; + + format = "other"; + + src = fetchFromGitHub { + owner = "projecthamster"; + repo = pname; + rev = "v${version}"; + sha256 = "09ikiwc2izjvwqbbyp8knn190x5y4anwslkmb9k2h3r3jwrg2vd2"; + }; + + nativeBuildInputs = [ + python3Packages.setuptools + wrapGAppsHook + intltool + itstool + wafHook + glib + gobject-introspection + ]; + + buildInputs = [ + pango + gdk-pixbuf + atk + ]; + + propagatedBuildInputs = with python3Packages; [ + pygobject3 + pycairo + pyxdg + dbus-python + ]; + + # Setup hooks have trouble with strict deps. + # https://github.com/NixOS/nixpkgs/issues/56943 + strictDeps = false; + + dontWrapGApps = true; + + # Arguments to be passed to `makeWrapper`, only used by buildPython* + preFixup = '' + makeWrapperArgs+=("''${gappsWrapperArgs[@]}") + ''; + + postFixup = '' + wrapPythonProgramsIn $out/libexec "$out $pythonPath" + ''; + + meta = with stdenv.lib; { + description = "Time tracking application"; + homepage = "http://projecthamster.org/"; + license = licenses.gpl3Plus; + platforms = platforms.all; + maintainers = [ maintainers.fabianhauser ]; + }; +} diff --git a/pkgs/applications/misc/opentx/default.nix b/pkgs/applications/misc/opentx/default.nix index f20d5ccdc4ac..a117ecc06a9c 100644 --- a/pkgs/applications/misc/opentx/default.nix +++ b/pkgs/applications/misc/opentx/default.nix @@ -6,13 +6,13 @@ mkDerivation rec { pname = "opentx"; - version = "2.3.7"; + version = "2.3.9"; src = fetchFromGitHub { owner = "opentx"; repo = "opentx"; rev = "release/${version}"; - sha256 = "1wl3bk7s8h20dfys1hblzxc0br9zlwhcqlghgsbn81ki0xb6jmkf"; + sha256 = "0kh3jdy1pgvns8lrncf61ayaq0hmsv41j8xv4r4rf17zyvjl0qph"; }; enableParallelBuilding = true; diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json index acb63ff7454f..f9a5ebdbebe3 100644 --- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json +++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json @@ -2,7 +2,7 @@ "name": "riot-desktop", "productName": "Riot", "main": "src/electron-main.js", - "version": "1.6.4", + "version": "1.6.5", "description": "A feature-rich client for Matrix.org", "author": "New Vector Ltd.", "repository": { @@ -48,7 +48,7 @@ "find-npm-prefix": "^1.0.2", "fs-extra": "^8.1.0", "glob": "^7.1.6", - "matrix-js-sdk": "6.2.1", + "matrix-js-sdk": "6.2.2", "mkdirp": "^1.0.3", "needle": "^2.3.2", "node-pre-gyp": "^0.14.0", diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix index e6573a508184..30e1c9464755 100644 --- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix +++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix @@ -3154,11 +3154,11 @@ }; } { - name = "matrix_js_sdk___matrix_js_sdk_6.2.1.tgz"; + name = "matrix_js_sdk___matrix_js_sdk_6.2.2.tgz"; path = fetchurl { - name = "matrix_js_sdk___matrix_js_sdk_6.2.1.tgz"; - url = "https://registry.yarnpkg.com/matrix-js-sdk/-/matrix-js-sdk-6.2.1.tgz"; - sha1 = "d5f76491a650c0a36fcdd078cff59f2da96edd7b"; + name = "matrix_js_sdk___matrix_js_sdk_6.2.2.tgz"; + url = "https://registry.yarnpkg.com/matrix-js-sdk/-/matrix-js-sdk-6.2.2.tgz"; + sha1 = "103d951f61945217b110962f55ae43996756f615"; }; } { diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix index 64652afd7e4d..acdf40e772ea 100644 --- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix +++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix @@ -8,12 +8,12 @@ let executableName = "riot-desktop"; - version = "1.6.4"; + version = "1.6.5"; src = fetchFromGitHub { owner = "vector-im"; repo = "riot-desktop"; rev = "v${version}"; - sha256 = "05z7mggsp33m7ljl4ibk9r4dccglbsc2arp4i3dknq364zdga3m2"; + sha256 = "1snmfn98z63a8ahh5c7y7h00i8qsdq6wsnidmjjrkzcz3mchfq60"; }; electron = electron_7; diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix index 942917a46757..c08d1dbe0332 100644 --- a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix +++ b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix @@ -12,11 +12,11 @@ let in stdenv.mkDerivation rec { pname = "riot-web"; - version = "1.6.4"; + version = "1.6.5"; src = fetchurl { url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz"; - sha256 = "0n99ivpfsz48zl0nibhkmli26sks2lpd2h0iph73f2w1p7zw1ln2"; + sha256 = "0mx7ql76cbivc0d9gzix51bc1rdp9yg9vjx05mbf5r9sxrwmihz5"; }; installPhase = '' diff --git a/pkgs/applications/networking/ssb/patchwork/default.nix b/pkgs/applications/networking/ssb-patchwork/default.nix index db33e7e6bb21..db33e7e6bb21 100644 --- a/pkgs/applications/networking/ssb/patchwork/default.nix +++ b/pkgs/applications/networking/ssb-patchwork/default.nix diff --git a/pkgs/applications/networking/ssb/patchwork-classic/default.nix b/pkgs/applications/networking/ssb/patchwork-classic/default.nix deleted file mode 100644 index 74a02f47c3bf..000000000000 --- a/pkgs/applications/networking/ssb/patchwork-classic/default.nix +++ /dev/null @@ -1,106 +0,0 @@ -{ stdenv, fetchurl, lib, makeWrapper, - # build dependencies - alsaLib, atk, cairo, cups, dbus, expat, fontconfig, - freetype, gdk-pixbuf, glib, gnome2, nspr, nss, xorg, - glibc, systemd -}: - -stdenv.mkDerivation { - - version = "2.12.0"; - - pname = "patchwork-classic"; - - src = fetchurl { - url = "https://github.com/ssbc/patchwork-classic-electron/releases/download/v2.12.0/ssb-patchwork-electron_2.12.0_linux-amd64.deb"; - sha256 = "1rvp07cgqwv7ac319p0qwpfxd7l8f53m1rlvvig7qf7q23fnmbsj"; - }; - - sourceRoot = "."; - - unpackCmd = '' - ar p "$src" data.tar.xz | tar xJ - ''; - - dontBuild = true; - - nativeBuildInputs = [ makeWrapper ]; - - installPhase = '' - mkdir -p $out/bin - cp -R usr/share opt $out/ - - # fix the path in the desktop file - substituteInPlace \ - $out/share/applications/ssb-patchwork-electron.desktop \ - --replace /opt/ $out/opt/ - - # symlink the binary to bin/ - ln -s $out/opt/ssb-patchwork-electron/ssb-patchwork-electron $out/bin/patchwork-classic - ''; - - - preFixup = let - packages = [ - alsaLib - atk - cairo - cups - dbus - expat - fontconfig - freetype - gdk-pixbuf - glib - gnome2.GConf - gnome2.gtk - gnome2.pango - nspr - nss - xorg.libX11 - xorg.libXScrnSaver - xorg.libXcomposite - xorg.libXcursor - xorg.libXdamage - xorg.libXext - xorg.libXfixes - xorg.libXi - xorg.libXrandr - xorg.libXrender - xorg.libXtst - stdenv.cc.cc.lib - stdenv.cc.cc - glibc - ]; - libPathNative = lib.makeLibraryPath packages; - libPath64 = lib.makeSearchPathOutput "lib" "lib64" packages; - libPath = "${libPathNative}:${libPath64}"; - in '' - # patch executable - patchelf \ - --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "${libPath}:$out/opt/ssb-patchwork-electron" \ - $out/opt/ssb-patchwork-electron/ssb-patchwork-electron - - # patch libnode - patchelf \ - --set-rpath "${libPath}" \ - $out/opt/ssb-patchwork-electron/libnode.so - - # libffmpeg is for some reason not executable - chmod a+x $out/opt/ssb-patchwork-electron/libffmpeg.so - - # fix missing libudev - ln -s ${systemd.lib}/lib/libudev.so.1 $out/opt/ssb-patchwork-electron/libudev.so.1 - wrapProgram $out/opt/ssb-patchwork-electron/ssb-patchwork-electron \ - --prefix LD_LIBRARY_PATH : $out/opt/ssb-patchwork-electron - ''; - - meta = with stdenv.lib; { - description = "Electron wrapper for Patchwork Classic: run as a desktop app outside the browser"; - homepage = "https://github.com/ssbc/patchwork-classic-electron"; - license = licenses.gpl3; - maintainers = with maintainers; [ mrVanDalo ]; - platforms = platforms.linux; - }; -} diff --git a/pkgs/applications/science/electronics/verilator/default.nix b/pkgs/applications/science/electronics/verilator/default.nix index 189e09f8241b..0613e22bbda0 100644 --- a/pkgs/applications/science/electronics/verilator/default.nix +++ b/pkgs/applications/science/electronics/verilator/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "verilator"; - version = "4.034"; + version = "4.036"; src = fetchurl { url = "https://www.veripool.org/ftp/${pname}-${version}.tgz"; - sha256 = "02xqvl9ic21jpda0xldh4ihqwl4ss8389s8fklgx5d98xq37pval"; + sha256 = "1sy02pgq3kvk8548l57hsh08vfbqdg8dghj8mwlybdi8fdjz4z1h"; }; enableParallelBuilding = true; diff --git a/pkgs/applications/video/tartube/default.nix b/pkgs/applications/video/tartube/default.nix index ae222ae05a79..23ee76eb4693 100644 --- a/pkgs/applications/video/tartube/default.nix +++ b/pkgs/applications/video/tartube/default.nix @@ -14,13 +14,13 @@ python3Packages.buildPythonApplication rec { pname = "tartube"; - version = "2.0.016"; + version = "2.1.0"; src = fetchFromGitHub { owner = "axcore"; repo = "tartube"; rev = "v${version}"; - sha256 = "1y77ykihyi4v6xlsm5xldbs9lzq229l574rxz6qfvrjcbbwajfj9"; + sha256 = "1klqjwqm29y2f6nc8gn222ykfvb5d64z1w2kifw9bq5bv0np9bda"; }; nativeBuildInputs = [ @@ -35,6 +35,8 @@ python3Packages.buildPythonApplication rec { pygobject3 pyxdg requests + feedparser + playsound ]; buildInputs = [ @@ -45,6 +47,10 @@ python3Packages.buildPythonApplication rec { pango ]; + postPatch = '' + sed -i "/^\s*install_requires/s/, 'gi'\|'gi', \|'gi'//" setup.py + ''; + postInstall = '' mkdir -p $out/share/{man/man1,applications,pixmaps} cp pack/tartube.1 $out/share/man/man1 diff --git a/pkgs/data/documentation/man-pages/default.nix b/pkgs/data/documentation/man-pages/default.nix index a9a64fb40299..5d58284cb663 100644 --- a/pkgs/data/documentation/man-pages/default.nix +++ b/pkgs/data/documentation/man-pages/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "man-pages"; - version = "5.06"; + version = "5.07"; src = fetchurl { url = "mirror://kernel/linux/docs/man-pages/${pname}-${version}.tar.xz"; - sha256 = "0l7ypgl36jswa077qvdh1rcsvnwr64vja6cc32bab86sm41akf3h"; + sha256 = "13b3q7c67r0wkla4pdihl1qh09k67ms2z5jgzfqgpdqqy6mgziwd"; }; makeFlags = [ "MANDIR=$(out)/share/man" ]; diff --git a/pkgs/development/compilers/yosys/default.nix b/pkgs/development/compilers/yosys/default.nix index 332824185616..09e51e4c6471 100644 --- a/pkgs/development/compilers/yosys/default.nix +++ b/pkgs/development/compilers/yosys/default.nix @@ -16,13 +16,13 @@ stdenv.mkDerivation rec { pname = "yosys"; - version = "2020.06.11"; + version = "2020.06.16"; src = fetchFromGitHub { owner = "YosysHQ"; repo = "yosys"; - rev = "a1785e988b2b51dac32985dd6b0afdcedc6bda1d"; - sha256 = "0987f5vm2zb0i02c3vlw21gihky2cfj5l9b78ddzhxfiv0qfkdfp"; + rev = "39ba90a8b84d740b670a9f1df5148b824d441c63"; + sha256 = "1ncscbhyq4f07d28l32j37y5d84vyqxfx0fbzhb7nzfhplk8hh0s"; }; enableParallelBuilding = true; diff --git a/pkgs/development/interpreters/janet/default.nix b/pkgs/development/interpreters/janet/default.nix index f6f4e36532ec..32312401f963 100644 --- a/pkgs/development/interpreters/janet/default.nix +++ b/pkgs/development/interpreters/janet/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "janet"; - version = "1.9.1"; + version = "1.10.0"; src = fetchFromGitHub { owner = "janet-lang"; repo = pname; rev = "v${version}"; - sha256 = "1zdiwddnppwg5zrizy2ypd449zj4mivib76h73xhvr1syl7dk7sc"; + sha256 = "0kx3c4v0481b4xx239w10ajwp8ngq8smxzh3m77dazd89r997n1g"; }; nativeBuildInputs = [ meson ninja ]; diff --git a/pkgs/development/libraries/libiio/default.nix b/pkgs/development/libraries/libiio/default.nix index 03a907162b12..03324c15d8f7 100644 --- a/pkgs/development/libraries/libiio/default.nix +++ b/pkgs/development/libraries/libiio/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "libiio"; - version = "0.19"; + version = "0.20"; src = fetchFromGitHub { owner = "analogdevicesinc"; repo = "libiio"; rev = "refs/tags/v${version}"; - sha256 = "1r67h5mayx9krh3mmzs5vz20mvwb2lw04hpbyyisygl01ndc77kq"; + sha256 = "1929gvizkqmm9cwh3vihxxszfxvgcp5saq9q6chdk3fpdhzajc00"; }; outputs = [ "out" "lib" "dev" "python" ]; diff --git a/pkgs/development/libraries/libraspberrypi/default.nix b/pkgs/development/libraries/libraspberrypi/default.nix index 1cd1f5e62ac1..bbe0b6145503 100644 --- a/pkgs/development/libraries/libraspberrypi/default.nix +++ b/pkgs/development/libraries/libraspberrypi/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { name = "libraspberrypi"; - version = "2019-10-22"; + version = "2020-05-28"; src = fetchFromGitHub { owner = "raspberrypi"; repo = "userland"; - rev = "5070cb7fc150fc98f1ed64a7739c3356970d9f76"; - sha256 = "08yfzwn9s7lhrblcsxyag9p5lj5vk3n66b1pv3f7r3hah7qcggyq"; + rev = "f97b1af1b3e653f9da2c1a3643479bfd469e3b74"; + sha256 = "1r7n05rv96hqjq0rn0qzchmfqs0j7vh3p8jalgh66s6l0vms5mwy"; }; cmakeFlags = if (stdenv.targetPlatform.system == "aarch64-linux") diff --git a/pkgs/development/libraries/opendht/default.nix b/pkgs/development/libraries/opendht/default.nix index a62138e8ccf4..c8b1205bc91b 100644 --- a/pkgs/development/libraries/opendht/default.nix +++ b/pkgs/development/libraries/opendht/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "opendht"; - version = "2.1.1"; + version = "2.1.3"; src = fetchFromGitHub { owner = "savoirfairelinux"; repo = "opendht"; rev = version; - sha256 = "10sbiwjljxi0a1q3xakmf6v02x3yf38ljvjpql70q4rqggqj9zhh"; + sha256 = "0qz9mdkanz4vd38bdpwvcwvbpzf19i6019rmqw3k1vh5mh22ljhr"; }; nativeBuildInputs = diff --git a/pkgs/development/libraries/protobufc/1.3.nix b/pkgs/development/libraries/protobufc/1.3.nix index 304f9d61f397..82126727282c 100644 --- a/pkgs/development/libraries/protobufc/1.3.nix +++ b/pkgs/development/libraries/protobufc/1.3.nix @@ -1,12 +1,11 @@ { callPackage, fetchFromGitHub, ... } @ args: -callPackage ./generic.nix (args // { - version = "1.3.1"; +callPackage ./generic.nix (args // rec { + version = "1.3.3"; src = fetchFromGitHub { owner = "protobuf-c"; repo = "protobuf-c"; - #rev = "v${version}"; - rev = "9412830d0680150d429d2aa170b8d7218ab49397"; - sha256 = "175cmaj5231iqzhf5a9sxw2y3i165chk3681m1b5mp8di927q5ai"; + rev = "v${version}"; + sha256 = "13948amsjj9xpa4yl6amlyk3ksr96bbd4ngshh2yzflwcslhg6gv"; }; }) diff --git a/pkgs/development/libraries/swiften/build-fix.patch b/pkgs/development/libraries/swiften/build-fix.patch new file mode 100644 index 000000000000..01814cadfbd4 --- /dev/null +++ b/pkgs/development/libraries/swiften/build-fix.patch @@ -0,0 +1,32 @@ +diff -wbBur swift-4.0.2/Swift/QtUI/UserSearch/QtUserSearchWindow.h swift-4.0.2.my/Swift/QtUI/UserSearch/QtUserSearchWindow.h +--- swift-4.0.2/Swift/QtUI/UserSearch/QtUserSearchWindow.h 2018-04-06 13:06:46.000000000 +0300 ++++ swift-4.0.2.my/Swift/QtUI/UserSearch/QtUserSearchWindow.h 2019-10-08 20:52:23.171475337 +0300 +@@ -9,6 +9,7 @@ + #include <set> + + #include <QWizard> ++#include <QAbstractItemModel> + + #include <Swiften/Base/Override.h> + +diff -wbBur swift-4.0.2/Swiften/Network/PlatformNATTraversalWorker.cpp swift-4.0.2.my/Swiften/Network/PlatformNATTraversalWorker.cpp +--- swift-4.0.2/Swiften/Network/PlatformNATTraversalWorker.cpp 2018-04-06 13:06:46.000000000 +0300 ++++ swift-4.0.2.my/Swiften/Network/PlatformNATTraversalWorker.cpp 2019-10-08 21:12:25.284754131 +0300 +@@ -157,7 +157,7 @@ + miniUPnPInterface = new MiniUPnPInterface(); + miniUPnPSupported = miniUPnPInterface->isAvailable(); + } +- SWIFT_LOG(debug) << "UPnP NAT traversal supported: " << miniUPnPSupported << std::endl; ++// SWIFT_LOG(debug) << "UPnP NAT traversal supported: " << miniUPnPSupported << std::endl; + if (miniUPnPSupported) { + return miniUPnPInterface; + } +@@ -168,7 +168,7 @@ + natPMPInterface = new NATPMPInterface(); + natPMPSupported = natPMPInterface->isAvailable(); + } +- SWIFT_LOG(debug) << "NAT-PMP NAT traversal supported: " << natPMPSupported << std::endl; ++// SWIFT_LOG(debug) << "NAT-PMP NAT traversal supported: " << natPMPSupported << std::endl; + if (natPMPSupported) { + return natPMPInterface; + } diff --git a/pkgs/development/libraries/swiften/default.nix b/pkgs/development/libraries/swiften/default.nix index bdac55fe2ec3..19bacdd2a614 100644 --- a/pkgs/development/libraries/swiften/default.nix +++ b/pkgs/development/libraries/swiften/default.nix @@ -12,17 +12,21 @@ stdenv.mkDerivation rec { sha256 = "0w0aiszjd58ynxpacwcgf052zpmbpcym4dhci64vbfgch6wryz0w"; }; - patches = [ ./scons.patch ]; + patches = [ ./scons.patch ./build-fix.patch ]; sconsFlags = [ "openssl=${openssl.dev}" "boost_includedir=${boost.dev}/include" "boost_libdir=${boost.out}/lib" "boost_bundled_enable=false" + "max_jobs=1" + "optimize=1" + "debug=0" + "swiften_dll=1" ]; preInstall = '' installTargets="$out" - installFlags+=" SWIFT_INSTALLDIR=$out" + installFlags+=" SWIFTEN_INSTALLDIR=$out" ''; enableParallelBuilding = true; @@ -33,6 +37,5 @@ stdenv.mkDerivation rec { license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.twey ]; - broken = true; # Broken since 2019-11-20 (https://hydra.nixos.org/build/114681755) }; } diff --git a/pkgs/development/misc/rpiboot/unstable.nix b/pkgs/development/misc/rpiboot/unstable.nix index 1591a1efd17a..a8f7e4795e77 100644 --- a/pkgs/development/misc/rpiboot/unstable.nix +++ b/pkgs/development/misc/rpiboot/unstable.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub, libusb1 }: let - version = "2018-03-27"; + version = "2020-05-11"; name = "rpiboot-unstable-${version}"; in stdenv.mkDerivation { inherit name; @@ -9,8 +9,8 @@ in stdenv.mkDerivation { src = fetchFromGitHub { owner = "raspberrypi"; repo = "usbboot"; - rev = "fb86716935f2e820333b037a2ff93a338ad9b695"; - sha256 = "163g7iw7kf6ra71adx6lf1xzf3kv20bppva15ljwn54jlah5mv98"; + rev = "c650cd747c1d0597487dcf319bf95b5ba775d78b"; + sha256 = "17kapny79dh05vfmrniqdvz6xhpwnqnw0511ycfx4qcjh4krxh8n"; }; nativeBuildInputs = [ libusb1 ]; diff --git a/pkgs/development/python-modules/jc/default.nix b/pkgs/development/python-modules/jc/default.nix index e7942760b72c..e48fec89b9d7 100644 --- a/pkgs/development/python-modules/jc/default.nix +++ b/pkgs/development/python-modules/jc/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "jc"; - version = "1.11.2"; + version = "1.11.6"; disabled = isPy27; src = fetchFromGitHub { owner = "kellyjonbrazil"; repo = "jc"; rev = "v${version}"; - sha256 = "1gsvjgypjgw5a0k85kdvbbf7q6wspmv6z76acrgnidhav8sdn4dm"; + sha256 = "0jyygq7zmam7yriiv5j4d6mpjdi2p3p7d53bn3qwfzkh4ifsbfan"; }; propagatedBuildInputs = [ ruamel_yaml xmltodict pygments ]; diff --git a/pkgs/development/python-modules/matrix-nio/default.nix b/pkgs/development/python-modules/matrix-nio/default.nix index ff4f6198aa5e..aca4bf35434b 100644 --- a/pkgs/development/python-modules/matrix-nio/default.nix +++ b/pkgs/development/python-modules/matrix-nio/default.nix @@ -19,14 +19,14 @@ }: buildPythonPackage rec { - pname = "nio"; - version = "0.10.0"; + pname = "matrix-nio"; + version = "0.12.0"; src = fetchFromGitHub { owner = "poljar"; repo = "matrix-nio"; rev = version; - sha256 = "04ryf9lrm0820hqij46hav6mgplabnyl9dfj46iwvxasn06fh2j8"; + sha256 = "1d4jhl2xjjp31yjs4zz2cfkvzbi2vr5bsrp07s6nhyc18azxr7ba"; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/playsound/default.nix b/pkgs/development/python-modules/playsound/default.nix new file mode 100644 index 000000000000..589a8f3db819 --- /dev/null +++ b/pkgs/development/python-modules/playsound/default.nix @@ -0,0 +1,28 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +}: + +buildPythonPackage rec { + pname = "playsound"; + version = "1.2.2"; + + src = fetchFromGitHub { + owner = "TaylorSMarks"; + repo = "playsound"; + rev = "907f1fe73375a2156f7e0900c4b42c0a60fa1d00"; + sha256 = "1fh3m115h0c57lj2pfhhqhmsh5awzblb7csi1xc5a6f6slhl059k"; + }; + + doCheck = false; + + pythonImportsCheck = [ "playsound" ]; + + meta = with lib; { + homepage = "https://github.com/TaylorSMarks/playsound"; + description = "Pure Python, cross platform, single function module with no dependencies for playing sounds"; + license = licenses.mit; + platforms = platforms.all; + maintainers = with maintainers; [ luc65r ]; + }; +} diff --git a/pkgs/development/python-modules/rope/default.nix b/pkgs/development/python-modules/rope/default.nix index 6bcc05fb34d6..73b5e0b8c2b5 100644 --- a/pkgs/development/python-modules/rope/default.nix +++ b/pkgs/development/python-modules/rope/default.nix @@ -2,13 +2,13 @@ buildPythonPackage rec { pname = "rope"; - version = "0.16.0"; + version = "0.17.0"; disabled = pythonAtLeast "3.8"; # 0.17 should support Python 3.8 src = fetchPypi { inherit pname version; - sha256 = "1zlxdrs6ww2hm41izz67h67z9dkm0rlgw8m04vygaip0q91030yj"; + sha256 = "1qa9nqryp05ah9b4r8cy5ph31kr9cm4ak79pvzbg7p23bxqdd2k5"; }; checkInputs = [ nose ]; diff --git a/pkgs/development/tools/analysis/cppcheck/default.nix b/pkgs/development/tools/analysis/cppcheck/default.nix index bdd275a218b8..8e2c28336cf7 100644 --- a/pkgs/development/tools/analysis/cppcheck/default.nix +++ b/pkgs/development/tools/analysis/cppcheck/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "cppcheck"; - version = "2.0"; + version = "2.1"; src = fetchurl { url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2"; - sha256 = "0gssnb50cndr77xva4nar4a82ii0vfqy96dlm27gb7pd6xmd6xsz"; + sha256 = "1xx5i6z9a36h7k4ipikrk2zidk7jcjv8ryqyq2m5hnwy0gpyw9mb"; }; buildInputs = [ pcre ] ++ stdenv.lib.optionals withZ3 [ z3 ]; diff --git a/pkgs/development/tools/build-managers/bmake/default.nix b/pkgs/development/tools/build-managers/bmake/default.nix index 499ef7a19b31..b119b5a38105 100644 --- a/pkgs/development/tools/build-managers/bmake/default.nix +++ b/pkgs/development/tools/build-managers/bmake/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "bmake"; - version = "20200506"; + version = "20200606"; src = fetchurl { url = "http://www.crufty.net/ftp/pub/sjg/${pname}-${version}.tar.gz"; - sha256 = "1qiq6lvlg2hqiq03slv4vzv3bn4cr3w95r3i6m5fa4hgn2dkrhqa"; + sha256 = "00kh1g8z6808ylbfcn9afpb0xmb99k302dfdsmyx1rsn65xs58v7"; }; nativeBuildInputs = [ getopt ]; diff --git a/pkgs/games/openmw/default.nix b/pkgs/games/openmw/default.nix index cae97dc42158..22f3ea8d6ad3 100644 --- a/pkgs/games/openmw/default.nix +++ b/pkgs/games/openmw/default.nix @@ -6,19 +6,19 @@ let src = fetchFromGitHub { owner = "OpenMW"; repo = "osg"; - rev = "2b4c8e37268e595b82da4b9aadd5507852569b87"; - sha256 = "0admnllxic6dcpic0h100927yw766ab55dix002vvdx36i6994jb"; + rev = "1556cd7966ebc1c80b6626988d2b25fb43a744cf"; + sha256 = "0d74hijzmj82nx3jkv5qmr3pkgvplra0b8fbjx1y3vmzxamb0axd"; }; }); in mkDerivationWith stdenv.mkDerivation rec { - version = "0.45.0"; + version = "0.46.0"; pname = "openmw"; src = fetchFromGitHub { owner = "OpenMW"; repo = "openmw"; rev = "${pname}-${version}"; - sha256 = "1r87zrsnza2v9brksh809zzqj6zhk5xj15qs8iq11v1bscm2a2j4"; + sha256 = "0rm32zsmxvr6b0jjihfj543skhicbw5kg6shjx312clhlm035w2x"; }; enableParallelBuilding = true; diff --git a/pkgs/misc/drivers/hplip/default.nix b/pkgs/misc/drivers/hplip/default.nix index 2ecd163fbf24..98ced28b8773 100644 --- a/pkgs/misc/drivers/hplip/default.nix +++ b/pkgs/misc/drivers/hplip/default.nix @@ -5,7 +5,7 @@ , net-snmp, openssl, perl, nettools , bash, coreutils, utillinux # To remove references to gcc-unwrapped -, removeReferencesTo +, removeReferencesTo, qt5 , withQt5 ? true , withPlugin ? false , withStaticPPDInstall ? false @@ -67,12 +67,15 @@ python3Packages.buildPythonApplication { zlib ]; - nativeBuildInputs = [ pkgconfig removeReferencesTo ]; + nativeBuildInputs = [ + pkgconfig + removeReferencesTo + ] ++ stdenv.lib.optional withQt5 qt5.wrapQtAppsHook; pythonPath = with python3Packages; [ dbus pillow - pygobject2 + pygobject3 reportlab usbutils sip @@ -219,6 +222,10 @@ python3Packages.buildPythonApplication { --replace {,${utillinux}/bin/}logger \ --replace {/usr,$out}/bin remove-references-to -t ${stdenv.cc.cc} $(readlink -f $out/lib/*.so) + '' + stdenv.lib.optionalString withQt5 '' + for f in $out/bin/hp-*;do + wrapQtApp $f + done ''; # There are some binaries there, which reference gcc-unwrapped otherwise. diff --git a/pkgs/os-specific/linux/firmware/fwupd/default.nix b/pkgs/os-specific/linux/firmware/fwupd/default.nix index 87a37feb1cc8..af9237d1d833 100644 --- a/pkgs/os-specific/linux/firmware/fwupd/default.nix +++ b/pkgs/os-specific/linux/firmware/fwupd/default.nix @@ -51,6 +51,7 @@ , flashrom , tpm2-tools , nixosTests +, runCommand }: let @@ -83,203 +84,232 @@ let # Experimental haveFlashrom = false; -in + runPythonCommand = name: buildCommandPython: runCommand name { + nativeBuildInputs = [ python3 ]; + inherit buildCommandPython; + } '' + exec python3 -c "$buildCommandPython" + ''; -stdenv.mkDerivation rec { - pname = "fwupd"; - version = "1.4.2"; + self = stdenv.mkDerivation rec { + pname = "fwupd"; + version = "1.4.4"; - src = fetchurl { - url = "https://people.freedesktop.org/~hughsient/releases/fwupd-${version}.tar.xz"; - sha256 = "1wch1n0z89ymfxx7ganiab4h64rdxr54rcg37n5nshw35bc3f390"; - }; + src = fetchurl { + url = "https://people.freedesktop.org/~hughsient/releases/fwupd-${version}.tar.xz"; + sha256 = "03yn96kxs53vxcbza17y99rdhbjlybv44gkc90vaj6301grxahnp"; + }; - # libfwupd goes to lib - # daemon, plug-ins and libfwupdplugin go to out - # CLI programs go to out - outputs = [ "out" "lib" "dev" "devdoc" "man" "installedTests" ]; - - nativeBuildInputs = [ - meson - ninja - gtk-doc - pkgconfig - gobject-introspection - intltool - shared-mime-info - valgrind - gcab - docbook_xml_dtd_43 - docbook_xsl - help2man - libxslt - python - wrapGAppsHook - vala - ]; - - buildInputs = [ - polkit - libxmlb - gusb - sqlite - libarchive - libsoup - elfutils - gnu-efi - libyaml - libgudev - colord - libjcat - libuuid - glib-networking - json-glib - umockdev - bash-completion - cairo - freetype - fontconfig - pango - tpm2-tss - efivar - ] ++ stdenv.lib.optionals haveDell [ - libsmbios - ]; - - patches = [ - ./fix-paths.patch - ./add-option-for-installation-sysconfdir.patch - - # Install plug-ins and libfwupdplugin to out, - # they are not really part of the library. - ./install-fwupdplugin-to-out.patch - - # Installed tests are installed to different output - # we also cannot have fwupd-tests.conf in $out/etc since it would form a cycle. - (substituteAll { - src = ./installed-tests-path.patch; - # Needs a different set of modules than po/make-images. - inherit installedTestsPython; - }) - ]; - - postPatch = '' - patchShebangs \ - contrib/get-version.py \ - contrib/generate-version-script.py \ - meson_post_install.sh \ - po/make-images \ - po/make-images.sh \ - po/test-deps - ''; + # libfwupd goes to lib + # daemon, plug-ins and libfwupdplugin go to out + # CLI programs go to out + outputs = [ "out" "lib" "dev" "devdoc" "man" "installedTests" ]; - # /etc/os-release not available in sandbox - # doCheck = true; - - preFixup = let - binPath = [ - efibootmgr - bubblewrap - tpm2-tools - ] ++ stdenv.lib.optional haveFlashrom flashrom; - in '' - gappsWrapperArgs+=( - --prefix XDG_DATA_DIRS : "${shared-mime-info}/share" - # See programs reached with fu_common_find_program_in_path in source - --prefix PATH : "${stdenv.lib.makeBinPath binPath}" - ) - ''; + nativeBuildInputs = [ + meson + ninja + gtk-doc + pkgconfig + gobject-introspection + intltool + shared-mime-info + valgrind + gcab + docbook_xml_dtd_43 + docbook_xsl + help2man + libxslt + python + wrapGAppsHook + vala + ]; - mesonFlags = [ - "-Dgtkdoc=true" - "-Dplugin_dummy=true" - "-Dudevdir=lib/udev" - "-Dsystemd_root_prefix=${placeholder "out"}" - "-Dinstalled_test_prefix=${placeholder "installedTests"}" - "-Defi-libdir=${gnu-efi}/lib" - "-Defi-ldsdir=${gnu-efi}/lib" - "-Defi-includedir=${gnu-efi}/include/efi" - "--localstatedir=/var" - "--sysconfdir=/etc" - "-Dsysconfdir_install=${placeholder "out"}/etc" - - # We do not want to place the daemon into lib (cyclic reference) - "--libexecdir=${placeholder "out"}/libexec" - # Our builder only adds $lib/lib to rpath but some things link - # against libfwupdplugin which is in $out/lib. - "-Dc_link_args=-Wl,-rpath,${placeholder "out"}/lib" - ] ++ stdenv.lib.optionals (!haveDell) [ - "-Dplugin_dell=false" - "-Dplugin_synaptics=false" - ] ++ stdenv.lib.optionals (!haveRedfish) [ - "-Dplugin_redfish=false" - ] ++ stdenv.lib.optionals haveFlashrom [ - "-Dplugin_flashrom=true" - ]; - - FONTCONFIG_FILE = fontsConf; # Fontconfig error: Cannot load default config file - - # error: “PolicyKit files are missing” - # https://github.com/NixOS/nixpkgs/pull/67625#issuecomment-525788428 - PKG_CONFIG_POLKIT_GOBJECT_1_ACTIONDIR = "/run/current-system/sw/share/polkit-1/actions"; - - # TODO: wrapGAppsHook wraps efi capsule even though it is not elf - dontWrapGApps = true; - - preCheck = '' - addToSearchPath XDG_DATA_DIRS "${shared-mime-info}/share" - ''; + buildInputs = [ + polkit + libxmlb + gusb + sqlite + libarchive + libsoup + elfutils + gnu-efi + libyaml + libgudev + colord + libjcat + libuuid + glib-networking + json-glib + umockdev + bash-completion + cairo + freetype + fontconfig + pango + tpm2-tss + efivar + ] ++ stdenv.lib.optionals haveDell [ + libsmbios + ]; - # so we need to wrap the executables manually - postFixup = '' - find -L "$out/bin" "$out/libexec" -type f -executable -print0 \ - | while IFS= read -r -d ''' file; do - if [[ "$file" != *.efi ]]; then - echo "Wrapping program $file" - wrapGApp "$file" - fi - done - ''; + patches = [ + ./fix-paths.patch + ./add-option-for-installation-sysconfdir.patch - # /etc/fwupd/uefi.conf is created by the services.hardware.fwupd NixOS module - passthru = { - filesInstalledToEtc = [ - "fwupd/ata.conf" - # "fwupd/daemon.conf" # already created by the module - "fwupd/redfish.conf" - "fwupd/remotes.d/lvfs-testing.conf" - "fwupd/remotes.d/lvfs.conf" - "fwupd/remotes.d/vendor.conf" - "fwupd/remotes.d/vendor-directory.conf" - "fwupd/thunderbolt.conf" - "fwupd/upower.conf" - # "fwupd/uefi.conf" # already created by the module - "pki/fwupd/GPG-KEY-Hughski-Limited" - "pki/fwupd/GPG-KEY-Linux-Foundation-Firmware" - "pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service" - "pki/fwupd/LVFS-CA.pem" - "pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata" - "pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service" - "pki/fwupd-metadata/LVFS-CA.pem" - ] ++ stdenv.lib.optionals haveDell [ - "fwupd/remotes.d/dell-esrt.conf" + # Install plug-ins and libfwupdplugin to out, + # they are not really part of the library. + ./install-fwupdplugin-to-out.patch + + # Installed tests are installed to different output + # we also cannot have fwupd-tests.conf in $out/etc since it would form a cycle. + (substituteAll { + src = ./installed-tests-path.patch; + # Needs a different set of modules than po/make-images. + inherit installedTestsPython; + }) ]; - # BlacklistPlugins key in fwupd/daemon.conf - defaultBlacklistedPlugins = [ - "test" - "invalid" + postPatch = '' + patchShebangs \ + contrib/get-version.py \ + contrib/generate-version-script.py \ + meson_post_install.sh \ + po/make-images \ + po/make-images.sh \ + po/test-deps + ''; + + # /etc/os-release not available in sandbox + # doCheck = true; + + preFixup = let + binPath = [ + efibootmgr + bubblewrap + tpm2-tools + ] ++ stdenv.lib.optional haveFlashrom flashrom; + in '' + gappsWrapperArgs+=( + --prefix XDG_DATA_DIRS : "${shared-mime-info}/share" + # See programs reached with fu_common_find_program_in_path in source + --prefix PATH : "${stdenv.lib.makeBinPath binPath}" + ) + ''; + + mesonFlags = [ + "-Dgtkdoc=true" + "-Dplugin_dummy=true" + "-Dudevdir=lib/udev" + "-Dsystemd_root_prefix=${placeholder "out"}" + "-Dinstalled_test_prefix=${placeholder "installedTests"}" + "-Defi-libdir=${gnu-efi}/lib" + "-Defi-ldsdir=${gnu-efi}/lib" + "-Defi-includedir=${gnu-efi}/include/efi" + "--localstatedir=/var" + "--sysconfdir=/etc" + "-Dsysconfdir_install=${placeholder "out"}/etc" + + # We do not want to place the daemon into lib (cyclic reference) + "--libexecdir=${placeholder "out"}/libexec" + # Our builder only adds $lib/lib to rpath but some things link + # against libfwupdplugin which is in $out/lib. + "-Dc_link_args=-Wl,-rpath,${placeholder "out"}/lib" + ] ++ stdenv.lib.optionals (!haveDell) [ + "-Dplugin_dell=false" + "-Dplugin_synaptics=false" + ] ++ stdenv.lib.optionals (!haveRedfish) [ + "-Dplugin_redfish=false" + ] ++ stdenv.lib.optionals haveFlashrom [ + "-Dplugin_flashrom=true" ]; - tests = { - installedTests = nixosTests.installed-tests.fwupd; + FONTCONFIG_FILE = fontsConf; # Fontconfig error: Cannot load default config file + + # error: “PolicyKit files are missing” + # https://github.com/NixOS/nixpkgs/pull/67625#issuecomment-525788428 + PKG_CONFIG_POLKIT_GOBJECT_1_ACTIONDIR = "/run/current-system/sw/share/polkit-1/actions"; + + # TODO: wrapGAppsHook wraps efi capsule even though it is not elf + dontWrapGApps = true; + + preCheck = '' + addToSearchPath XDG_DATA_DIRS "${shared-mime-info}/share" + ''; + + # so we need to wrap the executables manually + postFixup = '' + find -L "$out/bin" "$out/libexec" -type f -executable -print0 \ + | while IFS= read -r -d ''' file; do + if [[ "$file" != *.efi ]]; then + echo "Wrapping program $file" + wrapGApp "$file" + fi + done + ''; + + passthru = { + filesInstalledToEtc = [ + "fwupd/ata.conf" + "fwupd/daemon.conf" + "fwupd/redfish.conf" + "fwupd/remotes.d/lvfs-testing.conf" + "fwupd/remotes.d/lvfs.conf" + "fwupd/remotes.d/vendor.conf" + "fwupd/remotes.d/vendor-directory.conf" + "fwupd/thunderbolt.conf" + "fwupd/upower.conf" + "fwupd/uefi.conf" + "pki/fwupd/GPG-KEY-Hughski-Limited" + "pki/fwupd/GPG-KEY-Linux-Foundation-Firmware" + "pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service" + "pki/fwupd/LVFS-CA.pem" + "pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata" + "pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service" + "pki/fwupd-metadata/LVFS-CA.pem" + ] ++ stdenv.lib.optionals haveDell [ + "fwupd/remotes.d/dell-esrt.conf" + ]; + + # BlacklistPlugins key in fwupd/daemon.conf + defaultBlacklistedPlugins = [ + "test" + "invalid" + ]; + + tests = let + listToPy = list: "[${stdenv.lib.concatMapStringsSep ", " (f: "'${f}'") list}]"; + in { + installedTests = nixosTests.installed-tests.fwupd; + + passthruMatches = runPythonCommand "fwupd-test-passthru-matches" '' + import itertools + import configparser + import os + import pathlib + + etc = '${self}/etc' + package_etc = set(itertools.chain.from_iterable([[os.path.relpath(os.path.join(prefix, file), etc) for file in files] for (prefix, dirs, files) in os.walk(etc)])) + passthru_etc = set(${listToPy passthru.filesInstalledToEtc}) + assert len(package_etc - passthru_etc) == 0, f'fwupd package contains the following paths in /etc that are not listed in passthru.filesInstalledToEtc: {package_etc - passthru_etc}' + assert len(passthru_etc - package_etc) == 0, f'fwupd package lists the following paths in passthru.filesInstalledToEtc that are not contained in /etc: {passthru_etc - package_etc}' + + config = configparser.RawConfigParser() + config.read('${self}/etc/fwupd/daemon.conf') + package_blacklisted_plugins = config.get('fwupd', 'BlacklistPlugins').rstrip(';').split(';') + passthru_blacklisted_plugins = ${listToPy passthru.defaultBlacklistedPlugins} + assert package_blacklisted_plugins == passthru_blacklisted_plugins, f'Default blacklisted plug-ins in the package {package_blacklisted_plugins} do not match those listed in passthru.defaultBlacklistedPlugins {passthru_blacklisted_plugins}' + + pathlib.Path(os.getenv('out')).touch() + ''; + }; }; - }; - meta = with stdenv.lib; { - homepage = "https://fwupd.org/"; - maintainers = with maintainers; [ jtojnar ]; - license = [ licenses.gpl2 ]; - platforms = platforms.linux; + meta = with stdenv.lib; { + homepage = "https://fwupd.org/"; + maintainers = with maintainers; [ jtojnar ]; + license = [ licenses.gpl2 ]; + platforms = platforms.linux; + }; }; -} + +in self diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix index bd9c58d33c9c..77a284446366 100644 --- a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix +++ b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "raspberrypi-firmware"; - version = "1.20190925"; + version = "1.20200601"; src = fetchFromGitHub { owner = "raspberrypi"; repo = "firmware"; rev = version; - sha256 = "0xyj3f04dcfnl9hp8hakgwcb1msqh7934n0pclcmzy47xjkz7ris"; + sha256 = "1vm038f9digwg8gdxl2bypzlip3ycjb6bl56274gh5i9abl6wjvf"; }; installPhase = '' diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/tools-dont-install-sysv-init-scripts.patch b/pkgs/os-specific/linux/firmware/raspberrypi/tools-dont-install-sysv-init-scripts.patch deleted file mode 100644 index e12aeeb0cdb8..000000000000 --- a/pkgs/os-specific/linux/firmware/raspberrypi/tools-dont-install-sysv-init-scripts.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/interface/vmcs_host/linux/vcfiled/CMakeLists.txt b/interface/vmcs_host/linux/vcfiled/CMakeLists.txt -index aed0e83..b325676 100644 ---- a/interface/vmcs_host/linux/vcfiled/CMakeLists.txt -+++ b/interface/vmcs_host/linux/vcfiled/CMakeLists.txt -@@ -17,15 +17,6 @@ target_link_libraries(vcfiled - install(TARGETS vcfiled - RUNTIME DESTINATION sbin) - --configure_file (etc/init.d/vcfiled ${PROJECT_BINARY_DIR}/etc/init.d/vcfiled) -- --# script to start up vcfiled at start of day --install(PROGRAMS ${PROJECT_BINARY_DIR}/etc/init.d/vcfiled -- DESTINATION /etc/init.d) --# install locally to the installation directory too --install(PROGRAMS ${PROJECT_BINARY_DIR}/etc/init.d/vcfiled -- DESTINATION ${VMCS_INSTALL_PREFIX}/share/install) -- - # test program for vcfiled_check library - add_executable(vcfiled_lock_test vcfiled_lock_test.c) - target_link_libraries(vcfiled_lock_test vcfiled_check) diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/tools.nix b/pkgs/os-specific/linux/firmware/raspberrypi/tools.nix index e3fa90ac388d..6c4d49e4e240 100644 --- a/pkgs/os-specific/linux/firmware/raspberrypi/tools.nix +++ b/pkgs/os-specific/linux/firmware/raspberrypi/tools.nix @@ -2,17 +2,15 @@ stdenv.mkDerivation { pname = "raspberrypi-tools"; - version = "2018-10-03"; + version = "2020-05-28"; src = fetchFromGitHub { owner = "raspberrypi"; repo = "userland"; - rev = "de4a7f2e3c391e2d3bc76af31864270e7802d9ac"; - sha256 = "0w96xa98ngdk9m6wv185w8waa7wm2hkn2bhxz52zd477hchzrxlg"; + rev = "f97b1af1b3e653f9da2c1a3643479bfd469e3b74"; + sha256 = "1r7n05rv96hqjq0rn0qzchmfqs0j7vh3p8jalgh66s6l0vms5mwy"; }; - patches = [ ./tools-dont-install-sysv-init-scripts.patch ]; - nativeBuildInputs = [ cmake pkgconfig ]; preConfigure = '' diff --git a/pkgs/os-specific/linux/kernel/linux-rpi.nix b/pkgs/os-specific/linux/kernel/linux-rpi.nix index 31a2cc2aa157..a3d2bfd4836c 100644 --- a/pkgs/os-specific/linux/kernel/linux-rpi.nix +++ b/pkgs/os-specific/linux/kernel/linux-rpi.nix @@ -1,8 +1,8 @@ { stdenv, lib, buildPackages, fetchFromGitHub, perl, buildLinux, rpiVersion, ... } @ args: let - modDirVersion = "4.19.75"; - tag = "1.20190925"; + modDirVersion = "4.19.118"; + tag = "1.20200601"; in lib.overrideDerivation (buildLinux (args // { version = "${modDirVersion}-${tag}"; @@ -12,7 +12,7 @@ lib.overrideDerivation (buildLinux (args // { owner = "raspberrypi"; repo = "linux"; rev = "raspberrypi-kernel_${tag}-1"; - sha256 = "0l91kb4jjxg4fcp7d2aqm1fj34ns137rys93k907mdgnarcliafs"; + sha256 = "11jzsmnd1qry2ir9vmsv0nfdzjpgkn5yab5ylxcz406plc073anp"; }; defconfig = { diff --git a/pkgs/os-specific/linux/microcode/intel.nix b/pkgs/os-specific/linux/microcode/intel.nix index c0201fb01fd4..475288a0b6f6 100644 --- a/pkgs/os-specific/linux/microcode/intel.nix +++ b/pkgs/os-specific/linux/microcode/intel.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "microcode-intel"; - version = "20200520"; + version = "20200616"; src = fetchFromGitHub { owner = "intel"; repo = "Intel-Linux-Processor-Microcode-Data-Files"; rev = "microcode-${version}"; - sha256 = "1cs4b7q9j2lw2y09rfa82aijbfmy4lddahz8qlz9gwajf2ziqns8"; + sha256 = "13jrs8hwh7dhjjb9kncb8lk199afaxglkh1cfisl6zca1h36g563"; }; nativeBuildInputs = [ iucode-tool libarchive ]; diff --git a/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix b/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix new file mode 100644 index 000000000000..8a0f2d4efab2 --- /dev/null +++ b/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchFromGitHub, autoconf, automake, pkg-config, dovecot, libtool, xapian, icu64, sqlite }: +stdenv.mkDerivation { + pname = "fts-xapian"; + version = "1.3.1"; + + src = fetchFromGitHub { + owner = "grosjo"; + repo = "fts-xapian"; + rev = "1.3.1"; + sha256 = "10yl5fyfbx2ijqckx13vbmzj9mpm5pkh8qzichbdgplrzm738q43"; + }; + + buildInputs = [ dovecot xapian icu64 sqlite ]; + + nativeBuildInputs = [ autoconf automake libtool pkg-config ]; + + preConfigure = '' + export PANDOC=false + autoreconf -vi + ''; + + configureFlags = [ + "--with-dovecot=${dovecot}/lib/dovecot" + "--without-dovecot-install-dirs" + "--with-moduledir=$(out)/lib/dovecot" + ]; + + meta = with stdenv.lib; { + homepage = "https://github.com/grosjo/fts-xapian"; + description = "Dovecot FTS plugin based on Xapian"; + license = licenses.lgpl21; + maintainers = with maintainers; [ julm ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/mqtt/mosquitto/default.nix b/pkgs/servers/mqtt/mosquitto/default.nix index b52cfb09d4f1..8f632ed9b58f 100644 --- a/pkgs/servers/mqtt/mosquitto/default.nix +++ b/pkgs/servers/mqtt/mosquitto/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "mosquitto"; - version = "1.6.8"; + version = "1.6.10"; src = fetchFromGitHub { owner = "eclipse"; repo = "mosquitto"; rev = "v${version}"; - sha256 = "1py13vg3vwwwg6jdnmq46z6rlzb84r4ggqsmsrn4yar5hrw9pa90"; + sha256 = "0g9iywm0s08b0ax1qx4j5lixfc1m6p48lv14vlil6wns4azc3fsc"; }; postPatch = '' diff --git a/pkgs/servers/sql/postgresql/ext/pg_ed25519.nix b/pkgs/servers/sql/postgresql/ext/pg_ed25519.nix new file mode 100644 index 000000000000..95d45b2663d9 --- /dev/null +++ b/pkgs/servers/sql/postgresql/ext/pg_ed25519.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, postgresql }: + +stdenv.mkDerivation rec { + pname = "pg_ed25519"; + version = "0.2"; + + src = fetchurl { + url = "https://gitlab.com/dwagin/${pname}/-/archive/${version}/${pname}-${version}.tar.bz2"; + sha256 = "0q46pvk1vq5w3al6i3inzlw6w7za3n7p1gd4wfbbxzvzh7qnynda"; + }; + + buildInputs = [ postgresql ]; + + installPhase = '' + mkdir -p $out/bin # For buildEnv to setup proper symlinks. See #22653 + mkdir -p $out/{lib,share/postgresql/extension} + + cp *.so $out/lib + cp *.sql $out/share/postgresql/extension + cp *.control $out/share/postgresql/extension + ''; + + meta = with stdenv.lib; { + description = "PostgreSQL extension for signing and verifying ed25519 signatures"; + homepage = "https://gitlab.com/dwagin/pg_ed25519"; + maintainers = [ maintainers.renzo ]; + platforms = postgresql.meta.platforms; + license = licenses.mit; + }; +} + diff --git a/pkgs/servers/sql/postgresql/packages.nix b/pkgs/servers/sql/postgresql/packages.nix index 15735a82c52e..d4dafe7ddb14 100644 --- a/pkgs/servers/sql/postgresql/packages.nix +++ b/pkgs/servers/sql/postgresql/packages.nix @@ -13,6 +13,8 @@ self: super: { pg_bigm = super.callPackage ./ext/pg_bigm.nix { }; + pg_ed25519 = super.callPackage ./ext/pg_ed25519.nix { }; + pg_repack = super.callPackage ./ext/pg_repack.nix { }; pg_similarity = super.callPackage ./ext/pg_similarity.nix { }; diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix index dc2d3cf8a1e8..9e28e8785732 100644 --- a/pkgs/tools/misc/youtube-dl/default.nix +++ b/pkgs/tools/misc/youtube-dl/default.nix @@ -18,11 +18,11 @@ buildPythonPackage rec { # The websites youtube-dl deals with are a very moving target. That means that # downloads break constantly. Because of that, updates should always be backported # to the latest stable release. - version = "2020.06.06"; + version = "2020.06.16.1"; src = fetchurl { url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz"; - sha256 = "1qrrr14glv0jv377n61paq55b6k58jpnwbz2sp5xfl4wnxy5hqny"; + sha256 = "1q0080cvxpfakgbzigbnl9adnga3jz1sqig2rsiq52rarqbc01px"; }; nativeBuildInputs = [ installShellFiles makeWrapper ]; diff --git a/pkgs/tools/networking/acme-client/default.nix b/pkgs/tools/networking/acme-client/default.nix index 06c2898248d0..00f8778cafd5 100644 --- a/pkgs/tools/networking/acme-client/default.nix +++ b/pkgs/tools/networking/acme-client/default.nix @@ -1,7 +1,5 @@ { stdenv -, fetchFromGitHub -, autoreconfHook -, bison +, fetchurl , apple_sdk ? null , libbsd , libressl @@ -12,22 +10,20 @@ with stdenv.lib; stdenv.mkDerivation rec { pname = "acme-client"; - version = "0.2.5"; + version = "1.0.1"; - src = fetchFromGitHub { - owner = "graywolf"; - repo = "acme-client-portable"; - rev = "v${version}"; - sha256 = "1d9yk87nj5gizkq26m4wqfh4xhlrn5xlfj7mfgvrpsdiwibqxrrw"; + src = fetchurl { + url = "https://data.wolfsden.cz/sources/acme-client-${version}.tar.xz"; + sha256 = "0gmdvmyw8a61w08hrxllypf7rpnqg0fxipbk3zmvsxj7m5i6iysj"; }; - nativeBuildInputs = [ autoreconfHook bison pkgconfig ]; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ libbsd libressl ] ++ optional stdenv.isDarwin apple_sdk.sdk; makeFlags = [ "PREFIX=${placeholder "out"}" ]; meta = { - homepage = "https://github.com/graywolf/acme-client-portable"; + homepage = "https://sr.ht/~graywolf/acme-client-portable/"; description = "Secure ACME/Let's Encrypt client"; platforms = platforms.unix; license = licenses.isc; diff --git a/pkgs/tools/networking/memtier-benchmark/default.nix b/pkgs/tools/networking/memtier-benchmark/default.nix index 3579002e4169..a45c3a2e33a1 100644 --- a/pkgs/tools/networking/memtier-benchmark/default.nix +++ b/pkgs/tools/networking/memtier-benchmark/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "memtier-benchmark"; - version = "1.2.17"; + version = "1.3.0"; src = fetchFromGitHub { owner = "redislabs"; repo = "memtier_benchmark"; rev = "refs/tags/${version}"; - sha256 = "18cka6sv3w8ffa81126nzi04if9g1wd3i3apxsgmv7xm2p8fsa39"; + sha256 = "0m2qnnc71qpdj8w421bxn0zxz6ddvzy7b0n19jvyncnzvk1ff0sq"; }; patchPhase = '' diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index e502fab10d7c..64392f49a52e 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -201,7 +201,6 @@ mapAliases ({ gupnp_igd = gupnp-igd; # added 2018-02-25 gupnptools = gupnp-tools; # added 2015-12-19 gutenberg = zola; # added 2018-11-17 - hamster-time-traker = throw "hamster-time-tracker has been removed from nixpkgs, as it was unmaintained."; # added 2019-12-10 heimdalFull = heimdal; # added 2018-05-01 hepmc = hepmc2; # added 2019-08-05 hexen = throw "hexen (SDL port) has been removed: Abandoned by upstream."; # added 2019-12-11 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8465c5060030..ac4a5b7d97f0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5871,8 +5871,6 @@ in patchage = callPackage ../applications/audio/patchage { }; - patchwork-classic = callPackage ../applications/networking/ssb/patchwork-classic { }; - pcapfix = callPackage ../tools/networking/pcapfix { }; pbzip2 = callPackage ../tools/compression/pbzip2 { }; @@ -6842,7 +6840,7 @@ in svgcleaner = callPackage ../tools/graphics/svgcleaner { }; - ssb-patchwork = callPackage ../applications/networking/ssb/patchwork { }; + ssb-patchwork = callPackage ../applications/networking/ssb-patchwork { }; ssdeep = callPackage ../tools/security/ssdeep { }; @@ -15680,6 +15678,7 @@ in dovecot = callPackage ../servers/mail/dovecot { }; dovecot_pigeonhole = callPackage ../servers/mail/dovecot/plugins/pigeonhole { }; + dovecot_fts_xapian = callPackage ../servers/mail/dovecot/plugins/fts_xapian { }; dspam = callPackage ../servers/mail/dspam { }; @@ -15770,7 +15769,7 @@ in hiawatha = callPackage ../servers/http/hiawatha {}; - home-assistant = callPackage ../servers/home-assistant { + home-assistant = callPackage ../servers/home-assistant { python3 = python37; }; @@ -20086,6 +20085,8 @@ in hakuneko = callPackage ../tools/misc/hakuneko { }; + hamster = callPackage ../applications/misc/hamster { }; + hashit = callPackage ../tools/misc/hashit { }; hactool = callPackage ../tools/compression/hactool { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5e7e70563526..c9871624e830 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3250,6 +3250,8 @@ in { plaster-pastedeploy = callPackage ../development/python-modules/plaster-pastedeploy {}; + playsound = callPackage ../development/python-modules/playsound { }; + plexapi = callPackage ../development/python-modules/plexapi { }; plexauth = callPackage ../development/python-modules/plexauth { }; |