Merge staging-next into staging

This commit is contained in:
Frederik Rietdijk
2020-05-08 06:46:14 +02:00
769 changed files with 12673 additions and 8539 deletions
+36 -32
View File
@@ -16,6 +16,7 @@
, python3
, cmake
, runCommand
, writeText
, nixosTests
, useOperatingSystemEtc ? true
@@ -202,38 +203,41 @@ let
passthru = {
shellPath = "/bin/fish";
tests.nixos = nixosTests.fish;
tests = {
nixos = nixosTests.fish;
# Test the fish_config tool by checking the generated splash page.
# Since the webserver requires a port to run, it is not started.
fishConfig =
let fishScript = writeText "test.fish" ''
set -x __fish_bin_dir ${fish}/bin
echo $__fish_bin_dir
cp -r ${fish}/share/fish/tools/web_config/* .
chmod -R +w *
# if we don't set `delete=False`, the file will get cleaned up
# automatically (leading the test to fail because there's no
# tempfile to check)
sed -e "s@, mode='w'@, mode='w', delete=False@" -i webconfig.py
# we delete everything after the fileurl is assigned
sed -e '/fileurl =/q' -i webconfig.py
echo "print(fileurl)" >> webconfig.py
# and check whether the message appears on the page
cat (${python3}/bin/python ./webconfig.py \
| tail -n1 | sed -ne 's|.*\(/build/.*\)|\1|p' \
) | grep 'a href="http://localhost.*Start the Fish Web config'
# cannot test the http server because it needs a localhost port
'';
in
runCommand "test-web-config" { } ''
HOME=$(mktemp -d)
${fish}/bin/fish ${fishScript} && touch $out
'';
};
};
};
tests = {
# Test the fish_config tool by checking the generated splash page.
# Since the webserver requires a port to run, it is not started.
fishConfig =
let
fishScript = writeText "test.fish" ''
set -x __fish_bin_dir ${fish}/bin
echo $__fish_bin_dir
cp -r ${fish}/share/fish/tools/web_config/* .
chmod -R +w *
# we delete everything after the fileurl is assigned
sed -e '/fileurl =/q' -i webconfig.py
echo "print(fileurl)" >> webconfig.py
# and check whether the message appears on the page
cat (${python3}/bin/python ./webconfig.py \
| tail -n1 | sed -ne 's|.*\(/tmp/.*\)|\1|p' \
) | grep 'a href="http://localhost.*Start the Fish Web config'
# cannot test the http server because it needs a localhost port
'';
in ''
HOME=$(mktemp -d)
${fish}/bin/fish ${fishScript}
'';
};
# FIXME(Profpatsch) replace withTests stub
withTests = with lib; flip const;
in
withTests tests fish
fish
+34 -13
View File
@@ -1,21 +1,21 @@
{ stdenv, autoPatchelfHook, fetchzip, libunwind, libuuid, icu, curl
, darwin, makeWrapper, less, openssl_1_0_2, pam, lttng-ust }:
{ stdenv, lib, autoPatchelfHook, fetchzip, libunwind, libuuid, icu, curl
, darwin, makeWrapper, less, openssl_1_1, pam, lttng-ust }:
let platformString = if stdenv.isDarwin then "osx"
else if stdenv.isLinux then "linux"
else throw "unsupported platform";
platformSha = if stdenv.isDarwin then "0jb2xm79m3m14zk7v730ai1zvxcb5a13jbkkya0qy7332k6gn6bl"
else if stdenv.isLinux then "0s0jvc9ha6fw8qy7f5n0v6zf043rawsjdlm5wvqxq1q2idz7xcw1"
platformSha = if stdenv.isDarwin then "0c71w6z6sc86si07i6vy4w3069jal7476wyiizyr7qjm9m22963f"
else if stdenv.isLinux then "0m13y66a6w64s31qbi3j5x8jll6dfrin890jah8kyncsvlyisqg3"
else throw "unsupported platform";
platformLdLibraryPath = if stdenv.isDarwin then "DYLD_FALLBACK_LIBRARY_PATH"
else if stdenv.isLinux then "LD_LIBRARY_PATH"
else throw "unsupported platform";
libraries = [ libunwind libuuid icu curl openssl_1_0_2 ] ++
libraries = [ libunwind libuuid icu curl openssl_1_1 ] ++
(if stdenv.isLinux then [ pam lttng-ust ] else [ darwin.Libsystem ]);
in
stdenv.mkDerivation rec {
pname = "powershell";
version = "6.2.3";
version = "7.0.0";
src = fetchzip {
url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-${platformString}-x64.tar.gz";
@@ -26,21 +26,42 @@ stdenv.mkDerivation rec {
buildInputs = [ less ] ++ libraries;
nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
installPhase = ''
installPhase =
let
ext = stdenv.hostPlatform.extensions.sharedLibrary;
in ''
pslibs=$out/share/powershell
mkdir -p $pslibs
cp -r * $pslibs
rm -f $pslibs/libcrypto${ext}.1.0.0
rm -f $pslibs/libssl${ext}.1.0.0
ls $pslibs
'' + lib.optionalString (!stdenv.isDarwin) ''
patchelf --replace-needed libcrypto${ext}.1.0.0 libcrypto${ext}.1.1 $pslibs/libmi.so
patchelf --replace-needed libssl${ext}.1.0.0 libssl${ext}.1.1 $pslibs/libmi.so
'' + ''
mkdir -p $out/bin
mkdir -p $out/share/powershell
cp -r * $out/share/powershell
makeWrapper $out/share/powershell/pwsh $out/bin/pwsh \
makeWrapper $pslibs/pwsh $out/bin/pwsh \
--prefix ${platformLdLibraryPath} : "${stdenv.lib.makeLibraryPath libraries}" \
--set TERM xterm --set POWERSHELL_TELEMETRY_OPTOUT 1 --set DOTNET_CLI_TELEMETRY_OPTOUT 1
'';
dontStrip = true;
meta = with stdenv.lib; {
description = "Cross-platform (Windows, Linux, and macOS) automation and configuration tool/framework";
doInstallCheck = true;
installCheck = ''
$out/bin/pwsh --help > /dev/null
'';
meta = with lib; {
description = "Powerful cross-platform (Windows, Linux, and macOS) shell and scripting language based on .NET";
homepage = "https://github.com/PowerShell/PowerShell";
maintainers = [ maintainers.yrashk ];
maintainers = with maintainers; [ yrashk srgom ];
platforms = [ "x86_64-darwin" "x86_64-linux" ];
license = with licenses; [ mit ];
};
+2 -2
View File
@@ -8,14 +8,14 @@
python3Packages.buildPythonApplication rec {
pname = "xonsh";
version = "0.9.17";
version = "0.9.18";
# fetch from github because the pypi package ships incomplete tests
src = fetchFromGitHub {
owner = "xonsh";
repo = "xonsh";
rev = version;
sha256 = "0ynfnphbp69am390m5zfzk5rzj1749vs7rzyq310f6mk7xdq6j4v";
sha256 = "1zg5dl9qdysbaw2djy9f7f1ydp7vzjv840cjwqxlmg9615lgg7xa";
};
LC_ALL = "en_US.UTF-8";
+3 -3
View File
@@ -4,13 +4,13 @@
{ stdenv, fetchgit }:
stdenv.mkDerivation rec {
version = "2020-04-30";
version = "2020-05-07";
pname = "oh-my-zsh";
rev = "06b0276675e978d80535259915fbb44011e10101";
rev = "b876198575cbf23d589ddc8da6b22254d3d5358b";
src = fetchgit { inherit rev;
url = "https://github.com/ohmyzsh/ohmyzsh";
sha256 = "1y1c8v2akxwffrmcq8lmxvdnirqkxbxbrhcws76dlcgp2m3drvgq";
sha256 = "0vx3pi9wk9crmwgkpd3nwp88ci6ly0savj6v2md7qazmimgffsfi";
};
pathsToLink = [ "/share/oh-my-zsh" ];