···2727 '';2828 };29293030+ enableNsncd = mkOption {3131+ type = types.bool;3232+ default = false;3333+ description = lib.mdDoc ''3434+ Whether to use nsncd instead of nscd.3535+ This is a nscd-compatible daemon, that proxies lookups, without any caching.3636+ '';3737+ };3838+3039 user = mkOption {3140 type = types.str;3241 default = "nscd";···60516152 package = mkOption {6253 type = types.package;6363- default = if pkgs.stdenv.hostPlatform.libc == "glibc"5454+ default =5555+ if pkgs.stdenv.hostPlatform.libc == "glibc"6456 then pkgs.stdenv.cc.libc.bin6557 else pkgs.glibc.bin;6658 defaultText = lib.literalExpression ''···6959 then pkgs.stdenv.cc.libc.bin7060 else pkgs.glibc.bin;7161 '';7272- description = lib.mdDoc "package containing the nscd binary to be used by the service";6262+ description = lib.mdDoc ''6363+ package containing the nscd binary to be used by the service.6464+ Ignored when enableNsncd is set to true.6565+ '';7366 };74677568 };···9077 group = cfg.group;9178 };92799393- users.groups.${cfg.group} = {};8080+ users.groups.${cfg.group} = { };94819582 systemd.services.nscd =9696- { description = "Name Service Cache Daemon";8383+ {8484+ description = "Name Service Cache Daemon"8585+ + lib.optionalString cfg.enableNsncd " (nsncd)";97869887 before = [ "nss-lookup.target" "nss-user-lookup.target" ];9988 wants = [ "nss-lookup.target" "nss-user-lookup.target" ];···1048910590 environment = { LD_LIBRARY_PATH = nssModulesPath; };10691107107- restartTriggers = [9292+ restartTriggers = lib.optionals (!cfg.enableNsncd) ([10893 config.environment.etc.hosts.source10994 config.environment.etc."nsswitch.conf".source11095 config.environment.etc."nscd.conf".source11196 ] ++ optionals config.users.mysql.enable [11297 config.environment.etc."libnss-mysql.cfg".source11398 config.environment.etc."libnss-mysql-root.cfg".source114114- ];9999+ ]);115100116101 # In some configurations, nscd needs to be started as root; it will117102 # drop privileges after all the NSS modules have read their···121106 # sill want to read their configuration files after the privilege drop122107 # and so users can set the owner of those files to the nscd user.123108 serviceConfig =124124- { ExecStart = "!@${cfg.package}/bin/nscd nscd";125125- Type = "forking";109109+ {110110+ ExecStart =111111+ if cfg.enableNsncd then "${pkgs.nsncd}/bin/nsncd"112112+ else "!@${cfg.package}/bin/nscd nscd";113113+ Type = if cfg.enableNsncd then "notify" else "forking";126114 User = cfg.user;127115 Group = cfg.group;128116 RemoveIPC = true;···138120 PIDFile = "/run/nscd/nscd.pid";139121 Restart = "always";140122 ExecReload =141141- [ "${cfg.package}/bin/nscd --invalidate passwd"123123+ lib.optionals (!cfg.enableNsncd) [124124+ "${cfg.package}/bin/nscd --invalidate passwd"142125 "${cfg.package}/bin/nscd --invalidate group"143126 "${cfg.package}/bin/nscd --invalidate hosts"144127 ];145128 };146129 };147147-148130 };149131}
+8
nixos/modules/services/web-apps/freshrss.nix
···155155 virtualHosts.${cfg.virtualHost} = {156156 root = "${cfg.package}/p";157157158158+ # php files handling159159+ # this regex is mandatory because of the API158160 locations."~ ^.+?\.php(/.*)?$".extraConfig = ''159161 fastcgi_pass unix:${config.services.phpfpm.pools.${cfg.pool}.socket};160162 fastcgi_split_path_info ^(.+\.php)(/.*)$;163163+ # By default, the variable PATH_INFO is not set under PHP-FPM164164+ # But FreshRSS API greader.php need it. If you have a “Bad Request” error, double check this var!165165+ # NOTE: the separate $path_info variable is required. For more details, see:166166+ # https://trac.nginx.org/nginx/ticket/321167167+ set $path_info $fastcgi_path_info;168168+ fastcgi_param PATH_INFO $path_info;161169 include ${pkgs.nginx}/conf/fastcgi_params;162170 include ${pkgs.nginx}/conf/fastcgi.conf;163171 '';
···2121 192.0.2.1 somehost.test2222 '';23232424+ systemd.services.sockdump = {2525+ wantedBy = [ "multi-user.target" ];2626+ path = [2727+ # necessary for bcc to unpack kernel headers and invoke modprobe2828+ pkgs.gnutar2929+ pkgs.xz.bin3030+ pkgs.kmod3131+ ];3232+ environment.PYTHONUNBUFFERED = "1";3333+3434+ serviceConfig = {3535+ ExecStart = "${pkgs.sockdump}/bin/sockdump /var/run/nscd/socket";3636+ Restart = "on-failure";3737+ RestartSec = "1";3838+ Type = "simple";3939+ };4040+ };4141+2442 specialisation = {2543 withUnscd.configuration = { ... }: {2644 services.nscd.package = pkgs.unscd;4545+ };4646+ withNsncd.configuration = { ... }: {4747+ services.nscd.enableNsncd = true;2748 };2849 };2950 };···6140 "systemd-run --pty --property=Type=oneshot --property=DynamicUser=yes --property=User=iamatest whoami"6241 )63426464- # Test resolution of somehost.test with getent', to make sure we go via nscd4343+ # Test resolution of somehost.test with getent', to make sure we go via4444+ # nscd protocol6545 def test_host_lookups():6666- with subtest("host lookups via nscd"):4646+ with subtest("host lookups via nscd protocol"):6747 # ahosts6848 output = machine.succeed("${getent'} ahosts somehost.test")6949 assert "192.0.2.1" in output···8361 # reverse lookups (hosts)8462 assert "somehost.test" in machine.succeed("${getent'} hosts 2001:db8::1")8563 assert "somehost.test" in machine.succeed("${getent'} hosts 192.0.2.1")6464+86658766 # Test host resolution via nss modules works8867 # We rely on nss-myhostname in this case, which resolves *.localhost and···11087 start_all()11188 machine.wait_for_unit("default.target")112899090+ # give sockdump some time to finish attaching.9191+ machine.sleep(5)9292+11393 # Test all tests with glibc-nscd.11494 test_dynamic_user()11595 test_host_lookups()···129103130104 # known to fail, unscd doesn't load external NSS modules131105 # test_nss_myhostname()106106+107107+ with subtest("nsncd"):108108+ machine.succeed('${specialisations}/withNsncd/bin/switch-to-configuration test')109109+ machine.wait_for_unit("default.target")110110+111111+ test_dynamic_user()112112+ test_host_lookups()113113+ test_nss_myhostname()132114 '';133115})
···11+{ lib22+, stdenv33+, fetchurl44+, intltool55+, pkg-config66+, wrapGAppsHook77+, gssdp88+, gtk399+, gupnp1010+}:1111+1212+stdenv.mkDerivation rec {1313+ pname = "upnp-router-control";1414+ version = "0.3.1";1515+1616+ src = fetchurl {1717+ url = "https://launchpad.net/upnp-router-control/trunk/${version}/+download/upnp-router-control-${version}.tar.gz";1818+ hash = "sha256-bYbw4Z5hDlFTSGk5XE2gnnXRPYMl4IzV+kzlwfR98yg=";1919+ };2020+2121+ nativeBuildInputs = [2222+ intltool2323+ pkg-config2424+ wrapGAppsHook2525+ ];2626+2727+ buildInputs = [2828+ gssdp2929+ gtk33030+ gupnp3131+ ];3232+3333+ meta = with lib; {3434+ # also https://gitlab.gnome.org/DnaX/upnp-router-control3535+ homepage = "https://launchpad.net/upnp-router-control";3636+ description = "Access some parameters of the router and manage port forwarding";3737+ longDescription = ''3838+ A GTK application to access some parameters of the router like:3939+ the network speed, the external IP and the model name.4040+ It can manage port forwarding through a simple GUI interface.4141+ '';4242+ license = licenses.gpl3Plus;4343+ maintainers = with maintainers; [ fgaz ];4444+ platforms = platforms.all;4545+ };4646+}
···1313 if lib.versionAtLeast ocaml.version "4.14"1414 then {1515 name = "lsp";1616- version = "1.12.4";1717- sha256 = "sha256-kZuYAny8VjWdq+ipEdPSTRcGzqjNBOgXOi0dOwb52EY=";1616+ version = "1.14.1";1717+ sha256 = "sha256-5kxMM90Dd5H8yb7f1NYV3abRaePqztFQ82VTnayradk=";1818 } else if lib.versionAtLeast ocaml.version "4.13"1919 then {2020 name = "jsonrpc";
···2121in2222buildPythonPackage rec {2323 pname = "jax";2424- version = "0.3.16";2424+ version = "0.3.23";2525 format = "setuptools";26262727 disabled = pythonOlder "3.7";···3030 owner = "google";3131 repo = pname;3232 rev = "jax-v${version}";3333- hash = "sha256-4idh7boqBXSO9vEHxEcrzXjBIrKmmXiCf6cXh7En1/I=";3333+ hash = "sha256-ruXOwpBwpi1G8jgH9nhbWbs14JupwWkjh+Wzrj8HVU4=";3434 };35353636 # jaxlib is _not_ included in propagatedBuildInputs because there are···9292 "tests/sparse_test.py"9393 ];94949595- pythonImportsCheck = [9696- "jax"9797- ];9595+ # As of 0.3.22, `import jax` does not work without jaxlib being installed.9696+ pythonImportsCheck = [ ];98979998 meta = with lib; {10099 description = "Differentiate, compile, and transform Numpy code";
+23-44
pkgs/development/python-modules/jaxlib/bin.nix
···33# https://storage.googleapis.com/jax-releases/libtpu_releases.html.4455# For future reference, the easiest way to test the GPU backend is to run66-# NIX_PATH=.. nix-shell -p python3 python3Packages.jax "python3Packages.jaxlib.override { cudaSupport = true; }"66+# NIX_PATH=.. nix-shell -p python3 python3Packages.jax "python3Packages.jaxlib-bin.override { cudaSupport = true; }"77# export XLA_FLAGS=--xla_gpu_force_compilation_parallelism=188# python -c "from jax.lib import xla_bridge; assert xla_bridge.get_backend().platform == 'gpu'"99# python -c "from jax import random; random.PRNGKey(0)"···3535 inherit (cudaPackages) cudatoolkit cudnn;3636in37373838-# There are no jaxlib wheels targeting cudnn <8.0.5, and although there are3939-# wheels for cudatoolkit <11.1, we don't support them.4038assert cudaSupport -> lib.versionAtLeast cudatoolkit.version "11.1";4141-assert cudaSupport -> lib.versionAtLeast cudnn.version "8.0.5";3939+assert cudaSupport -> lib.versionAtLeast cudnn.version "8.2";42404341let4444- version = "0.3.0";4242+ version = "0.3.22";45434644 pythonVersion = python.pythonVersion;47454848- # Find new releases at https://storage.googleapis.com/jax-releases. When4949- # upgrading, you can get these hashes from prefetch.sh.4646+ # Find new releases at https://storage.googleapis.com/jax-releases/jax_releases.html.4747+ # When upgrading, you can get these hashes from prefetch.sh. See4848+ # https://github.com/google/jax/issues/12879 as to why this specific URL is4949+ # the correct index.5050 cpuSrcs = {5151- "3.9" = fetchurl {5252- url = "https://storage.googleapis.com/jax-releases/nocuda/jaxlib-${version}-cp39-none-manylinux2010_x86_64.whl";5353- hash = "sha256-AfBVqoqChEXlEC5PgbtQ5rQzcbwo558fjqCjSPEmN5Q=";5151+ "x86_64-linux" = fetchurl {5252+ url = "https://storage.googleapis.com/jax-releases/nocuda/jaxlib-${version}-cp310-cp310-manylinux2014_x86_64.whl";5353+ hash = "sha256-w2wo0jk+1BdEkNwfSZRQbebdI4Ac8Kgn0MB0cIMcWU4=";5454 };5555- "3.10" = fetchurl {5656- url = "https://storage.googleapis.com/jax-releases/nocuda/jaxlib-${version}-cp310-none-manylinux2010_x86_64.whl";5757- hash = "sha256-9uBkFOO8LlRpO6AP+S8XK9/d2yRdyHxQGlbAjShqHRQ=";5555+ "aarch64-darwin" = fetchurl {5656+ url = "https://storage.googleapis.com/jax-releases/mac/jaxlib-${version}-cp310-cp310-macosx_11_0_arm64.whl";5757+ hash = "sha256-7Ir55ZhBkccqfoa56WVBF8QwFAC2ws4KFHDkfVw6zm0=";5858 };5959 };60606161- gpuSrcs = {6262- "3.9-805" = fetchurl {6363- url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn805-cp39-none-manylinux2010_x86_64.whl";6464- hash = "sha256-CArIhzM5FrQi3TkdqpUqCeDQYyDMVXlzKFgjNXjLJXw=";6565- };6666- "3.9-82" = fetchurl {6767- url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn82-cp39-none-manylinux2010_x86_64.whl";6868- hash = "sha256-Q0plVnA9pUNQ+gCHSXiLNs4i24xCg8gBGfgfYe3bot4=";6969- };7070- "3.10-805" = fetchurl {7171- url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn805-cp310-none-manylinux2010_x86_64.whl";7272- hash = "sha256-JopevCEAs0hgDngIId6NqbLam5YfcS8Lr9cEffBKp1U=";7373- };7474- "3.10-82" = fetchurl {7575- url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn82-cp310-none-manylinux2010_x86_64.whl";7676- hash = "sha256-2f5TwbdP7EfQNRM3ZcJXCAkS2VXBwNYH6gwT9pdu3Go=";7777- };6161+ gpuSrc = fetchurl {6262+ url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn82-cp310-cp310-manylinux2014_x86_64.whl";6363+ hash = "sha256-rabU62p4fF7Tu/6t8LNYZdf6YO06jGry/JtyFZeamCs=";7864 };7965in8066buildPythonPackage rec {···6882 inherit version;6983 format = "wheel";70847171- # At the time of writing (2022-03-03), there are releases for <=3.10.7272- # Supporting all of them is a pain, so we focus on 3.9, the current nixpkgs7373- # python3 version, and 3.10.7474- disabled = !(pythonVersion == "3.9" || pythonVersion == "3.10");8585+ # At the time of writing (2022-10-19), there are releases for <=3.10.8686+ # Supporting all of them is a pain, so we focus on 3.10, the current nixpkgs8787+ # python version.8888+ disabled = !(pythonVersion == "3.10");75897676- src =7777- if !cudaSupport then cpuSrcs."${pythonVersion}" else7878- let7979- # jaxlib wheels are currently provided for cudnn versions at least 8.0.5 and8080- # 8.2. Try to use 8.2 whenever possible.8181- cudnnVersion = if (lib.versionAtLeast cudnn.version "8.2") then "82" else "805";8282- in8383- gpuSrcs."${pythonVersion}-${cudnnVersion}";9090+ src = if !cudaSupport then cpuSrcs."${stdenv.hostPlatform.system}" else gpuSrc;84918592 # Prebuilt wheels are dynamically linked against things that nix can't find.8693 # Run `autoPatchelfHook` to automagically fix them.8787- nativeBuildInputs = [ autoPatchelfHook ] ++ lib.optional cudaSupport addOpenGLRunpath;9494+ nativeBuildInputs = lib.optionals cudaSupport [ autoPatchelfHook addOpenGLRunpath ];8895 # Dynamic link dependencies8996 buildInputs = [ stdenv.cc.cc ];9097···121142 sourceProvenance = with sourceTypes; [ binaryNativeCode ];122143 license = licenses.asl20;123144 maintainers = with maintainers; [ samuela ];124124- platforms = [ "x86_64-linux" ];145145+ platforms = [ "aarch64-darwin" "x86_64-linux" ];125146 };126147}
···11+{ lib22+, stdenv33+, fetchurl44+, cmake55+, pkg-config66+, util-linux77+, libGL88+, freetype99+, pugixml1010+, SDL21111+, SDL2_image1212+, openal1313+, libogg1414+, libvorbis1515+, libGLU1616+, synfigstudio1717+, inkscape1818+, imagemagick1919+, pngquant2020+, xz2121+}:2222+2323+stdenv.mkDerivation rec {2424+ pname = "hikounomizu";2525+ version = "0.9.2";2626+2727+ src = fetchurl {2828+ url = "http://download.tuxfamily.org/hnm/${version}/hikounomizu-${version}-src.tar.bz2";2929+ hash = "sha256-ZtvzQAiYG4IcdgKiBDIQFOJVnLbz1TsiIbdZr/0Y2U8=";3030+ };3131+3232+ nativeBuildInputs = [3333+ cmake3434+ pkg-config3535+ # for make data3636+ util-linux3737+ synfigstudio.synfig3838+ inkscape3939+ imagemagick4040+ pngquant4141+ xz4242+ ];4343+4444+ buildInputs = [4545+ libGL4646+ freetype4747+ pugixml4848+ SDL24949+ SDL2_image5050+ openal5151+ libogg5252+ libvorbis5353+ libGLU5454+ ];5555+5656+ postBuild = ''5757+ make data -j$NIX_BUILD_CORES5858+ '';5959+6060+ meta = with lib; {6161+ description = "A free platform-based fighting game";6262+ longDescription = ''6363+ Hikou no mizu (ハイクの水) is a free platform-based fighting game,6464+ licensed under the GNU GPL v3 (program) and the LAL (graphics).6565+ It works on many operating systems including GNU/Linux, *BSD, Haiku,6666+ OS X and Windows.6767+6868+ The characters use natural powers such as water or lightning,6969+ but they can also (mostly for now) fight the traditional way!7070+ '';7171+ homepage = "https://hikounomizu.org/";7272+ downloadPage = "https://hikounomizu.org/download.html";7373+ maintainers = with maintainers; [ fgaz ];7474+ license = [ licenses.gpl3Plus licenses.lal13 ];7575+ platforms = platforms.all;7676+ };7777+}
+30
pkgs/os-specific/linux/nsncd/default.nix
···11+{ lib22+, stdenv33+, fetchFromGitHub44+, rustPlatform55+, nix-gitignore66+}:77+88+rustPlatform.buildRustPackage rec {99+ pname = "nsncd";1010+ version = "unstable-2021-10-20";1111+1212+ src = fetchFromGitHub {1313+ owner = "nix-community";1414+ repo = "nsncd";1515+ rev = "b9425070bb308565a6e4dc5aefd568952a07a4ed";1616+ hash = "sha256-ZjInzPJo+PWAM2gAKhlasLXiqo+2Df4DIXpNwtqQVc8=";1717+ };1818+1919+ cargoSha256 = "sha256-hxdI+HHB0PB/zDMI21Pg5Xr9mTDn4T+OcAAenUox4bs=";2020+2121+ meta = with lib; {2222+ description = "the name service non-caching daemon";2323+ longDescription = ''2424+ nsncd is a nscd-compatible daemon that proxies lookups, without caching.2525+ '';2626+ homepage = "https://github.com/twosigma/nsncd";2727+ license = licenses.asl20;2828+ maintainers = with maintainers; [ flokli ninjatrappeur ];2929+ };3030+}