push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
{
lib,
rustPlatform,
fetchCrate,
}:
rustPlatform.buildRustPackage rec {
pname = "krabby";
version = "0.3.0";
src = fetchCrate {
inherit pname version;
hash = "sha256-UcvCIazuVoqYb4iz62MrOVtQli4EqzrEpg3imv3sXHY=";
};
cargoHash = "sha256-aJBZtRs83KwnxlgNn/5zEGCw4YUl4mRcs1dFi2uaIrc=";
meta = {
description = "Print pokemon sprites in your terminal";
homepage = "https://github.com/yannjor/krabby";
changelog = "https://github.com/yannjor/krabby/releases/tag/v${version}";
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ ruby0b ];
mainProgram = "krabby";
};
}

View File

@@ -0,0 +1,63 @@
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
pkg-config,
btrfs-progs,
gpgme,
nix-update-script,
}:
buildGoModule rec {
pname = "kraftkit";
version = "0.11.6";
src = fetchFromGitHub {
owner = "unikraft";
repo = "kraftkit";
rev = "v${version}";
hash = "sha256-a6c7g2cxrawE7BRpcrsefCQ7xQ56wVOGjFexdkOKnv0=";
};
nativeBuildInputs = [
pkg-config
];
buildInputs = [
gpgme
]
++ lib.optionals stdenv.hostPlatform.isLinux [
btrfs-progs
];
vendorHash = "sha256-lwgxedKLcuV6RucbU26sDO+9j+8uWkignJDomFHaSXU=";
ldflags = [
"-s"
"-w"
"-X kraftkit.sh/internal/version.version=${version}"
];
subPackages = [ "cmd/kraft" ];
passthru = {
updateScript = nix-update-script {
extraArgs = [
"--version-regex"
"^v([0-9.]+)"
];
};
};
meta = {
description = "Build and use highly customized and ultra-lightweight unikernel VMs";
homepage = "https://github.com/unikraft/kraftkit";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [
dit7ya
cloudripper
];
mainProgram = "kraft";
};
}

448
pkgs/by-name/kr/krakatau2/Cargo.lock generated Normal file
View File

@@ -0,0 +1,448 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "adler2"
version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627"
[[package]]
name = "aho-corasick"
version = "1.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
dependencies = [
"memchr",
]
[[package]]
name = "anyhow"
version = "1.0.97"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dcfed56ad506cb2c684a14971b8861fdc3baaaae314b9e5f9bb532cbe3ba7a4f"
[[package]]
name = "atty"
version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
dependencies = [
"hermit-abi",
"libc",
"winapi",
]
[[package]]
name = "autocfg"
version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
[[package]]
name = "bitflags"
version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "byteorder"
version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
[[package]]
name = "cfg-if"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "clap"
version = "3.2.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123"
dependencies = [
"atty",
"bitflags",
"clap_derive",
"clap_lex",
"indexmap",
"once_cell",
"strsim",
"termcolor",
"textwrap",
]
[[package]]
name = "clap_derive"
version = "3.2.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008"
dependencies = [
"heck",
"proc-macro-error",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "clap_lex"
version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5"
dependencies = [
"os_str_bytes",
]
[[package]]
name = "crc32fast"
version = "1.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3"
dependencies = [
"cfg-if",
]
[[package]]
name = "crossbeam-utils"
version = "0.8.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
[[package]]
name = "flate2"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "11faaf5a5236997af9848be0bef4db95824b1d534ebc64d0f0c6cf3e67bd38dc"
dependencies = [
"crc32fast",
"miniz_oxide",
]
[[package]]
name = "hashbrown"
version = "0.12.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
[[package]]
name = "heck"
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
[[package]]
name = "hermit-abi"
version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
dependencies = [
"libc",
]
[[package]]
name = "hexf-parse"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
[[package]]
name = "indexmap"
version = "1.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
dependencies = [
"autocfg",
"hashbrown",
]
[[package]]
name = "krakatau2"
version = "2.0.0-alpha"
dependencies = [
"anyhow",
"clap",
"hexf-parse",
"lazy_static",
"regex",
"typed-arena",
"zip",
]
[[package]]
name = "lazy_static"
version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
[[package]]
name = "libc"
version = "0.2.171"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6"
[[package]]
name = "memchr"
version = "2.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
[[package]]
name = "miniz_oxide"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e3e04debbb59698c15bacbb6d93584a8c0ca9cc3213cb423d31f760d8843ce5"
dependencies = [
"adler2",
]
[[package]]
name = "once_cell"
version = "1.21.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
[[package]]
name = "os_str_bytes"
version = "6.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1"
[[package]]
name = "proc-macro-error"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [
"proc-macro-error-attr",
"proc-macro2",
"quote",
"syn",
"version_check",
]
[[package]]
name = "proc-macro-error-attr"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [
"proc-macro2",
"quote",
"version_check",
]
[[package]]
name = "proc-macro2"
version = "1.0.94"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84"
dependencies = [
"unicode-ident",
]
[[package]]
name = "quote"
version = "1.0.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d"
dependencies = [
"proc-macro2",
]
[[package]]
name = "regex"
version = "1.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
dependencies = [
"aho-corasick",
"memchr",
"regex-automata",
"regex-syntax",
]
[[package]]
name = "regex-automata"
version = "0.4.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
dependencies = [
"aho-corasick",
"memchr",
"regex-syntax",
]
[[package]]
name = "regex-syntax"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
[[package]]
name = "strsim"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
[[package]]
name = "syn"
version = "1.0.109"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
[[package]]
name = "termcolor"
version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
dependencies = [
"winapi-util",
]
[[package]]
name = "textwrap"
version = "0.16.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057"
[[package]]
name = "typed-arena"
version = "2.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a"
[[package]]
name = "unicode-ident"
version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512"
[[package]]
name = "version_check"
version = "0.9.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
[[package]]
name = "winapi"
version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
dependencies = [
"winapi-i686-pc-windows-gnu",
"winapi-x86_64-pc-windows-gnu",
]
[[package]]
name = "winapi-i686-pc-windows-gnu"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
[[package]]
name = "winapi-util"
version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
dependencies = [
"windows-sys",
]
[[package]]
name = "winapi-x86_64-pc-windows-gnu"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
name = "windows-sys"
version = "0.59.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
dependencies = [
"windows-targets",
]
[[package]]
name = "windows-targets"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
dependencies = [
"windows_aarch64_gnullvm",
"windows_aarch64_msvc",
"windows_i686_gnu",
"windows_i686_gnullvm",
"windows_i686_msvc",
"windows_x86_64_gnu",
"windows_x86_64_gnullvm",
"windows_x86_64_msvc",
]
[[package]]
name = "windows_aarch64_gnullvm"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
[[package]]
name = "windows_aarch64_msvc"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
[[package]]
name = "windows_i686_gnu"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
[[package]]
name = "windows_i686_gnullvm"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
[[package]]
name = "windows_i686_msvc"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
[[package]]
name = "windows_x86_64_gnu"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
[[package]]
name = "windows_x86_64_gnullvm"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
[[package]]
name = "windows_x86_64_msvc"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]]
name = "zip"
version = "0.6.4"
source = "git+https://github.com/Storyyeller/zip.git#5947af7a779ea216915c398f85ee22599a07e58d"
dependencies = [
"byteorder",
"crc32fast",
"crossbeam-utils",
"flate2",
]

