diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 32201333c37b..06b9c10dfec6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -565,7 +565,7 @@ Names of files and directories should be in lowercase, with dashes between words - Do not use tab characters, i.e. configure your editor to use soft tabs. For instance, use `(setq-default indent-tabs-mode nil)` in Emacs. Everybody has different tab settings so it’s asking for trouble. -- Use `lowerCamelCase` for variable names, not `UpperCamelCase`. Note, this rule does not apply to package attribute names, which instead follow the rules in [](#sec-package-naming). +- Use `lowerCamelCase` for variable names, not `UpperCamelCase`. Note, this rule does not apply to package attribute names, which instead follow the rules in [package naming](./pkgs/README.md#package-naming). - Function calls with attribute set arguments are written as diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 5294b18995e1..5406d49cd69d 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -19356,6 +19356,11 @@ github = "ymeister"; githubId = 47071325; }; + ymstnt = { + name = "YMSTNT"; + github = "ymstnt"; + githubId = 21342713; + }; yoavlavi = { email = "yoav@yoavlavi.com"; github = "yoav-lavi"; diff --git a/nixos/modules/services/security/fail2ban.nix b/nixos/modules/services/security/fail2ban.nix index 7059284850a5..235f29ab8a6a 100644 --- a/nixos/modules/services/security/fail2ban.nix +++ b/nixos/modules/services/security/fail2ban.nix @@ -103,9 +103,9 @@ in }; bantime = mkOption { - default = null; - type = types.nullOr types.str; - example = "10m"; + default = "10m"; + type = types.str; + example = "1h"; description = lib.mdDoc "Number of seconds that a host is banned."; }; diff --git a/pkgs/applications/science/biology/bowtie2/default.nix b/pkgs/applications/science/biology/bowtie2/default.nix index e5c9c2864225..356e90555f8d 100644 --- a/pkgs/applications/science/biology/bowtie2/default.nix +++ b/pkgs/applications/science/biology/bowtie2/default.nix @@ -1,26 +1,62 @@ -{ lib, stdenv, fetchFromGitHub, cmake, tbb, zlib, python3, perl }: +{ lib +, stdenv +, fetchFromGitHub +, cmake +, perl +, python3 +, tbb +, zlib +, runCommand +, bowtie2 +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "bowtie2"; version = "2.5.2"; src = fetchFromGitHub { owner = "BenLangmead"; - repo = pname; - rev = "v${version}"; - sha256 = "sha256-Bem4SHY/74suZPDbw/rwKMLBn3bRq5ooHbBoVnKuYk0="; + repo = "bowtie2"; + rev = "refs/tags/v${finalAttrs.version}"; + fetchSubmodules = true; + hash = "sha256-rWeopeYuCk9ZhJX2SFCcxZWcjXjjTiVRiwkzLQcIgd0="; }; + # because of this flag, gcc on aarch64 cannot find the Threads + # Could NOT find Threads (missing: Threads_FOUND) + # TODO: check with other distros and report upstream + postPatch = '' + substituteInPlace CMakeLists.txt \ + --replace "-m64" "" + ''; + nativeBuildInputs = [ cmake ]; buildInputs = [ tbb zlib python3 perl ]; + cmakeFlags = lib.optional (!stdenv.hostPlatform.isx86) ["-DCMAKE_CXX_FLAGS=-I${finalAttrs.src}/third_party"]; + + # ctest fails because of missing dependencies between tests + doCheck = false; + + passthru.tests = { + ctest = runCommand "${finalAttrs.pname}-test" { } '' + mkdir $out + ${lib.getExe bowtie2} -x ${finalAttrs.src}/example/index/lambda_virus ${finalAttrs.src}/example/reads/longreads.fq -u 10 + ${bowtie2}/bin/bowtie2-build-s -c GGGCGGCGACCTCGCGGGTTTTCGCTA $out/small + ${bowtie2}/bin/bowtie2-inspect-s $out/small + ${bowtie2}/bin/bowtie2-build-l -c GGGCGGCGACCTCGCGGGTTTTCGCTA $out/large + ${bowtie2}/bin/bowtie2-inspect-l $out/large + ''; + }; + meta = with lib; { description = "An ultrafast and memory-efficient tool for aligning sequencing reads to long reference sequences"; - license = licenses.gpl3; + license = licenses.gpl3Plus; homepage = "http://bowtie-bio.sf.net/bowtie2"; + changelog = "https://github.com/BenLangmead/bowtie2/releases/tag/${finalAttrs.src.rev}"; maintainers = with maintainers; [ rybern ]; platforms = platforms.all; - broken = stdenv.isAarch64; # only x86 is supported + mainProgram = "bowtie2"; }; -} +}) diff --git a/pkgs/by-name/hi/hifile/package.nix b/pkgs/by-name/hi/hifile/package.nix new file mode 100644 index 000000000000..bf2bda5100dc --- /dev/null +++ b/pkgs/by-name/hi/hifile/package.nix @@ -0,0 +1,41 @@ +{ lib, appimageTools, fetchurl }: + +let + version = "0.9.9.5"; + pname = "hifile"; + + src = fetchurl { + url = "https://www.hifile.app/files/HiFile-${version}.AppImage"; + hash = "sha256-Ks/NLPm5loo9q8pT0LdtfcrC38203beNE74sbEpyuJM="; + }; + + appimageContents = appimageTools.extractType2 { + inherit pname version src; + }; + +in +appimageTools.wrapType2 rec { + inherit pname version src; + + extraInstallCommands = '' + mv $out/bin/${pname}-${version} $out/bin/${pname} + + install -m 444 -D ${appimageContents}/HiFile.desktop $out/share/applications/HiFile.desktop + install -m 444 -D ${appimageContents}/HiFile.png $out/share/icons/hicolor/512x512/apps/HiFile.png + substituteInPlace $out/share/applications/HiFile.desktop \ + --replace 'Exec=HiFile' 'Exec=${pname}' + ''; + + meta = with lib; { + description = "Dual-pane graphical file manager for Windows, macOS and Linux"; + longDescription = '' + HiFile is the next evolution of file managers. Its mission is to increase your productivity whenever you work with files or folders. It aims to be better in every way - more convenient, more versatile, more efficient, more elegant, more customizable, and more fun. + ''; + homepage = "https://www.hifile.app/"; + downloadPage = "https://www.hifile.app/download"; + license = licenses.unfree; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + maintainers = with maintainers; [ ymstnt ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/by-name/tr/trealla/package.nix b/pkgs/by-name/tr/trealla/package.nix index 1a9d5569f235..6aee9c1598b9 100644 --- a/pkgs/by-name/tr/trealla/package.nix +++ b/pkgs/by-name/tr/trealla/package.nix @@ -17,13 +17,13 @@ assert lib.elem lineEditingLibrary [ "isocline" "readline" ]; stdenv.mkDerivation (finalAttrs: { pname = "trealla"; - version = "2.28.12"; + version = "2.29.36"; src = fetchFromGitHub { owner = "trealla-prolog"; repo = "trealla"; rev = "v${finalAttrs.version}"; - hash = "sha256-uWCpCjYFtK2pNeHHZWhWI6YZ+cllQpkKz//nHracl5s="; + hash = "sha256-tQp2DOBW71Wm1aQqspW9tuH8aM8ir+ilZiENdElB/+0="; }; postPatch = '' diff --git a/pkgs/development/compilers/flix/default.nix b/pkgs/development/compilers/flix/default.nix index 47a84a6e5f2d..9ce582623fe1 100644 --- a/pkgs/development/compilers/flix/default.nix +++ b/pkgs/development/compilers/flix/default.nix @@ -2,11 +2,11 @@ stdenvNoCC.mkDerivation rec { pname = "flix"; - version = "0.40.0"; + version = "0.41.0"; src = fetchurl { url = "https://github.com/flix/flix/releases/download/v${version}/flix.jar"; - sha256 = "sha256-NVQY2TgIR9ROy4x8PWxCjuaOkNx0bcUA4oZHjpQbHc4="; + sha256 = "sha256-bDeqwk+grkCxmGE9H8Ks7Q8KvLxNCzaLe44DlR6E7YE="; }; dontUnpack = true; diff --git a/pkgs/development/python-modules/wallbox/default.nix b/pkgs/development/python-modules/wallbox/default.nix index 4fe26418ef83..a53344a76fd1 100644 --- a/pkgs/development/python-modules/wallbox/default.nix +++ b/pkgs/development/python-modules/wallbox/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "wallbox"; - version = "0.4.14"; + version = "0.5.1"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-HKlq5DPG3HD9i9LLTJdlzEFim+2hBdSfKl43BojhEf8="; + hash = "sha256-EDEB7/CkrfYSNcSh55Itrj6rThsNKeuj8lHLAY+Qml4="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/tools/misc/texlab/default.nix b/pkgs/development/tools/misc/texlab/default.nix index e33a288286ee..9bc36338ff2e 100644 --- a/pkgs/development/tools/misc/texlab/default.nix +++ b/pkgs/development/tools/misc/texlab/default.nix @@ -15,16 +15,16 @@ let in rustPlatform.buildRustPackage rec { pname = "texlab"; - version = "5.10.0"; + version = "5.10.1"; src = fetchFromGitHub { owner = "latex-lsp"; repo = "texlab"; rev = "refs/tags/v${version}"; - hash = "sha256-MTWaGgDIDo3CaRHyHWqliKsPdbU/TZPsyfF7SoHTnhk="; + hash = "sha256-ACdiFkV138jDIrRe+baYo+r9vCO4cyRyO2ck7OKakFY="; }; - cargoHash = "sha256-8Vrp4d5luf91pKpUC4wWn4otsanqopCHwCjcnfTzyLk="; + cargoHash = "sha256-bEeQOOucXd4HNTR6SmidAfDkZ1tT7ORmUxrNx+3FNRw="; outputs = [ "out" ] ++ lib.optional (!isCross) "man"; @@ -41,7 +41,7 @@ rustPlatform.buildRustPackage rec { # generate the man page postInstall = lib.optionalString (!isCross) '' # TexLab builds man page separately in CI: - # https://github.com/latex-lsp/texlab/blob/v5.9.2/.github/workflows/publish.yml#L117-L121 + # https://github.com/latex-lsp/texlab/blob/v5.10.1/.github/workflows/publish.yml#L117-L121 help2man --no-info "$out/bin/texlab" > texlab.1 installManPage texlab.1 ''; diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 5c03312cc75f..35cdb6311df3 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -68,7 +68,7 @@ mipsel-linux = import ./bootstrap-files/mipsel-unknown-linux-gnu.nix; mips64el-linux = import (if localSystem.isMips64n32 - then ./bootstrap-files/mips64el-unknown-linux-gnuabin32.nix.nix + then ./bootstrap-files/mips64el-unknown-linux-gnuabin32.nix else ./bootstrap-files/mips64el-unknown-linux-gnuabi64.nix); powerpc64le-linux = import ./bootstrap-files/powerpc64le-unknown-linux-gnu.nix; riscv64-linux = import ./bootstrap-files/riscv64-unknown-linux-gnu.nix; diff --git a/pkgs/tools/admin/syft/default.nix b/pkgs/tools/admin/syft/default.nix index 3f6567b09f0c..c596c709977c 100644 --- a/pkgs/tools/admin/syft/default.nix +++ b/pkgs/tools/admin/syft/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "syft"; - version = "0.92.0"; + version = "0.93.0"; src = fetchFromGitHub { owner = "anchore"; repo = pname; rev = "v${version}"; - hash = "sha256-YmzizpcAfE4+Rfq5ydQnDQBo4R+pAyudfi+fqD9EZP0="; + hash = "sha256-e8d+CK7rRbyHeRHOjK3tGFIBHuosdV4AMetUQar54E4="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -22,7 +22,7 @@ buildGoModule rec { }; # hash mismatch with darwin proxyVendor = true; - vendorHash = "sha256-siOZWhHqNokkYAPwuXQCs4T1yBiEWUTJzhfbH/Z2uBk="; + vendorHash = "sha256-BUCe2v80tHAqMBwa6xae3ZOTOok8msM6hFh6d9D4xZA="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/tools/misc/ckb-next/default.nix b/pkgs/tools/misc/ckb-next/default.nix index f9309ecf81dd..549cb543af19 100644 --- a/pkgs/tools/misc/ckb-next/default.nix +++ b/pkgs/tools/misc/ckb-next/default.nix @@ -1,17 +1,17 @@ -{ lib, mkDerivation, fetchFromGitHub, substituteAll, udev, stdenv +{ lib, wrapQtAppsHook, fetchFromGitHub, substituteAll, udev, stdenv , pkg-config, qtbase, cmake, zlib, kmod, libXdmcp, qttools, qtx11extras, libdbusmenu -, withPulseaudio ? stdenv.isLinux, libpulseaudio +, withPulseaudio ? stdenv.isLinux, libpulseaudio, quazip }: -mkDerivation rec { - version = "0.5.0"; +stdenv.mkDerivation rec { + version = "0.6.0"; pname = "ckb-next"; src = fetchFromGitHub { owner = "ckb-next"; repo = "ckb-next"; rev = "v${version}"; - sha256 = "sha256-yR1myagAqavAR/7lPdufcrJpPmXW7r4N4pxTMF6NbuE="; + hash = "sha256-G0cvET3wMIi4FlBmaTkdTyYtcdVGzK4X0C2HYZr43eg="; }; buildInputs = [ @@ -22,9 +22,11 @@ mkDerivation rec { qttools qtx11extras libdbusmenu + quazip ] ++ lib.optional withPulseaudio libpulseaudio; nativeBuildInputs = [ + wrapQtAppsHook pkg-config cmake ];