···6363 script = with builtins; concatStringsSep "\n" (mapAttrsToList (cert: data: ''
6464 for fixpath in /var/lib/acme/${escapeShellArg cert} /var/lib/acme/.lego/${escapeShellArg cert}; do
6565 if [ -d "$fixpath" ]; then
6666- chmod -R 750 "$fixpath"
6666+ chmod -R u=rwX,g=rX,o= "$fixpath"
6767 chown -R acme:${data.group} "$fixpath"
6868 fi
6969 done
···271271272272 mv domainhash.txt certificates/
273273 chmod 640 certificates/*
274274- chmod -R 700 accounts/*
274274+ chmod -R u=rwX,g=,o= accounts/*
275275276276 # Group might change between runs, re-apply it
277277 chown 'acme:${data.group}' certificates/*
+21
nixos/tests/common/acme/server/README.md
···11+# Fake Certificate Authority for ACME testing
22+33+This will set up a test node running [pebble](https://github.com/letsencrypt/pebble)
44+to serve ACME certificate requests.
55+66+## "Snake oil" certs
77+88+The snake oil certs are hard coded into the repo for reasons explained [here](https://github.com/NixOS/nixpkgs/pull/91121#discussion_r505410235).
99+The root of the issue is that Nix will hash the derivation based on the arguments
1010+to mkDerivation, not the output. [Minica](https://github.com/jsha/minica) will
1111+always generate a random certificate even if the arguments are unchanged. As a
1212+result, it's possible to end up in a situation where the cached and local
1313+generated certs mismatch and cause issues with testing.
1414+1515+To generate new certificates, run the following commands:
1616+1717+```bash
1818+nix-build generate-certs.nix
1919+cp result/* .
2020+rm result
2121+```
···18181919mkDerivation rec {
2020 pname = "cloudcompare";
2121- version = "2.11.0";
2121+ version = "2.11.2";
22222323 src = fetchFromGitHub {
2424 owner = "CloudCompare";
2525 repo = "CloudCompare";
2626 rev = "v${version}";
2727- sha256 = "02ahhhivgb9k1aygw1m35wdvhaizag1r98mb0r6zzrs5p4y64wlb";
2727+ sha256 = "0sb2h08iaf6zrf54sg6ql6wm63q5vq0kpd3gffdm26z8w6j6wv3s";
2828 # As of writing includes (https://github.com/CloudCompare/CloudCompare/blob/a1c589c006fc325e8b560c77340809b9c7e7247a/.gitmodules):
2929 # * libE57Format
3030 # * PoissonRecon
3131- # In > 2.11 it will also contain
3131+ # In a future version it will also contain
3232 # * CCCoreLib
3333 fetchSubmodules = true;
3434 };
···5353 ];
54545555 cmakeFlags = [
5656- # TODO: This will become -DCCCORELIB_USE_TBB=ON in > 2.11.0, see
5656+ # TODO: This will become -DCCCORELIB_USE_TBB=ON in a future version, see
5757 # https://github.com/CloudCompare/CloudCompare/commit/f5a0c9fd788da26450f3fa488b2cf0e4a08d255f
5858 "-DCOMPILE_CC_CORE_LIB_WITH_TBB=ON"
5959 "-DOPTION_USE_DXF_LIB=ON"
+27-13
pkgs/applications/misc/sakura/default.nix
···11-{ stdenv, fetchurl, cmake, pkgconfig, gtk3, perl, vte, pcre2, glib , makeWrapper }:
11+{ stdenv
22+, fetchurl
33+, cmake
44+, pkgconfig
55+, gtk3
66+, perl
77+, vte
88+, pcre2
99+, glib
1010+, makeWrapper
1111+}:
212313stdenv.mkDerivation rec {
414 pname = "sakura";
55- version = "3.7.0";
1515+ version = "3.7.1";
616717 src = fetchurl {
88- url = "https://launchpad.net/sakura/trunk/${version}/+download/${pname}-${version}.tar.gz";
99- sha256 = "15gskj5yv5qs3cj4ps43735kfx2nzjlhq4dk9ghirl8lvhhxsm5m";
1818+ url = "https://launchpad.net/${pname}/trunk/${version}/+download/${pname}-${version}.tar.bz2";
1919+ sha256 = "sha256-cppODnUKQpS9kFkkOqxU3yqAElAVn8VQtQsP4Carkos=";
1020 };
11211212- nativeBuildInputs = [ cmake perl pkgconfig ];
2222+ nativeBuildInputs = [ cmake perl pkgconfig makeWrapper ];
13231414- buildInputs = [ makeWrapper gtk3 vte pcre2 glib ];
2424+ buildInputs = [ gtk3 vte pcre2 glib ];
15251616- # Wrapper sets path to gsettings-schemata so sakura knows where to find colorchooser, fontchooser ...
1717- postInstall = "wrapProgram $out/bin/sakura --suffix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}/";
2626+ # Set path to gsettings-schemata so sakura knows
2727+ # where to find colorchooser, fontchooser etc.
2828+ postInstall = ''
2929+ wrapProgram $out/bin/sakura \
3030+ --suffix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}/
3131+ '';
18321933 meta = with stdenv.lib; {
3434+ homepage = "https://www.pleyades.net/david/projects/sakura";
2035 description = "A terminal emulator based on GTK and VTE";
2121- homepage = "https://www.pleyades.net/david/projects/sakura";
2222- license = licenses.gpl2;
2323- maintainers = with maintainers; [ astsmtl codyopel ];
2424- platforms = platforms.linux;
2536 longDescription = ''
2637 sakura is a terminal emulator based on GTK and VTE. It's a terminal
2738 emulator with few dependencies, so you don't need a full GNOME desktop
···3243 terminals in one window and adds a contextual menu with some basic
3344 options. No more no less.
3445 '';
3535- };
4646+ license = licenses.gpl2Only;
4747+ maintainers = with maintainers; [ astsmtl codyopel AndersonTorres ];
4848+ platforms = platforms.linux;
4949+ };
3650}
···99in
10101111args@{
1212- name
1212+ name ? "${args.pname}-${args.version}"
1313, bazel ? bazelPkg
1414, bazelFlags ? []
1515, bazelBuildFlags ? []
+2-9
pkgs/development/compilers/go/1.4.nix
···4343 cd go
4444 patchShebangs ./ # replace /bin/bash
45454646+ # Disable timezone tests (these fail when `tzdata` is updated)
4747+ rm src/time/{example,format}_test.go
4648 # Disabling the 'os/http/net' tests (they want files not available in
4749 # chroot builds)
4850 rm src/net/{multicast_test.go,parse_test.go,port_test.go}
···5658 sed -i '/TestDialTimeout/areturn' src/net/dial_test.go
5759 # Disable the hostname test
5860 sed -i '/TestHostname/areturn' src/os/os_test.go
5959- # ParseInLocation fails the test
6060- sed -i '/TestParseInSydney/areturn' src/time/format_test.go
61616262 sed -i 's,/etc/protocols,${iana-etc}/etc/protocols,' src/net/lookup_unix.go
6363 '' + lib.optionalString stdenv.isLinux ''
···119119 patches = [
120120 ./remove-tools-1.4.patch
121121 ./creds-test-1.4.patch
122122-123123- # This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch
124124- # actually works on old versions too.
125125- (fetchpatch {
126126- url = "https://github.com/golang/go/commit/91563ced5897faf729a34be7081568efcfedda31.patch";
127127- sha256 = "1ny5l3f8a9dpjjrnjnsplb66308a0x13sa0wwr4j6yrkc8j4qxqi";
128128- })
129122 ];
130123131124 GOOS = if stdenv.isDarwin then "darwin" else "linux";
···5555 test "$?" == 124 && echo "ok")
5656 '';
57575858- meta = {
5858+ meta = with stdenv.lib; {
5959 description = "Launcher for Pharo distributions";
6060+ homepage = "https://pharo.org";
6061 longDescription = ''
6161-6262 Pharo's goal is to deliver a clean, innovative, free open-source
6363 Smalltalk-inspired environment. By providing a stable and small
6464 core system, excellent dev tools, and maintained releases, Pharo
···7575 access it very rapidly from your OS application launcher. As a
7676 result, launching any image is never more than 3 clicks away.
7777 '';
7878- homepage = "http://pharo.org";
7979- license = stdenv.lib.licenses.mit;
7878+ license = licenses.mit;
8079 maintainers = [ ];
8180 platforms = pharo.meta.platforms;
8281 };