View File

@@ -0,0 +1,39 @@
{
lib,
rustPlatform,
fetchFromGitHub,
}:
let
src = fetchFromGitHub {
owner = "Storyyeller";
repo = "Krakatau";
rev = "6da0abc20603fecaaa0e3300ebd97e04f07c2fb6";
hash = "sha256-4ROx/XAWRzP8NWDYndDMBUXPw+nAu4nH4ukkyzS8eZ8=";
};
in
rustPlatform.buildRustPackage {
inherit src;
pname = "krakatau2";
version = "0-unstable-2025-02-01";
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"zip-0.6.4" = "sha256-x56JHdFdoLNhT/TC9sQQD4Ouu2LZ+D5CrS1mMyFVJBg=";
};
};
postPatch = ''
ln -s ${./Cargo.lock} Cargo.lock
'';
meta = {
inherit (src.meta) homepage;
description = "Java decompiler, assembler, and disassembler";
license = lib.licenses.gpl3Only;
mainProgram = "krak2";
maintainers = with lib.maintainers; [
rhendric
];
};
}

View File

@@ -0,0 +1,32 @@
{
lib,
python3Packages,
fetchPypi,
}:
python3Packages.buildPythonApplication rec {
pname = "krakenx";
version = "0.0.3";
format = "pyproject";
src = fetchPypi {
inherit pname version;
sha256 = "1khw1rxra5hn7hwp16i6kgj89znq8vjsyly3r2dxx2z2bddil000";
};
build-system = [ python3Packages.setuptools ];
dependencies = [ python3Packages.pyusb ];
doCheck = false; # there are no tests
pythonImportsCheck = [ "krakenx" ];
meta = with lib; {
description = "Python script to control NZXT cooler Kraken X52/X62/X72";
homepage = "https://github.com/KsenijaS/krakenx";
license = licenses.gpl2Only;
maintainers = [ ];
platforms = platforms.linux;
};
}

View File

@@ -0,0 +1,3 @@
source 'https://rubygems.org'
gem 'krane'

View File

@@ -0,0 +1,125 @@
GEM
remote: https://rubygems.org/
specs:
activesupport (8.0.2)
base64
benchmark (>= 0.3)
bigdecimal
concurrent-ruby (~> 1.0, >= 1.3.1)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
logger (>= 1.4.2)
minitest (>= 5.1)
securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5)
uri (>= 0.13.1)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
base64 (0.3.0)
benchmark (0.4.1)
bigdecimal (3.2.2)
colorize (0.8.1)
concurrent-ruby (1.3.5)
connection_pool (2.5.3)
domain_name (0.6.20240107)
drb (2.2.3)
ejson (1.5.3)
faraday (2.13.2)
faraday-net_http (>= 2.0, < 3.5)
json
logger
faraday-net_http (3.4.1)
net-http (>= 0.5.0)
ffi (1.17.2)
ffi-compiler (1.3.2)
ffi (>= 1.15.5)
rake
google-cloud-env (2.3.1)
base64 (~> 0.2)
faraday (>= 1.0, < 3.a)
google-logging-utils (0.2.0)
googleauth (1.14.0)
faraday (>= 1.0, < 3.a)
google-cloud-env (~> 2.2)
google-logging-utils (~> 0.1)
jwt (>= 1.4, < 3.0)
multi_json (~> 1.11)
os (>= 0.9, < 2.0)
signet (>= 0.16, < 2.a)
http (5.3.1)
addressable (~> 2.8)
http-cookie (~> 1.0)
http-form_data (~> 2.2)
llhttp-ffi (~> 0.5.0)
http-accept (1.7.0)
http-cookie (1.0.8)
domain_name (~> 0.5)
http-form_data (2.3.0)
i18n (1.14.7)
concurrent-ruby (~> 1.0)
json (2.12.2)
jsonpath (1.1.5)
multi_json
jwt (2.10.2)
base64
krane (3.7.4)
activesupport (>= 5.0)
colorize (~> 0.8)
concurrent-ruby (~> 1.1)
ejson (~> 1.0)
googleauth (~> 1.2)
jsonpath (~> 1.0)
kubeclient (~> 4.9)
multi_json
statsd-instrument (>= 2.8, < 3.9)
thor (>= 1.0, < 2.0)
kubeclient (4.12.0)
http (>= 3.0, < 6.0)
jsonpath (~> 1.0)
recursive-open-struct (~> 1.1, >= 1.1.1)
rest-client (~> 2.0)
llhttp-ffi (0.5.1)
ffi-compiler (~> 1.0)
rake (~> 13.0)
logger (1.7.0)
mime-types (3.7.0)
logger
mime-types-data (~> 3.2025, >= 3.2025.0507)
mime-types-data (3.2025.0708)
minitest (5.25.5)
multi_json (1.16.0)
net-http (0.6.0)
uri
netrc (0.11.0)
os (1.1.4)
ostruct (0.6.2)
public_suffix (6.0.2)
rake (13.3.0)
recursive-open-struct (1.3.1)
ostruct
rest-client (2.1.0)
http-accept (>= 1.7.0, < 2.0)
http-cookie (>= 1.0.2, < 2.0)
mime-types (>= 1.16, < 4.0)
netrc (~> 0.8)
securerandom (0.4.1)
signet (0.20.0)
addressable (~> 2.8)
faraday (>= 0.17.5, < 3.a)
jwt (>= 1.5, < 3.0)
multi_json (~> 1.10)
statsd-instrument (3.8.0)
thor (1.3.2)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
uri (1.0.3)
PLATFORMS
ruby
DEPENDENCIES
krane
BUNDLED WITH
2.6.9

View File

