Merge staging-next into staging
This commit is contained in:
commit
f0290a5d27
@ -161,7 +161,7 @@ Many Nix packages are designed to run on multiple platforms. As such, it’s imp
|
||||
|
||||
### Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests) {#submitting-changes-nixos-tests}
|
||||
|
||||
Packages with automated tests are much more likely to be merged in a timely fashion because it doesn’t require as much manual testing by the maintainer to verify the functionality of the package. If there are existing tests for the package, they should be run to verify your changes do not break the tests. Tests only apply to packages with NixOS modules defined and can only be run on Linux. For more details on writing and running tests, see the [section in the NixOS manual](https://nixos.org/nixos/manual/index.html#sec-nixos-tests).
|
||||
Packages with automated tests are much more likely to be merged in a timely fashion because it doesn’t require as much manual testing by the maintainer to verify the functionality of the package. If there are existing tests for the package, they should be run to verify your changes do not break the tests. Tests can only be run on Linux. For more details on writing and running tests, see the [section in the NixOS manual](https://nixos.org/nixos/manual/index.html#sec-nixos-tests).
|
||||
|
||||
### Tested compilation of all pkgs that depend on this change using `nixpkgs-review` {#submitting-changes-tested-compilation}
|
||||
|
||||
|
@ -492,6 +492,12 @@
|
||||
fingerprint = "B422 CFB1 C9EF 73F7 E1E2 698D F53E 3233 42F7 A6D3A";
|
||||
}];
|
||||
};
|
||||
amanjeev = {
|
||||
email = "aj@amanjeev.com";
|
||||
github = "amanjeev";
|
||||
githubId = 160476;
|
||||
name = "Amanjeev Sethi";
|
||||
};
|
||||
amar1729 = {
|
||||
email = "amar.paul16@gmail.com";
|
||||
github = "amar1729";
|
||||
|
@ -18,6 +18,7 @@ in
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.jellyfin;
|
||||
example = literalExample "pkgs.jellyfin";
|
||||
description = ''
|
||||
Jellyfin package to use.
|
||||
@ -98,11 +99,6 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
services.jellyfin.package = mkDefault (
|
||||
if versionAtLeast config.system.stateVersion "20.09" then pkgs.jellyfin
|
||||
else pkgs.jellyfin_10_5
|
||||
);
|
||||
|
||||
users.users = mkIf (cfg.user == "jellyfin") {
|
||||
jellyfin = {
|
||||
group = cfg.group;
|
||||
|
@ -1,44 +1,120 @@
|
||||
# Test whether hibernation from partition works.
|
||||
|
||||
import ./make-test-python.nix (pkgs: {
|
||||
{ system ? builtins.currentSystem
|
||||
, config ? {}
|
||||
, pkgs ? import ../.. { inherit system config; }
|
||||
}:
|
||||
|
||||
with import ../lib/testing-python.nix { inherit system pkgs; };
|
||||
|
||||
let
|
||||
# System configuration of the installed system, which is used for the actual
|
||||
# hibernate testing.
|
||||
installedConfig = with pkgs.lib; {
|
||||
imports = [
|
||||
../modules/testing/test-instrumentation.nix
|
||||
../modules/profiles/qemu-guest.nix
|
||||
../modules/profiles/minimal.nix
|
||||
];
|
||||
|
||||
hardware.enableAllFirmware = mkForce false;
|
||||
documentation.nixos.enable = false;
|
||||
boot.loader.grub.device = "/dev/vda";
|
||||
|
||||
systemd.services.backdoor.conflicts = [ "sleep.target" ];
|
||||
|
||||
powerManagement.resumeCommands = "systemctl --no-block restart backdoor.service";
|
||||
|
||||
fileSystems = {
|
||||
"/".device = "/dev/vda2";
|
||||
};
|
||||
swapDevices = mkOverride 0 [ { device = "/dev/vda1"; } ];
|
||||
};
|
||||
installedSystem = (import ../lib/eval-config.nix {
|
||||
inherit system;
|
||||
modules = [ installedConfig ];
|
||||
}).config.system.build.toplevel;
|
||||
in makeTest {
|
||||
name = "hibernate";
|
||||
|
||||
nodes = {
|
||||
# System configuration used for installing the installedConfig from above.
|
||||
machine = { config, lib, pkgs, ... }: with lib; {
|
||||
virtualisation.emptyDiskImages = [ config.virtualisation.memorySize ];
|
||||
imports = [
|
||||
../modules/profiles/installation-device.nix
|
||||
../modules/profiles/base.nix
|
||||
];
|
||||
|
||||
systemd.services.backdoor.conflicts = [ "sleep.target" ];
|
||||
nix.binaryCaches = mkForce [ ];
|
||||
nix.extraOptions = ''
|
||||
hashed-mirrors =
|
||||
connect-timeout = 1
|
||||
'';
|
||||
|
||||
swapDevices = mkOverride 0 [ { device = "/dev/vdb"; } ];
|
||||
|
||||
networking.firewall.allowedTCPPorts = [ 4444 ];
|
||||
|
||||
systemd.services.listener.serviceConfig.ExecStart = "${pkgs.netcat}/bin/nc -l 4444 -k";
|
||||
};
|
||||
|
||||
probe = { pkgs, ...}: {
|
||||
environment.systemPackages = [ pkgs.netcat ];
|
||||
virtualisation.diskSize = 8 * 1024;
|
||||
virtualisation.emptyDiskImages = [
|
||||
# Small root disk for installer
|
||||
512
|
||||
];
|
||||
virtualisation.bootDevice = "/dev/vdb";
|
||||
};
|
||||
};
|
||||
|
||||
# 9P doesn't support reconnection to virtio transport after a hibernation.
|
||||
# Therefore, machine just hangs on any Nix store access.
|
||||
# To work around it we run a daemon which listens to a TCP connection and
|
||||
# try to connect to it as a test.
|
||||
# To avoid this, we install NixOS onto a temporary disk with everything we need
|
||||
# included into the store.
|
||||
|
||||
testScript =
|
||||
''
|
||||
def create_named_machine(name):
|
||||
return create_machine(
|
||||
{
|
||||
"qemuFlags": "-cpu max ${
|
||||
if system == "x86_64-linux" then "-m 1024"
|
||||
else "-m 768 -enable-kvm -machine virt,gic-version=host"}",
|
||||
"hdaInterface": "virtio",
|
||||
"hda": "vm-state-machine/machine.qcow2",
|
||||
"name": name,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
# Install NixOS
|
||||
machine.start()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
machine.succeed("mkswap /dev/vdb")
|
||||
machine.succeed("swapon -a")
|
||||
machine.start_job("listener")
|
||||
machine.wait_for_open_port(4444)
|
||||
machine.succeed("systemctl hibernate &")
|
||||
machine.wait_for_shutdown()
|
||||
probe.wait_for_unit("multi-user.target")
|
||||
machine.start()
|
||||
probe.wait_until_succeeds("echo test | nc machine 4444 -N")
|
||||
machine.succeed(
|
||||
# Partition /dev/vda
|
||||
"flock /dev/vda parted --script /dev/vda -- mklabel msdos"
|
||||
+ " mkpart primary linux-swap 1M 1024M"
|
||||
+ " mkpart primary ext2 1024M -1s",
|
||||
"udevadm settle",
|
||||
"mkfs.ext3 -L nixos /dev/vda2",
|
||||
"mount LABEL=nixos /mnt",
|
||||
"mkswap /dev/vda1 -L swap",
|
||||
# Install onto /mnt
|
||||
"nix-store --load-db < ${pkgs.closureInfo {rootPaths = [installedSystem];}}/registration",
|
||||
"nixos-install --root /mnt --system ${installedSystem} --no-root-passwd",
|
||||
)
|
||||
machine.shutdown()
|
||||
|
||||
# Start up
|
||||
hibernate = create_named_machine("hibernate")
|
||||
|
||||
# Drop in file that checks if we un-hibernated properly (and not booted fresh)
|
||||
hibernate.succeed(
|
||||
"mkdir /run/test",
|
||||
"mount -t ramfs -o size=1m ramfs /run/test",
|
||||
"echo not persisted to disk > /run/test/suspended",
|
||||
)
|
||||
|
||||
# Hibernate machine
|
||||
hibernate.succeed("systemctl hibernate &")
|
||||
hibernate.wait_for_shutdown()
|
||||
|
||||
# Restore machine from hibernation, validate our ramfs file is there.
|
||||
resume = create_named_machine("resume")
|
||||
resume.start()
|
||||
resume.succeed("grep 'not persisted to disk' /run/test/suspended")
|
||||
'';
|
||||
|
||||
})
|
||||
}
|
||||
|
@ -113,6 +113,7 @@ let
|
||||
hydraPlatforms = [];
|
||||
# prefer wrapper over the package
|
||||
priority = (neovim.meta.priority or 0) - 1;
|
||||
mainProgram = "nvim";
|
||||
};
|
||||
};
|
||||
in
|
||||
|
@ -20,7 +20,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "4.1.1";
|
||||
version = "4.1.2";
|
||||
|
||||
libsecp256k1_name =
|
||||
if stdenv.isLinux then "libsecp256k1.so.0"
|
||||
@ -51,7 +51,7 @@ python3.pkgs.buildPythonApplication {
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
|
||||
sha256 = "0yg6ld92a4xgn7y8i51hmr3kmgmrbrjwniikkmyq9q141h2drb80";
|
||||
sha256 = "05m6vbd4sfjk536kwa5wa3kv21jxxqnglx0ddvnmxfhf98371bhk";
|
||||
};
|
||||
|
||||
postUnpack = ''
|
||||
@ -59,6 +59,11 @@ python3.pkgs.buildPythonApplication {
|
||||
cp -ar ${tests} $sourceRoot/electrum/tests
|
||||
'';
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace contrib/requirements/requirements.txt \
|
||||
--replace "dnspython>=2.0,<2.1" "dnspython>=2.0"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = lib.optionals enableQt [ wrapQtAppsHook ];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
name = "xplr";
|
||||
version = "0.5.6";
|
||||
version = "0.5.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sayanarijit";
|
||||
repo = name;
|
||||
rev = "v${version}";
|
||||
sha256 = "070jyii2p7qk6gij47n5i9a8bal5iijgn8cv79mrija3pgddniaz";
|
||||
sha256 = "1j417g0isy3cpxdb2wrvrvypnx99qffi83s4a98791wyi8yqiw6b";
|
||||
};
|
||||
|
||||
cargoSha256 = "113f0hbgy8c9gxl70b6frr0klfc8rm5klgwls7fgbb643rdh03b9";
|
||||
cargoSha256 = "0kpwhk2f4czhilcnfqkw5hw2vxvldxqg491xkkgxjkph3w4qv3ji";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A hackable, minimal, fast TUI file explorer";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "fluxctl";
|
||||
version = "1.22.1";
|
||||
version = "1.22.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "weaveworks";
|
||||
repo = "flux";
|
||||
rev = version;
|
||||
sha256 = "sha256-SaDO3a50CLhgLafCdgKEfHpuHdIweSy5L/TUgEUv5CM=";
|
||||
sha256 = "sha256-qYdVplNHyD31m4IbIeL3x3nauZLl1XquslS3WrtUXBk=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-4uSw/9lI/rdDqy78jNC9eHYW/v/sMFb+sQvwYG6GZks=";
|
||||
|
@ -13,13 +13,13 @@ with lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "remmina";
|
||||
version = "1.4.12";
|
||||
version = "1.4.13";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "Remmina";
|
||||
repo = "Remmina";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-CjlNEmca4Kob5rdpZa+YfvdOIDDDYfhNsGYqGDxSGKY=";
|
||||
sha256 = "sha256-R+RfczAnt5R0YmXt5SmH8gOuWOH0LZ/70pOMDAXJgsE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ];
|
||||
@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
license = licenses.gpl2;
|
||||
license = licenses.gpl2Plus;
|
||||
homepage = "https://gitlab.com/Remmina/Remmina";
|
||||
description = "Remote desktop client written in GTK";
|
||||
maintainers = with maintainers; [ melsigl ryantm ];
|
||||
|
@ -5,18 +5,27 @@ with lib; mkCoqDerivation {
|
||||
pname = "coqhammer";
|
||||
owner = "lukaszcz";
|
||||
defaultVersion = with versions; switch coq.coq-version [
|
||||
{ case = "8.12"; out = "1.3-coq8.12"; }
|
||||
{ case = "8.11"; out = "1.3-coq8.11"; }
|
||||
{ case = "8.10"; out = "1.3-coq8.10"; }
|
||||
{ case = "8.13"; out = "1.3.1-coq8.13"; }
|
||||
{ case = "8.12"; out = "1.3.1-coq8.12"; }
|
||||
{ case = "8.11"; out = "1.3.1-coq8.11"; }
|
||||
{ case = "8.10"; out = "1.3.1-coq8.10"; }
|
||||
{ case = "8.9"; out = "1.1.1-coq8.9"; }
|
||||
{ case = "8.8"; out = "1.1-coq8.8"; }
|
||||
] null;
|
||||
release."1.3.1-coq8.13".sha256 = "033j6saw24anb1lqbgsg1zynxi2rnxq7pgqwh11k8r8y3xisz78w";
|
||||
release."1.3.1-coq8.12".sha256 = "0xy3vy4rv8w5ydwb9nq8y4dcimd91yr0hak2j4kn02svssg1kv1y";
|
||||
release."1.3.1-coq8.11".sha256 = "0i9nlcayq0ac95vc09d1w8sd221gdjs0g215n086qscqjwimnz8j";
|
||||
release."1.3.1-coq8.10".sha256 = "0aq9qwqx680lkidhb77fmyq403rvfcdxch849x1pzy6a48rz5yra";
|
||||
release."1.3-coq8.12".sha256 = "1q1y3cwhd98pkm98g71fsdjz85bfwgcz2xn7s7wwmiraifv5l6z8";
|
||||
release."1.3-coq8.11".sha256 = "08zf8qfna7b9p2myfaz4g7bas3a1q1156x78n5isqivlnqfrjc1b";
|
||||
release."1.3-coq8.10".sha256 = "1fj8497ir4m79hyrmmmmrag01001wrby0h24wv6525vz0w5py3cd";
|
||||
release."1.1.1-coq8.9".sha256 = "1knjmz4hr8vlp103j8n4fyb2lfxysnm512gh3m2kp85n6as6fvb9";
|
||||
release."1.1-coq8.8".sha256 = "0ms086wp4jmrzyglb8wymchzyflflk01nsfsk4r6qv8rrx81nx9h";
|
||||
|
||||
release."1.3.1-coq8.13".version = "1.3.1";
|
||||
release."1.3.1-coq8.12".version = "1.3.1";
|
||||
release."1.3.1-coq8.11".version = "1.3.1";
|
||||
release."1.3.1-coq8.10".version = "1.3.1";
|
||||
release."1.3-coq8.12".version = "1.3";
|
||||
release."1.3-coq8.11".version = "1.3";
|
||||
release."1.3-coq8.10".version = "1.3";
|
||||
|
@ -6,13 +6,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "intel-media-driver";
|
||||
version = "21.1.3";
|
||||
version = "21.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "intel";
|
||||
repo = "media-driver";
|
||||
rev = "intel-media-${version}";
|
||||
sha256 = "1y6y6dia2y3b798f668q26pzwb1xai5d5jpmllpcxs9qikhkkx8p";
|
||||
sha256 = "101wbg5j00amdbfz4p6mpg90wi549dl78jd34mac5g6zhcpwqbh9";
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
|
@ -13,7 +13,7 @@ buildDunePackage rec {
|
||||
sha256 = "0zkhn0rdq82g6gamsv6nkx6i44s8104nh6jg5xydazl9jl1704xn";
|
||||
};
|
||||
|
||||
hardeningDisable = lib.optional stdenv.isDarwin "strictoverflow";
|
||||
hardeningDisable = lib.optional stdenv.cc.isClang "strictoverflow";
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/flowtype/ocaml-dtoa";
|
||||
|
84
pkgs/development/ocaml-modules/letsencrypt/default.nix
Normal file
84
pkgs/development/ocaml-modules/letsencrypt/default.nix
Normal file
@ -0,0 +1,84 @@
|
||||
{ buildDunePackage
|
||||
, lib
|
||||
, fetchurl
|
||||
, astring
|
||||
, asn1-combinators
|
||||
, uri
|
||||
, rresult
|
||||
, base64
|
||||
, cmdliner
|
||||
, cohttp
|
||||
, cohttp-lwt
|
||||
, cohttp-lwt-unix
|
||||
, zarith
|
||||
, logs
|
||||
, fmt
|
||||
, lwt
|
||||
, mirage-crypto
|
||||
, mirage-crypto-pk
|
||||
, mirage-crypto-rng
|
||||
, x509
|
||||
, yojson
|
||||
, ounit
|
||||
, dns
|
||||
, dns-tsig
|
||||
, ptime
|
||||
, bos
|
||||
, fpath
|
||||
, randomconv
|
||||
, domain-name
|
||||
}:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "letsencrypt";
|
||||
version = "0.2.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mmaker/ocaml-letsencrypt/releases/download/v${version}/letsencrypt-v${version}.tbz";
|
||||
sha256 = "91c79828a50243804da29c17563c54d2d528a79207e5b874dce6a3e7fedf7567";
|
||||
};
|
||||
|
||||
minimumOCamlVersion = "4.08";
|
||||
useDune2 = true;
|
||||
|
||||
buildInputs = [
|
||||
cmdliner
|
||||
cohttp
|
||||
cohttp-lwt-unix
|
||||
zarith
|
||||
fmt
|
||||
mirage-crypto-rng
|
||||
ptime
|
||||
bos
|
||||
fpath
|
||||
randomconv
|
||||
domain-name
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
logs
|
||||
yojson
|
||||
lwt
|
||||
base64
|
||||
mirage-crypto
|
||||
mirage-crypto-pk
|
||||
asn1-combinators
|
||||
x509
|
||||
uri
|
||||
dns
|
||||
dns-tsig
|
||||
rresult
|
||||
astring
|
||||
cohttp-lwt
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
checkInputs = [ ounit ];
|
||||
|
||||
meta = {
|
||||
description = "ACME implementation in OCaml";
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = [ lib.maintainers.sternenseemann ];
|
||||
homepage = "https://github.com/mmaker/ocaml-letsencrypt";
|
||||
};
|
||||
}
|
@ -7,11 +7,11 @@ buildDunePackage rec {
|
||||
minimumOCamlVersion = "4.08";
|
||||
|
||||
pname = "mirage-crypto";
|
||||
version = "0.10.0";
|
||||
version = "0.10.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mirage/mirage-crypto/releases/download/v${version}/mirage-crypto-v${version}.tbz";
|
||||
sha256 = "20915c53ddb658c53f588c414f13676bc8ad3cd734d9ed909225ea080dd8144d";
|
||||
sha256 = "028e2fc1f0a3e9b06603c6a253ecd043100099bc1c12c0567d8bc46d3781499c";
|
||||
};
|
||||
|
||||
useDune2 = true;
|
||||
|
82
pkgs/development/ocaml-modules/paf/default.nix
Normal file
82
pkgs/development/ocaml-modules/paf/default.nix
Normal file
@ -0,0 +1,82 @@
|
||||
{ buildDunePackage
|
||||
, lib
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, mirage-stack
|
||||
, mirage-time
|
||||
, httpaf
|
||||
, tls-mirage
|
||||
, mimic
|
||||
, cohttp-lwt
|
||||
, letsencrypt
|
||||
, emile
|
||||
, ke
|
||||
, bigstringaf
|
||||
, domain-name
|
||||
, duration
|
||||
, faraday
|
||||
, ipaddr
|
||||
, tls
|
||||
, x509
|
||||
, lwt
|
||||
, logs
|
||||
, fmt
|
||||
, mirage-crypto-rng
|
||||
, tcpip
|
||||
, mirage-time-unix
|
||||
, ptime
|
||||
, uri
|
||||
, alcotest-lwt
|
||||
}:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "paf";
|
||||
version = "0.0.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/dinosaure/paf-le-chien/releases/download/${version}/paf-${version}.tbz";
|
||||
sha256 = "7a794c21ce458bda302553b0f5ac128c067579fbb3b7b8fba9b410446c43e790";
|
||||
};
|
||||
|
||||
useDune2 = true;
|
||||
minimumOCamlVersion = "4.08";
|
||||
|
||||
propagatedBuildInputs = [
|
||||
mirage-stack
|
||||
mirage-time
|
||||
httpaf
|
||||
tls-mirage
|
||||
mimic
|
||||
cohttp-lwt
|
||||
letsencrypt
|
||||
emile
|
||||
ke
|
||||
bigstringaf
|
||||
domain-name
|
||||
ipaddr
|
||||
duration
|
||||
faraday
|
||||
tls
|
||||
x509
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
checkInputs = [
|
||||
lwt
|
||||
logs
|
||||
fmt
|
||||
mirage-crypto-rng
|
||||
tcpip
|
||||
mirage-time-unix
|
||||
ptime
|
||||
uri
|
||||
alcotest-lwt
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "HTTP/AF and MirageOS";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.sternenseemann ];
|
||||
homepage = "https://github.com/dinosaure/paf-le-chien";
|
||||
};
|
||||
}
|
@ -1,10 +1,8 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, chardet
|
||||
, fetchFromGitHub
|
||||
, karton-core
|
||||
, mwdblib
|
||||
, python
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
|
@ -10,16 +10,17 @@
|
||||
, protobuf3-to-dict
|
||||
, smdebug-rulesconfig
|
||||
, pandas
|
||||
, pathos
|
||||
, packaging
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "sagemaker";
|
||||
version = "2.37.0";
|
||||
version = "2.38.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-96RDi32NHfhFvPeVRhG32EDQJTiwOXEwtSmFZGVBVk0=";
|
||||
sha256 = "sha256-7cIGr49fKI0zQmX4/9v/gW5yB4kfeQJ3H/Vvgl9CKuY=";
|
||||
};
|
||||
|
||||
pythonImportsCheck = [
|
||||
@ -34,6 +35,7 @@ buildPythonPackage rec {
|
||||
importlib-metadata
|
||||
numpy
|
||||
packaging
|
||||
pathos
|
||||
protobuf
|
||||
protobuf3-to-dict
|
||||
smdebug-rulesconfig
|
||||
|
@ -8,11 +8,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "sbt";
|
||||
version = "1.5.0";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz";
|
||||
sha256 = "1dj241cj3v8kzqnz5s499rijpl7wv4rw171swqnc0xza90513pxa";
|
||||
sha256 = "0dsbqipr549awv584fyl227s1gknlpsf5krp990w7w3bbxl3avb7";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -1,61 +0,0 @@
|
||||
{ stdenv, lib, fetchurl, unzip, sqlite, makeWrapper, dotnetCorePackages, ffmpeg,
|
||||
fontconfig, freetype, nixosTests }:
|
||||
|
||||
let
|
||||
os = if stdenv.isDarwin then "osx" else "linux";
|
||||
arch =
|
||||
with stdenv.hostPlatform;
|
||||
if isx86_32 then "x86"
|
||||
else if isx86_64 then "x64"
|
||||
else if isAarch32 then "arm"
|
||||
else if isAarch64 then "arm64"
|
||||
else lib.warn "Unsupported architecture, some image processing features might be unavailable" "unknown";
|
||||
musl = lib.optionalString stdenv.hostPlatform.isMusl
|
||||
(if (arch != "x64")
|
||||
then lib.warn "Some image processing features might be unavailable for non x86-64 with Musl" "musl-"
|
||||
else "musl-");
|
||||
runtimeDir = "${os}-${musl}${arch}";
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "jellyfin";
|
||||
version = "10.5.5";
|
||||
|
||||
# Impossible to build anything offline with dotnet
|
||||
src = fetchurl {
|
||||
url = "https://github.com/jellyfin/jellyfin/releases/download/v${version}/jellyfin_${version}_portable.tar.gz";
|
||||
sha256 = "1s3hva1j5w74qc9wyqnmr5clk4smzfi7wvx8qrzrwy81mx7r5w27";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
buildInputs = [
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dotnetCorePackages.aspnetcore_3_1
|
||||
sqlite
|
||||
];
|
||||
|
||||
preferLocalBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
install -dm 755 "$out/opt/jellyfin"
|
||||
cp -r * "$out/opt/jellyfin"
|
||||
makeWrapper "${dotnetCorePackages.aspnetcore_3_1}/bin/dotnet" $out/bin/jellyfin \
|
||||
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [
|
||||
sqlite fontconfig freetype stdenv.cc.cc.lib
|
||||
]}:$out/opt/jellyfin/runtimes/${runtimeDir}/native/" \
|
||||
--add-flags "$out/opt/jellyfin/jellyfin.dll --ffmpeg ${ffmpeg}/bin/ffmpeg"
|
||||
'';
|
||||
|
||||
passthru.tests = {
|
||||
smoke-test = nixosTests.jellyfin;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "The Free Software Media System";
|
||||
homepage = "https://jellyfin.org/";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ nyanloutre minijackson ];
|
||||
};
|
||||
}
|
@ -203,6 +203,7 @@ let
|
||||
metaTypes = with lib.types; rec {
|
||||
# These keys are documented
|
||||
description = str;
|
||||
mainProgram = str;
|
||||
longDescription = str;
|
||||
branch = str;
|
||||
homepage = either (listOf str) str;
|
||||
|
@ -89,6 +89,10 @@ in rec {
|
||||
|
||||
, patches ? []
|
||||
|
||||
, __contentAddressed ?
|
||||
(! attrs ? outputHash) # Fixed-output drvs can't be content addressed too
|
||||
&& (config.contentAddressedByDefault or false)
|
||||
|
||||
, ... } @ attrs:
|
||||
|
||||
let
|
||||
@ -253,6 +257,12 @@ in rec {
|
||||
inherit doCheck doInstallCheck;
|
||||
|
||||
inherit outputs;
|
||||
} // lib.optionalAttrs (__contentAddressed) {
|
||||
inherit __contentAddressed;
|
||||
# Provide default values for outputHashMode and outputHashAlgo because
|
||||
# most people won't care about these anyways
|
||||
outputHashAlgo = attrs.outputHashAlgo or "sha256";
|
||||
outputHashMode = attrs.outputHashMode or "recursive";
|
||||
} // lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) {
|
||||
cmakeFlags =
|
||||
(/**/ if lib.isString cmakeFlags then [cmakeFlags]
|
||||
|
26
pkgs/tools/misc/semiphemeral/default.nix
Normal file
26
pkgs/tools/misc/semiphemeral/default.nix
Normal file
@ -0,0 +1,26 @@
|
||||
{ lib
|
||||
, python3
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "semiphemeral";
|
||||
version = "0.6";
|
||||
|
||||
src = python3.pkgs.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "c90d73b14c826f262b1339d1f5926c5abc6431181090ea87177af821c0866fb7";
|
||||
};
|
||||
|
||||
doCheck = false; # upstream has no tests
|
||||
|
||||
pythonImportsCheck = [ "semiphemeral" ];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [ click sqlalchemy flask tweepy colorama ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Automatically delete your old tweets, except for the ones you want to keep";
|
||||
homepage = "https://github.com/micahflee/semiphemeral";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ amanjeev ];
|
||||
};
|
||||
}
|
@ -2,19 +2,19 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "innernet";
|
||||
version = "1.1.0";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tonarino";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-OomCSA02ypFVzkYMcmkFREWB6x7oxgpt7x2zRANIDMw=";
|
||||
sha256 = "sha256-Z4F5RYPVgFiiDBg6lxILjAh/a/rL7IJBqHIJ/tQyLnE=";
|
||||
};
|
||||
LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
|
||||
|
||||
nativeBuildInputs = with llvmPackages; [ llvm clang ];
|
||||
buildInputs = [ sqlite ] ++ lib.optionals stdenv.isDarwin [ Security ];
|
||||
cargoSha256 = "sha256-GYNk3j8fjKSo3Qk6Qy0l6kNINK3FxlSYoEkJSx7kVpk=";
|
||||
cargoSha256 = "sha256-WSkN5aXMgfqZJAV1b3elF7kwf2f5OpcntKSf8620YcY=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A private network system that uses WireGuard under the hood";
|
||||
|
@ -2,22 +2,22 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "zerotierone";
|
||||
version = "1.6.4";
|
||||
version = "1.6.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zerotier";
|
||||
repo = "ZeroTierOne";
|
||||
rev = version;
|
||||
sha256 = "06b6k1rzqkd7cdl7n0gz5ky48fs2nhn0q2qxx1rww38vbfc7lpmf";
|
||||
sha256 = "0dlnrb59vnxa3pjkgfqd5jil9kl6axh23v0bffi4kx8jwzpdwas8";
|
||||
};
|
||||
|
||||
preConfigure = ''
|
||||
patchShebangs ./doc/build.sh
|
||||
substituteInPlace ./doc/build.sh \
|
||||
--replace '/usr/bin/ronn' '${buildPackages.ronn}/bin/ronn' \
|
||||
patchShebangs ./doc/build.sh
|
||||
substituteInPlace ./doc/build.sh \
|
||||
--replace '/usr/bin/ronn' '${buildPackages.ronn}/bin/ronn' \
|
||||
|
||||
substituteInPlace ./make-linux.mk \
|
||||
--replace 'armv5' 'armv6'
|
||||
substituteInPlace ./make-linux.mk \
|
||||
--replace 'armv5' 'armv6'
|
||||
'';
|
||||
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
buildGoPackage rec {
|
||||
pname = "govc";
|
||||
version = "0.24.1";
|
||||
version = "0.25.0";
|
||||
|
||||
goPackagePath = "github.com/vmware/govmomi";
|
||||
|
||||
@ -12,7 +12,7 @@ buildGoPackage rec {
|
||||
rev = "v${version}";
|
||||
owner = "vmware";
|
||||
repo = "govmomi";
|
||||
sha256 = "sha256-D2UrYdjstOxx9EAdBtAC44khp8hRf6W3+6kzytUVnOo=";
|
||||
sha256 = "sha256-Ri8snbmgcAZmdumKzBl3P6gf/eZgwdgg7V+ijyeZjks=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
@ -337,6 +337,7 @@ mapAliases ({
|
||||
kodiGBM = kodi-gbm;
|
||||
kodiPlain = kodi;
|
||||
kodiPlainWayland = kodi-wayland;
|
||||
jellyfin_10_5 = throw "Jellyfin 10.5 is no longer supported and contains a security vulnerability. Please upgrade to a newer version."; # added 2021-04-26
|
||||
julia_07 = throw "julia_07 is deprecated in favor of julia_10 LTS"; # added 2020-09-15
|
||||
julia_11 = throw "julia_11 is deprecated in favor of latest Julia version"; # added 2020-09-15
|
||||
kbdKeymaps = throw "kbdKeymaps is not needed anymore since dvp and neo are now part of kbd"; # added 2021-04-11
|
||||
|
@ -2697,8 +2697,6 @@ in
|
||||
|
||||
jellyfin = callPackage ../servers/jellyfin { };
|
||||
|
||||
jellyfin_10_5 = callPackage ../servers/jellyfin/10.5.x.nix { };
|
||||
|
||||
jellyfin-media-player = libsForQt5.callPackage ../applications/video/jellyfin-media-player {
|
||||
inherit (darwin.apple_sdk.frameworks) CoreFoundation Cocoa CoreAudio MediaPlayer;
|
||||
};
|
||||
@ -25815,6 +25813,8 @@ in
|
||||
|
||||
secretscanner = callPackage ../tools/security/secretscanner { };
|
||||
|
||||
semiphemeral = callPackage ../tools/misc/semiphemeral { };
|
||||
|
||||
sent = callPackage ../applications/misc/sent { };
|
||||
|
||||
seq24 = callPackage ../applications/audio/seq24 { };
|
||||
|
@ -579,6 +579,8 @@ let
|
||||
|
||||
lens = callPackage ../development/ocaml-modules/lens { };
|
||||
|
||||
letsencrypt = callPackage ../development/ocaml-modules/letsencrypt { };
|
||||
|
||||
linenoise = callPackage ../development/ocaml-modules/linenoise { };
|
||||
|
||||
llvm = callPackage ../development/ocaml-modules/llvm {
|
||||
@ -941,6 +943,8 @@ let
|
||||
|
||||
ounit2 = callPackage ../development/ocaml-modules/ounit2 { };
|
||||
|
||||
paf = callPackage ../development/ocaml-modules/paf { };
|
||||
|
||||
parse-argv = callPackage ../development/ocaml-modules/parse-argv { };
|
||||
|
||||
path_glob = callPackage ../development/ocaml-modules/path_glob { };
|
||||
|
Loading…
Reference in New Issue
Block a user