Merge master into staging-next

This commit is contained in:
github-actions[bot] 2021-06-10 18:14:17 +00:00 committed by GitHub
commit 870106ba69
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
23 changed files with 201 additions and 89 deletions

View File

@ -2,6 +2,7 @@
# 1. jenkins service starts on master node
# 2. jenkins user can be extended on both master and slave
# 3. jenkins service not started on slave node
# 4. declarative jobs can be added and removed
import ./make-test-python.nix ({ pkgs, ...} : {
name = "jenkins";
@ -13,7 +14,45 @@ import ./make-test-python.nix ({ pkgs, ...} : {
master =
{ ... }:
{ services.jenkins.enable = true;
{ services.jenkins = {
enable = true;
jobBuilder = {
enable = true;
nixJobs = [
{ job = {
name = "job-1";
builders = [
{ shell = ''
echo "Running job-1"
'';
}
];
};
}
{ job = {
name = "folder-1";
project-type = "folder";
};
}
{ job = {
name = "folder-1/job-2";
builders = [
{ shell = ''
echo "Running job-2"
'';
}
];
};
}
];
};
};
specialisation.noJenkinsJobs.configuration = {
services.jenkins.jobBuilder.nixJobs = pkgs.lib.mkForce [];
};
# should have no effect
services.jenkinsSlave.enable = true;
@ -32,7 +71,12 @@ import ./make-test-python.nix ({ pkgs, ...} : {
};
testScript = ''
testScript = { nodes, ... }:
let
configWithoutJobs = "${nodes.master.config.system.build.toplevel}/specialisation/noJenkinsJobs";
jenkinsPort = nodes.master.config.services.jenkins.port;
jenkinsUrl = "http://localhost:${toString jenkinsPort}";
in ''
start_all()
master.wait_for_unit("jenkins")
@ -45,5 +89,42 @@ import ./make-test-python.nix ({ pkgs, ...} : {
assert "users" in groups
slave.fail("systemctl is-enabled jenkins.service")
with subtest("jobs are declarative"):
# Check that jobs are created on disk.
master.wait_for_unit("jenkins-job-builder")
master.wait_until_fails("systemctl is-active jenkins-job-builder")
master.wait_until_succeeds("test -f /var/lib/jenkins/jobs/job-1/config.xml")
master.wait_until_succeeds("test -f /var/lib/jenkins/jobs/folder-1/config.xml")
master.wait_until_succeeds("test -f /var/lib/jenkins/jobs/folder-1/jobs/job-2/config.xml")
# Wait until jenkins is ready, reload configuration and verify it also
# sees the jobs.
master.succeed("curl --fail ${jenkinsUrl}/cli")
master.succeed("curl ${jenkinsUrl}/jnlpJars/jenkins-cli.jar -O")
master.succeed("${pkgs.jre}/bin/java -jar jenkins-cli.jar -s ${jenkinsUrl} -auth admin:$(cat /var/lib/jenkins/secrets/initialAdminPassword) reload-configuration")
out = master.succeed("${pkgs.jre}/bin/java -jar jenkins-cli.jar -s ${jenkinsUrl} -auth admin:$(cat /var/lib/jenkins/secrets/initialAdminPassword) list-jobs")
jobs = [x.strip() for x in out.splitlines()]
# Seeing jobs inside folders requires the Folders plugin
# (https://plugins.jenkins.io/cloudbees-folder/), which we don't have
# in this vanilla jenkins install, so limit ourself to non-folder jobs.
assert jobs == ['job-1'], f"jobs != ['job-1']: {jobs}"
master.succeed(
"${configWithoutJobs}/bin/switch-to-configuration test >&2"
)
# Check that jobs are removed from disk.
master.wait_for_unit("jenkins-job-builder")
master.wait_until_fails("systemctl is-active jenkins-job-builder")
master.wait_until_fails("test -f /var/lib/jenkins/jobs/job-1/config.xml")
master.wait_until_fails("test -f /var/lib/jenkins/jobs/folder-1/config.xml")
master.wait_until_fails("test -f /var/lib/jenkins/jobs/folder-1/jobs/job-2/config.xml")
# Reload jenkins' configuration and verify it also sees the jobs as removed.
master.succeed("${pkgs.jre}/bin/java -jar jenkins-cli.jar -s ${jenkinsUrl} -auth admin:$(cat /var/lib/jenkins/secrets/initialAdminPassword) reload-configuration")
out = master.succeed("${pkgs.jre}/bin/java -jar jenkins-cli.jar -s ${jenkinsUrl} -auth admin:$(cat /var/lib/jenkins/secrets/initialAdminPassword) list-jobs")
jobs = [x.strip() for x in out.splitlines()]
assert jobs == [], f"jobs != []: {jobs}"
'';
})

View File

@ -7,13 +7,13 @@
python3.pkgs.buildPythonApplication rec {
pname = "vorta";
version = "0.7.5";
version = "0.7.6";
src = fetchFromGitHub {
owner = "borgbase";
repo = "vorta";
rev = "v${version}";
sha256 = "sha256-qPO8qmXYDDFwV+8hAUyfF4Ins0vkwEJbw4JPguUSYOw=";
sha256 = "sha256-bzhabRVgl1eLTS4KtFkn4xw2KDTZJyFU6zCJdHW5IGE=";
};
postPatch = ''

View File

@ -11,13 +11,13 @@ assert x11Support -> xorg != null;
stdenv.mkDerivation rec {
pname = "bemenu";
version = "0.6.1";
version = "0.6.2";
src = fetchFromGitHub {
owner = "Cloudef";
repo = pname;
rev = version;
sha256 = "sha256-UdsfIXlKfXmsrFwrerX1wfne4mdtd69WXnXu3EmxCBY=";
sha256 = "sha256-2xmi/Mh5iU50yc2R1x1yzP8Xaz+mUgLnH73tAeLwxI8=";
};
nativeBuildInputs = [ pkg-config pcre ];

View File

@ -20,17 +20,17 @@
mkDerivation rec {
pname = "angelfish";
version = "21.05";
version = "21.06";
src = fetchurl {
url = "mirror://kde/stable/plasma-mobile/${version}/angelfish-${version}.tar.xz";
sha256 = "11jd5dwy0xa7kh5z5rc29xy3wfn20hm31908zjax4x83qqjrm075";
sha256 = "sha256-iHgmG/DeaUPnRXlVIU8P/oUcYINienYmR2zI9Q4Yd3s=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
sha256 = "05xvh7yxndqm2bqpm06jsxiv4v02mqxaazll8wllp367qapvr21g";
sha256 = "0zh0kli7kav18v9znq2f5jklhf3m1kyb41jzmivjx70g9xyfzlwk";
};
nativeBuildInputs = [

View File

@ -1,8 +1,8 @@
{
"stable": {
"version": "91.0.4472.77",
"sha256": "0c8vj3gq3nmb7ssiwj6875g0a8hcprss1a4gqw9h7llqywza9ma5",
"sha256bin64": "0caf47xam5igdnbhipal1iyicnxxvadhi61k199rwysrvyv5sdad",
"version": "91.0.4472.101",
"sha256": "1d3y621iclkq6nvxrapk5aihv50x13hjha0c2gcp2xxfma96253q",
"sha256bin64": "12j5q5b9v0jpiznjnh89831w8lv399vd1z4ljhbsnsidbsygrbr1",
"deps": {
"gn": {
"version": "2021-04-06",

View File

@ -11,6 +11,7 @@
, libkrb5
, libva
, mesa # firefox wants gbm for drm+dmabuf
, cups
}:
## configurability of the wrapper itself
@ -62,7 +63,7 @@ let
++ lib.optional (cfg.enableFXCastBridge or false) fx_cast_bridge
++ extraNativeMessagingHosts
);
libs = lib.optionals stdenv.isLinux [ udev libva mesa libnotify xorg.libXScrnSaver ]
libs = lib.optionals stdenv.isLinux [ udev libva mesa libnotify xorg.libXScrnSaver cups ]
++ lib.optional (pipewireSupport && lib.versionAtLeast version "83") pipewire
++ lib.optional ffmpegSupport ffmpeg
++ lib.optional gssSupport libkrb5

View File

@ -18,11 +18,11 @@ let
vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
in stdenv.mkDerivation rec {
pname = "vivaldi";
version = "3.8.2259.37-1";
version = "4.0.2312.24-1";
src = fetchurl {
url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
sha256 = "1lpia3jm6l2yvbhrw5khws28n653w22bszzd44y6zv6zwbw7y127";
sha256 = "0cyvnabjhcn1bm5py4nhfb1yhpz5nm9qm39vb4y1fwhjd0jv38hi";
};
unpackPhase = ''

View File

@ -29,11 +29,11 @@
assert pulseaudioSupport -> libpulseaudio != null;
let
version = "5.6.20278.0524";
version = "5.6.22045.0607";
srcs = {
x86_64-linux = fetchurl {
url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz";
sha256 = "1nkpmrpb0bz4zkg8nszxmcfy3ymigd2bmxhnxbjrcnv64ykdrgp7";
sha256 = "0zdk02zq9apxnfbxwnlda9z8nqkqa1h1javbh9wwj8yy3y3a1lb5";
};
};

View File

@ -1,31 +1,23 @@
{lib, stdenv, fetchurl, makeWrapper, flex, bison,
asciidoc, docbook_xml_dtd_45, docbook_xsl,
libxml2, libxslt,
python3, rcs, cvs, git,
coreutils, rsync}:
with stdenv; with lib;
mkDerivation rec {
name = "cvs-fast-export-${meta.version}";
meta = {
version = "1.56";
description = "Export an RCS or CVS history as a fast-import stream";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ dfoxfranke ];
homepage = "http://www.catb.org/esr/cvs-fast-export/";
platforms = platforms.all;
};
{ lib, stdenv, fetchurl, makeWrapper, asciidoc, docbook_xml_dtd_45, docbook_xsl
, coreutils, cvs, diffutils, findutils, git, python3, rsync
}:
stdenv.mkDerivation rec {
pname = "cvs-fast-export";
version = "1.57";
src = fetchurl {
url = "http://www.catb.org/~esr/cvs-fast-export/cvs-fast-export-1.56.tar.gz";
sha256 = "sha256-TB/m7kd91+PyAkGdFCCgeb9pQh0kacq0QuTZa8f9CxU=";
url = "http://www.catb.org/~esr/cvs-fast-export/cvs-fast-export-${version}.tar.gz";
sha256 = "0y1fzsicga19nsarpmn2ms69sq26b2d3d8a1169qbqz1kzr0jji8";
};
buildInputs = [
flex bison asciidoc docbook_xml_dtd_45 docbook_xsl libxml2 libxslt
python3 rcs cvs git makeWrapper
];
strictDeps = true;
nativeBuildInputs = [ makeWrapper asciidoc ];
buildInputs = [ python3 ];
postPatch = "patchShebangs .";
postPatch = ''
patchShebangs .
'';
preBuild = ''
makeFlagsArray=(
@ -35,16 +27,18 @@ mkDerivation rec {
)
'';
doCheck = true;
postInstall = ''
wrapProgram $out/bin/cvssync --prefix PATH : ${lib.makeBinPath [ rsync ]}
wrapProgram $out/bin/cvsconvert --prefix PATH : $out/bin:${lib.makeBinPath [
coreutils cvs diffutils findutils git
]}
'';
postInstall =
let
binpath = makeBinPath [ out rcs cvs git coreutils rsync ];
in ''
for prog in cvs-fast-export cvsconvert cvssync; do
wrapProgram $out/bin/$prog \
--prefix PATH : ${binpath}
done
''
;
meta = with lib; {
description = "Export an RCS or CVS history as a fast-import stream";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ dfoxfranke ];
homepage = "http://www.catb.org/esr/cvs-fast-export/";
platforms = platforms.unix;
};
}

View File

@ -38,13 +38,13 @@ let
in
stdenv.mkDerivation rec {
pname = "crun";
version = "0.20";
version = "0.20.1";
src = fetchFromGitHub {
owner = "containers";
repo = pname;
rev = version;
sha256 = "sha256-NlpgdRizQFt5T3CRxt0DVXTVPUbge9uPc9B7LuR3o1k=";
sha256 = "sha256-Fo8UCUwZ5RiJTXs1jWn1Mwq2qvK8p++ETxW9Tseokjw=";
fetchSubmodules = true;
};

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-night-theme-switcher";
version = "40";
version = "50";
src = fetchFromGitLab {
owner = "rmnvgr";
repo = "nightthemeswitcher-gnome-shell-extension";
rev = "v${version}";
sha256 = "0z11y18bgdc0y41hrrzzgi4lagm2cg06x12jgdnary1ycng7xja0";
sha256 = "0rs08kr3wizs1vpkmm6pbcvnn7rz47yrq7vnb1s8d58yda9a850d";
};
nativeBuildInputs = [ unzip ];
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Automatically change the GTK theme to dark variant when Night Light activates";
license = licenses.gpl3;
license = licenses.gpl3Plus;
maintainers = with maintainers; [ jonafato ];
homepage = "https://gitlab.com/rmnvgr/nightthemeswitcher-gnome-shell-extension/";
};

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "trealla";
version = "1.7.65";
version = "1.8.74";
src = fetchFromGitHub {
owner = "infradig";
repo = "trealla";
rev = "v${version}";
sha256 = "sha256-uCDACBwdiCeAwF6IZHz7s5pD83JXTP7jAQDjGld8tt0=";
sha256 = "sha256-pg9SfEFUTuyAnhP+Q1vR/QImZuLuRb8NpaOiCEcTFj8=";
};
postPatch = ''

View File

@ -11,19 +11,19 @@
stdenv.mkDerivation rec {
pname = "libdeltachat";
version = "1.55.0";
version = "1.56.0";
src = fetchFromGitHub {
owner = "deltachat";
repo = "deltachat-core-rust";
rev = version;
sha256 = "sha256-D30usAVpyiqXQMrTvmdaGFig7jhyb3rMTBQL/E2UL50=";
sha256 = "sha256-ZyVEI6q+GzHLEFH01TxS7NqwT7zqVgg0vduyf/fibB8=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
sha256 = "1hf7lrqbv0ba9c0kmnjn5x1fispyyjip1gmllq77z6nsjpn0f9w8";
sha256 = "0pb1rcv45xa95ziqap94yy52fy02vh401iqsgi18nm1j6iyyngc8";
};
nativeBuildInputs = [

View File

@ -0,0 +1,38 @@
{ lib, stdenv, fetchFromGitLab, ocaml, findlib, bzip2, autoreconfHook }:
if !lib.versionAtLeast ocaml.version "4.02"
then throw "bz2 is not available for OCaml ${ocaml.version}"
else
stdenv.mkDerivation rec {
pname = "ocaml${ocaml.version}-bz2";
version = "0.7.0";
src = fetchFromGitLab {
owner = "irill";
repo = "camlbz2";
rev = version;
sha256 = "sha256-jBFEkLN2fbC3LxTu7C0iuhvNg64duuckBHWZoBxrV/U=";
};
autoreconfFlags = "-I .";
nativeBuildInputs = [
autoreconfHook
];
buildInputs = [
ocaml
findlib
bzip2
];
preInstall = "mkdir -p $OCAMLFIND_DESTDIR/stublibs";
meta = with lib; {
description = "OCaml bindings for the libbz2 (AKA, bzip2) (de)compression library";
downloadPage = "https://gitlab.com/irill/camlbz2";
license = licenses.lgpl21;
maintainers = with maintainers; [ superherointj ];
};
}

View File

@ -7,7 +7,7 @@
buildPythonPackage rec {
pname = "pytube";
version = "10.8.3";
version = "10.8.4";
disabled = pythonOlder "3.6";
@ -15,7 +15,7 @@ buildPythonPackage rec {
owner = "pytube";
repo = "pytube";
rev = "v${version}";
sha256 = "sha256-U/TXA/0y5tsuj0q3kxacHk76wjYG6k8mPX5F3MpADmk=";
sha256 = "sha256-07roF/rHBvGv50XL5KBOsk2WFITAWDput+KNgfTtXlI=";
};
checkInputs = [

View File

@ -1,4 +1,4 @@
{ lib, stdenv, qmake, qtbase, perl, python, php, kcachegrind }:
{ lib, stdenv, qmake, qtbase, perl, python, php, kcachegrind, wrapQtAppsHook }:
let
name = lib.replaceStrings ["kcachegrind"] ["qcachegrind"] kcachegrind.name;
@ -10,7 +10,7 @@ in stdenv.mkDerivation {
buildInputs = [ qtbase perl python php ];
nativeBuildInputs = [ qmake ];
nativeBuildInputs = [ qmake wrapQtAppsHook ];
dontWrapQtApps = true;
@ -33,9 +33,13 @@ in stdenv.mkDerivation {
install -Dm644 kcachegrind/48-apps-kcachegrind.png "$out/share/icons/hicolor/48x48/apps/kcachegrind.png"
'');
preFixup = ''
wrapQtApp "$out/bin/qcachegrind"
'';
meta = with lib; {
description = "A Qt GUI to visualize profiling data";
license = licenses.gpl2;
license = licenses.gpl2Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ periklis ];
};

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "earthly";
version = "0.5.15";
version = "0.5.16";
src = fetchFromGitHub {
owner = "earthly";
repo = "earthly";
rev = "v${version}";
sha256 = "sha256-3hiiCcCgbWxSfG8XCcoKdNJsQoP2L2G4g4zFQkFtzQI=";
sha256 = "sha256-p2O9GkXrRCxgOnVVmtBFUpbg0w9b3LB0PNOlK1gxYAY=";
};
vendorSha256 = "sha256-q3dDV0eop2NxXHFrlppWsZrO2Hz1q5xhs1DnB6PvG9g=";
vendorSha256 = "sha256-avxNVTPcJ5HjeN7Q9rVmmSud1i3Yb8cSFTAUtNPYbBg=";
buildFlagsArray = ''
-ldflags=

View File

@ -10,16 +10,16 @@
, stdenv
, zlib
}: stdenv.mkDerivation rec {
name = "roon-server";
version = "100800790";
pname = "roon-server";
version = "1.8-795";
# N.B. The URL is unstable. I've asked for them to provide a stable URL but
# they have ignored me. If this package fails to build for you, you may need
# to update the version and sha256.
# c.f. https://community.roonlabs.com/t/latest-roon-server-is-not-available-for-download-on-nixos/118129
src = fetchurl {
url = "https://web.archive.org/web/20210428204513/https://download.roonlabs.com/builds/RoonServer_linuxx64.tar.bz2";
sha256 = "1jhj52fmkdgr9qfang1i9qrl1z56h56x07k31n3kllknkv02lc8p";
url = "https://web.archive.org/web/20210610060249/http://download.roonlabs.com/builds/RoonServer_linuxx64.tar.bz2";
sha256 = "sha256-gC+UquDMyDpgCEYKPp2RRIkHD/4itJssl0hcSEQO5Rc=";
};
buildInputs = [
@ -64,6 +64,7 @@
meta = with lib; {
description = "The music player for music lovers";
changelog = "https://community.roonlabs.com/c/roon/software-release-notes/18";
homepage = "https://roonlabs.com";
license = licenses.unfree;
maintainers = with maintainers; [ lovesegfault steell ];

View File

@ -1,6 +1,5 @@
{ lib, stdenv
, fetchFromGitHub
, fetchpatch
, autoreconfHook
, pkg-config
, bison
@ -21,7 +20,7 @@ in
stdenv.mkDerivation rec {
pname = "tmux";
version = "3.2";
version = "3.2a";
outputs = [ "out" "man" ];
@ -29,18 +28,9 @@ stdenv.mkDerivation rec {
owner = "tmux";
repo = "tmux";
rev = version;
sha256 = "0alq81h1rz1f0zsy8qb2dvsl47axpa86j4bplngwkph0ksqqgr3p";
sha256 = "0143ylfk7zsl3xmiasb768238gr582cfhsgv3p0h0f13bp8d6q09";
};
patches = [
# Fix cross-compilation
# https://github.com/tmux/tmux/pull/2651
(fetchpatch {
url = "https://github.com/tmux/tmux/commit/bb6242675ad0c7447daef148fffced882e5b4a61.patch";
sha256 = "1acr3xv3gqpq7qa2f8hw7c4f42hi444lfm1bz6wqj8f3yi320zjr";
})
];
nativeBuildInputs = [
pkg-config
autoreconfHook

View File

@ -9,16 +9,16 @@
rustPlatform.buildRustPackage rec {
pname = "gpg-tui";
version = "0.4.0";
version = "0.4.1";
src = fetchFromGitHub {
owner = "orhun";
repo = "gpg-tui";
rev = "v${version}";
sha256 = "sha256-5noaBfOpUck8+FQQDohKfThN3jJ9ogvZ8iMdySlwENE=";
sha256 = "sha256-PLKBkOwhp8Os2yAx+nzfWs41d3v12nnUVFB6oDfl00Y=";
};
cargoSha256 = "sha256-OMbyoAVKnnLbFSO7gqxjBXmIjJg4K2ioE0ClYu9UyW4=";
cargoSha256 = "sha256-lHrA4TlaOcMhO2a8lnd8hc6X2cDnWKMNLWEzlezIcNE=";
nativeBuildInputs = [
gpgme # for gpgme-config

View File

@ -158,6 +158,7 @@ mapAliases ({
cups-googlecloudprint = throw "Google Cloudprint is officially discontinued since Jan 2021, more info https://support.google.com/chrome/a/answer/9633006";
cquery = throw "cquery has been removed because it is abandoned by upstream. Consider switching to clangd or ccls instead."; # added 2020-06-15
cv = progress; # added 2015-09-06
cvs_fast_export = cvs-fast-export; # added 2021-06-10
d1x_rebirth = dxx-rebirth; # added 2018-04-25
d2x_rebirth = dxx-rebirth; # added 2018-04-25
dart_dev = throw "Non-stable versions of Dart have been removed."; # added 2020-01-15

View File

@ -3939,7 +3939,7 @@ in
cwebbin = callPackage ../development/tools/misc/cwebbin { };
cvs_fast_export = callPackage ../applications/version-management/cvs-fast-export { };
cvs-fast-export = callPackage ../applications/version-management/cvs-fast-export { };
dadadodo = callPackage ../tools/text/dadadodo { };

View File

@ -80,6 +80,8 @@ let
bos = callPackage ../development/ocaml-modules/bos { };
bz2 = callPackage ../development/ocaml-modules/bz2 { };
ca-certs = callPackage ../development/ocaml-modules/ca-certs { };
ca-certs-nss = callPackage ../development/ocaml-modules/ca-certs-nss { };