@@ -0,0 +1,571 @@
{
activesupport = {
dependencies = [
"base64"
"benchmark"
"bigdecimal"
"concurrent-ruby"
"connection_pool"
"drb"
"i18n"
"logger"
"minitest"
"securerandom"
"tzinfo"
"uri"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0pm40y64wfc50a9sj87kxvil2102rmpdcbv82zf0r40vlgdwsrc5";
type = "gem";
};
version = "8.0.2";
};
addressable = {
dependencies = [ "public_suffix" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0cl2qpvwiffym62z991ynks7imsm87qmgxf0yfsmlwzkgi9qcaa6";
type = "gem";
};
version = "2.8.7";
};
base64 = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0yx9yn47a8lkfcjmigk79fykxvr80r4m1i35q82sxzynpbm7lcr7";
type = "gem";
};
version = "0.3.0";
};
benchmark = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1kicilpma5l0lwayqjb5577bm0hbjndj2gh150xz09xsgc1l1vyl";
type = "gem";
};
version = "0.4.1";
};
bigdecimal = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1p2szbr4jdvmwaaj2kxlbv1rp0m6ycbgfyp0kjkkkswmniv5y21r";
type = "gem";
};
version = "3.2.2";
};
colorize = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "133rqj85n400qk6g3dhf2bmfws34mak1wqihvh3bgy9jhajw580b";
type = "gem";
};
version = "0.8.1";
};
concurrent-ruby = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1ipbrgvf0pp6zxdk5ascp6i29aybz2bx9wdrlchjmpx6mhvkwfw1";
type = "gem";
};
version = "1.3.5";
};
connection_pool = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0nrhsk7b3sjqbyl1cah6ibf1kvi3v93a7wf4637d355hp614mmyg";
type = "gem";
};
version = "2.5.3";
};
domain_name = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0cyr2xm576gqhqicsyqnhanni47408w2pgvrfi8pd13h2li3nsaz";
type = "gem";
};
version = "0.6.20240107";
};
drb = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0wrkl7yiix268s2md1h6wh91311w95ikd8fy8m5gx589npyxc00b";
type = "gem";
};
version = "2.2.3";
};
ejson = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "07ar8rhfinn965danfj6bqqsx0vr9gbl8jxyc0c6r10bcmf97wip";
type = "gem";
};
version = "1.5.3";
};
faraday = {
dependencies = [
"faraday-net_http"
"json"
"logger"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "06ia9z1wxydn0nmddinnjr93qdv856gi3i87h0fycy5y7cp7c6aw";
type = "gem";
};
version = "2.13.2";
};
faraday-net_http = {
dependencies = [ "net-http" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0fxbckg468dabkkznv48ss8zv14d9cd8mh1rr3m98aw7wzx5fmq9";
type = "gem";
};
version = "3.4.1";
};
ffi = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "19kdyjg3kv7x0ad4xsd4swy5izsbb1vl1rpb6qqcqisr5s23awi9";
type = "gem";
};
version = "1.17.2";
};
ffi-compiler = {
dependencies = [
"ffi"
"rake"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1844j58cdg2q6g0rqfwg4rrambnhf059h4yg9rfmrbrcs60kskx9";
type = "gem";
};
version = "1.3.2";
};
google-cloud-env = {
dependencies = [
"base64"
"faraday"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1rvqj6n6qhjmjy0lynpmga7ly48s7dk36i6nj4jqrrvvn8gc1ahg";
type = "gem";
};
version = "2.3.1";
};
google-logging-utils = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0yyzlgy9hx104xhrbl51ana0dl3m5p5989j4lcjsizssxas64m37";
type = "gem";
};
version = "0.2.0";
};
googleauth = {
dependencies = [
"faraday"
"google-cloud-env"
"google-logging-utils"
"jwt"
"multi_json"
"os"
"signet"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0jai8xv2rmhz8nb6vxg4whq6aldmkbyjsn3hvk9w740qg48xxrv2";
type = "gem";
};
version = "1.14.0";
};
http = {
dependencies = [
"addressable"
"http-cookie"
"http-form_data"
"llhttp-ffi"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0z8x4c2bcg05x7ffrjy47cwarfqzlg8kcfxchk5jcfdyx7c04265";
type = "gem";
};
version = "5.3.1";
};
http-accept = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "09m1facypsdjynfwrcv19xcb1mqg8z6kk31g8r33pfxzh838c9n6";
type = "gem";
};
version = "1.7.0";
};
http-cookie = {
dependencies = [ "domain_name" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "19hsskzk5zpv14mnf07pq71hfk1fsjwfjcw616pgjjzjbi2f0kxi";
type = "gem";
};
version = "1.0.8";
};
http-form_data = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1wx591jdhy84901pklh1n9sgh74gnvq1qyqxwchni1yrc49ynknc";
type = "gem";
};
version = "2.3.0";
};
i18n = {
dependencies = [ "concurrent-ruby" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "03sx3ahz1v5kbqjwxj48msw3maplpp2iyzs22l4jrzrqh4zmgfnf";
type = "gem";
};
version = "1.14.7";
};
json = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1x5b8ipv6g0z44wgc45039k04smsyf95h2m5m67mqq35sa5a955s";
type = "gem";
};
version = "2.12.2";
};
jsonpath = {
dependencies = [ "multi_json" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1ghxjcs9rss0fd43yqnc3ab6fhnm4qrkvv34p0xcjb9s35kh9xr9";
type = "gem";
};
version = "1.1.5";
};
jwt = {
dependencies = [ "base64" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1x64l31nkqjwfv51s2vsm0yqq4cwzrlnji12wvaq761myx3fxq9i";
type = "gem";
};
version = "2.10.2";
};
krane = {
dependencies = [
"activesupport"
"colorize"
"concurrent-ruby"
"ejson"
"googleauth"
"jsonpath"
"kubeclient"
"multi_json"
"statsd-instrument"
"thor"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0pf71cvx3c57znasj2mr5fvia47iz6zhviy1yjz1wiqnd39bv85j";
type = "gem";
};
version = "3.7.4";
};
kubeclient = {
dependencies = [
"http"
"jsonpath"
"recursive-open-struct"
"rest-client"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1g89qd1hhf111zy9djlzblzz06pnv59zmamh6fk06wvnih7vj446";
type = "gem";
};
version = "4.12.0";
};
llhttp-ffi = {
dependencies = [
"ffi-compiler"
"rake"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1g57iw0l3y7x50132x6a1jyssxa6pw7srh69g0d6j7ri37yaf9cs";
type = "gem";
};
version = "0.5.1";
};
logger = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "00q2zznygpbls8asz5knjvvj2brr3ghmqxgr83xnrdj4rk3xwvhr";
type = "gem";
};
version = "1.7.0";
};
mime-types = {
dependencies = [
"logger"
"mime-types-data"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0mjyxl7c0xzyqdqa8r45hqg7jcw2prp3hkp39mdf223g4hfgdsyw";
type = "gem";
};
version = "3.7.0";
};
mime-types-data = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1nxrxm1g02a049zcjv859pzjbkwy22ljlz97r6jd5n42scvb92ch";
type = "gem";
};
version = "3.2025.0708";
};
minitest = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0mn7q9yzrwinvfvkyjiz548a4rmcwbmz2fn9nyzh4j1snin6q6rr";
type = "gem";
};
version = "5.25.5";
};
multi_json = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0dknzbz2awgwp09gkvbw0423r53bc8ziwchrg2g852crnqh327qi";
type = "gem";
};
version = "1.16.0";
};
net-http = {
dependencies = [ "uri" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1ysrwaabhf0sn24jrp0nnp51cdv0jf688mh5i6fsz63q2c6b48cn";
type = "gem";
};
version = "0.6.0";
};
netrc = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
type = "gem";
};
version = "0.11.0";
};
os = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0gwd20smyhxbm687vdikfh1gpi96h8qb1x28s2pdcysf6dm6v0ap";
type = "gem";
};
version = "1.1.4";
};
ostruct = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1h6gazp5837xbz1aqvq9x0a5ffpw32nhvknn931a4074k6i04wvd";
type = "gem";
};
version = "0.6.2";
};
public_suffix = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1543ap9w3ydhx39ljcd675cdz9cr948x9mp00ab8qvq6118wv9xz";
type = "gem";
};
version = "6.0.2";
};
rake = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "14s4jdcs1a4saam9qmzbsa2bsh85rj9zfxny5z315x3gg0nhkxcn";
type = "gem";
};
version = "13.3.0";
};
recursive-open-struct = {
dependencies = [ "ostruct" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0847mn846fddfmm6vpdpz4ds9azbbcdxnnjw4zs31fqpi2f4l6ql";
type = "gem";
};
version = "1.3.1";
};
rest-client = {
dependencies = [
"http-accept"
"http-cookie"
"mime-types"
"netrc"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1qs74yzl58agzx9dgjhcpgmzfn61fqkk33k1js2y5yhlvc5l19im";
type = "gem";
};
version = "2.1.0";
};
securerandom = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1cd0iriqfsf1z91qg271sm88xjnfd92b832z49p1nd542ka96lfc";
type = "gem";
};
version = "0.4.1";
};
signet = {
dependencies = [
"addressable"
"faraday"
"jwt"
"multi_json"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "18s7xiclzajp9w9cmq8k28iy5ig1zpx1zv1mrm416cb2c0m0wrmw";
type = "gem";
};
version = "0.20.0";
};
statsd-instrument = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1kd75axvmyq866nan18n9ys5bd140h0mka2kz9s5m86r8m42jbhj";
type = "gem";
};
version = "3.8.0";
};
thor = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1nmymd86a0vb39pzj2cwv57avdrl6pl3lf5bsz58q594kqxjkw7f";
type = "gem";
};
version = "1.3.2";
};
tzinfo = {
dependencies = [ "concurrent-ruby" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "16w2g84dzaf3z13gxyzlzbf748kylk5bdgg3n1ipvkvvqy685bwd";
type = "gem";
};
version = "2.0.6";
};
uri = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "04bhfvc25b07jaiaf62yrach7khhr5jlr5bx6nygg8pf11329wp9";
type = "gem";
};
version = "1.0.3";
};
}

