Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2021-11-04 06:02:01 +00:00 committed by GitHub
commit 524db8975e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
28 changed files with 532 additions and 162 deletions

View file

@ -10784,6 +10784,12 @@
github = "staccato";
githubId = 86573128;
};
stackshadow = {
email = "stackshadow@evilbrain.de";
github = "stackshadow";
githubId = 7512804;
name = "Martin Langlotz";
};
steell = {
email = "steve@steellworks.com";
github = "Steell";

View file

@ -413,6 +413,11 @@
<link linkend="opt-hardware.rasdaemon.enable">hardware.rasdaemon</link>.
</para>
</listitem>
<listitem>
<para>
<literal>code-server</literal>-module now available
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="sec-release-21.11-incompatibilities">

View file

@ -124,6 +124,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- [rasdaemon](https://github.com/mchehab/rasdaemon), a hardware error logging daemon. Available as [hardware.rasdaemon](#opt-hardware.rasdaemon.enable).
- `code-server`-module now available
## Backward Incompatibilities {#sec-release-21.11-incompatibilities}
- The `services.wakeonlan` option was removed, and replaced with `networking.interfaces.<name>.wakeOnLan`.

View file

@ -974,6 +974,7 @@
./services/web-apps/atlassian/jira.nix
./services/web-apps/bookstack.nix
./services/web-apps/calibre-web.nix
./services/web-apps/code-server.nix
./services/web-apps/convos.nix
./services/web-apps/cryptpad.nix
./services/web-apps/dex.nix

View file

@ -0,0 +1,139 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.code-server;
defaultUser = "code-server";
defaultGroup = defaultUser;
in {
###### interface
options = {
services.code-server = {
enable = mkEnableOption "code-server";
package = mkOption {
default = pkgs.code-server;
defaultText = "pkgs.code-server";
description = "Which code-server derivation to use.";
type = types.package;
};
extraPackages = mkOption {
default = [ ];
description = "Packages that are available in the PATH of code-server.";
example = "[ pkgs.go ]";
type = types.listOf types.package;
};
extraEnvironment = mkOption {
type = types.attrsOf types.str;
description =
"Additional environment variables to passed to code-server.";
default = { };
example = { PKG_CONFIG_PATH = "/run/current-system/sw/lib/pkgconfig"; };
};
extraArguments = mkOption {
default = [ "--disable-telemetry" ];
description = "Additional arguments that passed to code-server";
example = ''[ "--verbose" ]'';
type = types.listOf types.str;
};
host = mkOption {
default = "127.0.0.1";
description = "The host-ip to bind to.";
type = types.str;
};
port = mkOption {
default = 4444;
description = "The port where code-server runs.";
type = types.port;
};
auth = mkOption {
default = "password";
description = "The type of authentication to use.";
type = types.enum [ "none" "password" ];
};
hashedPassword = mkOption {
default = "";
description =
"Create the password with: 'echo -n 'thisismypassword' | npx argon2-cli -e'.";
type = types.str;
};
user = mkOption {
default = defaultUser;
example = "yourUser";
description = ''
The user to run code-server as.
By default, a user named <literal>${defaultUser}</literal> will be created.
'';
type = types.str;
};
group = mkOption {
default = defaultGroup;
example = "yourGroup";
description = ''
The group to run code-server under.
By default, a group named <literal>${defaultGroup}</literal> will be created.
'';
type = types.str;
};
extraGroups = mkOption {
default = [ ];
description =
"An array of additional groups for the <literal>${defaultUser}</literal> user.";
example = [ "docker" ];
type = types.listOf types.str;
};
};
};
###### implementation
config = mkIf cfg.enable {
systemd.services.code-server = {
description = "VSCode server";
wantedBy = [ "multi-user.target" ];
after = [ "network-online.target" ];
path = cfg.extraPackages;
environment = {
HASHED_PASSWORD = cfg.hashedPassword;
} // cfg.extraEnvironment;
serviceConfig = {
ExecStart = "${cfg.package}/bin/code-server --bind-addr ${cfg.host}:${toString cfg.port} --auth ${cfg.auth} " + builtins.concatStringsSep " " cfg.extraArguments;
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
RuntimeDirectory = cfg.user;
User = cfg.user;
Group = cfg.group;
Restart = "on-failure";
};
};
users.users."${cfg.user}" = mkMerge [
(mkIf (cfg.user == defaultUser) {
isNormalUser = true;
description = "code-server user";
inherit (cfg) group;
})
{
packages = cfg.extraPackages;
inherit (cfg) extraGroups;
}
];
users.groups."${defaultGroup}" = mkIf (cfg.group == defaultGroup) { };
};
meta.maintainers = with maintainers; [ stackshadow ];
}

View file

@ -0,0 +1,148 @@
{ stdenv
, lib
, fetchFromSourcehut
, cmake
, wxGTK
, pkg-config
, python3
, gettext
, glib
, file
, lame
, libvorbis
, libmad
, libjack2
, lv2
, lilv
, makeWrapper
, serd
, sord
, sqlite
, sratom
, suil
, alsa-lib
, libsndfile
, soxr
, flac
, twolame
, expat
, libid3tag
, libopus
, ffmpeg
, soundtouch
, pcre
, portaudio
, linuxHeaders
, at-spi2-core
, dbus
, epoxy
, libXdmcp
, libXtst
, libpthreadstubs
, libselinux
, libsepol
, libxkbcommon
, util-linux
}:
stdenv.mkDerivation rec {
pname = "tenacity";
version = "unstable-2021-10-18";
src = fetchFromSourcehut {
owner = "~tenacity";
repo = "tenacity";
rev = "697c0e764ccb19c1e2f3073ae08ecdac7aa710e4";
sha256 = "1fc9xz8lyl8si08wkzncpxq92vizan60c3640qr4kbnxg7vi2iy4";
};
postPatch = ''
touch src/RevisionIdent.h
substituteInPlace src/FileNames.cpp \
--replace /usr/include/linux/magic.h ${linuxHeaders}/include/linux/magic.h
'';
postFixup = ''
rm $out/tenacity
wrapProgram "$out/bin/tenacity" \
--suffix AUDACITY_PATH : "$out/share/tenacity" \
--suffix AUDACITY_MODULES_PATH : "$out/lib/tenacity/modules" \
--prefix LD_LIBRARY_PATH : "$out/lib/tenacity" \
--prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH"
'';
NIX_CFLAGS_COMPILE = "-D GIT_DESCRIBE=\"\"";
# tenacity only looks for ffmpeg at runtime, so we need to link it in manually
NIX_LDFLAGS = toString [
"-lavcodec"
"-lavdevice"
"-lavfilter"
"-lavformat"
"-lavresample"
"-lavutil"
"-lpostproc"
"-lswresample"
"-lswscale"
];
nativeBuildInputs = [
cmake
gettext
makeWrapper
pkg-config
python3
] ++ lib.optionals stdenv.isLinux [
linuxHeaders
];
buildInputs = [
alsa-lib
expat
ffmpeg
file
flac
glib
lame
libid3tag
libjack2
libmad
libopus
libsndfile
libvorbis
lilv
lv2
pcre
portaudio
serd
sord
soundtouch
soxr
sqlite
sratom
suil
twolame
wxGTK
wxGTK.gtk
] ++ lib.optionals stdenv.isLinux [
at-spi2-core
dbus
epoxy
libXdmcp
libXtst
libpthreadstubs
libxkbcommon
libselinux
libsepol
util-linux
];
meta = with lib; {
description = "Sound editor with graphical UI";
homepage = "https://tenacityaudio.org/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ irenes lheckemann ];
platforms = platforms.linux;
};
}

View file

@ -10,14 +10,14 @@
python3Packages.buildPythonPackage rec {
pname = "hydrus";
version = "458";
version = "460";
format = "other";
src = fetchFromGitHub {
owner = "hydrusnetwork";
repo = "hydrus";
rev = "v${version}";
sha256 = "sha256-oVNgXelFMVT5V41SRlnN+pnYzOWbdDKQQcvRWFZqEro=";
sha256 = "sha256-cIvidbvMAWVs/XnS7I5ZQkuya9lfuRPNCRSTbFnKhSw=";
};
nativeBuildInputs = [

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "kube-score";
version = "1.12.0";
version = "1.13.0";
src = fetchFromGitHub {
owner = "zegl";
repo = pname;
rev = "v${version}";
sha256 = "sha256-FZbq7f8Urx3tlJOBPnPyp1enFsmtrxqNjR42CTNo6GI=";
sha256 = "sha256-QAtsXNmR+Sg9xmvP7x6b2jAJkUcL/sMYk8i5CSzjVos=";
};
vendorSha256 = "sha256-8Rg57Uj/hdNqAj40MKZ/5PObRkdsInbsRT1ZkRqGTfo=";
vendorSha256 = "sha256-kPYvkovzQDmoB67TZHCKZ5jtW6pN3gHxBPKAU8prbgo=";
meta = with lib; {
description = "Kubernetes object analysis with recommendations for improved reliability and security";

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "kubeconform";
version = "0.4.10";
version = "0.4.12";
src = fetchFromGitHub {
owner = "yannh";
repo = pname;
rev = "v${version}";
sha256 = "sha256-D1/ljIOc5vK6HcYmk0WNnIRGBt1vJk9dGxl5GjhKhuA=";
sha256 = "sha256-03eGWuDV/GS2YgDQ7LaqonU7K/ohI8sQD4dXbJGXeXw=";
};
vendorSha256 = null;

View file

@ -1,7 +1,25 @@
{ config, lib, stdenv, fetchFromGitHub, fetchpatch
, addOpenGLRunpath, docutils, perl, pkg-config, python3, wafHook, which
, ffmpeg, freefont_ttf, freetype, libass, libpthreadstubs, mujs
, nv-codec-headers, lua, libuchardet, libiconv ? null
{ config
, lib
, stdenv
, fetchFromGitHub
, fetchpatch
, addOpenGLRunpath
, docutils
, perl
, pkg-config
, python3
, wafHook
, which
, ffmpeg
, freefont_ttf
, freetype
, libass
, libpthreadstubs
, mujs
, nv-codec-headers
, lua
, libuchardet
, libiconv ? null
, CoreFoundation, Cocoa, CoreAudio, MediaPlayer
, waylandSupport ? stdenv.isLinux
@ -30,7 +48,7 @@
, libdrm ? null
, mesa ? null
, alsaSupport ? stdenv.isLinux, alsa-lib ? null
, alsaSupport ? stdenv.isLinux, alsa-lib ? null
, archiveSupport ? true, libarchive ? null
, bluraySupport ? true, libbluray ? null
, bs2bSupport ? true, libbs2b ? null
@ -95,54 +113,22 @@ let
in stdenv.mkDerivation rec {
pname = "mpv";
version = "0.33.1";
version = "0.34.0";
outputs = [ "out" "dev" ];
outputs = [ "out" "dev" "man" ];
src = fetchFromGitHub {
owner = "mpv-player";
repo = "mpv";
rev = "v${version}";
sha256 = "06rw1f55zcsj78ql8w70j9ljp2qb1pv594xj7q9cmq7i92a7hq45";
owner = "mpv-player";
repo = "mpv";
rev = "v${version}";
sha256 = "sha256-qa6xZV4aLcHBMa2bIqoKjte4+KWEGGZre4L0u1+eDE8=";
};
patches = [
# To make mpv build with libplacebo 3.104.0:
(fetchpatch { # vo_gpu: placebo: update for upstream API changes
url = "https://github.com/mpv-player/mpv/commit/7c4465cefb27d4e0d07535d368febdf77b579566.patch";
sha256 = "1yfc6220ak5kc5kf7zklmsa944nr9q0qaa27l507pgrmvcyiyzrx";
})
# TOREMOVE when > 0.33.1
# youtube-dl has been abandonned and is now unusable w/
# youtube.com. Mpv migrated to yt-dlp since the 0.33.1 but did not
# cut a new release yet. See
# https://github.com/mpv-player/mpv/pull/9209
(fetchpatch {
url = "https://github.com/mpv-player/mpv/commit/d1c92bfd79ef81ac804fcc20aee2ed24e8d587aa.patch";
sha256 = "1dwxzng3gsrx0gjljm5jmfcjz3pzdss9z2l0n25rmmb4nbcrcx1f";
})
];
postPatch = ''
patchShebangs ./TOOLS/
'';
passthru = {
inherit
# The wrapper consults luaEnv and lua.version
luaEnv
lua
# In the wrapper, we want to reference vapoursynth which has the
# `python3` passthru attribute (which has the `sitePrefix`
# attribute). This way we'll be sure that in the wrapper we'll
# use the same python3.sitePrefix used to build vapoursynth.
vapoursynthSupport
vapoursynth
;
};
NIX_LDFLAGS = optionalString x11Support "-lX11 -lXext "
+ optionalString stdenv.isDarwin "-framework CoreFoundation";
NIX_LDFLAGS = lib.optionalString x11Support "-lX11 -lXext "
+ lib.optionalString stdenv.isDarwin "-framework CoreFoundation";
wafConfigureFlags = [
"--enable-libmpv-shared"
@ -150,60 +136,71 @@ in stdenv.mkDerivation rec {
"--disable-libmpv-static"
"--disable-static-build"
"--disable-build-date" # Purity
(enableFeature archiveSupport "libarchive")
(enableFeature cddaSupport "cdda")
(enableFeature dvdnavSupport "dvdnav")
(enableFeature openalSupport "openal")
(enableFeature sdl2Support "sdl2")
(enableFeature sixelSupport "sixel")
(enableFeature vaapiSupport "vaapi")
(enableFeature waylandSupport "wayland")
(enableFeature stdenv.isLinux "dvbin")
(lib.enableFeature archiveSupport "libarchive")
(lib.enableFeature cddaSupport "cdda")
(lib.enableFeature dvdnavSupport "dvdnav")
(lib.enableFeature openalSupport "openal")
(lib.enableFeature sdl2Support "sdl2")
(lib.enableFeature sixelSupport "sixel")
(lib.enableFeature vaapiSupport "vaapi")
(lib.enableFeature waylandSupport "wayland")
(lib.enableFeature stdenv.isLinux "dvbin")
] # Disable whilst Swift isn't supported
++ lib.optional (!swiftSupport) "--disable-macos-cocoa-cb";
nativeBuildInputs = [
addOpenGLRunpath docutils perl pkg-config python3 wafHook which
] ++ optional swiftSupport swift;
addOpenGLRunpath
docutils
perl
pkg-config
python3
wafHook
which
] ++ lib.optionals swiftSupport [ swift ];
buildInputs = [
ffmpeg freetype libass libpthreadstubs
luaEnv libuchardet mujs
] ++ optional alsaSupport alsa-lib
++ optional archiveSupport libarchive
++ optional bluraySupport libbluray
++ optional bs2bSupport libbs2b
++ optional cacaSupport libcaca
++ optional cmsSupport lcms2
++ optional jackaudioSupport libjack2
++ optional libpngSupport libpng
++ optional openalSupport openalSoft
++ optional pulseSupport libpulseaudio
++ optional rubberbandSupport rubberband
++ optional screenSaverSupport libXScrnSaver
++ optional sdl2Support SDL2
++ optional sixelSupport libsixel
++ optional speexSupport speex
++ optional theoraSupport libtheora
++ optional vaapiSupport libva
++ optional vapoursynthSupport vapoursynth
++ optional vdpauSupport libvdpau
++ optional xineramaSupport libXinerama
++ optional xvSupport libXv
++ optional zimgSupport zimg
++ optional stdenv.isDarwin libiconv
++ optional stdenv.isLinux nv-codec-headers
++ optionals cddaSupport [ libcdio libcdio-paranoia ]
++ optionals drmSupport [ libdrm mesa ]
++ optionals dvdnavSupport [ libdvdnav libdvdnav.libdvdread ]
++ optionals waylandSupport [ wayland wayland-protocols libxkbcommon ]
++ optionals x11Support [ libX11 libXext libGLU libGL libXxf86vm libXrandr ]
++ optionals vulkanSupport [ libplacebo shaderc vulkan-headers vulkan-loader ]
++ optionals stdenv.isDarwin [ CoreFoundation Cocoa CoreAudio MediaPlayer ];
ffmpeg
freetype
libass
libpthreadstubs
libuchardet
luaEnv
mujs
] ++ lib.optionals alsaSupport [ alsa-lib ]
++ lib.optionals archiveSupport [ libarchive ]
++ lib.optionals bluraySupport [ libbluray ]
++ lib.optionals bs2bSupport [ libbs2b ]
++ lib.optionals cacaSupport [ libcaca ]
++ lib.optionals cddaSupport [ libcdio libcdio-paranoia ]
++ lib.optionals cmsSupport [ lcms2 ]
++ lib.optionals drmSupport [ libdrm mesa ]
++ lib.optionals dvdnavSupport [ libdvdnav libdvdnav.libdvdread ]
++ lib.optionals jackaudioSupport [ libjack2 ]
++ lib.optionals libpngSupport [ libpng ]
++ lib.optionals openalSupport [ openalSoft ]
++ lib.optionals pulseSupport [ libpulseaudio ]
++ lib.optionals rubberbandSupport [ rubberband ]
++ lib.optionals screenSaverSupport [ libXScrnSaver ]
++ lib.optionals sdl2Support [ SDL2 ]
++ lib.optionals sixelSupport [ libsixel ]
++ lib.optionals speexSupport [ speex ]
++ lib.optionals theoraSupport [ libtheora ]
++ lib.optionals vaapiSupport [ libva ]
++ lib.optionals vapoursynthSupport [ vapoursynth ]
++ lib.optionals vdpauSupport [ libvdpau ]
++ lib.optionals vulkanSupport [ libplacebo shaderc vulkan-headers vulkan-loader ]
++ lib.optionals waylandSupport [ wayland wayland-protocols libxkbcommon ]
++ lib.optionals x11Support [ libX11 libXext libGLU libGL libXxf86vm libXrandr ]
++ lib.optionals xineramaSupport [ libXinerama ]
++ lib.optionals xvSupport [ libXv ]
++ lib.optionals zimgSupport [ zimg ]
++ lib.optionals stdenv.isLinux [ nv-codec-headers ]
++ lib.optionals stdenv.isDarwin [ libiconv ]
++ lib.optionals stdenv.isDarwin [ CoreFoundation Cocoa CoreAudio MediaPlayer ];
enableParallelBuilding = true;
postBuild = optionalString stdenv.isDarwin ''
postBuild = lib.optionalString stdenv.isDarwin ''
python3 TOOLS/osxbundle.py -s build/mpv
'';
@ -219,28 +216,40 @@ in stdenv.mkDerivation rec {
substituteInPlace $out/lib/pkgconfig/mpv.pc \
--replace "$out/include" "$dev/include"
'' + optionalString stdenv.isDarwin ''
'' + lib.optionalString stdenv.isDarwin ''
mkdir -p $out/Applications
cp -r build/mpv.app $out/Applications
'';
# Set RUNPATH so that libcuda in /run/opengl-driver(-32)/lib can be found.
# See the explanation in addOpenGLRunpath.
postFixup = optionalString stdenv.isLinux ''
postFixup = lib.optionalString stdenv.isLinux ''
addOpenGLRunpath $out/bin/mpv
'';
meta = with lib; {
description = "A media player that supports many video formats (MPlayer and mplayer2 fork)";
homepage = "https://mpv.io";
description = "General-purpose media player, fork of MPlayer and mplayer2";
longDescription = ''
mpv is a free and open-source general-purpose video player, based on the
MPlayer and mplayer2 projects, with great improvements above both.
'';
license = licenses.gpl2Plus;
maintainers = with maintainers; [ AndersonTorres fpletz globin ma27 tadeokondrak ];
platforms = platforms.darwin ++ platforms.linux;
};
longDescription = ''
mpv is a free and open-source general-purpose video player,
based on the MPlayer and mplayer2 projects, with great
improvements above both.
'';
passthru = {
inherit
# The wrapper consults luaEnv and lua.version
luaEnv
lua
# In the wrapper, we want to reference vapoursynth which has the `python3`
# passthru attribute (which has the `sitePrefix` attribute). This way we'll
# be sure that in the wrapper we'll use the same python3.sitePrefix used to
# build vapoursynth.
vapoursynthSupport
vapoursynth
;
};
}

View file

@ -1,8 +1,8 @@
# Arguments that this derivation gets when it is created with `callPackage`
{ stdenv
, lib
, symlinkJoin
, makeWrapper
, symlinkJoin
, yt-dlp
}:
@ -10,7 +10,7 @@
mpv:
let
# arguments to the function (called `wrapMpv` in all-packages.nix)
# arguments to the function (exposed as `wrapMpv` in all-packages.nix)
wrapper = {
extraMakeWrapperArgs ? [],
youtubeSupport ? true,

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "openxr-loader";
version = "1.0.19";
version = "1.0.20";
src = fetchFromGitHub {
owner = "KhronosGroup";
repo = "OpenXR-SDK-Source";
rev = "release-${version}";
sha256 = "sha256-LEXxqzHzTadgK2PV9Wiud9MzblDHdF4L5T4fVydRJW8=";
sha256 = "sha256-afyAHTyW9x2KxR1q/K3t5Dpv9OzATcYiSgiDn2S924E=";
};
nativeBuildInputs = [ cmake python3 ];

View file

@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
pname = "osqp";
version = "0.6.0";
version = "0.6.2";
src = fetchFromGitHub {
owner = "oxfordcontrol";
repo = "osqp";
rev = "v${version}";
sha256 = "1gwk1bqsk0rd85zf7xplbwq822y5pnxjmqc14jj6knqbab9afvrs";
sha256 = "sha256-RYk3zuZrJXPcF27eMhdoZAio4DZ+I+nFaUEg1g/aLNk=";
fetchSubmodules = true;
};

View file

@ -20,6 +20,7 @@ stdenv.mkDerivation rec {
"--enable-all"
"--enable-base64encode"
"--enable-pkcs11"
"--enable-writedup"
"--enable-reproducible-build"
"--enable-tls13"
];

View file

@ -5,13 +5,13 @@
buildGoPackage rec {
pname = "tfsec";
version = "0.58.14";
version = "0.58.15";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
sha256 = "sha256-NbuhZkU3QYoqeVVh7/G6P+IeixuakD0+7QXU6YC1VN4=";
sha256 = "102f984x6hpfjcshqd6s26c0lxjyr8rq6q4bwh9ymvrsxsylj3ng";
};
goPackagePath = "github.com/aquasecurity/tfsec";

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "pscale";
version = "0.76.0";
version = "0.85.0";
src = fetchFromGitHub {
owner = "planetscale";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-yfTfWMyRo1QP0QCbJOxNC1eAYmJQ/yKvWjThXd7r7Bc=";
sha256 = "sha256-I2t5tuBlO2RpY8+zWSTIDOziriqE6PGKVIwPdmvXuKo=";
};
vendorSha256 = "sha256-dD+8ZraY0RvoGxJZSWG31Iif+R5CDNtQ9H7J8Ty0x7U=";
vendorSha256 = "sha256-V7iXPM2WTR5zls/EFxpoLKrconP88om6y2CFNiuS6g4=";
meta = with lib; {
homepage = "https://www.planetscale.com/";

View file

@ -1,6 +1,6 @@
{ mkDerivation, lib, fetchFromGitHub, cmake, pkg-config, git
, qtbase, qtquickcontrols, openal, glew, vulkan-headers, vulkan-loader, libpng
, ffmpeg, libevdev, libusb1, zlib, curl, python3
{ gcc11Stdenv, lib, fetchFromGitHub, wrapQtAppsHook, cmake, pkg-config, git
, qtbase, qtquickcontrols, qtmultimedia, openal, glew, vulkan-headers, vulkan-loader, libpng
, ffmpeg, libevdev, libusb1, zlib, curl, wolfssl, python3, pugixml, faudio, flatbuffers
, sdl2Support ? true, SDL2
, pulseaudioSupport ? true, libpulseaudio
, waylandSupport ? true, wayland
@ -8,21 +8,23 @@
}:
let
majorVersion = "0.0.16";
gitVersion = "12235-a4f4b81e6"; # echo $(git rev-list HEAD --count)-$(git rev-parse --short HEAD)
majorVersion = "0.0.19";
gitVersion = "12975-37383f421";
in
mkDerivation {
gcc11Stdenv.mkDerivation {
pname = "rpcs3";
version = "${majorVersion}-${gitVersion}";
src = fetchFromGitHub {
owner = "RPCS3";
repo = "rpcs3";
rev = "a4f4b81e6b0c00f4c30f9f5f182e5fe56f9fb03c";
rev = "37383f4217e1c510a543e100d0ca495800b3361a";
fetchSubmodules = true;
sha256 = "1d70nljl1kmpbk50jpjki7dglw1bbxd7x4qzg6nz5np2sdsbpckd";
sha256 = "1pm1r4j4cdcmr8xmslyv2n6iwcjldnr396by4r6lgf4mdlnwahhm";
};
passthru.updateScript = ./update.sh;
preConfigure = ''
cat > ./rpcs3/git-version.h <<EOF
#define RPCS3_GIT_VERSION "${gitVersion}"
@ -38,16 +40,18 @@ mkDerivation {
"-DUSE_SYSTEM_LIBPNG=ON"
"-DUSE_SYSTEM_FFMPEG=ON"
"-DUSE_SYSTEM_CURL=ON"
# NB: Can't use this yet, our CMake doesn't include FindWolfSSL.cmake
#"-DUSE_SYSTEM_WOLFSSL=ON"
"-DUSE_SYSTEM_WOLFSSL=ON"
"-DUSE_SYSTEM_FAUDIO=ON"
"-DUSE_SYSTEM_PUGIXML=ON"
"-DUSE_SYSTEM_FLATBUFFERS=ON"
"-DUSE_NATIVE_INSTRUCTIONS=OFF"
];
nativeBuildInputs = [ cmake pkg-config git ];
nativeBuildInputs = [ cmake pkg-config git wrapQtAppsHook ];
buildInputs = [
qtbase qtquickcontrols openal glew vulkan-headers vulkan-loader libpng ffmpeg
libevdev zlib libusb1 curl python3
qtbase qtquickcontrols qtmultimedia openal glew vulkan-headers vulkan-loader libpng ffmpeg
libevdev zlib libusb1 curl wolfssl python3 pugixml faudio flatbuffers
] ++ lib.optional sdl2Support SDL2
++ lib.optional pulseaudioSupport libpulseaudio
++ lib.optional alsaSupport alsa-lib
@ -56,7 +60,7 @@ mkDerivation {
meta = with lib; {
description = "PS3 emulator/debugger";
homepage = "https://rpcs3.net/";
maintainers = with maintainers; [ abbradar neonfuz ilian ];
maintainers = with maintainers; [ abbradar neonfuz ilian zane ];
license = licenses.gpl2Only;
platforms = [ "x86_64-linux" ];
};

View file

@ -0,0 +1,56 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p gnused jq nix-prefetch-git curl
set -eou pipefail
ROOT="$(dirname "$(readlink -f "$0")")"
if [[ ! "$(basename $ROOT)" == "rpcs3" || ! -f "$ROOT/default.nix" ]]; then
echo "ERROR: Not in the rpcs3 folder"
exit 1
fi
if [[ ! -v GITHUB_TOKEN ]]; then
echo "ERROR: \$GITHUB_TOKEN not set"
exit 1
fi
PAYLOAD=$(jq -cn --rawfile query /dev/stdin '{"query": $query}' <<EOF | curl -s -H "Authorization: bearer $GITHUB_TOKEN" -d '@-' https://api.github.com/graphql
{
repository(owner: "RPCS3", name: "rpcs3") {
branch: ref(qualifiedName: "refs/heads/master") {
target {
oid
... on Commit {
history {
totalCount
}
}
}
}
tag: refs(refPrefix: "refs/tags/", first: 1, orderBy: {field: TAG_COMMIT_DATE, direction: DESC}) {
nodes {
name
}
}
}
}
EOF
)
RPCS3_COMMIT=$(jq -r .data.repository.branch.target.oid <<< "$PAYLOAD")
RPCS3_MAJORVER=$(jq -r .data.repository.tag.nodes[0].name <<< "$PAYLOAD" | sed 's/^v//g')
RPCS3_COUNT=$(jq -r .data.repository.branch.target.history.totalCount <<< "$PAYLOAD")
RPCS3_GITVER="$RPCS3_COUNT-${RPCS3_COMMIT::9}"
echo "INFO: Latest commit is $RPCS3_COMMIT"
echo "INFO: Latest version is $RPCS3_MAJORVER-$RPCS3_GITVER"
RPCS3_SHA256=$(nix-prefetch-git --quiet --fetch-submodules https://github.com/RPCS3/rpcs3.git "$RPCS3_COMMIT" | jq -r .sha256)
echo "INFO: SHA256 is $RPCS3_SHA256"
sed -i -E \
-e "s/majorVersion\s+.+$/majorVersion = \"${RPCS3_MAJORVER}\";/g" \
-e "s/gitVersion\s+.+$/gitVersion = \"${RPCS3_GITVER}\";/g" \
-e "s/rev\s*=\s*\"[a-z0-9]+\";$/rev = \"${RPCS3_COMMIT}\";/g" \
-e "s/sha256\s*=\s*\"[a-z0-9]+\";$/sha256 = \"${RPCS3_SHA256}\";/g" \
"$ROOT/default.nix"

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "pipes-rs";
version = "1.4.5";
version = "1.4.6";
src = fetchFromGitHub {
owner = "lhvy";
repo = pname;
rev = "v${version}";
sha256 = "sha256-BC6QqSZ7siDVSO8oOH7DimTe6RFnCBygmvtPrQgsC/Q=";
sha256 = "sha256-HtwUYYQqldEtE9VkQAJscW8jp/u8Cb4/G5d2uqanOjI=";
};
cargoSha256 = "sha256-nctkc2vDE7WXm84g/EkGKc1/ju/Xy9d/nc8NPIVFl58=";
cargoSha256 = "sha256-o/aPB0jfZfg2sDkgCBlLlCK3gbjjHZeiG8OxRXKXJyY=";
doInstallCheck = true;

View file

@ -18,16 +18,16 @@
rustPlatform.buildRustPackage rec {
pname = "nushell";
version = "0.38.0";
version = "0.39.0";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = version;
sha256 = "155rn0balgikkhy77gbva6a88pgwm27flzgjyphiwzwnah1mmhca";
sha256 = "sha256-eN1tTKNuZMU3qObHaqq70bdkmZeAD6LNAQau9JGSXpE=";
};
cargoSha256 = "1pk56s47mk0f8cww6h1y43jdnf311g35xynz1jvhrk31yyjhb0jl";
cargoSha256 = "sha256-6TZz8b8fALPTDRxzp+7ZWCHjOwVtqRjdSO6aEwZcMnc=";
nativeBuildInputs = [ pkg-config ]
++ lib.optionals (withExtraFeatures && stdenv.isLinux) [ python3 ];

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "lokalise2-cli";
version = "2.6.7";
version = "2.6.8";
src = fetchFromGitHub {
owner = "lokalise";
repo = "lokalise-cli-2-go";
rev = "v${version}";
sha256 = "sha256-p3JvaDDebbIgOvTh0e7yYe3qOXvj1pLSG95hpK62M7s=";
sha256 = "sha256-U8XN7cH64ICVxcjmIWBeelOT3qQlGt6MhOPgUWkCPF0=";
};
vendorSha256 = "sha256-KJ8haktP9qoG5QsKnTOkvE8L+SQ9Z6hrsjUeS0wrdLs=";
vendorSha256 = "sha256-PM3Jjgq6mbM6iVCXRos9UsqqFNaXOqq713GZ2R9tQww=";
doCheck = false;

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "oapi-codegen";
version = "1.8.2";
version = "1.8.3";
src = fetchFromGitHub {
owner = "deepmap";
repo = pname;
rev = "v${version}";
sha256 = "sha256-8hyRuGKspWqv+uBeSz4i12Grl83EQVPWB1weEVf9yhA=";
sha256 = "sha256-VAtfJ1PXTSPMoQ4NqX0GcZMyi15edxWj6Xsj6h1b7hc=";
};
vendorSha256 = "sha256-YCZzIsu1mMAAjLGHISrDkfY4Lx0az2SZV8bnZOMalx8=";
vendorSha256 = "sha256-s6+Rs+G4z5fcmUiwGjeDoQYKWJz0a/PCejfKyn8WWxs=";
# Tests use network
doCheck = false;

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "yggdrasil";
version = "0.4.0";
version = "0.4.2";
src = fetchFromGitHub {
owner = "yggdrasil-network";
repo = "yggdrasil-go";
rev = "v${version}";
sha256 = "sha256-sMcbOTLdmAXp3U2XeNM0hrwOTjzr+9B6IvAaVbjhuFY=";
sha256 = "sha256-5bx9KGZD7m+FX9hWU1pu8uJ2FU+P/TetRS3kJL5jhhI=";
};
vendorSha256 = "sha256-QQN8ePOQ7DT9KeuY4ohFuPtocuinh3Y3us6QMnCQ4gc=";
@ -33,6 +33,6 @@ buildGoModule rec {
"An experiment in scalable routing as an encrypted IPv6 overlay network";
homepage = "https://yggdrasil-network.github.io/";
license = licenses.lgpl3;
maintainers = with maintainers; [ ehmry gazally lassulus ];
maintainers = with maintainers; [ bbigras ehmry gazally lassulus ];
};
}

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "nfpm";
version = "2.6.0";
version = "2.7.1";
src = fetchFromGitHub {
owner = "goreleaser";
repo = pname;
rev = "v${version}";
sha256 = "sha256-GKdfi4hdvpB9VY8VqGYNjTezmPxotrzL/XSm1H5VLQs=";
sha256 = "sha256-GKX+5N8BPm4VmI10mzPJORjwLpuOLLjO+Q+RNelKUVI=";
};
vendorSha256 = "sha256-APF6WHuH+YzgX3GbkSzZArGdiE7xPsLljEzCu96BvO4=";
vendorSha256 = "sha256-NPMJ5sCdbfDraRoK5fSdaxMpYS2i8ir0cklGDoHNLAY=";
doCheck = false;

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "libtpms";
version = "0.8.6";
version = "0.9.0";
src = fetchFromGitHub {
owner = "stefanberger";
repo = "libtpms";
rev = "v${version}";
sha256 = "sha256-XvugcpoFQhdCBBg7hOgsUzSn4ad7RUuAEkvyiPLg4Lw=";
sha256 = "sha256-9u5Yq9PXMADvyWZo5aFa0GNzqVsbyN25o/cYQdbrUO0=";
};
nativeBuildInputs = [

View file

@ -5,13 +5,13 @@
buildGoModule rec {
pname = "otpauth";
version = "0.3.5";
version = "0.4.0";
src = fetchFromGitHub {
owner = "dim13";
repo = "otpauth";
rev = "v${version}";
sha256 = "sha256-Jr1cZbXKZa6M7tIex67SjDPkWSYHWSZ7vRYd8us7Oek=";
sha256 = "sha256-LGDeNkCxVLDVpwi5VFFL0DFsf8CexI7Nc5l+l2ASHaw=";
};
runVend = true;

View file

@ -22,9 +22,6 @@
# pass-import
, withPass ? false
, pass
# git-credential-helper
, withGitCredential ? false
}:
rustPlatform.buildRustPackage rec {
@ -47,7 +44,11 @@ rustPlatform.buildRustPackage rec {
buildInputs = lib.optionals stdenv.isDarwin [ Security libiconv ];
postPatch = lib.optionalString withFzf ''
postPatch = ''
patchShebangs bin/git-credential-rbw
substituteInPlace bin/git-credential-rbw \
--replace rbw $out/bin/rbw
'' + lib.optionalString withFzf ''
patchShebangs bin/rbw-fzf
substituteInPlace bin/rbw-fzf \
--replace fzf ${fzf}/bin/fzf \
@ -61,10 +62,6 @@ rustPlatform.buildRustPackage rec {
patchShebangs bin/pass-import
substituteInPlace bin/pass-import \
--replace pass ${pass}/bin/pass
'' + lib.optionalString withGitCredential ''
patchShebangs bin/git-credential-rbw
substituteInPlace bin/git-credential-rbw \
--replace rbw $out/bin/rbw
'';
preConfigure = ''
@ -77,14 +74,14 @@ rustPlatform.buildRustPackage rec {
$out/bin/rbw gen-completions $shell > rbw.$shell
installShellCompletion rbw.$shell
done
'' + ''
cp bin/git-credential-rbw $out/bin
'' + lib.optionalString withFzf ''
cp bin/rbw-fzf $out/bin
'' + lib.optionalString withRofi ''
cp bin/rbw-rofi $out/bin
'' + lib.optionalString withPass ''
cp bin/pass-import $out/bin
'' + lib.optionalString withGitCredential ''
cp bin/git-credential-rbw $out/bin
'';
meta = with lib; {

View file

@ -28242,6 +28242,8 @@ with pkgs;
temporal = callPackage ../applications/networking/cluster/temporal { };
tenacity = callPackage ../applications/audio/tenacity { wxGTK = wxGTK31-gtk3; };
tendermint = callPackage ../tools/networking/tendermint { };
termdbms = callPackage ../development/tools/database/termdbms { };