Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2021-04-25 18:14:18 +00:00 committed by GitHub
commit 9a945aac72
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
39 changed files with 1345 additions and 188 deletions

View file

@ -25,7 +25,7 @@ let
abiVersions = [ "armeabi-v7a" "arm64-v8a" ];
cmakeVersions = [ "3.10.2" ];
includeNDK = true;
ndkVersion = "22.0.7026061";
ndkVersions = ["22.0.7026061"];
useGoogleAPIs = false;
useGoogleTVAddOns = false;
includeExtras = [
@ -52,7 +52,11 @@ The following parameters are supported:
* `cmakeVersions` specifies which CMake versions should be deployed.
* `includeNDK` specifies that the Android NDK bundle should be included.
Defaults to: `false`.
* `ndkVersion` specifies the NDK version that we want to use.
* `ndkVersions` specifies the NDK versions that we want to use. These are linked
under the `ndk` directory of the SDK root, and the first is linked under the
`ndk-bundle` directory.
* `ndkVersion` is equivalent to specifying one entry in `ndkVersions`, and
`ndkVersions` overrides this parameter if provided.
* `includeExtras` is an array of identifier strings referring to arbitrary
add-on packages that should be installed.
* `platformVersions` specifies which platform SDK versions should be included.

View file

@ -498,6 +498,12 @@
githubId = 15623522;
name = "Amar Paul";
};
ambroisie = {
email = "bruno.nixpkgs@belanyi.fr";
github = "ambroisie";
githubId = 12465195;
name = "Bruno BELANYI";
};
ambrop72 = {
email = "ambrop7@gmail.com";
github = "ambrop72";
@ -8839,6 +8845,12 @@
githubId = 15379000;
name = "schneefux";
};
schnusch = {
email = "schnusch@users.noreply.github.com";
github = "schnusch";
githubId = 5104601;
name = "schnusch";
};
schristo = {
email = "schristopher@konputa.com";
name = "Scott Christopher";

View file

@ -529,6 +529,7 @@
./services/misc/parsoid.nix
./services/misc/plex.nix
./services/misc/plikd.nix
./services/misc/podgrab.nix
./services/misc/tautulli.nix
./services/misc/pinnwand.nix
./services/misc/pykms.nix

View file

@ -0,0 +1,50 @@
{ config, lib, pkgs, ... }:
let
cfg = config.services.podgrab;
in
{
options.services.podgrab = with lib; {
enable = mkEnableOption "Podgrab, a self-hosted podcast manager";
passwordFile = mkOption {
type = with types; nullOr str;
default = null;
example = "/run/secrets/password.env";
description = ''
The path to a file containing the PASSWORD environment variable
definition for Podgrab's authentification.
'';
};
port = mkOption {
type = types.port;
default = 8080;
example = 4242;
description = "The port on which Podgrab will listen for incoming HTTP traffic.";
};
};
config = lib.mkIf cfg.enable {
systemd.services.podgrab = {
description = "Podgrab podcast manager";
wantedBy = [ "multi-user.target" ];
environment = {
CONFIG = "/var/lib/podgrab/config";
DATA = "/var/lib/podgrab/data";
GIN_MODE = "release";
PORT = toString cfg.port;
};
serviceConfig = {
DynamicUser = true;
EnvironmentFile = lib.optional (cfg.passwordFile != null) [
cfg.passwordFile
];
ExecStart = "${pkgs.podgrab}/bin/podgrab";
WorkingDirectory = "${pkgs.podgrab}/share";
StateDirectory = [ "podgrab/config" "podgrab/data" ];
};
};
};
meta.maintainers = with lib.maintainers; [ ambroisie ];
}

View file

@ -325,6 +325,7 @@ in
pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix {};
plikd = handleTest ./plikd.nix {};
plotinus = handleTest ./plotinus.nix {};
podgrab = handleTest ./podgrab.nix {};
podman = handleTestOn ["x86_64-linux"] ./podman.nix {};
pomerium = handleTestOn ["x86_64-linux"] ./pomerium.nix {};
postfix = handleTest ./postfix.nix {};

34
nixos/tests/podgrab.nix Normal file
View file

@ -0,0 +1,34 @@
let
defaultPort = 8080;
customPort = 4242;
in
import ./make-test-python.nix ({ pkgs, ... }: {
name = "podgrab";
nodes = {
default = { ... }: {
services.podgrab.enable = true;
};
customized = { ... }: {
services.podgrab = {
enable = true;
port = customPort;
};
};
};
testScript = ''
start_all()
default.wait_for_unit("podgrab")
default.wait_for_open_port("${toString defaultPort}")
default.succeed("curl --fail http://localhost:${toString defaultPort}")
customized.wait_for_unit("podgrab")
customized.wait_for_open_port("${toString customPort}")
customized.succeed("curl --fail http://localhost:${toString customPort}")
'';
meta.maintainers = with pkgs.lib.maintainers; [ ambroisie ];
})

View file

@ -3,13 +3,13 @@
mkDerivation rec {
pname = "cura";
version = "4.8.0";
version = "4.9.0";
src = fetchFromGitHub {
owner = "Ultimaker";
repo = "Cura";
rev = version;
sha256 = "060fqzspipm93ks0inrj7yrj5wmvkdfv8xaxrv22590yb9f95s9m";
sha256 = "1q515qwrzla3ikbsjmk91y0nrbwih11jycgmd50lkrmnkh7qj0r2";
};
materials = fetchFromGitHub {
@ -22,7 +22,7 @@ mkDerivation rec {
buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
propagatedBuildInputs = with python3.pkgs; [
libsavitar numpy-stl pyserial requests uranium zeroconf pynest2d
sentry-sdk trimesh
sentry-sdk trimesh keyring
] ++ plugins;
nativeBuildInputs = [ cmake python3.pkgs.wrapPython ];

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, python3Packages, libspnav }:
{ lib, stdenv, fetchFromGitHub, fetchpatch, python3Packages, libspnav, jq }:
let
@ -34,18 +34,28 @@ let
rawmouse = stdenv.mkDerivation rec {
pname = "RawMouse";
version = "1.0.13";
version = "1.1.0";
src = fetchFromGitHub {
owner = "smartavionics";
repo = pname;
rev = version;
sha256 = "1cj40pgsfcwliz47mkiqjbslkwcm34qb1pajc2mcljgflcnickly";
sha256 = "0hvi7qwd4xfnqnhbj9dgfjmvv9df7s42asf3fdfxv43n6nx74scw";
};
nativeBuildInputs = [ jq ];
propagatedBuildInputs = with python3Packages; [
hidapi
];
buildPhase = ''
substituteInPlace RawMouse/config.json --replace \
/usr/local/lib/libspnav.so ${libspnav}/lib/libspnav.so
jq 'del(.devices) | .libspnav="${libspnav}/lib/libspnav.so"' \
<RawMouse/config.json >RawMouse/config.json.new
mv RawMouse/config.json.new RawMouse/config.json
# remove prebuilt binaries
rm -r RawMouse/hidapi
'';
installPhase = ''

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "curaengine";
version = "4.8.0";
version = "4.9.0";
src = fetchFromGitHub {
owner = "Ultimaker";
repo = "CuraEngine";
rev = version;
sha256 = "083l327ry6hv3yaa1p8dx1hx7fm12b0lh5nlbshxjyym0vi15rw2";
sha256 = "0b82hwn7pb73h1azaandq93bkzlzskhgk71pwf4yws0j9bm6z084";
};
nativeBuildInputs = [ cmake ];
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A powerful, fast and robust engine for processing 3D models into 3D printing instruction";
homepage = "https://github.com/Ultimaker/CuraEngine";
license = licenses.agpl3;
license = licenses.agpl3Only;
platforms = platforms.linux;
maintainers = with maintainers; [ abbradar gebner ];
};

View file

@ -1,33 +1,40 @@
{ lib, python3Packages, ffmpeg_3 }:
{ lib, python3Packages, ffmpeg }:
python3Packages.buildPythonApplication rec {
version = "2.1.1";
version = "2.2";
pname = "sigal";
src = python3Packages.fetchPypi {
inherit version pname;
sha256 = "0l07p457svznirz7qllgyl3qbhiisv7klhz7cbdw6417hxf9bih8";
sha256 = "sha256-49XsNdZuicsiYJZuF1UdqMA4q33Ly/Ug/Hc4ybJKmPo=";
};
disabled = !(python3Packages.pythonAtLeast "3.6");
checkInputs = with python3Packages; [ pytest ];
propagatedBuildInputs = with python3Packages; [
# install_requires
jinja2
markdown
pillow
pilkit
clint
click
blinker
natsort
setuptools_scm
# extras_require
boto
brotli
feedgenerator
zopfli
cryptography
];
makeWrapperArgs = [ "--prefix PATH : ${ffmpeg_3}/bin" ];
checkInputs = [
ffmpeg
] ++ (with python3Packages; [
pytestCheckHook
]);
# No tests included
doCheck = false;
makeWrapperArgs = [ "--prefix PATH : ${ffmpeg}/bin" ];
meta = with lib; {
description = "Yet another simple static gallery generator";

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "qalculate-gtk";
version = "3.17.0";
version = "3.18.0";
src = fetchFromGitHub {
owner = "qalculate";
repo = "qalculate-gtk";
rev = "v${version}";
sha256 = "sha256-Nxe1DZL8mh9aBWXQdlp5wC1l5b9mchlrRyE+LKC+yLI=";
sha256 = "sha256-hE0di7B6dCnMmMBLgFkb6vPS4hS/7zD6BbviIucrn1I=";
};
hardeningDisable = [ "format" ];

View file

@ -1,8 +1,14 @@
{ lib, fetchurl, buildPythonApplication, pbr, requests, setuptools }:
{ lib
, fetchurl
, buildPythonApplication
, pbr
, requests
, setuptools
}:
buildPythonApplication rec {
pname = "git-review";
version = "2.0.0";
version = "2.1.0";
# Manually set version because prb wants to get it from the git
# upstream repository (and we are installing from tarball instead)
@ -10,17 +16,28 @@ buildPythonApplication rec {
src = fetchurl {
url = "https://opendev.org/opendev/${pname}/archive/${version}.tar.gz";
sha256 = "0dkyd5g2xmvsa114is3cd9qmki3hi6c06wjnra0f4xq3aqm0ajnj";
hash = "sha256-3A1T+/iXhNeMS2Aww5jISoiNExdv9N9/kwyATSuwVTE=";
};
propagatedBuildInputs = [ pbr requests setuptools ];
nativeBuildInputs = [
pbr
];
# Don't do tests because they require gerrit which is not packaged
propagatedBuildInputs = [
requests
setuptools # implicit dependency, used to get package version through pkg_resources
];
# Don't run tests because they pull in external dependencies
# (a specific build of gerrit + maven plugins), and I haven't figured
# out how to work around this yet.
doCheck = false;
pythonImportsCheck = [ "git_review" ];
meta = with lib; {
homepage = "https://opendev.org/opendev/git-review";
description = "Tool to submit code to Gerrit";
homepage = "https://opendev.org/opendev/git-review";
license = licenses.asl20;
maintainers = with maintainers; [ metadark ];
};

View file

@ -84,6 +84,126 @@ stdenv.mkDerivation rec {
patches = [
./fix-qemu-ga.patch
./9p-ignore-noatime.patch
(fetchpatch {
name = "CVE-2020-27821.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/memory-clamp-cached-translation-if-points-to-MMIO-region-CVE-2020-27821.patch";
sha256 = "0sj0kr0g6jalygr5mb9i17fgr491jzaxvk3dvala0268940s01x9";
})
(fetchpatch {
name = "CVE-2020-20221.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/arm_gic-fix-interrupt-ID-in-GICD_SGIR-CVE-2021-20221.patch";
sha256 = "1iyvcw87hzlc57fg5l87vddqmch8iw2yghk0s125hk5shn1bygjq";
})
(fetchpatch {
name = "CVE-2020-20181.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/9pfs-Fully-restart-unreclaim-loop-CVE-2021-20181.patch";
sha256 = "149ifiazj6rn4d4mv2c7lcayq744fijsv5abxlb8bhbkj99wd64f";
})
(fetchpatch {
name = "CVE-2020-35517.part-1.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/virtiofsd-extract-lo_do_open-from-lo_open.patch";
sha256 = "0j4waaz6q54by4a7vd5m8s2n8y0an9hqf0ndycxsy03g4ksm669d";
})
(fetchpatch {
name = "CVE-2020-35517.part-2.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/virtiofsd-optionally-return-inode-pointer-from-lo_do_lookup.patch";
sha256 = "08bag890r6dx2rhnq58gyvsxvzwqgvn83pjlg95b5ic0z6gyjnsg";
})
(fetchpatch {
name = "CVE-2020-35517.part-3.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/virtiofsd-prevent-opening-of-special-files-CVE-2020-35517.patch";
sha256 = "0ziy6638zbkn037l29ywirvgymbqq66l5rngg8iwyky67acilv94";
})
(fetchpatch {
name = "CVE-2021-20263.part-1.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/virtiofsd-save-error-code-early-at-the-failure-callsite.patch";
sha256 = "15rwb15yjpclrqaxkhx76npr8zlfm9mj4jb19czg093is2cn4rys";
})
(fetchpatch {
name = "CVE-2021-20263.part-2.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/virtiofsd-drop-remapped-security.capability-xattr-as-needed-CVE-2021-20263.patch";
sha256 = "06ylz80ilg30wlskd4dsjx677fp5qr8cranwlakvjhr88b630xw0";
})
(fetchpatch {
name = "CVE-2021-3416.part-1.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-introduce.patch";
sha256 = "0hcpf00vqpg9rc0wl8cry905w04614843aqifybyv15wbv190gpz";
})
(fetchpatch {
name = "CVE-2021-3416.part-2.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-cadence_gem.patch";
sha256 = "12mjnrvs6p4g5frzqb08k4h86hphdqlka91fcma2a3m4ap98nrxy";
})
(fetchpatch {
name = "CVE-2021-3416.part-3.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-dp8393x.patch";
sha256 = "02z6q0578fj55phjlg2larrsx3psch2ixzy470yf57jl3jq1dy6k";
})
(fetchpatch {
name = "CVE-2021-3416.part-4.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-e1000.patch";
sha256 = "0zzbiz8i9js524mcdi739c7hrsmn82gnafrygi0xrd5sqf1hp08z";
})
(fetchpatch {
name = "CVE-2021-3416.part-5.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-lan9118.patch";
sha256 = "1f44v5znd9s7l7wgc71nbg8jw1bjqiga4wkz7d7cpnkv3l7b9kjj";
})
(fetchpatch {
name = "CVE-2021-3416.part-6.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-msf2.patch";
sha256 = "04n1rzn6gfxdalp34903ysdhlvxqkfndnqayjj3iv1k27i5pcidn";
})
(fetchpatch {
name = "CVE-2021-3416.part-7.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-pcnet.patch";
sha256 = "1p9ls6f8r6hxprj8ha6278fydcxj3av29p1hvszxmabazml2g7l2";
})
(fetchpatch {
name = "CVE-2021-3416.part-8.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-rtl8139.patch";
sha256 = "0lms1zn49kpwblkp54widjjy7fwyhdh1x832l1jvds79l2nm6i04";
})
(fetchpatch {
name = "CVE-2021-3416.part-9.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-sungem.patch";
sha256 = "1mkzyrgsp9ml9yqzjxdfqnwjr7n0fd8vxby4yp4ksrskyni8y0p4";
})
(fetchpatch {
name = "CVE-2021-3416.part-10.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/net-qemu_receive_packet-for-loopback-tx_pkt-iov.patch";
sha256 = "1pwqq8yw06y3p6hah3dgjhsqzk802wbn7zyajla1zwdfpic63jss";
})
(fetchpatch {
name = "CVE-2021-3409.part-1.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/sdhci/dont-transfer-any-data-when-command-time-out.patch";
sha256 = "0wf1yhb9mqpfgh9rv0hff0v1sw3zl2vsfgjrby4r8jvxdfjrxj8s";
})
(fetchpatch {
name = "CVE-2021-3409.part-2.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/sdhci/dont-write-to-SDHC_SYSAD-register-when-transfer-is-in-progress.patch";
sha256 = "1dd405dsdc7fbp68yf6f32js1azsv3n595c6nbxh28kfh9lspx4v";
})
(fetchpatch {
name = "CVE-2021-3409.part-3.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/sdhci/correctly-set-the-controller-status-for-ADMA.patch";
sha256 = "08jk51pfrbn1zfymahgllrzivajh2v2qx0868rv9zmgi0jldbky6";
})
(fetchpatch {
name = "CVE-2021-3409.part-4.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/sdhci/limit-block-size-only-when-SDHC_BLKSIZE-register-is-writable.patch";
sha256 = "1valfhw3l83br1cny6n4kmrv0f416hl625mggayqfz4prsknyhh7";
})
(fetchpatch {
name = "CVE-2021-3409.part-5.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/sdhci/reset-the-data-pointer-of-s-fifo_buffer-when-a-different-block-size-is-programmed.patch";
sha256 = "01p5qrr00rh3mlwrp3qq56h7yhqv0w7pw2cw035nxw3mnap03v31";
})
(fetchpatch {
name = "CVE-2021-3392.patch";
url = "https://sources.debian.org/data/main/q/qemu/1:5.2+dfsg-10/debian/patches/mptsas-remove-unused-MPTSASState.pending-CVE-2021-3392.patch";
sha256 = "0n7dn2p102c21mf3ncqrnks0wl5kas6yspafbn8jd03ignjgc4hd";
})
] ++ optional nixosTestRunner ./force-uid0-on-9p.patch
++ optionals stdenv.hostPlatform.isMusl [
(fetchpatch {

View file

@ -0,0 +1,26 @@
{ lib, stdenv, fetchurl, mkfontscale }:
stdenv.mkDerivation rec {
pname = "termsyn";
version = "1.8.7";
src = fetchurl {
url = "mirror://sourceforge/termsyn/termsyn-${version}.tar.gz";
sha256 = "15vsmc3nmzl0pkgdpr2993da7p38fiw2rvcg01pwldzmpqrmkpn6";
};
nativeBuildInputs = [ mkfontscale ];
installPhase = ''
install -m 644 -D *.pcf -t "$out/share/fonts"
install -m 644 -D *.psfu -t "$out/share/kbd/consolefonts"
mkfontdir "$out/share/fonts"
'';
meta = with lib; {
description = "Monospaced font based on terminus and tamsyn";
homepage = "https://sourceforge.net/projects/termsyn/";
license = licenses.gpl2Only;
maintainers = with maintainers; [ sophrosyne ];
};
}

View file

@ -3,10 +3,10 @@
}:
{ toolsVersion ? "26.1.1"
, platformToolsVersion ? "30.0.5"
, platformToolsVersion ? "31.0.2"
, buildToolsVersions ? [ "30.0.3" ]
, includeEmulator ? false
, emulatorVersion ? "30.3.4"
, emulatorVersion ? "30.6.3"
, platformVersions ? []
, includeSources ? false
, includeSystemImages ? false
@ -14,7 +14,8 @@
, abiVersions ? [ "armeabi-v7a" ]
, cmakeVersions ? [ ]
, includeNDK ? false
, ndkVersion ? "22.0.7026061"
, ndkVersion ? "22.1.7171670"
, ndkVersions ? [ndkVersion]
, useGoogleAPIs ? false
, useGoogleTVAddOns ? false
, includeExtras ? []
@ -175,10 +176,18 @@ rec {
}
) cmakeVersions;
ndk-bundle = import ./ndk-bundle {
inherit deployAndroidPackage os autoPatchelfHook makeWrapper pkgs pkgsHostHost lib platform-tools;
package = packages.ndk-bundle.${ndkVersion};
};
# Creates a NDK bundle.
makeNdkBundle = ndkVersion:
import ./ndk-bundle {
inherit deployAndroidPackage os autoPatchelfHook makeWrapper pkgs pkgsHostHost lib platform-tools;
package = packages.ndk-bundle.${ndkVersion};
};
# All NDK bundles.
ndk-bundles = if includeNDK then map makeNdkBundle ndkVersions else [];
# The "default" NDK bundle.
ndk-bundle = if includeNDK then lib.findFirst (x: x != null) null ndk-bundles else null;
google-apis = map (version:
deployAndroidPackage {
@ -203,6 +212,15 @@ rec {
'') plugins}
'';
# Function that automatically links all NDK plugins.
linkNdkPlugins = {name, plugins, rootName ? name}:
lib.optionalString (plugins != []) ''
mkdir -p ${rootName}
${lib.concatMapStrings (plugin: ''
ln -s ${plugin}/libexec/android-sdk/${name} ${rootName}/${plugin.version}
'') plugins}
'';
# Function that automatically links a plugin for which only one version exists
linkPlugin = {name, plugin, check ? true}:
lib.optionalString check ''
@ -233,13 +251,13 @@ rec {
postInstall = ''
# Symlink all requested plugins
${linkPlugin { name = "platform-tools"; plugin = platform-tools; }}
${linkPlugins { name = "build-tools"; plugins = build-tools; }}
${linkPlugin { name = "emulator"; plugin = emulator; check = includeEmulator; }}
${linkPlugins { name = "platforms"; plugins = platforms; }}
${linkPlatformPlugins { name = "sources"; plugins = sources; check = includeSources; }}
${linkPlugins { name = "cmake"; plugins = cmake; }}
${linkNdkPlugins { name = "ndk-bundle"; rootName = "ndk"; plugins = ndk-bundles; }}
${linkPlugin { name = "ndk-bundle"; plugin = ndk-bundle; check = includeNDK; }}
${lib.optionalString includeSystemImages ''

View file

@ -23,14 +23,14 @@ let
android = {
versions = {
tools = "26.1.1";
platformTools = "30.0.5";
platformTools = "31.0.2";
buildTools = "30.0.3";
ndk = "22.0.7026061";
# or the LTS NDK:
# ndk = "21.3.6528147";
cmake = "3.10.2";
emulator = "30.3.4";
ndk = [
"22.1.7171670"
"21.3.6528147" # LTS NDK
];
cmake = "3.18.1";
emulator = "30.6.3";
};
platforms = ["23" "24" "25" "26" "27" "28" "29" "30"];
@ -69,7 +69,7 @@ let
emulatorVersion = android.versions.emulator;
includeNDK = true;
ndkVersion = android.versions.ndk;
ndkVersions = android.versions.ndk;
cmakeVersions = [android.versions.cmake];
useGoogleAPIs = true;
@ -130,7 +130,7 @@ pkgs.mkShell rec {
shellHook = ''
# Add cmake to the path.
cmake_root="$(echo "$ANDROID_SDK_ROOT/cmake/${android.versions.cmake}".*/)"
cmake_root="$(echo "$ANDROID_SDK_ROOT/cmake/${android.versions.cmake}"*/)"
export PATH="$cmake_root/bin:$PATH"
# Write out local.properties for Android Studio.

View file

@ -425,16 +425,16 @@
"archives": [
{
"os": "windows",
"sha1": "9b3479ce8f42fdcbd487aa843a2453d5950f5fc9",
"size": 164505,
"url": "https://dl.google.com/android/repository/gvm-windows_v1_6_0.zip"
"sha1": "1d35ead3cdfaf6e51001455f66a2db102dd647b7",
"size": 167191,
"url": "https://dl.google.com/android/repository/gvm-windows_v1_7_0.zip"
}
],
"displayName": "Android Emulator Hypervisor Driver for AMD Processors (installer)",
"license": "android-sdk-license",
"name": "extras-google-Android_Emulator_Hypervisor_Driver",
"path": "extras/google/Android_Emulator_Hypervisor_Driver",
"revision": "1.6.0"
"revision": "1.7.0"
},
"extras;google;admob_ads_sdk": {
"archives": [
@ -466,33 +466,6 @@
"path": "extras/google/analytics_sdk_v2",
"revision": "3"
},
"extras;google;auto": {
"archives": [
{
"os": "linux",
"sha1": "202a6e1b3009a0eb815f8c672d2d5b3717de6169",
"size": 1346009,
"url": "https://dl.google.com/android/repository/desktop-head-unit-linux_r01.1.zip"
},
{
"os": "macosx",
"sha1": "8179cbb3914493ebc5eb65b731cba061582f2e84",
"size": 2375533,
"url": "https://dl.google.com/android/repository/desktop-head-unit-macosx_r01.1.zip"
},
{
"os": "windows",
"sha1": "99c4a7172d73673552119347bc24c58b47da177b",
"size": 2691901,
"url": "https://dl.google.com/android/repository/desktop-head-unit-windows_r01.1.zip"
}
],
"displayName": "Android Auto Desktop Head Unit emulator",
"license": "android-sdk-license",
"name": "extras-google-auto",
"path": "extras/google/auto",
"revision": "1.1"
},
"extras;google;gcm": {
"archives": [
{
@ -1537,21 +1510,21 @@
"archives": [
{
"os": "windows",
"sha1": "ef4661e49abeb64c173636012526e41ff6f39dc1",
"size": 1404149582,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-30_r09-windows.zip"
"sha1": "ead1babced6bdfaa8e641faeb6ed115ca603c4a9",
"size": 1404405641,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-30_r10-windows.zip"
},
{
"os": "macosx",
"sha1": "ef4661e49abeb64c173636012526e41ff6f39dc1",
"size": 1404149582,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-30_r09-darwin.zip"
"sha1": "ead1babced6bdfaa8e641faeb6ed115ca603c4a9",
"size": 1404405641,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-30_r10-darwin.zip"
},
{
"os": "linux",
"sha1": "ef4661e49abeb64c173636012526e41ff6f39dc1",
"size": 1404149582,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-30_r09-linux.zip"
"sha1": "ead1babced6bdfaa8e641faeb6ed115ca603c4a9",
"size": 1404405641,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-30_r10-linux.zip"
}
],
"displayName": "Google Play Intel x86 Atom_64 System Image",
@ -1561,6 +1534,58 @@
"revision": "30-google_apis_playstore-x86_64"
}
}
},
"S": {
"google_apis_playstore": {
"arm64-v8a": {
"archives": [
{
"os": "macosx",
"sha1": "528e302e9966e8320d1c2bdc8235762fe4a9e733",
"size": 1333046412,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-S_r03-darwin.zip"
},
{
"os": "linux",
"sha1": "528e302e9966e8320d1c2bdc8235762fe4a9e733",
"size": 1333046412,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-S_r03-linux.zip"
}
],
"displayName": "Google Play ARM 64 v8a System Image",
"license": "android-sdk-arm-dbt-license",
"name": "system-image-S-google_apis_playstore-arm64-v8a",
"path": "system-images/android-S/google_apis_playstore/arm64-v8a",
"revision": "S-google_apis_playstore-arm64-v8a"
},
"x86_64": {
"archives": [
{
"os": "windows",
"sha1": "093e0537cb18b25d8399a1af3ec955d2085f15ff",
"size": 1384401947,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-S_r03-windows.zip"
},
{
"os": "macosx",
"sha1": "093e0537cb18b25d8399a1af3ec955d2085f15ff",
"size": 1384401947,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-S_r03-darwin.zip"
},
{
"os": "linux",
"sha1": "093e0537cb18b25d8399a1af3ec955d2085f15ff",
"size": 1384401947,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-S_r03-linux.zip"
}
],
"displayName": "Google Play Intel x86 Atom_64 System Image",
"license": "android-sdk-preview-license",
"name": "system-image-S-google_apis_playstore-x86_64",
"path": "system-images/android-S/google_apis_playstore/x86_64",
"revision": "S-google_apis_playstore-x86_64"
}
}
}
},
"licenses": {
@ -3075,6 +3100,33 @@
"name": "build-tools",
"path": "build-tools/30.0.3",
"revision": "30.0.3"
},
"31.0.0-rc3": {
"archives": [
{
"os": "macosx",
"sha1": "e75dfb7a975809ba0ca0d25c2b82f7fd56444a4b",
"size": 53224980,
"url": "https://dl.google.com/android/repository/012061446cfd98341585d0d07401d0bd1a4c30f6.build-tools_r31-rc3-macosx.zip"
},
{
"os": "windows",
"sha1": "9d9ce209353c9046abe16285d58ef893c4b42221",
"size": 57592553,
"url": "https://dl.google.com/android/repository/41966dc138d44a3e3797b92fb68bf70552011d5d.build-tools_r31-rc3-windows.zip"
},
{
"os": "linux",
"sha1": "6859f11348d3984afbfcc74984802bd2e31cc0e2",
"size": 54724181,
"url": "https://dl.google.com/android/repository/build-tools_r31-rc3-linux.zip"
}
],
"displayName": "Android SDK Build-Tools 31-rc3",
"license": "android-sdk-preview-license",
"name": "build-tools",
"path": "build-tools/31.0.0-rc3",
"revision": "31.0.0-rc3"
}
},
"cmake": {
@ -3109,14 +3161,14 @@
"archives": [
{
"os": "windows",
"sha1": "80916762df6955f431743066e3568ae65b1b2b2f",
"size": 14677038,
"sha1": "63723e9657a3ce1fc3ae078229c6199af80b76bd",
"size": 14676950,
"url": "https://dl.google.com/android/repository/7c386a739f915f5bd60051f2572c24782388e807.cmake-3.18.1-windows.zip"
},
{
"os": "macosx",
"sha1": "1580deb8fb5d705aefb028413dad1a3a129891fe",
"size": 18505815,
"sha1": "809fdc8e14c745c6df4e506cc2157910f50b9cd9",
"size": 18505220,
"url": "https://dl.google.com/android/repository/ba34c321f92f6e6fd696c8354c262c122f56abf8.cmake-3.18.1-darwin.zip"
},
{
@ -3127,7 +3179,7 @@
}
],
"displayName": "CMake 3.18.1",
"license": "android-sdk-preview-license",
"license": "android-sdk-license",
"name": "cmake",
"path": "cmake/3.18.1",
"revision": "3.18.1"
@ -3198,8 +3250,8 @@
},
{
"os": "macosx",
"sha1": "a69c4493c4c919698989484bf0ea684550ec5217",
"size": 86522172,
"sha1": "d45816955198c4dfd652584f4c0f1b0e86efb1b7",
"size": 86521848,
"url": "https://dl.google.com/android/repository/commandlinetools-mac-6514223_latest.zip"
},
{
@ -3325,74 +3377,59 @@
}
},
"emulator": {
"28.0.25": {
"30.5.5": {
"archives": [
{
"os": "macosx",
"sha1": "90f8a9942253db75ab4d13f791377e9739a88617",
"size": 300476485,
"url": "https://dl.google.com/android/repository/emulator-darwin_x64-7285888.zip"
},
{
"os": "linux",
"sha1": "ccdee1aa99e4ec39f5a762d6912682ac248b92f0",
"size": 272500365,
"url": "https://dl.google.com/android/repository/emulator-linux_x64-7285888.zip"
},
{
"os": "windows",
"sha1": "6004fd05db29f8088ec89ba85c273c0bf86ef0be",
"size": 372563893,
"url": "https://dl.google.com/android/repository/emulator-windows-5395263.zip"
"sha1": "84c3105ba1a3a94963e1f99b3f706d0231948fc9",
"size": 324371999,
"url": "https://dl.google.com/android/repository/emulator-windows_x64-7285888.zip"
}
],
"displayName": "Android Emulator",
"license": "android-sdk-license",
"name": "emulator",
"path": "emulator",
"revision": "28.0.25"
"revision": "30.5.5"
},
"30.2.6": {
"30.6.3": {
"archives": [
{
"os": "macosx",
"sha1": "60cc4cfe372b3189679e1e08c929ff2fb793f3f6",
"size": 292634405,
"url": "https://dl.google.com/android/repository/emulator-darwin-6962233.zip"
"sha1": "66c9b788de49548d0faab052274f97b042f7241d",
"size": 308984491,
"url": "https://dl.google.com/android/repository/emulator-darwin_x64-7266284.zip"
},
{
"os": "linux",
"sha1": "751044f953541b70a656d77343f6b0aac1153e24",
"size": 262303903,
"url": "https://dl.google.com/android/repository/emulator-linux-6962233.zip"
"sha1": "ecd9b55fe4784b6c8683faa4b1d2c951b8929154",
"size": 272243636,
"url": "https://dl.google.com/android/repository/emulator-linux_x64-7266284.zip"
},
{
"os": "windows",
"sha1": "daa448bc56199b6beeaecf5f796d26c65e5a5fb8",
"size": 258566662,
"url": "https://dl.google.com/android/repository/emulator-windows-6962233.zip"
}
],
"displayName": "Android Emulator",
"license": "android-sdk-license",
"name": "emulator",
"path": "emulator",
"revision": "30.2.6"
},
"30.3.4": {
"archives": [
{
"os": "macosx",
"sha1": "7c456b3946a89d8543a070d9f643f3fe87283d68",
"size": 295125219,
"url": "https://dl.google.com/android/repository/emulator-darwin-7020230.zip"
},
{
"os": "linux",
"sha1": "5285e71825453c83ad951b55a7a7d917a667221a",
"size": 265877671,
"url": "https://dl.google.com/android/repository/emulator-linux-7020230.zip"
},
{
"os": "windows",
"sha1": "918b6236a57d425b7a95495cd76a2cf1aaa98560",
"size": 320221036,
"url": "https://dl.google.com/android/repository/emulator-windows-7020230.zip"
"sha1": "5736749dc46ad950ec84e8275dfde2606d3e8a80",
"size": 324657514,
"url": "https://dl.google.com/android/repository/emulator-windows_x64-7266284.zip"
}
],
"displayName": "Android Emulator",
"license": "android-sdk-preview-license",
"name": "emulator",
"path": "emulator",
"revision": "30.3.4"
"revision": "30.6.3"
}
},
"extras": {
@ -3911,6 +3948,33 @@
"path": "ndk/21.3.6528147",
"revision": "21.3.6528147"
},
"21.4.7075529": {
"archives": [
{
"os": "macosx",
"sha1": "3f15c23a1c247ad17c7c271806848dbd40434738",
"size": 1042617180,
"url": "https://dl.google.com/android/repository/android-ndk-r21e-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "c3ebc83c96a4d7f539bd72c241b2be9dcd29bda9",
"size": 1190670072,
"url": "https://dl.google.com/android/repository/android-ndk-r21e-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "fc44fea8bb3f5a6789821f40f41dce2d2cd5dc30",
"size": 1109665123,
"url": "https://dl.google.com/android/repository/android-ndk-r21e-windows-x86_64.zip"
}
],
"displayName": "NDK (Side by side) 21.4.7075529",
"license": "android-sdk-license",
"name": "ndk",
"path": "ndk/21.4.7075529",
"revision": "21.4.7075529"
},
"22.0.6917172-rc1": {
"archives": [
{
@ -3964,6 +4028,114 @@
"name": "ndk",
"path": "ndk/22.0.7026061",
"revision": "22.0.7026061"
},
"22.1.7171670": {
"archives": [
{
"os": "macosx",
"sha1": "dc80e8a2cfcb28db74c1931d42c652e9d17ff2c3",
"size": 1049337733,
"url": "https://dl.google.com/android/repository/android-ndk-r22b-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "9ece64c7f19763dd67320d512794969930fce9dc",
"size": 1148198368,
"url": "https://dl.google.com/android/repository/android-ndk-r22b-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "96ba1a049303cf6bf3ee84cfd64d6bcd43486a50",
"size": 1082301775,
"url": "https://dl.google.com/android/repository/android-ndk-r22b-windows-x86_64.zip"
}
],
"displayName": "NDK (Side by side) 22.1.7171670",
"license": "android-sdk-license",
"name": "ndk",
"path": "ndk/22.1.7171670",
"revision": "22.1.7171670"
},
"23.0.7123448-rc1": {
"archives": [
{
"os": "macosx",
"sha1": "708ebbceb719c43a3165503ea82fb107d823ad54",
"size": 721278316,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta1-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "1340ed20f27fcb184ea814ae63e0f3cd75890342",
"size": 804392699,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta1-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "c056900896129d3dd4eb953a53a8961d9853aa20",
"size": 749304589,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta1-windows-x86_64.zip"
}
],
"displayName": "NDK (Side by side) 23.0.7123448",
"license": "android-sdk-preview-license",
"name": "ndk",
"path": "ndk/23.0.7123448",
"revision": "23.0.7123448-rc1"
},
"23.0.7196353-rc2": {
"archives": [
{
"os": "macosx",
"sha1": "454fd0c1e8385896ad465d7cfd653e28fbf3523f",
"size": 674507658,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta2-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "290e8c39bb9732ac8784855e1f22342eb488228e",
"size": 705747711,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta2-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "00194ae44ce90f2052ab8e42f1a11a0db8d50c2a",
"size": 747953762,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta2-windows-x86_64.zip"
}
],
"displayName": "NDK (Side by side) 23.0.7196353",
"license": "android-sdk-preview-license",
"name": "ndk",
"path": "ndk/23.0.7196353",
"revision": "23.0.7196353-rc2"
},
"23.0.7272597-rc3": {
"archives": [
{
"os": "macosx",
"sha1": "3b977f0f8e0fa2d6777fae6b1d37aebfc075ab56",
"size": 695243724,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta3-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "2298465ef13dab0c527b9cf6ef892b1ec6461fb4",
"size": 724828157,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta3-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "8c10a51f50f4f12ccc839dcb4bd8107133024c2f",
"size": 785932724,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta3-windows-x86_64.zip"
}
],
"displayName": "NDK (Side by side) 23.0.7272597",
"license": "android-sdk-preview-license",
"name": "ndk",
"path": "ndk/23.0.7272597",
"revision": "23.0.7272597-rc3"
}
},
"ndk-bundle": {
@ -4426,6 +4598,33 @@
"path": "ndk-bundle",
"revision": "21.3.6528147"
},
"21.4.7075529": {
"archives": [
{
"os": "macosx",
"sha1": "3f15c23a1c247ad17c7c271806848dbd40434738",
"size": 1042617180,
"url": "https://dl.google.com/android/repository/android-ndk-r21e-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "c3ebc83c96a4d7f539bd72c241b2be9dcd29bda9",
"size": 1190670072,
"url": "https://dl.google.com/android/repository/android-ndk-r21e-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "fc44fea8bb3f5a6789821f40f41dce2d2cd5dc30",
"size": 1109665123,
"url": "https://dl.google.com/android/repository/android-ndk-r21e-windows-x86_64.zip"
}
],
"displayName": "NDK",
"license": "android-sdk-license",
"name": "ndk-bundle",
"path": "ndk-bundle",
"revision": "21.4.7075529"
},
"22.0.6917172-rc1": {
"archives": [
{
@ -4479,6 +4678,114 @@
"name": "ndk-bundle",
"path": "ndk-bundle",
"revision": "22.0.7026061"
},
"22.1.7171670": {
"archives": [
{
"os": "macosx",
"sha1": "dc80e8a2cfcb28db74c1931d42c652e9d17ff2c3",
"size": 1049337733,
"url": "https://dl.google.com/android/repository/android-ndk-r22b-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "9ece64c7f19763dd67320d512794969930fce9dc",
"size": 1148198368,
"url": "https://dl.google.com/android/repository/android-ndk-r22b-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "96ba1a049303cf6bf3ee84cfd64d6bcd43486a50",
"size": 1082301775,
"url": "https://dl.google.com/android/repository/android-ndk-r22b-windows-x86_64.zip"
}
],
"displayName": "NDK",
"license": "android-sdk-license",
"name": "ndk-bundle",
"path": "ndk-bundle",
"revision": "22.1.7171670"
},
"23.0.7123448-rc1": {
"archives": [
{
"os": "macosx",
"sha1": "708ebbceb719c43a3165503ea82fb107d823ad54",
"size": 721278316,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta1-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "1340ed20f27fcb184ea814ae63e0f3cd75890342",
"size": 804392699,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta1-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "c056900896129d3dd4eb953a53a8961d9853aa20",
"size": 749304589,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta1-windows-x86_64.zip"
}
],
"displayName": "NDK",
"license": "android-sdk-preview-license",
"name": "ndk-bundle",
"path": "ndk-bundle",
"revision": "23.0.7123448-rc1"
},
"23.0.7196353-rc2": {
"archives": [
{
"os": "macosx",
"sha1": "454fd0c1e8385896ad465d7cfd653e28fbf3523f",
"size": 674507658,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta2-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "290e8c39bb9732ac8784855e1f22342eb488228e",
"size": 705747711,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta2-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "00194ae44ce90f2052ab8e42f1a11a0db8d50c2a",
"size": 747953762,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta2-windows-x86_64.zip"
}
],
"displayName": "NDK",
"license": "android-sdk-preview-license",
"name": "ndk-bundle",
"path": "ndk-bundle",
"revision": "23.0.7196353-rc2"
},
"23.0.7272597-rc3": {
"archives": [
{
"os": "macosx",
"sha1": "3b977f0f8e0fa2d6777fae6b1d37aebfc075ab56",
"size": 695243724,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta3-darwin-x86_64.zip"
},
{
"os": "linux",
"sha1": "2298465ef13dab0c527b9cf6ef892b1ec6461fb4",
"size": 724828157,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta3-linux-x86_64.zip"
},
{
"os": "windows",
"sha1": "8c10a51f50f4f12ccc839dcb4bd8107133024c2f",
"size": 785932724,
"url": "https://dl.google.com/android/repository/android-ndk-r23-beta3-windows-x86_64.zip"
}
],
"displayName": "NDK",
"license": "android-sdk-preview-license",
"name": "ndk-bundle",
"path": "ndk-bundle",
"revision": "23.0.7272597-rc3"
}
},
"patcher": {
@ -4499,32 +4806,32 @@
}
},
"platform-tools": {
"30.0.5": {
"31.0.2": {
"archives": [
{
"os": "macosx",
"sha1": "6f77800c35f27dc8e014a214e656aae17c7ea2d0",
"size": 13311295,
"url": "https://dl.google.com/android/repository/eabcd8b4b7ab518c6af9c941af8494072f17ec4b.platform-tools_r30.0.5-darwin.zip"
"sha1": "78937049851e1db90317612c6b831759f56fc86d",
"size": 13829393,
"url": "https://dl.google.com/android/repository/42b081e1e068bb936179551684cdcb30315e245c.platform-tools_r31.0.2-darwin.zip"
},
{
"os": "linux",
"sha1": "ba07433b8e34c2a51c250033abcd1442a28d0863",
"size": 13338136,
"url": "https://dl.google.com/android/repository/platform-tools_r30.0.5-linux.zip"
"sha1": "ff02a9d8c6fa9687e1207fc0c4b84033925d452d",
"size": 13876419,
"url": "https://dl.google.com/android/repository/platform-tools_r31.0.2-linux.zip"
},
{
"os": "windows",
"sha1": "e66c951841f78f225e36cfae74e81712a704a37a",
"size": 12328924,
"url": "https://dl.google.com/android/repository/platform-tools_r30.0.5-windows.zip"
"sha1": "9cc0f642a66706a978214395b85c8e8228c24f2f",
"size": 12537668,
"url": "https://dl.google.com/android/repository/platform-tools_r31.0.2-windows.zip"
}
],
"displayName": "Android SDK Platform-Tools",
"license": "android-sdk-license",
"name": "platform-tools",
"path": "platform-tools",
"revision": "30.0.5"
"revision": "31.0.2"
}
},
"platforms": {
@ -5022,35 +5329,77 @@
"name": "platforms",
"path": "platforms/android-9",
"revision": "9"
},
"S": {
"archives": [
{
"os": "all",
"sha1": "3aee3ad760dc7becf657d6421629fe360215f92e",
"size": 56206479,
"url": "https://dl.google.com/android/repository/platform-S_r03.zip"
}
],
"displayName": "Android SDK Platform S",
"license": "android-sdk-license",
"name": "platforms",
"path": "platforms/android-S",
"revision": "S"
}
},
"skiaparser": {
"5": {
"2": {
"archives": [
{
"os": "linux",
"sha1": "b4ac0f553c2b582fd4e1896f46e2021b9da9d19b",
"size": 6234850,
"url": "https://dl.google.com/android/repository/skiaparser-6923996-linux.zip"
"sha1": "2703a570224a5ced1f73eb3efbdb3192a1ecec81",
"size": 6681896,
"url": "https://dl.google.com/android/repository/skiaparser-7248848-linux.zip"
},
{
"os": "macosx",
"sha1": "6d4bafe363b8536c9c3da51fac6f4b16c5685359",
"size": 6297430,
"url": "https://dl.google.com/android/repository/skiaparser-6923996-mac.zip"
"sha1": "ecf8794beccf578d4130bb9f7f2c7fa0c40c62c2",
"size": 7340904,
"url": "https://dl.google.com/android/repository/skiaparser-7248848-mac.zip"
},
{
"os": "windows",
"sha1": "2aafef23d600d05467e645cd1420e8c7e5a5dad3",
"size": 6008442,
"url": "https://dl.google.com/android/repository/skiaparser-6923996-win.zip"
"sha1": "84c28480ca057e48e8d2fed0ae8f52fc21aa7e61",
"size": 6450856,
"url": "https://dl.google.com/android/repository/skiaparser-7248848-win.zip"
}
],
"displayName": "Layout Inspector image server for API S",
"license": "android-sdk-license",
"name": "skiaparser",
"path": "skiaparser/2",
"revision": "2"
},
"6": {
"archives": [
{
"os": "linux",
"sha1": "78af2cd3e4168af80c16d7686536baa318e10cc4",
"size": 6323164,
"url": "https://dl.google.com/android/repository/skiaparser-7083912-linux.zip"
},
{
"os": "macosx",
"sha1": "73aa4e3b52177cf7d4cf956a74311e0097987bb4",
"size": 6561072,
"url": "https://dl.google.com/android/repository/skiaparser-7083912-mac.zip"
},
{
"os": "windows",
"sha1": "28dde025a70a0f4819cf195c1cb6e0e2b4bf4514",
"size": 6059180,
"url": "https://dl.google.com/android/repository/skiaparser-7083912-win.zip"
}
],
"displayName": "Layout Inspector image server for API 29-30",
"license": "android-sdk-license",
"name": "skiaparser",
"path": "skiaparser/1",
"revision": "5"
"revision": "6"
}
},
"sources": {

View file

@ -0,0 +1,34 @@
{ lib
, buildDunePackage
, fetchurl
, mirage-xen
, parse-argv
, lwt
}:
buildDunePackage rec {
pname = "mirage-bootvar-xen";
version = "0.8.0";
minimumOCamlVersion = "4.08";
useDune2 = true;
src = fetchurl {
url = "https://github.com/mirage/mirage-bootvar-xen/releases/download/v${version}/mirage-bootvar-xen-v${version}.tbz";
sha256 = "0nk80giq9ng3svbnm68fjby2f1dnarddm3lk7mw7w59av71q0rcv";
};
propagatedBuildInputs = [
mirage-xen
lwt
parse-argv
];
meta = with lib; {
description = "Handle boot-time arguments for Xen platform";
license = licenses.isc;
maintainers = [ maintainers.sternenseemann ];
homepage = "https://github.com/mirage/mirage-bootvar-xen";
};
}

View file

@ -0,0 +1,39 @@
{ lib
, buildDunePackage
, netchannel
, ppx_sexp_conv
, lwt
, cstruct
, mirage-net
, mirage-xen
, io-page
, lwt-dllist
, logs
}:
buildDunePackage {
pname = "mirage-net-xen";
inherit (netchannel)
src
version
useDune2
minimumOCamlVersion
meta
;
nativeBuildInputs = [
ppx_sexp_conv
];
propagatedBuildInputs = [
lwt
cstruct
netchannel
mirage-net
mirage-xen
io-page
lwt-dllist
logs
];
}

View file

@ -0,0 +1,78 @@
{ lib
, buildDunePackage
, fetchurl
, pkg-config
, cstruct
, lwt
, shared-memory-ring-lwt
, xenstore
, lwt-dllist
, mirage-profile
, mirage-runtime
, logs
, fmt
, ocaml-freestanding
, bheap
, duration
, io-page
}:
buildDunePackage rec {
pname = "mirage-xen";
version = "6.0.0";
useDune2 = true;
src = fetchurl {
url = "https://github.com/mirage/mirage-xen/releases/download/v${version}/mirage-xen-v${version}.tbz";
sha256 = "f991e972059b27993c287ad010d9281fee061efaa1dd475d0955179f93710fbd";
};
patches = [
./makefile-no-opam.patch
./pkg-config.patch
];
# can't handle OCAMLFIND_DESTDIR with substituteAll
postPatch = ''
substituteInPlace lib/bindings/mirage-xen.pc \
--replace "@out@" "$out" \
--replace "@OCAMLFIND_DESTDIR@" "$OCAMLFIND_DESTDIR"
'';
minimumOCamlVersion = "4.08";
nativeBuildInputs = [
pkg-config
];
propagatedBuildInputs = [
cstruct
lwt
shared-memory-ring-lwt
xenstore
lwt-dllist
mirage-profile
mirage-runtime
io-page
logs
fmt
bheap
duration
(ocaml-freestanding.override { target = "xen"; })
];
# Move pkg-config files into their well-known location.
# This saves us an extra setup hook and causes no issues
# since we patch all relative paths out of the .pc file.
postInstall = ''
mv $OCAMLFIND_DESTDIR/pkgconfig $out/lib/pkgconfig
'';
meta = with lib; {
description = "Xen core platform libraries for MirageOS";
license = licenses.isc;
maintainers = [ maintainers.sternenseemann ];
homepage = "https://github.com/mirage/mirage-xen";
};
}

View file

@ -0,0 +1,12 @@
diff --git a/lib/bindings/Makefile b/lib/bindings/Makefile
index 4e413c0..67c7bdc 100644
--- a/lib/bindings/Makefile
+++ b/lib/bindings/Makefile
@@ -1,4 +1,6 @@
-PKG_CONFIG_PATH := $(shell opam config var prefix)/lib/pkgconfig
+ifneq (, $(shell command -v opam))
+ PKG_CONFIG_PATH ?= $(shell opam config var prefix)/lib/pkgconfig
+endif
CC ?= cc
FREESTANDING_CFLAGS := $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) pkg-config --cflags ocaml-freestanding)

View file

@ -0,0 +1,13 @@
diff --git a/lib/bindings/mirage-xen.pc b/lib/bindings/mirage-xen.pc
index a03a217..8499aa4 100644
--- a/lib/bindings/mirage-xen.pc
+++ b/lib/bindings/mirage-xen.pc
@@ -1,6 +1,6 @@
-prefix=${pcfiledir}/../..
+prefix=@out@
exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
+libdir=@OCAMLFIND_DESTDIR@
Name: mirage-xen
Version: 6.0.0

View file

@ -0,0 +1,55 @@
{ lib
, buildDunePackage
, fetchurl
, ppx_sexp_conv
, ppx_cstruct
, lwt
, mirage-net
, io-page
, mirage-xen
, ipaddr
, mirage-profile
, shared-memory-ring
, sexplib
, logs
, rresult
}:
buildDunePackage rec {
pname = "netchannel";
version = "2.0.0";
useDune2 = true;
minimumOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/mirage/mirage-net-xen/releases/download/v${version}/mirage-net-xen-v${version}.tbz";
sha256 = "ec3906ef1804ef6a9e36b91f4ae73ce4849e9e0d1d36a80fe66b5f905fab93ad";
};
nativeBuildInputs = [
ppx_cstruct
];
propagatedBuildInputs = [
ppx_sexp_conv
lwt
mirage-net
io-page
mirage-xen
ipaddr
mirage-profile
shared-memory-ring
sexplib
logs
rresult
];
meta = with lib; {
description = "Network device for reading and writing Ethernet frames via then Xen netfront/netback protocol";
license = licenses.isc;
maintainers = [ maintainers.sternenseemann ];
homepage = "https://github.com/mirage/mirage-net-xen";
};
}

View file

@ -0,0 +1,41 @@
{ lib
, buildDunePackage
, fetchurl
, ppx_cstruct
, mirage-profile
, cstruct
, ounit
}:
buildDunePackage rec {
pname = "shared-memory-ring";
version = "3.1.0";
useDune2 = true;
src = fetchurl {
url = "https://github.com/mirage/shared-memory-ring/releases/download/v${version}/shared-memory-ring-v${version}.tbz";
sha256 = "06350ph3rdfvybi0cgs3h3rdkmjspk3c4375rxvbdg0kza1w22x1";
};
nativeBuildInputs = [
ppx_cstruct
];
propagatedBuildInputs = [
mirage-profile
cstruct
];
doCheck = true;
checkInputs = [
ounit
];
meta = with lib; {
description = "Shared memory rings for RPC and bytestream communications";
license = licenses.isc;
homepage = "https://github.com/mirage/shared-memory-ring";
maintainers = [ maintainers.sternenseemann ];
};
}

View file

@ -0,0 +1,37 @@
{ lib
, buildDunePackage
, shared-memory-ring
, ppx_cstruct
, cstruct
, lwt
, lwt-dllist
, mirage-profile
, ounit
}:
buildDunePackage {
pname = "shared-memory-ring-lwt";
inherit (shared-memory-ring) version src useDune2;
buildInputs = [
ppx_cstruct
];
propagatedBuildInputs = [
shared-memory-ring
cstruct
lwt
lwt-dllist
mirage-profile
];
doCheck = true;
checkInputs = [
ounit
];
meta = shared-memory-ring.meta // {
description = "Shared memory rings for RPC and bytestream communications using Lwt";
};
}

View file

@ -3,14 +3,14 @@
buildPythonPackage rec {
pname = "libarcus";
version = "4.8.0";
version = "4.9.0";
format = "other";
src = fetchFromGitHub {
owner = "Ultimaker";
repo = "libArcus";
rev = version;
sha256 = "1dvz1rkvm4309yzvj7vy49v1vskr5yfq4nzqdiydp1jb7zpvhqqm";
sha256 = "0wq72nf680bwxijjajb4piw563rnvflshmw96kqln4lsny7ydjj2";
};
disabled = pythonOlder "3.4.0";

View file

@ -2,14 +2,14 @@
buildPythonPackage rec {
pname = "libsavitar";
version = "4.8.0";
version = "4.9.0";
format = "other";
src = fetchFromGitHub {
owner = "Ultimaker";
repo = "libSavitar";
rev = version;
sha256 = "1mxkvnhn8k1a86jlnjnlpf0b8dvrcg3n7pslf60s13cgb7w3sfzh";
sha256 = "0434cb19v9phc9xicbmgpbig18ivplcpqhnsjgca4p8n8c715k9h";
};
postPatch = ''

View file

@ -0,0 +1,39 @@
{
lib
, buildPythonPackage
, fetchPypi
, jinja2
, kubernetes
, ruamel-yaml
, six
, python-string-utils
}:
buildPythonPackage rec {
pname = "openshift";
version = "0.12.0";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-aggRnD4goiZJPp4cngp8AIrJC/V46378cwUSfq8Xml4=";
};
propagatedBuildInputs = [
jinja2
kubernetes
python-string-utils
ruamel-yaml
six
];
# tries to connect to the network
doCheck = false;
pythonImportsCheck = ["openshift"];
meta = with lib; {
description = "Python client for the OpenShift API";
homepage = "https://github.com/openshift/openshift-restclient-python";
license = licenses.asl20;
maintainers = with maintainers; [ teto ];
};
}

View file

@ -0,0 +1,27 @@
{ lib
, buildPythonPackage
, fetchPypi
, pytest
}:
buildPythonPackage rec {
pname = "python-string-utils";
version = "1.0.0";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-3PkGCwPwdkfApgNAjciwP4B/O1SgXG4Z6xRGAlb6wMs=";
};
pythonImportsCheck = ["string_utils"];
# tests are not available in pypi tarball
doCheck = false;
meta = with lib; {
description = "A handy Python library to validate, manipulate and generate strings.";
homepage = "https://github.com/daveoncode/python-string-utils";
license = licenses.mit;
maintainers = with maintainers; [ teto ];
};
}

View file

@ -2,7 +2,7 @@
, pyqt5, numpy, scipy, shapely, libarcus, cryptography, doxygen, gettext, pythonOlder }:
buildPythonPackage rec {
version = "4.7.1";
version = "4.9.0";
pname = "uranium";
format = "other";
@ -10,7 +10,7 @@ buildPythonPackage rec {
owner = "Ultimaker";
repo = "Uranium";
rev = version;
sha256 = "1h5d3scy3cnbyhh0pbavflpqklhn2lbp7hl193rc5gx8yzr3mqbh";
sha256 = "0bqrc4g4pd7b209swlv06bm5sx7df96h9kjpqpra4mfz469km4nn";
};
disabled = pythonOlder "3.5.0";

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "tflint";
version = "0.27.0";
version = "0.28.0";
src = fetchFromGitHub {
owner = "terraform-linters";
repo = pname;
rev = "v${version}";
sha256 = "1s49a3yihfkd8ib336a29ch53mpcyxzicglss7bqmqapv6zi37dg";
sha256 = "1d746016iyswb9kw7gprg32vj5rcfa2y9j11r2hsp61hsjfvmg8c";
};
vendorSha256 = "1w72n1sprwylaj96aj03h4qq43525q15iwb6vf23gf6913zhvqy3";
vendorSha256 = "0whd0b9rll0s42hrr2fqp412d5frzmrnqnynpq75wda5rqzmaf8r";
doCheck = false;

View file

@ -38,15 +38,15 @@ let
in
stdenv.mkDerivation rec {
pname = "soldat-unstable";
version = "2020-11-26";
pname = "soldat";
version = "unstable-2021-02-09";
src = fetchFromGitHub {
name = "soldat";
owner = "Soldat";
repo = "soldat";
rev = "2280296ac56883f6a9cad4da48025af8ae7782e7";
sha256 = "17i3nlhxm4x4zx00i00aivhxmagbnyizxnpwiqzg57bf23hrvdj3";
rev = "c304c3912ca7a88461970a859049d217a44c6375";
sha256 = "09sl2zybfcmnl2n3qghp0gylmr71y01534l6nq0y9llbdy0bf306";
};
nativeBuildInputs = [ fpc makeWrapper autoPatchelfHook ];
@ -63,14 +63,9 @@ stdenv.mkDerivation rec {
})
];
postPatch = ''
for f in client/Makefile server/Makefile; do
# fix unportable uname invocation
substituteInPlace "$f" --replace "uname -p" "uname -m"
done
'';
buildPhase = ''
runHook preBuild
mkdir -p client/build server/build
# build .so from stb headers
@ -87,9 +82,13 @@ stdenv.mkDerivation rec {
pushd server
make mode=release
popd
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -Dm644 client/libs/stb/libstb.so -t $out/lib
install -Dm755 client/build/soldat_* $out/bin/soldat
install -Dm755 server/build/soldatserver_* $out/bin/soldatserver
@ -107,6 +106,8 @@ stdenv.mkDerivation rec {
--add-flags "-fs_userpath \"$configDir\"" \
--add-flags "-fs_basepath \"${base}/share/soldat\""
done
runHook postInstall
'';
meta = with lib; {

View file

@ -0,0 +1,30 @@
{ lib, fetchFromGitHub, buildGoModule, nixosTests }:
buildGoModule rec {
pname = "podgrab";
version = "unstable-2021-04-14";
src = fetchFromGitHub {
owner = "akhilrex";
repo = pname;
rev = "3179a875b8b638fb86d0e829d12a9761c1cd7f90";
sha256 = "sha256-vhxIm20ZUi+RusrAsSY54tv/D570/oMO5qLz9dNqgqo=";
};
vendorSha256 = "sha256-xY9xNuJhkWPgtqA/FBVIp7GuWOv+3nrz6l3vaZVLlIE=";
postInstall = ''
mkdir -p $out/share/
cp -r $src/client $out/share/
cp -r $src/webassets $out/share/
'';
passthru.tests = { inherit (nixosTests) podgrab; };
meta = with lib; {
description = "A self-hosted podcast manager to download episodes as soon as they become live";
homepage = "https://github.com/akhilrex/podgrab";
license = licenses.gpl3Only;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -1,27 +1,27 @@
# This file was generated by https://github.com/kamilchm/go2nix v2.0-dev
{ lib, buildGoPackage, zip, fetchFromGitHub, makeWrapper, xdg-utils }:
{ lib, buildGoModule, zip, fetchFromGitHub, makeWrapper, xdg-utils }:
let
webassets = fetchFromGitHub {
owner = "gravitational";
repo = "webassets";
rev = "8ace0cfcc6867651bed3fd5b5f35aaa2a80e1106";
sha256 = "sha256-mzvYysCFMvWHo8Y4cmhAju62jjpe92j564gc12BSdZA=";
rev = "cf396f868aebb8ba654ea2398c25f033181e7114";
sha256 = "sha256-12jkpWl/kL0ttRHtxyDnKjYAZNrheEGQF8HEGSXvvAk=";
};
in
buildGoPackage rec {
buildGoModule rec {
pname = "teleport";
version = "5.2.1";
version = "6.1.2";
# This repo has a private submodule "e" which fetchgit cannot handle without failing.
src = fetchFromGitHub {
owner = "gravitational";
repo = "teleport";
rev = "v${version}";
sha256 = "sha256-8WEVH+04y1/s9KpBlK/LrgHG7qTpu2LqtanKKdi9N08=";
sha256 = "sha256-4ZaebTTgGrGRQbMfDw1PL/qtDKmHbSY6kPmWyFeIcAU=";
};
goPackagePath = "github.com/gravitational/teleport";
vendorSha256 = null;
subPackages = [ "tool/tctl" "tool/teleport" "tool/tsh" ];
@ -29,7 +29,6 @@ buildGoPackage rec {
postBuild = ''
pushd .
cd $NIX_BUILD_TOP/go/src/github.com/gravitational/teleport
mkdir -p build
echo "making webassets"
cp -r ${webassets}/* webassets/
@ -41,13 +40,21 @@ buildGoPackage rec {
popd
'';
# Do not strip the embedded web assets
dontStrip = true;
# Reduce closure size for client machines
outputs = [ "out" "client" ];
buildTargets = [ "full" ];
preCheck = ''
export HOME=$(mktemp -d)
'';
postInstall = ''
install -Dm755 -t $client/bin $out/bin/tsh
wrapProgram $client/bin/tsh --prefix PATH : ${xdg-utils}/bin
wrapProgram $out/bin/tsh --prefix PATH : ${xdg-utils}/bin
'';
@ -62,7 +69,7 @@ buildGoPackage rec {
meta = with lib; {
description = "A SSH CA management suite";
homepage = "https://gravitational.com/teleport/";
homepage = "https://goteleport.com/";
license = licenses.asl20;
maintainers = with maintainers; [ sigma tomberek freezeboy ];
platforms = platforms.unix;

View file

@ -0,0 +1,33 @@
{ buildGoModule
, fetchFromGitHub
, lib
, libX11
, libXi
, libXt
, libXtst
}:
buildGoModule rec {
pname = "remote-touchpad";
version = "1.0.1";
src = fetchFromGitHub {
owner = "unrud";
repo = pname;
rev = "v${version}";
sha256 = "0zmbn4s3yhcgmijc96vja7zj2sh6q0nkybhqy0fwz6sqzk8hq02x";
};
buildInputs = [ libX11 libXi libXt libXtst ];
buildFlags = [ "-tags" "portal,x11" ];
vendorSha256 = "0q1qk5g7kqpcci5fgamvxa8989jglv69kwg5rvkphbnx1bzlivrl";
meta = with lib; {
description = "Control mouse and keyboard from the webbrowser of a smartphone.";
homepage = "https://github.com/unrud/remote-touchpad";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ schnusch ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,38 @@
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, wayland
, wayland-protocols
}:
stdenv.mkDerivation {
pname = "wdomirror";
version = "unstable-2021-01-08";
src = fetchFromGitHub {
owner = "progandy";
repo = "wdomirror";
rev = "e4a4934e6f739909fbf346cbc001c72690b5c906";
sha256 = "1fz0sajhdjqas3l6mpik8w1k15wbv65hgh9r9vdgfqvw5l6cx7jv";
};
nativeBuildInputs = [ meson ninja pkg-config wayland-protocols ];
buildInputs = [ wayland ];
installPhase = ''
runHook preInstall
install -m755 -D wdomirror $out/bin/wdomirror
runHook postInstall
'';
meta = with lib; {
description = "Mirrors an output of a wlroots compositor to a window";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ jpas ];
};
}

View file

@ -912,6 +912,8 @@ in
inherit (haskellPackages) ghcWithPackages;
};
termsyn = callPackage ../data/fonts/termsyn { };
tilda = callPackage ../applications/terminal-emulators/tilda {
gtk = gtk3;
};
@ -2133,6 +2135,8 @@ in
wev = callPackage ../tools/wayland/wev { };
wdomirror = callPackage ../tools/wayland/wdomirror { };
wl-clipboard = callPackage ../tools/wayland/wl-clipboard { };
wlogout = callPackage ../tools/wayland/wlogout { };
@ -7975,6 +7979,8 @@ in
reftools = callPackage ../development/tools/reftools { };
remote-touchpad = callPackage ../tools/inputmethods/remote-touchpad { };
reposurgeon = callPackage ../applications/version-management/reposurgeon { };
reptyr = callPackage ../os-specific/linux/reptyr {};
@ -18530,6 +18536,8 @@ in
hyp = callPackage ../servers/http/hyp { };
podgrab = callPackage ../servers/misc/podgrab { };
prosody = callPackage ../servers/xmpp/prosody {
# _compat can probably be removed on next minor version after 0.10.0
lua5 = lua5_2_compat;

View file

@ -674,6 +674,8 @@ let
mirage-bootvar-unix = callPackage ../development/ocaml-modules/mirage-bootvar-unix { };
mirage-bootvar-xen = callPackage ../development/ocaml-modules/mirage-bootvar-xen { };
mirage-channel = callPackage ../development/ocaml-modules/mirage-channel { };
mirage-clock = callPackage ../development/ocaml-modules/mirage-clock { };
@ -716,6 +718,8 @@ let
mirage-net = callPackage ../development/ocaml-modules/mirage-net { };
mirage-net-xen = callPackage ../development/ocaml-modules/mirage-net-xen { };
mirage-profile = callPackage ../development/ocaml-modules/mirage-profile { };
mirage-protocols = callPackage ../development/ocaml-modules/mirage-protocols { };
@ -738,6 +742,8 @@ let
mirage-unix = callPackage ../development/ocaml-modules/mirage-unix { };
mirage-xen = callPackage ../development/ocaml-modules/mirage-xen { };
mirage-vnetif = callPackage ../development/ocaml-modules/mirage-vnetif { };
mlgmp = callPackage ../development/ocaml-modules/mlgmp { };
@ -752,6 +758,8 @@ let
mustache = callPackage ../development/ocaml-modules/mustache { };
netchannel = callPackage ../development/ocaml-modules/netchannel { };
nocrypto = callPackage ../development/ocaml-modules/nocrypto { };
nonstd = callPackage ../development/ocaml-modules/nonstd { };
@ -1137,6 +1145,10 @@ let
sha = callPackage ../development/ocaml-modules/sha { };
shared-memory-ring = callPackage ../development/ocaml-modules/shared-memory-ring { };
shared-memory-ring-lwt = callPackage ../development/ocaml-modules/shared-memory-ring/lwt.nix { };
sodium = callPackage ../development/ocaml-modules/sodium { };
spelll = callPackage ../development/ocaml-modules/spelll { };

View file

@ -4624,6 +4624,8 @@ in {
opensensemap-api = callPackage ../development/python-modules/opensensemap-api { };
openshift = callPackage ../development/python-modules/openshift { };
opentimestamps = callPackage ../development/python-modules/opentimestamps { };
opentracing = callPackage ../development/python-modules/opentracing { };
@ -6359,6 +6361,8 @@ in {
pytest-shutil = callPackage ../development/python-modules/pytest-shutil { };
python-string-utils = callPackage ../development/python-modules/python-string-utils { };
pytest-socket = callPackage ../development/python-modules/pytest-socket { };
pytest-subtesthack = callPackage ../development/python-modules/pytest-subtesthack { };