View File

@@ -0,0 +1,21 @@
{
lib,
bundlerApp,
bundlerUpdateScript,
}:
bundlerApp {
pname = "krane";
gemdir = ./.;
exes = [ "krane" ];
passthru.updateScript = bundlerUpdateScript "krane";
meta = {
description = "Command-line tool that helps you ship changes to a Kubernetes namespace and understand the result";
homepage = "https://github.com/Shopify/krane";
changelog = "https://github.com/Shopify/krane/blob/main/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ kira-bruneau ];
};
}

View File

@@ -0,0 +1,49 @@
{
lib,
fetchFromGitHub,
rustPlatform,
pkg-config,
openssl,
dbus,
sqlite,
file,
makeWrapper,
}:
rustPlatform.buildRustPackage rec {
pname = "krankerl";
version = "0.14.0";
src = fetchFromGitHub {
owner = "ChristophWurst";
repo = "krankerl";
rev = "v${version}";
sha256 = "sha256-fFtjQFkNB5vn9nlFJI6nRdqxB9PmOGl3ySZ5LG2tgPg=";
};
cargoHash = "sha256-tu+PJeGm8u5TSuoPBhaO4k6PkmI9JduuLlaQjvBv05E=";
nativeBuildInputs = [
pkg-config
makeWrapper
];
buildInputs = [
openssl
dbus
sqlite
];
nativeCheckInputs = [
file
];
meta = with lib; {
description = "CLI helper to manage, package and publish Nextcloud apps";
mainProgram = "krankerl";
homepage = "https://github.com/ChristophWurst/krankerl";
license = licenses.gpl3Only;
platforms = platforms.linux;
maintainers = with maintainers; [ onny ];
};
}

View File

@@ -0,0 +1,31 @@
{
lib,
stdenv,
rustPlatform,
fetchFromGitHub,
libiconv,
}:
rustPlatform.buildRustPackage rec {
pname = "krapslog";
version = "0.6.1";
src = fetchFromGitHub {
owner = "acj";
repo = "krapslog-rs";
rev = version;
sha256 = "sha256-c/Zh4fOsSKY0XopaklRbFEh4QM5jjUcj0zhAx5v9amI=";
};
cargoHash = "sha256-cXK7YZ9i/eKXTHPYnJcvcKyzFlZDnqmCBrEa75Mxfqc=";
buildInputs = lib.optional stdenv.hostPlatform.isDarwin libiconv;
meta = with lib; {
description = "Visualize a log file with sparklines";
homepage = "https://github.com/acj/krapslog-rs";
license = with licenses; [ mit ];
maintainers = with maintainers; [ yanganto ];
mainProgram = "krapslog";
};
}

View File

@@ -0,0 +1,55 @@
{
fetchFromGitHub,
buildGoModule,
lib,
stdenv,
}:
let
pname = "kratos";
version = "1.3.1";
in
buildGoModule {
inherit pname version;
src = fetchFromGitHub {
owner = "ory";
repo = "kratos";
rev = "v${version}";
hash = "sha256-FJrBwjWBYwoiy8rWXn+jaVc1b35So1Rb9SjkUlNwAqE=";
};
vendorHash = "sha256-zZwunp/433oIYI5ZA3Pznq9jfvIZE5ZUJKxboVef8g0=";
subPackages = [ "." ];
tags = [ "sqlite" ];
# Pass versioning information via ldflags
ldflags = [
"-X github.com/ory/kratos/driver/config.Version=${version}"
];
doCheck = false;
preBuild = ''
# Patch shebangs
files=(
test/e2e/run.sh
script/testenv.sh
script/test-envs.sh
script/debug-entrypoint.sh
)
patchShebangs "''${files[@]}"
# patchShebangs doesn't work for this Makefile, do it manually
substituteInPlace Makefile --replace-fail '/usr/bin/env bash' '${stdenv.shell}'
'';
meta = {
mainProgram = "kratos";
description = "API-first Identity and User Management system that is built according to cloud architecture best practices";
homepage = "https://www.ory.sh/kratos/";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ mrmebelman ];
};
}

View File

@@ -0,0 +1,49 @@
{
lib,
fetchFromGitHub,
python3,
}:
python3.pkgs.buildPythonApplication rec {
pname = "krbjack";
version = "1.2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "almandin";
repo = "krbjack";
tag = version;
hash = "sha256-rvK0I8WlXqJtau9f+6ximfzYCjX21dPIyDN56IMI0gE=";
};
pythonRelaxDeps = [
"impacket"
];
build-system = with python3.pkgs; [
poetry-core
];
dependencies = with python3.pkgs; [
colorama
dnspython
impacket
scapy
];
# Project has no tests
doCheck = false;
pythonImportsCheck = [
"krbjack"
];
meta = {
description = "Kerberos AP-REQ hijacking tool with DNS unsecure updates abuse";
homepage = "https://github.com/almandin/krbjack";
changelog = "https://github.com/almandin/krbjack/releases/tag/${version}}";
license = lib.licenses.beerware;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "krbjack";
};
}

View File

@@ -0,0 +1,40 @@
{
lib,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "krelay";
version = "0.1.3";
src = fetchFromGitHub {
owner = "knight42";
repo = "krelay";
rev = "v${version}";
hash = "sha256-v7yX5wDf3d07TiWe+9iTkGhc8LqfU1hUkxuf5ZBVcYE=";
};
vendorHash = "sha256-9bOU9Zqqb4tdQCIB3UkTdAcD4cn6+7C35gOCywv1/Os=";
subPackages = [ "cmd/client" ];
ldflags = [
"-s"
"-w"
"-X github.com/knight42/krelay/pkg/constants.ClientVersion=${version}"
];
postInstall = ''
mv $out/bin/client $out/bin/kubectl-relay
'';
meta = {
description = "Drop-in replacement for `kubectl port-forward` with some enhanced features";
homepage = "https://github.com/knight42/krelay";
changelog = "https://github.com/knight42/krelay/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ivankovnatsky ];
mainProgram = "kubectl-relay";
};
}

View File

@@ -0,0 +1,65 @@
{
stdenv,
fetchFromGitLab,
lib,
extra-cmake-modules,
kdePackages,
taglib,
exiv2,
podofo_0_10,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "krename";
version = "5.0.60-unstable-2025-09-02";
# For when the next stable release is made
# src = fetchurl {
# url = "mirror://kde/stable/krename/${version}/src/krename-${finalAttrs.version}.tar.xz";
# hash = "sha256-sjxgp93Z9ttN1/VaxV/MqKVY+miq+PpcuJ4er2kvI+0=";
# };
src = fetchFromGitLab {
domain = "invent.kde.org";
owner = "utilities";
repo = "krename";
rev = "5ad5f5a1f0a1c7573fa1b872a1472dec96fe0dd7";
hash = "sha256-fGNiIGGq10F71wh37aKDB7Q3fCxSXqttg/176LH3nVM=";
};
buildInputs = with kdePackages; [
exiv2
podofo_0_10
kio
kxmlgui
qtbase
qtdeclarative
qt5compat
taglib
];
nativeBuildInputs = [
extra-cmake-modules
kdePackages.kdoctools
kdePackages.wrapQtAppsHook
];
env.NIX_LDFLAGS = "-ltag";
meta = {
description = "Powerful batch renamer for KDE";
mainProgram = "krename";
homepage = "https://kde.org/applications/utilities/krename/";
license = with lib.licenses; [
bsd3
cc0
gpl2Plus
];
maintainers = with lib.maintainers; [
peterhoeg
kuflierl
];
inherit (kdePackages.qtbase.meta) platforms;
};
})

View File

@@ -0,0 +1,42 @@
{
lib,
stdenv,
fetchFromGitHub,
versionCheckHook,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "krep";
version = "1.1.2";
src = fetchFromGitHub {
owner = "davidesantangelo";
repo = "krep";
rev = "v${finalAttrs.version}";
hash = "sha256-mZ5ki1f0q4k3imxeF9qbn8ZU/at+NNBhroau/5Z4WU4=";
};
makeFlags = [
"CC=${stdenv.cc.targetPrefix}cc"
"ENABLE_ARCH_DETECTION=0"
];
installFlags = [
"PREFIX=${placeholder "out"}"
];
doCheck = true;
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
meta = {
description = "Blazingly fast string search utility designed for performance-critical applications";
homepage = "https://github.com/davidesantangelo/krep";
changelog = "https://github.com/davidesantangelo/krep/releases/tag/v${finalAttrs.version}";
license = lib.licenses.bsd2;
maintainers = with lib.maintainers; [
codebam
];
platforms = lib.platforms.unix;
};
})

View File

@@ -0,0 +1,38 @@
{
lib,
buildGoModule,
fetchFromGitHub,
makeWrapper,
gitMinimal,
}:
buildGoModule rec {
pname = "krew";
version = "0.4.5";
src = fetchFromGitHub {
owner = "kubernetes-sigs";
repo = "krew";
rev = "v${version}";
sha256 = "sha256-3GoC2HEp9XJe853/JYvX9kAAcFf7XxglVEeU9oQ/5Ms=";
};
vendorHash = "sha256-r4Dywm0+YxWWD59oaKodkldE2uq8hlt9MwOMYDaj6Gc=";
subPackages = [ "cmd/krew" ];
nativeBuildInputs = [ makeWrapper ];
postFixup = ''
wrapProgram $out/bin/krew \
--prefix PATH : ${lib.makeBinPath [ gitMinimal ]}
'';
meta = with lib; {
description = "Package manager for kubectl plugins";
mainProgram = "krew";
homepage = "https://github.com/kubernetes-sigs/krew";
maintainers = with maintainers; [ vdemeester ];
license = lib.licenses.asl20;
};
}

View File

@@ -0,0 +1,45 @@
{
lib,
rustPlatform,
fetchFromGitHub,
openssl,
pkg-config,
stdenv,
}:
rustPlatform.buildRustPackage rec {
pname = "krill";
version = "0.15.0";
src = fetchFromGitHub {
owner = "NLnetLabs";
repo = "krill";
rev = "v${version}";
hash = "sha256-aYZZuEh9RpxGcZllc7usFrLXV8MD1SGrtnbZI7i1h8I=";
};
cargoHash = "sha256-WJqJkcAUJhPy0jbGit/nXmJPCU7dK8I8w3JCmTdzhhA=";
buildInputs = [ openssl ];
nativeBuildInputs = [ pkg-config ];
# Needed to get openssl-sys to use pkgconfig.
OPENSSL_NO_VENDOR = 1;
# disable failing tests on darwin
doCheck = !stdenv.hostPlatform.isDarwin;
meta = {
description = "RPKI Certificate Authority and Publication Server written in Rust";
longDescription = ''
Krill is a free, open source RPKI Certificate Authority that lets you run
delegated RPKI under one or multiple Regional Internet Registries (RIRs).
Through its built-in publication server, Krill can publish Route Origin
Authorisations (ROAs) on your own servers or with a third party.
'';
homepage = "https://github.com/NLnetLabs/krill";
changelog = "https://github.com/NLnetLabs/krill/releases/tag/v${version}";
license = lib.licenses.mpl20;
maintainers = with lib.maintainers; [ steamwalker ];
};
}

View File

@@ -0,0 +1,55 @@
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
pkg-config,
xorg,
libGL,
nix-update-script,
}:
buildGoModule (finalAttrs: {
pname = "krillinai";
version = "1.4.0";
src = fetchFromGitHub {
owner = "krillinai";
repo = "KlicStudio";
tag = "v${finalAttrs.version}";
hash = "sha256-CMeF24BCJ+wbiXCl0iJm0acNoggVxeOu3Q/cXJY8aQo=";
};
vendorHash = "sha256-bAKLNpt0K06egScyn7ImHV0csDsMQGUm92kU1PVQK+I=";
nativeBuildInputs = [ pkg-config ];
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [
xorg.libXinerama
xorg.libXxf86vm
xorg.libXcursor
xorg.libXrandr
xorg.libX11
xorg.libXi
libGL
];
# open g:\bin\AI\tasks\gdQRrtQP\srt_no_ts_1.srt: no such file or directory
doCheck = false;
postInstall = ''
mv $out/bin/desktop $out/bin/krillinai-desktop
mv $out/bin/server $out/bin/krillinai-server
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "Video translation and dubbing tool";
homepage = "https://github.com/krillinai/KlicStudio";
changelog = "https://github.com/krillinai/KlicStudio/releases/tag/v${finalAttrs.version}";
mainProgram = "krillinai-desktop";
license = lib.licenses.gpl3Plus;
maintainers = [ ];
};
})

View File

@@ -0,0 +1,57 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
extra-cmake-modules,
fftw,
krita,
libsForQt5,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "krita-plugin-gmic";
version = "3.2.4.1";
src = fetchFromGitHub {
owner = "amyspark";
repo = "gmic";
rev = "v${finalAttrs.version}";
hash = "sha256-SYE8kGvN7iD5OqiEEZpB/eRle67PrB5DojMC79qAQtg=";
};
sourceRoot = "${finalAttrs.src.name}/gmic-qt";
dontWrapQtApps = true;
postPatch = ''
patchShebangs \
translations/filters/csv2ts.sh \
translations/lrelease.sh
'';
nativeBuildInputs = [
cmake
extra-cmake-modules
libsForQt5.qttools
];
buildInputs = [
fftw
krita.unwrapped
libsForQt5.kcoreaddons
];
strictDeps = true;
cmakeFlags = [
(lib.cmakeFeature "GMIC_QT_HOST" "krita-plugin")
# build krita's gmic instead of using the one from nixpkgs
(lib.cmakeBool "ENABLE_SYSTEM_GMIC" false)
];
meta = with lib; {
homepage = "https://github.com/amyspark/gmic";
description = "GMic plugin for Krita";
license = lib.licenses.cecill21;
maintainers = with maintainers; [ lelgenio ];
};
})

View File

@@ -0,0 +1,7 @@
{ callPackage, ... }:
callPackage ./generic.nix {
version = "5.2.13";
kde-channel = "stable";
hash = "sha256-y5CUMMmeK/EGhPHBPXaHZpHuYlctmqpU1wWJMflhVTE=";
}

View File

@@ -0,0 +1,178 @@
{
mkDerivation,
lib,
stdenv,
fetchpatch,
fetchurl,
cmake,
extra-cmake-modules,
karchive,
kconfig,
kwidgetsaddons,
kcompletion,
kcoreaddons,
kguiaddons,
ki18n,
kitemmodels,
kitemviews,
kwindowsystem,
kio,
kcrash,
breeze-icons,
boost,
libraw,
fftw,
eigen,
exiv2,
fribidi,
libaom,
libheif,
#libkdcraw,
lcms2,
gsl,
openexr,
giflib,
libjxl,
mlt,
openjpeg,
opencolorio,
xsimd,
poppler,
curl,
ilmbase,
immer,
kseexpr,
lager,
libmypaint,
libunibreak,
libwebp,
qtmultimedia,
qtx11extras,
quazip,
SDL2,
zug,
pkg-config,
python3Packages,
version,
kde-channel,
hash,
}:
mkDerivation rec {
pname = "krita-unwrapped";
inherit version;
src = fetchurl {
url = "mirror://kde/${kde-channel}/krita/${version}/krita-${version}.tar.gz";
inherit hash;
};
patches = [
# Fixes build with SIP 6.8
(fetchpatch {
name = "bump-SIP-ABI-version-to-12.8.patch";
url = "https://invent.kde.org/graphics/krita/-/commit/2d71c47661d43a4e3c1ab0c27803de980bdf2bb2.diff";
hash = "sha256-U3E44nj4vra++PJV20h4YHjES78kgrJtr4ktNeQfOdA=";
})
];
nativeBuildInputs = [
cmake
extra-cmake-modules
pkg-config
python3Packages.sip
];
buildInputs = [
karchive
kconfig
kwidgetsaddons
kcompletion
kcoreaddons
kguiaddons
ki18n
kitemmodels
kitemviews
kwindowsystem
kio
kcrash
breeze-icons
boost
libraw
fftw
eigen
exiv2
fribidi
lcms2
gsl
openexr
lager
libaom
libheif
#libkdcraw
giflib
libjxl
mlt
openjpeg
opencolorio
xsimd
poppler
curl
ilmbase
immer
kseexpr
libmypaint
libunibreak
libwebp
qtmultimedia
qtx11extras
quazip
SDL2
zug
python3Packages.pyqt5
];
env.NIX_CFLAGS_COMPILE = toString (lib.optional stdenv.cc.isGNU "-Wno-deprecated-copy");
# Krita runs custom python scripts in CMake with custom PYTHONPATH which krita determined in their CMake script.
# Patch the PYTHONPATH so python scripts can import sip successfully.
postPatch =
let
pythonPath = python3Packages.makePythonPath (
with python3Packages;
[
sip
setuptools
]
);
in
''
substituteInPlace cmake/modules/FindSIP.cmake \
--replace 'PYTHONPATH=''${_sip_python_path}' 'PYTHONPATH=${pythonPath}'
substituteInPlace cmake/modules/SIPMacros.cmake \
--replace 'PYTHONPATH=''${_krita_python_path}' 'PYTHONPATH=${pythonPath}'
substituteInPlace plugins/impex/jp2/jp2_converter.cc \
--replace '<openjpeg.h>' '<${openjpeg.incDir}/openjpeg.h>'
'';
cmakeBuildType = "RelWithDebInfo";
cmakeFlags = [
"-DPYQT5_SIP_DIR=${python3Packages.pyqt5}/${python3Packages.python.sitePackages}/PyQt5/bindings"
"-DPYQT_SIP_DIR_OVERRIDE=${python3Packages.pyqt5}/${python3Packages.python.sitePackages}/PyQt5/bindings"
"-DBUILD_KRITA_QT_DESIGNER_PLUGINS=ON"
];
meta = {
description = "Free and open source painting application";
homepage = "https://krita.org/";
maintainers = with lib.maintainers; [
sifmelcara
nek0
];
mainProgram = "krita";
platforms = lib.platforms.linux;
license = lib.licenses.gpl3Only;
};
}

View File

@@ -0,0 +1,33 @@
{
lib,
libsForQt5,
symlinkJoin,
unwrapped ? libsForQt5.callPackage ./. { },
krita-plugin-gmic,
binaryPlugins ? [
# Default plugins provided by upstream appimage
krita-plugin-gmic
],
}:
symlinkJoin {
name = lib.replaceStrings [ "-unwrapped" ] [ "" ] unwrapped.name;
inherit (unwrapped)
version
buildInputs
nativeBuildInputs
meta
;
paths = [ unwrapped ] ++ binaryPlugins;
postBuild = ''
wrapQtApp "$out/bin/krita" \
--prefix PYTHONPATH : "$PYTHONPATH" \
--set KRITA_PLUGIN_PATH "$out/lib/kritaplugins"
'';
passthru = {
inherit unwrapped binaryPlugins;
};
}

View File

@@ -0,0 +1,63 @@
{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
pkg-config,
libqb,
libxml2,
libnl,
lksctp-tools,
nss,
openssl,
bzip2,
lzo,
lz4,
xz,
zlib,
zstd,
doxygen,
}:
stdenv.mkDerivation rec {
pname = "kronosnet";
version = "1.31";
src = fetchFromGitHub {
owner = "kronosnet";
repo = "kronosnet";
rev = "v${version}";
sha256 = "sha256-PZWaKrCy0S8d/x3GMh7X2wEiHwgiuEFpfCwKpbLvhsc=";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
doxygen
];
buildInputs = [
libqb
libxml2
libnl
lksctp-tools
nss
openssl
bzip2
lzo
lz4
xz
zlib
zstd
];
meta = with lib; {
description = "VPN on steroids";
homepage = "https://kronosnet.org/";
license = with licenses; [
lgpl21Plus
gpl2Plus
];
maintainers = with maintainers; [ ryantm ];
};
}

View File

@@ -0,0 +1,56 @@
{
lib,
python3Packages,
fetchFromGitHub,
libsForQt5,
ghostscript,
}:
python3Packages.buildPythonApplication rec {
pname = "krop";
version = "0.7.0";
format = "setuptools";
src = fetchFromGitHub {
owner = "arminstraub";
repo = "krop";
tag = "v${version}";
hash = "sha256-8mhTUP0oS+AnZXVmywxBTbR1OOg18U0RQ1H9lyjaiVI=";
};
nativeBuildInputs = [ libsForQt5.wrapQtAppsHook ];
buildInputs = [
libsForQt5.poppler
libsForQt5.qtwayland
];
dependencies = with python3Packages; [
pyqt5
pypdf2
poppler-qt5
ghostscript
];
makeWrapperArgs = [ "\${qtWrapperArgs[@]}" ];
# Disable checks because of interference with older Qt versions // xcb
doCheck = false;
meta = {
homepage = "http://arminstraub.com/software/krop";
description = "Graphical tool to crop the pages of PDF files";
longDescription = ''
Krop is a tool that allows you to optimise your PDF files, and remove
sections of the page you do not want. A unique feature of krop, at least to my
knowledge, is its ability to automatically split pages into subpages to fit the
limited screensize of devices such as eReaders. This is particularly useful, if
your eReader does not support convenient scrolling. Krop also has a command line
interface.
'';
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ leenaars ];
platforms = lib.platforms.linux;
mainProgram = "krop";
};
}

View File

@@ -0,0 +1,73 @@
{
lib,
python3,
fetchFromGitHub,
testers,
krr,
}:
python3.pkgs.buildPythonPackage rec {
pname = "krr";
version = "1.7.1";
pyproject = true;
src = fetchFromGitHub {
owner = "robusta-dev";
repo = "krr";
tag = "v${version}";
hash = "sha256-Bc1Ql3z/UmOXE2RJYC5/sE4a3MFdE06I3HwKY+SdSlk=";
};
postPatch = ''
substituteInPlace robusta_krr/__init__.py \
--replace-warn '1.7.0-dev' '${version}'
substituteInPlace pyproject.toml \
--replace-warn '1.7.0-dev' '${version}' \
--replace-fail 'aiostream = "^0.4.5"' 'aiostream = "*"' \
--replace-fail 'kubernetes = "^26.1.0"' 'kubernetes = "*"' \
--replace-fail 'pydantic = "1.10.7"' 'pydantic = "*"' \
--replace-fail 'typer = { extras = ["all"], version = "^0.7.0" }' 'typer = { extras = ["all"], version = "*" }'
'';
propagatedBuildInputs = with python3.pkgs; [
aiostream
alive-progress
kubernetes
numpy
poetry-core
prometheus-api-client
prometrix
pydantic_1
slack-sdk
typer
];
nativeCheckInputs = with python3.pkgs; [
pytestCheckHook
];
pythonImportsCheck = [
"robusta_krr"
];
passthru.tests.version = testers.testVersion {
package = krr;
command = "krr version";
};
meta = with lib; {
description = "Prometheus-based Kubernetes resource recommendations";
longDescription = ''
Robusta KRR (Kubernetes Resource Recommender) is a CLI tool for optimizing
resource allocation in Kubernetes clusters. It gathers Pod usage data from
Prometheus and recommends requests and limits for CPU and memory. This
reduces costs and improves performance.
'';
homepage = "https://github.com/robusta-dev/krr";
changelog = "https://github.com/robusta-dev/krr/releases/tag/v${src.rev}";
license = licenses.mit;
maintainers = [ ];
mainProgram = "krr";
};
}

View File

@@ -0,0 +1,32 @@
{
stdenvNoCC,
fetchurl,
makeBinaryWrapper,
undmg,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "krunker";
version = "2.1.3";
src = fetchurl {
url = "https://client2.krunker.io/Official%20Krunker.io%20Client-${finalAttrs.version}.dmg";
hash = "sha512-brvrOPCsXkkrUGcRxsa8bzpFsrY7GF3llt29ZIax6dC0XBsILKXUleESJ5LpurMOgSBsfxNYjZLPJhicIAtuUA==";
};
sourceRoot = ".";
nativeBuildInputs = [
makeBinaryWrapper
undmg
];
postInstall = ''
mkdir -p $out/Applications
cp -r *.app $out/Applications
makeBinaryWrapper \
$out/Applications/Official\ Krunker.io\ Client.app/Contents/MacOS/Official\ Krunker.io\ Client \
$out/bin/krunker
'';
})

View File

@@ -0,0 +1,30 @@
{ appimageTools, fetchurl }:
let
pname = "krunker";
version = "2.1.3";
appId = "io.krunker.desktop";
src = fetchurl {
url = "https://client2.krunker.io/Official%20Krunker.io%20Client-${version}.AppImage";
hash = "sha512-a8E5heLsKXOtv/wRKlrnV0GD48cY1mOiSSDW93c7YZ+HoeuBQDxtRaHKg5EqU51Yi+d4tPF5nOh10jZW36c7WQ==";
};
appimageContents = appimageTools.extractType2 {
inherit pname version src;
};
in
appimageTools.wrapType2 {
inherit pname version src;
extraInstallCommands = ''
mkdir -p $out/share/{applications,pixmaps}
install -Dm644 ${appimageContents}/${appId}.desktop -t $out/share/applications
install -Dm644 ${appimageContents}/${appId}.png -t $out/share/pixmaps
substituteInPlace $out/share/applications/${appId}.desktop \
--replace-fail 'Exec=AppRun' "Exec=$pname"
'';
}

View File

@@ -0,0 +1,34 @@
{
lib,
stdenv,
callPackage,
}:
let
package =
if stdenv.hostPlatform.isDarwin then callPackage ./darwin.nix { } else callPackage ./linux.nix { };
in
package.overrideAttrs (
finalAttrs: oldAttrs: {
passthru = {
updateScript = ./update.sh;
}
// oldAttrs.passthru or { };
# Point `nix edit`, etc. to the file that defines the attribute, not this
# entry point
pos = builtins.unsafeGetAttrPos "pname" finalAttrs;
meta = {
description = "Easy to get into fully moddable First Person Shooter with advanced movement mechanics";
homepage = "https://krunker.io";
license = lib.licenses.unfree;
maintainers = with lib.maintainers; [ getchoo ];
mainProgram = "krunker";
platforms = [ "x86_64-linux" ] ++ lib.platforms.darwin;
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
}
// oldAttrs.meta or { };
}
)

View File

@@ -0,0 +1,58 @@
#!/usr/bin/env nix-shell
#! nix-shell --pure -i bash -p bash cacert common-updater-scripts curl yq
# shellcheck shell=bash
set -euo pipefail
root=$(readlink -f "$0" | xargs dirname)
script_name="krunker-update"
updater_url="client2.krunker.io"
log() {
echo "$script_name: $*"
}
panic() {
log "$*"
exit 1
}
update() {
platform="${1:-}"
if [ -z "$platform" ]; then
panic "error: a platform must be supplied to \`update()\`!"
fi
nixfile="$root"/"$platform".nix
if [ ! -f "$nixfile" ]; then
panic "error: $platform is not supported!"
fi
electron_suffix=""
system="x86_64-linux"
if [ "$platform" == "darwin" ]; then
electron_suffix="-mac"
system="aarch64-darwin"
elif [ "$platform" == "linux" ]; then
electron_suffix="-linux"
fi
url="https://$updater_url/latest${electron_suffix}.yml"
log "fetching update information from from $url"
response="$(curl -sSL "$url")"
version="$(yq --raw-output '.version' <<<"$response")"
sha512="$(yq \
--raw-output \
'.files | map(select(.url | contains("dmg") or contains("AppImage"))) | first | .sha512' \
<<<"$response")"
update-source-version krunker "$version" sha512-"$sha512" --file="$nixfile" --system="$system"
}
supported_platforms=(
"darwin"
"linux"
)
for platform in "${supported_platforms[@]}"; do
update "$platform"
done

View File

@@ -0,0 +1,48 @@
{
stdenv,
lib,
fetchFromGitHub,
cmake,
kdePackages,
nix-update-script,
}:
stdenv.mkDerivation rec {
pname = "krunner-vscodeprojects";
version = "2.0.2";
src = fetchFromGitHub {
owner = "alex1701c";
repo = "krunner-vscodeprojects";
rev = version;
hash = "sha256-a24MFSXYFR4VVUVMOAY0n0sKqY0L9lUhnpgSeDFtceI=";
};
dontWrapQtApps = true;
buildInputs = with kdePackages; [
ki18n
krunner
kconfig
];
nativeBuildInputs = [
cmake
kdePackages.extra-cmake-modules
];
cmakeFlags = [
"-DBUILD_WITH_QT6=ON"
"-DQT_MAJOR_VERSION=6"
];
passthru.updateScript = nix-update-script { };
meta = {
description = "Krunner Plugin which allows you to open your VSCode Project Manager projects";
homepage = "https://github.com/alex1701c/krunner-vscodeprojects";
sourceProvenance = with lib.sourceTypes; [ fromSource ];
license = lib.licenses.lgpl3Only;
maintainers = with lib.maintainers; [ js6pak ];
inherit (kdePackages.krunner.meta) platforms;
};
}

View File

@@ -0,0 +1,44 @@
{
lib,
stdenv,
fetchurl,
extra-cmake-modules,
cmake,
kdePackages,
}:
stdenv.mkDerivation rec {
pname = "krusader";
version = "2.9.0";
src = fetchurl {
url = "mirror://kde/stable/krusader/${version}/krusader-${version}.tar.xz";
hash = "sha256-ybeb+t5sxp/g40Hs75Mvysiv2f6U6MvPvXKf61Q5TgQ=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
kdePackages.kdoctools
kdePackages.wrapQtAppsHook
];
propagatedBuildInputs = with kdePackages; [
karchive
kconfig
kcrash
kguiaddons
kparts
kwindowsystem
qt5compat
kstatusnotifieritem
];
meta = {
homepage = "http://www.krusader.org";
description = "Norton/Total Commander clone for KDE";
license = lib.licenses.gpl2Only;
maintainers = with lib.maintainers; [ sander ];
mainProgram = "krusader";
};
}

View File

@@ -0,0 +1,54 @@
{
stdenv,
lib,
autoPatchelfHook,
fetchurl,
makeWrapper,
jre,
fmt_9,
libusb1,
}:
stdenv.mkDerivation (finalAttrs: {
name = "kryoflux";
version = "3.50";
src = fetchurl {
url = "https://www.kryoflux.com/download/kryoflux_${finalAttrs.version}_linux_r2.tar.gz";
hash = "sha256-qGFXu0FkmCB7cffOqNiOluDUww19MA/UuEVElgmSd3o=";
};
nativeBuildInputs = [
makeWrapper
autoPatchelfHook
];
buildInputs = [
fmt_9
libusb1
];
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/bin
mkdir -p $out/share/java
cp -r {docs,testimages,schematics} $out/share
cp dtc/kryoflux-ui.jar $out/share/java
makeWrapper ${jre}/bin/java $out/bin/kryoflux-ui \
--add-flags "-jar $out/share/java/kryoflux-ui.jar" \
--set PATH "$out/bin"
tar -C $out -xf dtc/${stdenv.hostPlatform.linuxArch}/kryoflux-dtc*.tar.gz \
--strip-components=1 \
--wildcards '*/bin/*' '*/lib/*' '*/share/*'
mkdir -p $out/etc/udev/rules.d
echo 'ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="6124", GROUP="floppy", MODE="0660"' > 80-kryoflux.rules
runHook postInstall
'';
meta = {
description = "Software UI to accompany KryoFlux, the renowned forensic floppy controller";
homepage = "https://kryoflux.com";
license = lib.licenses.unfree;
maintainers = with lib.maintainers; [ matthewcroughan ];
mainProgram = "kryoflux-ui";
platforms = with lib.platforms; lib.intersectLists linux (x86_64 ++ aarch64);
};
})

27
pkgs/by-name/kr/kryptor/deps.json generated Normal file
View File

@@ -0,0 +1,27 @@
[
{
"pname": "Geralt",
"version": "3.3.0",
"hash": "sha256-vTGhyPsE5xxfM4nbADq54wM9FpEXLJgxuT5a2WvY79g="
},
{
"pname": "libsodium",
"version": "1.0.20.1",
"hash": "sha256-wd/z31FRbcaVGrogSNVjefEYWjNxTGzQd04DOlY1PFE="
},
{
"pname": "McMaster.Extensions.CommandLineUtils",
"version": "4.1.1",
"hash": "sha256-K10ukfRqcRIKJT7PFxc7NFpKWRT+FIDg8IJAR8HA5Eo="
},
{
"pname": "Monocypher",
"version": "0.4.1",
"hash": "sha256-mfLdmQkgsmpCdQuxbdU0IE900FfPrWTdi1iN/ZBL0ow="
},
{
"pname": "System.ComponentModel.Annotations",
"version": "5.0.0",
"hash": "sha256-0pST1UHgpeE6xJrYf5R+U7AwIlH3rVC3SpguilI/MAg="
}
]

View File

@@ -0,0 +1,51 @@
{
lib,
stdenv,
buildDotnetModule,
fetchFromGitHub,
dotnetCorePackages,
versionCheckHook,
nix-update-script,
}:
buildDotnetModule rec {
pname = "kryptor";
version = "4.1.1";
src = fetchFromGitHub {
owner = "samuel-lucas6";
repo = "Kryptor";
tag = "v${version}";
hash = "sha256-+pG3u4U3IZ6jw2p2f1jptX7C/qt0mPIcMG82XYtPzbs=";
};
dotnet-sdk = dotnetCorePackages.sdk_8_0;
projectFile = "src/Kryptor/Kryptor.csproj";
nugetDeps = ./deps.json;
executables = [ "kryptor" ];
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
passthru = {
updateScript = nix-update-script { };
};
meta = {
changelog = "https://github.com/samuel-lucas6/Kryptor/releases/tag/v${version}";
description = "Simple, modern, and secure encryption and signing tool that aims to be a better version of age and Minisign";
homepage = "https://github.com/samuel-lucas6/Kryptor";
license = lib.licenses.gpl3Only;
mainProgram = "kryptor";
maintainers = with lib.maintainers; [
arthsmn
gepbird
];
platforms = lib.platforms.all;
# https://hydra.nixos.org/build/286325419
# a libsodium.dylib file should be kept as per https://github.com/samuel-lucas6/Kryptor/releases/tag/v4.1.1
# upstream issue: https://github.com/dotnet/sdk/issues/45903
broken = stdenv.hostPlatform.isDarwin;
};
}