Merge remote-tracking branch 'origin/master' into staging-next

This commit is contained in:
K900
2024-12-17 09:46:26 +03:00
68 changed files with 662 additions and 616 deletions
@@ -197,6 +197,11 @@
- Cinnamon has been updated to 6.4, please check the [upstream announcement](https://www.linuxmint.com/rel_xia_whatsnew.php) for more details.
- Following [changes in Mint 22](https://github.com/linuxmint/mintupgrade/commit/f239cde908288b8c250f938e7311c7ffbc16bd59) we are no longer overriding Qt application styles. You can still restore the previous default with `qt.style = "gtk2"` and `qt.platformTheme = "gtk2"`.
- Xfce has been updated to 4.20, please check the [upstream feature tour](https://www.xfce.org/about/tour420) for more details.
- Wayland session is still [experimental](https://wiki.xfce.org/releng/wayland_roadmap) and requires opt-in using `enableWaylandSession` option.
- Overriding Wayland compositor is possible using `enableWaylandSession` option, but you might need to take care [`xfce4-session`](https://gitlab.xfce.org/xfce/xfce4-session/-/merge_requests/49), [`dbus-update-activation-environment`](https://github.com/labwc/labwc/blob/eaf11face68ee1f1bcc7ce1498304ca8c108c8ba/src/config/session.c#L234) and [`systemctl --user import-environment`](https://github.com/labwc/labwc/blob/eaf11face68ee1f1bcc7ce1498304ca8c108c8ba/src/config/session.c#L239) on startup.
- For new Xfce installations, default panel layout has [changed](https://gitlab.xfce.org/xfce/xfce4-panel/-/merge_requests/158/diffs) to not include external panel plugins by default. You can still add them yourself using the "Panel Preferences" dialog.
- `networking.wireguard` now has an optional networkd backend. It is enabled by default when `networking.useNetworkd` is enabled, and it can be enabled alongside scripted networking with `networking.wireguard.useNetworkd`. Some `networking.wireguard` options have slightly different behavior with the networkd and script-based backends, documented in each option.
- `services.avahi.ipv6` now defaults to true.
@@ -69,6 +69,22 @@ in
default = true;
description = "Enable the XFCE screensaver.";
};
enableWaylandSession = mkEnableOption "the experimental Xfce Wayland session";
waylandSessionCompositor = mkOption {
type = lib.types.str;
default = "";
example = "wayfire";
description = ''
Command line to run a Wayland compositor, defaults to `labwc --startup`
if not specified. Note that `xfce4-session` will be passed to it as an
argument, see `startxfce4 --help` for details.
Some compositors do not have an option equivalent to labwc's `--startup`
and you might have to add xfce4-session somewhere in their configurations.
'';
};
};
environment.xfce.excludePackages = mkOption {
@@ -134,6 +150,8 @@ in
programs.gnupg.agent.pinentryPackage = mkDefault pkgs.pinentry-gtk2;
programs.xfconf.enable = true;
programs.thunar.enable = true;
programs.labwc.enable = mkDefault (cfg.enableWaylandSession && (
cfg.waylandSessionCompositor == "" || lib.substring 0 5 cfg.waylandSessionCompositor == "labwc"));
environment.pathsToLink = [
"/share/xfce4"
@@ -144,6 +162,7 @@ in
services.xserver.desktopManager.session = [{
name = "xfce";
prettyName = "Xfce Session";
desktopNames = [ "XFCE" ];
bgSupport = !cfg.noDesktop;
start = ''
@@ -152,6 +171,22 @@ in
'';
}];
# Copied from https://gitlab.xfce.org/xfce/xfce4-session/-/blob/xfce4-session-4.19.2/xfce-wayland.desktop.in
# to maintain consistent l10n state with X11 session file and to support the waylandSessionCompositor option.
services.displayManager.sessionPackages = optionals cfg.enableWaylandSession [
((pkgs.writeTextDir "share/wayland-sessions/xfce-wayland.desktop" ''
[Desktop Entry]
Version=1.0
Name=Xfce Session (Wayland)
Comment=Use this session to run Xfce as your desktop environment
Exec=startxfce4 --wayland ${cfg.waylandSessionCompositor}
Icon=
Type=Application
DesktopNames=XFCE
Keywords=xfce;wayland;desktop;environment;session;
'').overrideAttrs (_: { passthru.providedSessions = [ "xfce-wayland" ]; }))
];
services.xserver.updateDbusEnvironment = true;
programs.gdk-pixbuf.modulePackages = [ pkgs.librsvg ];
@@ -279,6 +279,11 @@ in
lib.mapCartesianProduct
({dm, wm}: let
sessionName = "${dm.name}${optionalString (wm.name != "none") ("+" + wm.name)}";
prettyName =
if dm.name != "none" then
"${dm.prettyName or dm.name}${optionalString (wm.name != "none") (" (" + (wm.prettyName or wm.name) + ")")}"
else
(wm.prettyName or wm.name);
script = xsession dm wm;
desktopNames = if dm ? desktopNames
then lib.concatStringsSep ";" dm.desktopNames
@@ -297,7 +302,7 @@ in
Type=XSession
TryExec=${script}
Exec=${script}
Name=${sessionName}
Name=${prettyName}
DesktopNames=${desktopNames}
'';
} // {
+1
View File
@@ -1164,6 +1164,7 @@ in {
xandikos = handleTest ./xandikos.nix {};
xautolock = handleTest ./xautolock.nix {};
xfce = handleTest ./xfce.nix {};
xfce-wayland = handleTest ./xfce-wayland.nix {};
xmonad = handleTest ./xmonad.nix {};
xmonad-xdg-autostart = handleTest ./xmonad-xdg-autostart.nix {};
xpadneo = handleTest ./xpadneo.nix {};
+73
View File
@@ -0,0 +1,73 @@
import ./make-test-python.nix (
{ pkgs, ... }:
{
name = "xfce-wayland";
nodes.machine =
{ pkgs, ... }:
{
imports = [
./common/user-account.nix
];
services.xserver.enable = true;
services.xserver.displayManager.lightdm.enable = true;
services.displayManager = {
defaultSession = "xfce-wayland";
autoLogin = {
enable = true;
user = "alice";
};
};
services.xserver.desktopManager.xfce.enable = true;
services.xserver.desktopManager.xfce.enableWaylandSession = true;
# https://gitlab.xfce.org/apps/xfce4-screensaver/-/merge_requests/28
services.xserver.desktopManager.xfce.enableScreensaver = false;
environment.systemPackages = [ pkgs.wlrctl ];
};
enableOCR = true;
testScript =
{ nodes, ... }:
let
user = nodes.machine.users.users.alice;
rtdir = "XDG_RUNTIME_DIR=/run/user/${toString user.uid}";
in
''
machine.wait_for_unit("display-manager.service")
with subtest("Wait for Wayland server"):
machine.wait_for_file("/run/user/${toString user.uid}/wayland-0")
with subtest("Check that logging in has given the user ownership of devices"):
machine.succeed("getfacl -p /dev/snd/timer | grep -q ${user.name}")
with subtest("Check if Xfce components actually start"):
for p in ["labwc", "xfdesktop", "xfce4-notifyd", "xfconfd", "xfce4-panel"]:
machine.wait_until_succeeds(f"pgrep {p}")
with subtest("Open Xfce terminal"):
machine.succeed("su - ${user.name} -c '${rtdir} xfce4-terminal >&2 &'")
machine.wait_until_succeeds("su - ${user.name} -c '${rtdir} wlrctl toplevel list | grep xfce4-terminal'")
with subtest("Open Thunar"):
machine.succeed("su - ${user.name} -c '${rtdir} thunar >&2 &'")
machine.wait_until_succeeds("su - ${user.name} -c '${rtdir} wlrctl toplevel list | grep Thunar'")
machine.wait_for_text('(Pictures|Public|Templates|Videos)')
with subtest("Check if various environment variables are set"):
cmd = "xargs --null --max-args=1 echo < /proc/$(pgrep -xf xfce4-panel)/environ"
machine.succeed(f"{cmd} | grep 'XDG_SESSION_TYPE' | grep 'wayland'")
machine.succeed(f"{cmd} | grep 'XFCE4_SESSION_COMPOSITOR' | grep 'labwc'")
machine.succeed(f"{cmd} | grep 'XDG_CURRENT_DESKTOP' | grep 'XFCE'")
with subtest("Check if any coredumps are found"):
machine.succeed("(coredumpctl --json=short 2>&1 || true) | grep 'No coredumps found'")
machine.sleep(10)
machine.screenshot("screen")
'';
}
)
@@ -1,99 +0,0 @@
{
lib,
stdenv,
fetchFromGitHub,
copyDesktopItems,
pkg-config,
qtbase,
qtsvg,
qtmultimedia,
qmake,
gst_all_1,
libpulseaudio,
makeDesktopItem,
viper4linux,
wrapQtAppsHook,
}:
let
gstPluginPath = lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" (
with gst_all_1;
[
gstreamer
gst-plugins-viperfx
gst-plugins-base
gst-plugins-good
]
);
in
stdenv.mkDerivation rec {
pname = "viper4linux-gui";
version = "unstable-2022-04-23";
src = fetchFromGitHub {
owner = "Audio4Linux";
repo = "Viper4Linux-GUI";
rev = "2d0c84d7dda76c59e31c850e38120002eb779b7a";
sha256 = "sha256-5YlLCF598i/sldczPEgCB+1KJDA7jqM964QDSNjgTKM=";
};
desktopItems = [
(makeDesktopItem {
name = pname;
exec = "viper-gui";
icon = "viper";
desktopName = "viper4linux";
genericName = "Equalizer";
comment = meta.description;
categories = [
"AudioVideo"
"Audio"
];
startupNotify = false;
})
];
nativeBuildInputs = [
qmake
pkg-config
wrapQtAppsHook
copyDesktopItems
];
buildInputs = [
qtbase
qtmultimedia
qtsvg
gst_all_1.gstreamer
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-viperfx
libpulseaudio
viper4linux
];
qmakeFlags = [ "V4L_Frontend.pro" ];
qtWrapperArgs = [
"--prefix PATH : ${
lib.makeBinPath [
viper4linux
gst_all_1.gstreamer
]
}"
"--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : ${gstPluginPath}"
];
installPhase = ''
runHook preInstall
install -D V4L_Frontend $out/bin/viper-gui
install -D icons/viper.png $out/share/icons/viper.png
runHook postInstall
'';
meta = with lib; {
description = "Official UI for Viper4Linux2";
homepage = "https://github.com/Audio4Linux/Viper4Linux-GUI";
license = licenses.gpl3Plus;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ rewine ];
};
}
@@ -45,6 +45,11 @@ stdenv.mkDerivation rec {
"--sbindir=${placeholder "out"}/bin" # for wrapGAppsHook3 to wrap automatically
];
postPatch = ''
# https://github.com/Xubuntu/lightdm-gtk-greeter/pull/178
cp data/badges/xfce{,-wayland}_badge-symbolic.svg
'';
preConfigure = ''
configureFlagsArray+=( --enable-at-spi-command="${at-spi2-core}/libexec/at-spi-bus-launcher --launch-immediately" )
'';
+2 -2
View File
@@ -6,10 +6,10 @@
}:
let
pname = "bitcomet";
version = "2.11.0";
version = "2.12.0";
src = fetchurl {
url = "https://download.bitcomet.com/linux/x86_64/BitComet-${version}-x86_64.AppImage";
hash = "sha256-YBM4xeeqvzvGoGHqOPForqDYt9U9ooG31jG2ickeq4o=";
hash = "sha256-TbEdormqEZJymOQF8ftpZ6JBU1AeCdkQ/FAzRYrgaJ4=";
};
appimageContents = appimageTools.extractType2 { inherit pname version src; };
in
+11 -1
View File
@@ -2,6 +2,7 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
accountsservice,
alsa-lib,
budgie-screensaver,
@@ -60,7 +61,16 @@ stdenv.mkDerivation (finalAttrs: {
"man"
];
patches = [ ./plugins.patch ];
patches = [
./plugins.patch
# Adapt to libxfce4windowing v4.19.8
# https://github.com/BuddiesOfBudgie/budgie-desktop/pull/627
(fetchpatch {
url = "https://github.com/BuddiesOfBudgie/budgie-desktop/commit/ba8170b4f3108f9de28331b6a98a9d92bb0ed4de.patch";
hash = "sha256-T//1/NmaV81j0jiIYK7vEp8sgKCgF2i10D+Rk9qAAeE=";
})
];
nativeBuildInputs = [
docbook-xsl-nons
+13 -6
View File
@@ -2,26 +2,30 @@
lib,
stdenv,
fetchurl,
undmg,
_7zz,
appimageTools,
}:
let
pname = "dbgate";
version = "5.3.4";
version = "6.0.0";
src =
fetchurl
{
aarch64-linux = {
url = "https://github.com/dbgate/dbgate/releases/download/v${version}/dbgate-${version}-linux_arm64.AppImage";
hash = "sha256-szG0orYBB1+DE9Vwjq0sluIaLDBlWOScKuruJR4iQKg=";
hash = "sha256-HWjz3S8y0lRvhEcYNaNY89fLKvLOzwoLFD2RstWgFPI=";
};
x86_64-linux = {
url = "https://github.com/dbgate/dbgate/releases/download/v${version}/dbgate-${version}-linux_x86_64.AppImage";
hash = "sha256-C0BJ3dydaeV8ypc8c0EDiMBhvByLAKuKTGHOozqbd+w=";
hash = "sha256-nUoncYH42maU5cAMkpvKeCnyE8SJTlcfdUCrO5WvhcY=";
};
x86_64-darwin = {
url = "https://github.com/dbgate/dbgate/releases/download/v${version}/dbgate-${version}-mac_x64.dmg";
hash = "sha256-WwUpFFeZ9NmosHZqrHCbsz673fSbdQvwxhEvz/6JJtw=";
hash = "sha256-ru+TzZ7c9NSOujsHoLxghmKgI4dEMlc45hTHsto2gIY=";
};
aarch64-darwin = {
url = "https://github.com/dbgate/dbgate/releases/download/v${version}/dbgate-${version}-mac_universal.dmg";
hash = "sha256-H6RFzgnn/4HHdHrWedFLeLlXizC+TEbD8F/9C4rVMok=";
};
}
.${stdenv.system} or (throw "dbgate: ${stdenv.system} is unsupported.");
@@ -36,6 +40,7 @@ let
"x86_64-linux"
"x86_64-darwin"
"aarch64-linux"
"aarch64-darwin"
];
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
};
@@ -51,7 +56,9 @@ if stdenv.hostPlatform.isDarwin then
sourceRoot = ".";
nativeBuildInputs = [ undmg ];
nativeBuildInputs = [ _7zz ];
unpackPhase = "7zz x ${src}";
installPhase = ''
runHook preInstall
@@ -0,0 +1,44 @@
{
fetchurl,
stdenv,
makeWrapper,
undmg,
pname,
commonMeta,
version,
}:
stdenv.mkDerivation {
inherit
pname
version
;
src = fetchurl {
url = "https://github.com/GoldenCheetah/GoldenCheetah/releases/download/v${version}/GoldenCheetah_v${builtins.substring 0 7 version}_x64.dmg";
hash = "sha256-GGe8pGf16FWqN9uaStnGOtOeKDB44VBD7QwHkaZb7wY=";
};
nativeBuildInputs = [
makeWrapper
undmg
];
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p "$out/Applications/GoldenCheetah.app"
cp -r * "$out/Applications/GoldenCheetah.app/"
makeWrapper "$out/Applications/GoldenCheetah.app/Contents/MacOS/GoldenCheetah" "$out/bin/GoldenCheetah"
runHook postInstall
'';
meta = {
inherit (commonMeta)
description
platforms
maintainers
license
sourceProvenance
;
};
}
@@ -0,0 +1,45 @@
{
appimageTools,
fetchurl,
pname,
commonMeta,
version,
}:
appimageTools.wrapType2 rec {
inherit
pname
version
;
src = fetchurl {
url = "https://github.com/GoldenCheetah/GoldenCheetah/releases/download/v${version}/GoldenCheetah_v${builtins.substring 0 7 version}_x64.AppImage";
hash = "sha256-S1YDg7opoYflL/3h+lP1SNwXpJHaN3+iE3waSjWtN6o=";
};
extraPkgs = pkgs: [
pkgs.R
pkgs.zlib
pkgs.libusb-compat-0_1
];
appimageContents = appimageTools.extract { inherit pname src version; };
extraInstallCommands = ''
mv $out/bin/${pname} $out/bin/GoldenCheetah
mkdir -p $out/share/applications
mkdir -p $out/share/pixmaps
cp ${appimageContents}/GoldenCheetah.desktop $out/share/applications/
substituteInPlace $out/share/applications/GoldenCheetah.desktop --replace-fail \
"Exec=GoldenCheetah" "Exec=QT_PLUGIN_PATH= GoldenCheetah"
cp ${appimageContents}/gc.png $out/share/pixmaps/
'';
meta = {
inherit (commonMeta)
description
platforms
maintainers
license
sourceProvenance
;
};
}
+30 -31
View File
@@ -1,38 +1,37 @@
{ appimageTools, lib, fetchurl, nix-update-script, stdenv }:
{
lib,
stdenv,
callPackage,
}:
let
pname = "golden-cheetah";
version = "3.6";
version = "3.7-DEV2410";
src = fetchurl {
url = "https://github.com/GoldenCheetah/GoldenCheetah/releases/download/v${version}/GoldenCheetah_v${version}_x64.AppImage";
hash = "sha256-PMRUDQSQxbECbF9SPOo03t4Xxj1OtYJAPXEMyyy6EVY=";
};
appimageContents = appimageTools.extract { inherit pname src version; };
in
appimageTools.wrapType2 {
inherit pname src version;
extraPkgs = pkgs: [ pkgs.R pkgs.zlib pkgs.libusb-compat-0_1 ];
extraInstallCommands = ''
mv $out/bin/${pname} $out/bin/GoldenCheetah
mkdir -p $out/share/applications
mkdir -p $out/share/pixmaps
cp ${appimageContents}/GoldenCheetah.desktop $out/share/applications/
cp ${appimageContents}/gc.png $out/share/pixmaps/
'';
passthru.updateScript = nix-update-script { };
meta = {
commonMeta = {
description = "Performance software for cyclists, runners and triathletes. This version includes the API Tokens for e.g. Strava";
platforms = lib.platforms.linux;
broken = !stdenv.hostPlatform.isx86_64;
maintainers = with lib.maintainers; [ gador adamcstephens ];
platforms = [
"x86_64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
maintainers = with lib.maintainers; [
gador
adamcstephens
];
license = lib.licenses.gpl2Plus;
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
knownVulnerabilities = [ "Vendors libwebp vulnerable to CVE-2023-4863" ];
};
}
in
if stdenv.hostPlatform.isDarwin then
callPackage ./darwin.nix {
inherit
stdenv
pname
commonMeta
version
;
}
else
callPackage ./linux.nix { inherit pname commonMeta version; }
+10
View File
@@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, meson
, ninja
, pkg-config
@@ -22,6 +23,15 @@ stdenv.mkDerivation rec {
sha256 = "+MZQ3FThuRFEfoARsF09B7POwytS5RgTs9zYzIHVtfg=";
};
patches = [
# Fix label styles for xfdesktop 4.19
# https://github.com/shimmerproject/Greybird/pull/338
(fetchpatch {
url = "https://github.com/shimmerproject/Greybird/commit/7e4507d7713b2aaf41f8cfef2a1a9e214a4d8b6f.patch";
hash = "sha256-awXM2RgFIK/Ik5cJSy4IQYl+ic+XGQV0YwbL3SPclzQ=";
})
];
nativeBuildInputs = [
meson
ninja
+2 -2
View File
@@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "intel-gmmlib";
version = "22.5.4";
version = "22.5.5";
src = fetchFromGitHub {
owner = "intel";
repo = "gmmlib";
rev = "intel-gmmlib-${version}";
hash = "sha256-BxWWTUVAvU3dpbcPvCvXbh5npRT5t4S3d4m2/cCj36g=";
hash = "sha256-F8e9FzEn6A7U8lyso5YDhWaB+S5M45HRvj95AyteovQ=";
};
nativeBuildInputs = [ cmake ];
+71
View File
@@ -0,0 +1,71 @@
{
stdenv,
lib,
fetchFromGitLab,
cmake,
qt6,
kdePackages,
ghostscript,
qpdf,
ninja,
}:
stdenv.mkDerivation {
pname = "karp";
version = "0-unstable-2024-11-20";
src = fetchFromGitLab {
domain = "invent.kde.org";
owner = "graphics";
repo = "karp";
rev = "f26d6c43adc2feb2b0569df126f3a7be5d95ac2e";
hash = "sha256-w1wrPaqQ6NBtbY5OEtxGlc72mXuLrlefq6A02U9wWHc=";
};
nativeBuildInputs = [
cmake
ninja
qt6.wrapQtAppsHook
kdePackages.extra-cmake-modules
];
qtWrapperArgs = [
"--prefix PATH : ${
lib.makeBinPath [
qpdf
ghostscript
]
}"
];
buildInputs = [
qt6.qtbase
kdePackages.kirigami
kdePackages.kirigami-addons
kdePackages.kcoreaddons
kdePackages.kconfig
kdePackages.ki18n
qt6.qtdeclarative
qt6.qtwayland
qt6.qtsvg
qt6.qtwebengine
];
meta = {
homepage = "https://apps.kde.org/karp/";
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ bot-wxt1221 ];
description = "KDE alternative to PDF arranger";
license = with lib.licenses; [
bsd3
cc-by-sa-40
cc0
# FSFAP
gpl2Only
gpl3Only
lgpl2Plus
# https://invent.kde.org/graphics/karp/-/blob/master/LICENSES/LicenseRef-KDE-Accepted-GPL.txt
];
mainProgram = "karp";
};
}
-35
View File
@@ -1,35 +0,0 @@
{
lib,
stdenv,
fetchFromGitHub,
}:
stdenv.mkDerivation rec {
pname = "libviperfx";
version = "unstable-2018-01-15";
src = fetchFromGitHub {
owner = "vipersaudio";
repo = "viperfx_core_binary";
rev = "6f7d0da725affe854f083baf5d90c70e172e4488";
sha256 = "sha256-hfX46Kk91eQgiO3uhew91I6eEHxazhdGwSkhfNZ+HvQ=";
};
dontBuild = true;
installPhase = ''
runHook preInstall
install -D libviperfx_x64_linux.so $out/lib/libviperfx.so
install -D README.md $out/share/licenses/libviperfx/LICENSE
runHook postInstall
'';
meta = with lib; {
homepage = "https://github.com/vipersaudio/viperfx_core_binary";
description = "ViPER FX core";
license = licenses.unfreeRedistributable;
maintainers = with maintainers; [ rewine ];
platforms = [ "x86_64-linux" ];
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
};
}
+2 -2
View File
@@ -6,12 +6,12 @@
}:
stdenv.mkDerivation (finalAttrs: {
version = "10.83";
version = "10.85";
pname = "monkeys-audio";
src = fetchzip {
url = "https://monkeysaudio.com/files/MAC_${builtins.concatStringsSep "" (lib.strings.splitString "." finalAttrs.version)}_SDK.zip";
hash = "sha256-QPd3YlQ2IYAqIIau3RVb2FcdE4obQjg5bZi6CUsDyHU=";
hash = "sha256-072ZFJ+cmT9rXxQmG3tDbnxnbRmvTxbZ6JtOhONe5n0=";
stripRoot = false;
};
+3 -3
View File
@@ -15,16 +15,16 @@
rustPlatform.buildRustPackage rec {
pname = "sequoia-sq";
version = "0.40.0";
version = "1.0.0";
src = fetchFromGitLab {
owner = "sequoia-pgp";
repo = "sequoia-sq";
rev = "v${version}";
hash = "sha256-RHQPlxkwnj31io417Ro8Jo7RE6OMe9y9TdMIWsYj+pQ=";
hash = "sha256-fXKX4/K3Pcfzdwi0yIVrwZk/7OunQh7g38dVpYhDoxE=";
};
cargoHash = "sha256-4OdBYvVIYdfQEm2+TvRXPKgjd6OTY+ViE9N5PkhzfRU=";
cargoHash = "sha256-9Nu9hZDBNgfjAmorQBKhdSRavljhtzZ3XIG0mi/xl+s=";
nativeBuildInputs = [
pkg-config
+2 -2
View File
@@ -36,13 +36,13 @@
stdenv.mkDerivation rec {
pname = "tuba";
version = "0.8.4";
version = "0.9.0";
src = fetchFromGitHub {
owner = "GeopJr";
repo = "Tuba";
rev = "v${version}";
hash = "sha256-PRzLTlq8XfI5dYZhJ8YBtYi4H3883S2olp9jrn1Q5CQ=";
hash = "sha256-+Xw5mf1iLXvHMZsdpcANglsMOsebvHNOTuVRrXCqBOk=";
};
nativeBuildInputs = [
-69
View File
@@ -1,69 +0,0 @@
{
lib,
stdenv,
fetchFromGitHub,
gst_all_1,
libviperfx,
makeWrapper,
}:
let
gstPluginPath = lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" (
with gst_all_1;
[
gstreamer
gst-plugins-viperfx
gst-plugins-base
gst-plugins-good
]
);
in
stdenv.mkDerivation rec {
pname = "viper4linux";
version = "unstable-2022-03-13";
src = fetchFromGitHub {
owner = "Audio4Linux";
repo = "Viper4Linux";
rev = "5da25644824f88cf0db24378d2c84770ba4f6816";
sha256 = "sha256-CJNVr/1ehJzX45mxunXcRAypBBGEBdswOzAVG2H+ayg=";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-viperfx
libviperfx
];
dontBuild = true;
postPatch = ''
substituteInPlace viper --replace "/etc/viper4linux" "$out/etc/viper4linux"
'';
installPhase = ''
runHook preInstall
install -D viper -t $out/bin
mkdir -p $out/etc/viper4linux
cp -r viper4linux/* $out/etc/viper4linux
runHook postInstall
'';
postFixup = ''
wrapProgram "$out/bin/viper" \
--prefix PATH : $out/bin:${lib.makeBinPath [ gst_all_1.gstreamer ]} \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : ${gstPluginPath} \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libviperfx ]}
'';
meta = with lib; {
description = "Adaptive Digital Sound Processor";
homepage = "https://github.com/Audio4Linux/Viper4Linux";
license = licenses.gpl3Plus;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ rewine ];
};
}
+7 -4
View File
@@ -11,22 +11,23 @@
rustPlatform,
webkitgtk_4_1,
wrapGAppsHook3,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wealthfolio";
version = "1.0.21";
version = "1.0.22";
src = fetchFromGitHub {
owner = "afadil";
repo = "wealthfolio";
rev = "v${finalAttrs.version}";
hash = "sha256-OWXmYFVr2nOzPeqLZHkteedcQ26bmkrsUF7HYUB+FQE=";
hash = "sha256-2g5zfRRxRm7/pCyut7weC4oTegwxCbvYpWSC2+qfcR8=";
};
pnpmDeps = pnpm.fetchDeps {
inherit (finalAttrs) src pname version;
hash = "sha256-U2NUym+6cvHkZ/ah2PaOCizdYeD5XzE8lpGnzhu0tW4=";
hash = "sha256-CNk4zysIIDzDxozCrUnsR63eme28mDsBkRVB/1tXnJI=";
};
cargoRoot = "src-tauri";
@@ -35,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: {
cargoDeps = rustPlatform.fetchCargoTarball {
inherit (finalAttrs) pname version src;
sourceRoot = "${finalAttrs.src.name}/${finalAttrs.cargoRoot}";
hash = "sha256-W8VLswLZpybFPQ1JR4miW7BPDs27RazPGEhw2kyusIw=";
hash = "sha256-569k7s6h8eJABNy2+xkNQegEXUhBOlX+zkf1pzNX3ZU=";
};
nativeBuildInputs = [
@@ -53,6 +54,8 @@ stdenv.mkDerivation (finalAttrs: {
webkitgtk_4_1
];
passthru.updateScript = nix-update-script { };
meta = {
description = "A Beautiful Private and Secure Desktop Investment Tracking Application";
homepage = "https://wealthfolio.app/";
+2 -8
View File
@@ -20,14 +20,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "wike";
version = "3.0.0";
version = "3.1.0";
format = "other";
src = fetchFromGitHub {
owner = "hugolabe";
repo = "Wike";
rev = version;
hash = "sha256-x6HYlpCj7poKWJWB2CnvN1aoTa7LmqYwbPa62WvSYsQ=";
hash = "sha256-Wx0jMO9a2K22zIU0B++0ZtPzLi+PrsJ5Sw8Sb8BODdU=";
};
nativeBuildInputs = [
@@ -54,12 +54,6 @@ python3.pkgs.buildPythonApplication rec {
pygobject3
];
postPatch = ''
patchShebangs build-aux/meson/postinstall.py
substituteInPlace build-aux/meson/postinstall.py \
--replace gtk-update-icon-cache gtk4-update-icon-cache
'';
# prevent double wrapping
dontWrapGApps = true;
preFixup = ''
-144
View File
@@ -1,144 +0,0 @@
{
lib,
stdenv,
fetchurl,
_7zz,
dpkg,
autoPatchelfHook,
wrapGAppsHook3,
makeWrapper,
alsa-lib,
at-spi2-atk,
cups,
nspr,
nss,
libgbm,
xorg,
xdg-utils,
libdrm,
libnotify,
libsecret,
libuuid,
gtk3,
systemd,
}:
let
pname = "yesplaymusic";
version = "0.4.8-2";
srcs =
let
version' = lib.head (lib.splitString "-" version);
in
{
x86_64-linux = fetchurl {
url = "https://github.com/qier222/YesPlayMusic/releases/download/v${version}/yesplaymusic_${version'}_amd64.deb";
hash = "sha256-iTWi+tZGUQU7J1mcmMdlWXSKpYGy4mMAeq9CN9fhnZ8=";
};
aarch64-linux = fetchurl {
url = "https://github.com/qier222/YesPlayMusic/releases/download/v${version}/yesplaymusic_${version'}_arm64.deb";
hash = "sha256-PP0apybSORqleOBogldgIV1tYZqao8kZ474muAEDpd0";
};
x86_64-darwin = fetchurl {
url = "https://github.com/qier222/YesPlayMusic/releases/download/v${version}/YesPlayMusic-mac-${version'}-x64.dmg";
hash = "sha256-UHnEdoXT/vArSRKXPlfDYUUUMDyF2mnDsmJEjACW2vo=";
};
aarch64-darwin = fetchurl {
url = "https://github.com/qier222/YesPlayMusic/releases/download/v${version}/YesPlayMusic-mac-${version'}-arm64.dmg";
hash = "sha256-FaeumNmkPQYj9Ae2Xw/eKUuezR4bEdni8li+NRU9i1k=";
};
};
src =
srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
libraries = [
alsa-lib
at-spi2-atk
cups
nspr
nss
libgbm
xorg.libxshmfence
xorg.libXScrnSaver
xorg.libXtst
xdg-utils
libdrm
libnotify
libsecret
libuuid
gtk3
];
meta = with lib; {
description = "Good-looking third-party netease cloud music player";
mainProgram = "yesplaymusic";
homepage = "https://github.com/qier222/YesPlayMusic/";
license = licenses.mit;
maintainers = with maintainers; [ ChaosAttractor ];
platforms = builtins.attrNames srcs;
};
in
if stdenv.hostPlatform.isDarwin then
stdenv.mkDerivation {
inherit
pname
version
src
meta
;
nativeBuildInputs = [
_7zz
makeWrapper
];
sourceRoot = ".";
installPhase = ''
runHook preInstall
mkdir -p $out/Applications
cp -r *.app $out/Applications
makeWrapper $out/Applications/YesPlayMusic.app/Contents/MacOS/YesPlayMusic $out/bin/yesplaymusic
runHook postInstall
'';
}
else
stdenv.mkDerivation {
inherit
pname
version
src
meta
;
nativeBuildInputs = [
autoPatchelfHook
wrapGAppsHook3
makeWrapper
dpkg
];
buildInputs = libraries;
runtimeDependencies = [
(lib.getLib systemd)
];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp -r opt $out/opt
cp -r usr/share $out/share
substituteInPlace $out/share/applications/yesplaymusic.desktop \
--replace "/opt/YesPlayMusic/yesplaymusic" "$out/bin/yesplaymusic"
makeWrapper $out/opt/YesPlayMusic/yesplaymusic $out/bin/yesplaymusic \
--argv0 "yesplaymusic" \
--add-flags "$out/opt/YesPlayMusic/resources/app.asar"
runHook postInstall
'';
}
+2 -6
View File
@@ -4,9 +4,9 @@
mkXfceDerivation {
category = "xfce";
pname = "exo";
version = "4.18.0";
version = "4.20.0";
sha256 = "sha256-oWlKeUD1v2qqb8vY+2Cu9VJ1iThFPVboP12m/ob5KSQ=";
sha256 = "sha256-mlGsFaKy96eEAYgYYqtEI4naq5ZSEe3V7nsWGAEucn0=";
nativeBuildInputs = [
libxslt
@@ -18,13 +18,9 @@ mkXfceDerivation {
glib
libxfce4ui
libxfce4util
(perl.withPackages(ps: with ps; [ URI ])) # for $out/lib/xfce4/exo/exo-compose-mail
];
# Workaround https://bugzilla.xfce.org/show_bug.cgi?id=15825
env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
meta = with lib; {
description = "Application library for Xfce";
maintainers = with maintainers; [ ] ++ teams.xfce.members;
+2 -2
View File
@@ -3,9 +3,9 @@
mkXfceDerivation {
category = "xfce";
pname = "garcon";
version = "4.18.2";
version = "4.20.0";
sha256 = "sha256-J9f9MzZ1I9XIyvwuyINkvXDuXY6/MkjlH2Ct4yaEXsY=";
sha256 = "sha256-MeZkDb2QgGMaloO6Nwlj9JmZByepd6ERqpAWqrVv1xw=";
nativeBuildInputs = [ gobject-introspection ];
+40 -8
View File
@@ -1,16 +1,45 @@
{ lib, mkXfceDerivation, gobject-introspection, vala, gtk3, libICE, libSM
, libstartup_notification, libgtop, libepoxy, libxfce4util, xfconf }:
{
mkXfceDerivation,
lib,
gobject-introspection,
vala,
libICE,
libSM,
libepoxy,
libgtop,
libgudev,
libstartup_notification,
xfconf,
gtk3,
libxfce4util,
}:
mkXfceDerivation {
category = "xfce";
pname = "libxfce4ui";
version = "4.18.6";
version = "4.20.0";
sha256 = "sha256-ojmI745tKLHv26uL1qS/v6hAcLmAV/WF2NAtAhQRUkg=";
sha256 = "sha256-M+OapPHQ/WxlkUzHPx+ELstVyGoZanCxCL0N8hDWSN8=";
nativeBuildInputs = [ gobject-introspection vala ];
buildInputs = [ gtk3 libstartup_notification libgtop libepoxy xfconf ];
propagatedBuildInputs = [ libxfce4util libICE libSM ];
nativeBuildInputs = [
gobject-introspection
vala
];
buildInputs = [
libICE
libSM
libepoxy
libgtop
libgudev
libstartup_notification
xfconf
];
propagatedBuildInputs = [
gtk3
libxfce4util
];
configureFlags = [
"--with-vendor-info=NixOS"
@@ -19,7 +48,10 @@ mkXfceDerivation {
meta = with lib; {
description = "Widgets library for Xfce";
mainProgram = "xfce4-about";
license = with licenses; [ lgpl2Plus lgpl21Plus ];
license = with licenses; [
lgpl2Plus
lgpl21Plus
];
maintainers = with maintainers; [ ] ++ teams.xfce.members;
};
}
@@ -1,13 +1,26 @@
{ lib, mkXfceDerivation, gobject-introspection, vala }:
{
mkXfceDerivation,
lib,
gobject-introspection,
vala,
glib,
}:
mkXfceDerivation {
category = "xfce";
pname = "libxfce4util";
version = "4.18.2";
version = "4.20.0";
sha256 = "sha256-JQ6biE1gxtB6+LWxRGfbUhgJhhITGhLr+8BxFW4/8SU=";
sha256 = "sha256-0qbJSCXHsVz3XILHICFhciyz92LgMZiR7XFLAESHRGQ=";
nativeBuildInputs = [ gobject-introspection vala ];
nativeBuildInputs = [
gobject-introspection
vala
];
propagatedBuildInputs = [
glib
];
meta = with lib; {
description = "Extension library for Xfce";
@@ -4,18 +4,21 @@
, wayland-scanner
, glib
, gtk3
, libdisplay-info
, libwnck
, libX11
, libXrandr
, wayland
, wayland-protocols
, wlr-protocols
}:
mkXfceDerivation {
category = "xfce";
pname = "libxfce4windowing";
version = "4.19.3";
version = "4.20.0";
sha256 = "sha256-nsobRyGeagUq1WHzYBq6vd9g5A65KEQC4cX+m7w0pqg=";
sha256 = "sha256-t/GbsGipc0Ts2tZJaDJBuDF+9XMp8+Trq78NPAuHEpU=";
nativeBuildInputs = [
gobject-introspection
@@ -25,9 +28,12 @@ mkXfceDerivation {
buildInputs = [
glib
gtk3
libdisplay-info
libwnck
libX11
libXrandr
wayland
wayland-protocols
wlr-protocols
];
@@ -3,11 +3,11 @@
mkXfceDerivation {
category = "xfce";
pname = "thunar-volman";
version = "4.18.0";
version = "4.20.0";
buildInputs = [ exo gtk3 libgudev libxfce4ui libxfce4util xfconf ];
sha256 = "sha256-NRVoakU8jTCJVe+iyJQwW1xPti2vjd/8n8CYrIYGII0=";
sha256 = "sha256-XIVs/vRwy3QJQW/U7eLBvGdzplWlhdxn3f1lyTQsmpE=";
odd-unstable = false;
+2 -2
View File
@@ -23,9 +23,9 @@
let unwrapped = mkXfceDerivation {
category = "xfce";
pname = "thunar";
version = "4.18.11";
version = "4.20.0";
sha256 = "sha256-B417gkrU9EG4ZsEdeuH8P2v4FqYUiTwqgKcO4cSi4SI=";
sha256 = "sha256-TCroFesFD0IKGdfuootd1BwEsWVECE2XQfUovJqPEh0=";
nativeBuildInputs = [
docbook_xsl
+2 -2
View File
@@ -19,9 +19,9 @@
mkXfceDerivation {
category = "xfce";
pname = "tumbler";
version = "4.18.2";
version = "4.20.0";
sha256 = "sha256-thioE0q2qnV4weJFPz8OWoHIRuUcXnQEviwBtCWsSV4=";
sha256 = "sha256-GmEMdG8Ikd4Tq/1ntCHiN0S7ehUXqzMX7OtXsycLd6E=";
buildInputs = [
libxfce4util
@@ -3,9 +3,9 @@
mkXfceDerivation {
category = "xfce";
pname = "xfce4-appfinder";
version = "4.18.1";
version = "4.20.0";
sha256 = "sha256-CZEX1PzFsVt72Fkb4+5PiZjAcDisvYnbzFGFXjFL4sc=";
sha256 = "sha256-HovQnkfv5BOsRPowgMkMEWQmESkivVK0Xb7I15ZaOMc=";
nativeBuildInputs = [ exo ];
buildInputs = [ garcon gtk3 libxfce4ui libxfce4util xfconf ];
@@ -1,27 +1,48 @@
{ lib
, mkXfceDerivation
, autoreconfHook
, libxslt
, docbook_xsl
, autoconf
, automake
, glib
, gtk-doc
, intltool
, libtool
{
stdenv,
lib,
fetchFromGitLab,
autoreconfHook,
docbook_xsl,
libxslt,
meson,
pkg-config,
wrapGAppsHook3,
python3,
autoconf,
automake,
glib,
gtk-doc,
libtool,
intltool,
gitUpdater,
}:
mkXfceDerivation {
category = "xfce";
stdenv.mkDerivation (finalAttrs: {
pname = "xfce4-dev-tools";
version = "4.18.1";
version = "4.20.0";
sha256 = "sha256-JUyFlifNVhSnIMaI9qmgCtGIgkpmzYybMfuhPgJiDOg=";
src = fetchFromGitLab {
domain = "gitlab.xfce.org";
owner = "xfce";
repo = "xfce4-dev-tools";
rev = "xfce4-dev-tools-${finalAttrs.version}";
hash = "sha256-eUfNa/9ksLCKtVwBRtHaVl7Yl95tukUaDdoLNfeR+Ew=";
};
nativeBuildInputs = [
autoreconfHook
libxslt
docbook_xsl
libxslt # for xsltproc
# x-d-t itself is not a meson project, but the xfce-do-release script wants
# `meson rewrite kwargs`, thus this is checked by `AC_CHECK_PROGS`.
meson
pkg-config
wrapGAppsHook3
];
buildInputs = [
python3 # for xdt-gen-visibility
];
propagatedBuildInputs = [
@@ -33,10 +54,23 @@ mkXfceDerivation {
libtool
];
dontUseMesonConfigure = true;
configureFlags = [ "--enable-maintainer-mode" ];
enableParallelBuilding = true;
setupHook = ./setup-hook.sh;
meta = with lib; {
description = "Autoconf macros and scripts to augment app build systems";
maintainers = with maintainers; [ ] ++ teams.xfce.members;
passthru.updateScript = gitUpdater {
rev-prefix = "xfce4-dev-tools-";
odd-unstable = true;
};
}
meta = with lib; {
homepage = "https://gitlab.xfce.org/xfce/xfce4-dev-tools";
description = "Autoconf macros and scripts to augment app build systems";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ ] ++ teams.xfce.members;
platforms = platforms.linux;
};
})
@@ -1,24 +1,28 @@
{ lib
, mkXfceDerivation
, cairo
, exo
, garcon
, gobject-introspection
, gtk-layer-shell
, gtk3
, libdbusmenu-gtk3
, libwnck
, libxfce4ui
, libxfce4util
, libxfce4windowing
, tzdata
, vala
, wayland
, xfconf
}:
mkXfceDerivation {
category = "xfce";
pname = "xfce4-panel";
version = "4.18.6";
version = "4.20.0";
sha256 = "sha256-eQLz/LJIx2WkzcSLytRdJdhtGv0woT48mdqG7eHB0U4=";
sha256 = "sha256-oB7mlU7RZtRuCQAKgv5I7ZRRu703Za7Ki9+AkHSELRE=";
nativeBuildInputs = [
gobject-introspection
@@ -26,13 +30,17 @@ mkXfceDerivation {
];
buildInputs = [
cairo
exo
garcon
gtk-layer-shell
libdbusmenu-gtk3
libxfce4ui
libxfce4windowing
libwnck
xfconf
tzdata
wayland
xfconf
];
propagatedBuildInputs = [
@@ -40,8 +48,6 @@ mkXfceDerivation {
libxfce4util
];
patches = [ ./xfce4-panel-datadir.patch ];
postPatch = ''
substituteInPlace plugins/clock/clock.c \
--replace-fail "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
@@ -1,24 +0,0 @@
diff --git a/panel/panel-module-factory.c b/panel/panel-module-factory.c
index 529fe85..8c792b7 100644
--- a/panel/panel-module-factory.c
+++ b/panel/panel-module-factory.c
@@ -39,6 +39,7 @@
#include <panel/panel-module.h>
#include <panel/panel-module-factory.h>
+#define DATADIR "/run/current-system/sw/share/xfce4"
#define PANEL_PLUGINS_DATA_DIR (DATADIR G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins")
#define PANEL_PLUGINS_DATA_DIR_OLD (DATADIR G_DIR_SEPARATOR_S "panel-plugins")
diff --git a/panel/panel-module.c b/panel/panel-module.c
index ba39320..519440b 100644
--- a/panel/panel-module.c
+++ b/panel/panel-module.c
@@ -35,6 +35,7 @@
#include <panel/panel-plugin-external-wrapper.h>
#include <panel/panel-plugin-external-46.h>
+#define LIBDIR "/run/current-system/sw/lib/xfce4"
#define PANEL_PLUGINS_LIB_DIR (LIBDIR G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins")
#define PANEL_PLUGINS_LIB_DIR_OLD (LIBDIR G_DIR_SEPARATOR_S "panel-plugins")
@@ -1,10 +1,14 @@
{ lib
, mkXfceDerivation
, wayland-scanner
, gtk3
, libnotify
, libxfce4ui
, libxfce4util
, polkit
, upower
, wayland-protocols
, wlr-protocols
, xfconf
, xfce4-panel
}:
@@ -12,16 +16,23 @@
mkXfceDerivation {
category = "xfce";
pname = "xfce4-power-manager";
version = "4.18.4";
version = "4.20.0";
sha256 = "sha256-aybY+B8VC/XS6FO3XRpYuJd9Atr9Tc/Uo45q9fh3YLE=";
sha256 = "sha256-qKUdrr+giLzNemhT3EQsOKTSiIx50NakmK14Ak7ZOCE=";
nativeBuildInputs = [
wayland-scanner
];
buildInputs = [
gtk3
libnotify
libxfce4ui
libxfce4util
polkit
upower
wayland-protocols
wlr-protocols
xfconf
xfce4-panel
];
@@ -29,8 +40,8 @@ mkXfceDerivation {
# using /run/current-system/sw/bin instead of nix store path prevents polkit permission errors on
# rebuild. See https://github.com/NixOS/nixpkgs/issues/77485
postPatch = ''
substituteInPlace src/org.xfce.power.policy.in2 --replace-fail "@sbindir@" "/run/current-system/sw/bin"
substituteInPlace common/xfpm-brightness.c --replace-fail "SBINDIR" "\"/run/current-system/sw/bin\""
substituteInPlace src/org.xfce.power.policy.in.in --replace-fail "@sbindir@" "/run/current-system/sw/bin"
substituteInPlace common/xfpm-brightness-polkit.c --replace-fail "SBINDIR" "\"/run/current-system/sw/bin\""
substituteInPlace src/xfpm-suspend.c --replace-fail "SBINDIR" "\"/run/current-system/sw/bin\""
'';
@@ -4,9 +4,11 @@
, exo
, libxfce4util
, libxfce4ui
, libxfce4windowing
, xfconf
, iceauth
, gtk3
, gtk-layer-shell
, glib
, libwnck
, xfce4-session
@@ -15,23 +17,28 @@
mkXfceDerivation {
category = "xfce";
pname = "xfce4-session";
version = "4.18.4";
version = "4.20.0";
sha256 = "sha256-YxIHxb8mRggHLJ9TQ+KGb9qjt+DMZrxMn+oFuFRL8GI=";
sha256 = "sha256-mn3ky1NzrpQZRkhc605mj+GFhbFq26eW59YKUfnX9X8=";
buildInputs = [
exo
gtk3
gtk-layer-shell
glib
libxfce4ui
libxfce4util
libxfce4windowing
libwnck
xfconf
polkit
iceauth
];
configureFlags = [ "--with-xsession-prefix=${placeholder "out"}" ];
configureFlags = [
"--with-xsession-prefix=${placeholder "out"}"
"--with-wayland-session-prefix=${placeholder "out"}"
];
passthru.xinitrc = "${xfce4-session}/etc/xdg/xfce4/xinitrc";
@@ -1,8 +1,10 @@
{ lib
, mkXfceDerivation
, wayland-scanner
, exo
, garcon
, gtk3
, gtk-layer-shell
, glib
, libnotify
, libxfce4ui
@@ -12,6 +14,7 @@
# Disabled by default on upstream and actually causes issues:
# https://gitlab.xfce.org/xfce/xfce4-settings/-/issues/222
, withUpower ? false
, wlr-protocols
, xfconf
, xf86inputlibinput
, colord
@@ -21,19 +24,25 @@
mkXfceDerivation {
category = "xfce";
pname = "xfce4-settings";
version = "4.18.6";
version = "4.20.0";
sha256 = "sha256-xiu26B3dbWu+/AtF/iUC6Wo2U5ZZyzN9RfdbBaQRJ1M=";
sha256 = "sha256-0fMuAucyxLr2VzQqAB0CL+HgkHNJctiVNZmUmTNzaPc=";
nativeBuildInputs = [
wayland-scanner
];
buildInputs = [
exo
garcon
glib
gtk3
gtk-layer-shell
libnotify
libxfce4ui
libxfce4util
libxklavier
wlr-protocols
xf86inputlibinput
xfconf
]
+2 -2
View File
@@ -8,9 +8,9 @@
mkXfceDerivation {
category = "xfce";
pname = "xfconf";
version = "4.18.3";
version = "4.20.0";
sha256 = "sha256-Iu/LHyk/lOvu8uJuJRDxIkabiX0vZB4H99vVKRiugVo=";
sha256 = "sha256-U+Sk7ubBr1ZD1GLQXlxrx0NQdhV/WpVBbnLcc94Tjcw=";
nativeBuildInputs = [ gobject-introspection vala ];
+20 -4
View File
@@ -1,21 +1,37 @@
{ lib, mkXfceDerivation, exo, gtk3, libxfce4ui, libxfce4util, libwnck, xfconf, libnotify, garcon, thunar }:
{
lib,
mkXfceDerivation,
exo,
gtk3,
libxfce4ui,
libxfce4util,
libxfce4windowing,
libyaml,
xfconf,
libnotify,
garcon,
gtk-layer-shell,
thunar,
}:
mkXfceDerivation {
category = "xfce";
pname = "xfdesktop";
version = "4.18.1";
version = "4.20.0";
sha256 = "sha256-33G7X5kA3MCNJ9Aq9ZCafP0Qm/46iUmLFB8clhKwDz8=";
sha256 = "sha256-80g3lk1TkQI0fbYf2nXs36TrPlaGTHgH6k/TGOzRd3w=";
buildInputs = [
exo
gtk3
libxfce4ui
libxfce4util
libwnck
libxfce4windowing
libyaml
xfconf
libnotify
garcon
gtk-layer-shell
thunar
];
+2 -2
View File
@@ -5,9 +5,9 @@
mkXfceDerivation {
category = "xfce";
pname = "xfwm4";
version = "4.18.0";
version = "4.20.0";
sha256 = "sha256-nTPgxC0XMBJ48lPCeQgCvWWK1/2ZIoQOYsMeaxDpE1c=";
sha256 = "sha256-5UZQrAH0oz+G+7cvXCLDJ4GSXNJcyl4Ap9umb7h0f5Q=";
nativeBuildInputs = [ exo librsvg ];
+1 -5
View File
@@ -61,11 +61,7 @@ makeScopeWithSplicing' {
xfce4-appfinder = callPackage ./core/xfce4-appfinder { };
xfce4-dev-tools = callPackage ./core/xfce4-dev-tools {
mkXfceDerivation = self.mkXfceDerivation.override {
xfce4-dev-tools = null;
};
};
xfce4-dev-tools = callPackage ./core/xfce4-dev-tools { };
#### APPLICATIONS
@@ -3,32 +3,33 @@
, cairo
, glib
, gtk3
, gtk-layer-shell
, libX11
, libxfce4ui
, libxfce4util
, xfce4-panel
, libwnck
, libxfce4windowing
}:
mkXfceDerivation {
category = "panel-plugins";
pname = "xfce4-docklike-plugin";
version = "0.4.2";
sha256 = "sha256-M/V8cnEU/nSEDjQ3k8fWiklF5OuNg3uzzJMHBSZBiLU=";
version = "0.4.2-unstable-2024-11-04";
rev = "1154bf1c9f291d5699663910d5aac71bb3ab2227";
sha256 = "sha256-uno3qNyuesK/hJMdAxHZS6XMysr7ySOgJ5ACXGcIWFs=";
buildInputs = [
cairo
glib
gtk3
gtk-layer-shell
libX11
libxfce4ui
libxfce4util
xfce4-panel
libwnck
libxfce4windowing
];
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
meta = with lib; {
homepage = "https://docs.xfce.org/panel-plugins/xfce4-docklike-plugin/start";
description = "Modern, minimalist taskbar for Xfce";
@@ -7,6 +7,7 @@
, libnotify
, libxfce4ui
, libxfce4util
, libxfce4windowing
, xfce4-panel
, xfconf
, keybinder3
@@ -16,12 +17,8 @@
mkXfceDerivation {
category = "panel-plugins";
pname = "xfce4-pulseaudio-plugin";
version = "0.4.8";
sha256 = "sha256-7vcjARm0O+/hVNFzOpxcgAnqD+wRNg5/eqXLcq4t/iU=";
postPatch = ''
substituteInPlace configure.ac.in --replace gio-2.0 gio-unix-2.0
'';
version = "0.4.9";
sha256 = "sha256-bJp4HicAFPuRATDHus0DfJFy1c6gw6Tkpd2UN7SXqsI=";
buildInputs = [
exo
@@ -33,6 +30,7 @@ mkXfceDerivation {
libpulseaudio
libxfce4ui
libxfce4util
libxfce4windowing
xfce4-panel
xfconf
];
@@ -9,6 +9,7 @@ runCommand "llvm-binutils-${version}"
passthru = {
isLLVM = true;
inherit targetPrefix;
inherit llvm lld;
};
}
(''
@@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
inherit version patches;
# Blank llvm dir just so relative path works
src = runCommand "bolt-src-${finalAttrs.version}" { } (
src = runCommand "bolt-src-${finalAttrs.version}" { inherit (monorepoSrc) passthru; } (
''
mkdir $out
''
@@ -22,7 +22,7 @@ let
pname = "clang";
src' = if monorepoSrc != null then
runCommand "${pname}-src-${version}" {} (''
runCommand "${pname}-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out"
'' + lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -56,10 +56,11 @@ rec {
else
"llvmorg-${releaseInfo.version}";
in
fetchFromGitHub {
fetchFromGitHub rec {
owner = "llvm";
repo = "llvm-project";
inherit rev sha256;
passthru = { inherit owner repo rev; };
};
}
@@ -47,7 +47,7 @@ let
pname = baseName + lib.optionalString (haveLibc) "-libc";
src' = if monorepoSrc != null then
runCommand "${baseName}-src-${version}" {} (''
runCommand "${baseName}-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out"
'' + lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
pname = "libclc";
inherit version;
src = runCommand "${pname}-src-${version}" { } (
src = runCommand "${pname}-src-${version}" { inherit (monorepoSrc) passthru; } (
''
mkdir -p "$out"
''
@@ -34,7 +34,7 @@ let
useLLVM = stdenv.hostPlatform.useLLVM or false;
src' = if monorepoSrc != null then
runCommand "${pname}-src-${version}" {} (''
runCommand "${pname}-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out/llvm"
'' + (lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -17,7 +17,7 @@
let
pname = "libunwind";
src' = if monorepoSrc != null then
runCommand "${pname}-src-${version}" {} (''
runCommand "${pname}-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out"
'' + lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -18,7 +18,7 @@ let
pname = "lld";
src' =
if monorepoSrc != null then
runCommand "lld-src-${version}" {} (''
runCommand "lld-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out"
'' + lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -30,7 +30,7 @@
let
src' =
if monorepoSrc != null then
runCommand "lldb-src-${version}" { } (''
runCommand "lldb-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out"
'' + lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -81,7 +81,7 @@ let
# TODO: simplify versionAtLeast condition for cmake and third-party via rebuild
src' = if monorepoSrc != null then
runCommand "${pname}-src-${version}" {} (''
runCommand "${pname}-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out"
'' + lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
inherit version doCheck;
# Blank llvm dir just so relative path works
src = runCommand "${pname}-src-${version}" { } (''
src = runCommand "${pname}-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out"
'' + lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -21,7 +21,7 @@ let
pname = "openmp";
src' =
if monorepoSrc != null then
runCommand "${pname}-src-${version}" {} (''
runCommand "${pname}-src-${version}" { inherit (monorepoSrc) passthru; } (''
mkdir -p "$out"
'' + lib.optionalString (lib.versionAtLeast release_version "14") ''
cp -r ${monorepoSrc}/cmake "$out"
@@ -14,7 +14,7 @@ from datetime import datetime
from urllib.request import urlopen, Request
DEFAULT_NIX = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'git/default.nix')
DEFAULT_NIX = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'default.nix')
def get_latest_chromium_build():
@@ -43,7 +43,7 @@ def get_current_revision():
"""Get the current revision of llvmPackages_git."""
with open(DEFAULT_NIX) as f:
for line in f:
rev = re.search(r'^ rev = "(.*)";', line)
rev = re.search(r'^ rev = "(.*)";', line)
if rev:
return rev.group(1)
sys.exit(1)
@@ -75,12 +75,13 @@ hash = nix_prefetch_url(f'https://github.com/llvm/llvm-project/archive/{commit["
print('Updating default.nix...')
with fileinput.FileInput(DEFAULT_NIX, inplace=True) as f:
for line in f:
if match := re.search(r'^ rev-version = "unstable-(.+)";', line):
if match := re.search(r'^ rev-version = "unstable-(.+)";', line):
old_date = match.group(1)
result = re.sub(r'^ version = ".+";', f' version = "{release_version}";', line)
result = re.sub(r'^ rev = ".*";', f' rev = "{commit["sha"]}";', result)
result = re.sub(r'^ rev-version = ".+";', f' rev-version = "{version}";', result)
result = re.sub(r'^ sha256 = ".+";', f' sha256 = "{hash}";', result)
result = line
result = re.sub(r'^ version = ".+";', f' version = "{release_version}";', result)
result = re.sub(r'^ rev = ".*";', f' rev = "{commit["sha"]}";', result)
result = re.sub(r'^ rev-version = ".+";', f' rev-version = "{version}";', result)
result = re.sub(r'^ sha256 = ".+";', f' sha256 = "{hash}";', result)
print(result, end='')
# Commit the result:
commit_message = f"llvmPackages_git: {old_date} -> {date}"
@@ -1,4 +1,6 @@
{
config,
lib,
stdenv,
callPackage,
AVFoundation,
@@ -47,8 +49,6 @@
gst-plugins-ugly = callPackage ./ugly { inherit CoreFoundation DiskArbitration IOKit; };
gst-plugins-viperfx = callPackage ./viperfx { };
gst-plugins-rs = callPackage ./rs { inherit Security SystemConfiguration; };
gst-rtsp-server = callPackage ./rtsp-server { };
@@ -71,3 +71,6 @@
# note: gst-python is in ../../python-modules/gst-python - called under python3Packages
}
// lib.optionalAttrs config.allowAliases {
gst-plugins-viperfx = throw "'gst_all_1.gst-plugins-viperfx' was removed as it is broken and not maintained upstream"; # Added 2024-12-16
}
@@ -1,46 +0,0 @@
{
lib,
stdenv,
fetchFromGitHub,
pkg-config,
wrapGAppsHook3,
gst_all_1,
cmake,
}:
stdenv.mkDerivation rec {
pname = "gst-plugins-viperfx";
version = "unstable-2020-9-20";
src = fetchFromGitHub {
owner = "Audio4Linux";
repo = "gst-plugin-viperfx";
rev = "a5c1b03dfe1ab0822b717a5f9392e9f1237fdba0";
sha256 = "sha256-0so4jV56nl3tZHuZpvtyMrpOZ4tNJ59Pyj6zbV5bJ5Y=";
};
nativeBuildInputs = [
cmake
pkg-config
wrapGAppsHook3
];
propagatedBuildInputs = [
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
];
installPhase = ''
runHook preInstall
install -D libgstviperfx.so $out/lib/gstreamer-1.0/libgstviperfx.so
install -D $src/COPYING $out/share/licenses/gst-plugins-viperfx/LICENSE
runHook postInstall
'';
meta = with lib; {
description = "ViPER FX core wrapper plug-in for GStreamer1";
homepage = "https://github.com/Audio4Linux/gst-plugin-viperfx";
license = licenses.unfreeRedistributable;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ rewine ];
};
}
@@ -2,6 +2,7 @@
lib,
buildPythonPackage,
fetchFromGitHub,
fetchpatch2,
poetry-core,
pytestCheckHook,
pythonOlder,
@@ -30,6 +31,15 @@ buildPythonPackage rec {
ixia
];
patches = [
# https://github.com/trag1c/oddsprout/pull/8
(fetchpatch2 {
name = "allow-periods-in-path.patch";
url = "https://github.com/trag1c/oddsprout/commit/59713a797e7748d48f59f92397981c93a81f2c28.patch";
hash = "sha256-GAIQQi5s4D6KbTSgmP2hlBizLATxtJ/hzpWqPX4O0U4=";
})
];
# has one test `test_main_recursion_error`
# that has a very low (~1%) but nonzero chance to fail,
# this is known upstream (https://github.com/trag1c/oddsprout/issues/5)
@@ -35,7 +35,7 @@
buildPythonPackage rec {
pname = "openai";
version = "1.56.1";
version = "1.57.4";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -44,7 +44,7 @@ buildPythonPackage rec {
owner = "openai";
repo = "openai-python";
rev = "refs/tags/v${version}";
hash = "sha256-0rbngHNZv2qU87P2HplM4opojUdQXugazaJHHy8smmA=";
hash = "sha256-djYvHEIieJPak8EY7c5hhMhTzxm/Prc4RSfrFjzHqI4=";
};
build-system = [
@@ -1,36 +1,45 @@
{
lib,
fetchFromGitHub,
buildPythonPackage,
unittestCheckHook,
fetchPypi,
pythonOlder,
glibcLocales,
setuptools,
setuptools-scm,
importlib-metadata,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "pystache";
version = "0.6.5";
format = "setuptools";
version = "0.6.6";
pyproject = true;
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
hash = "sha256-nyONWgbxiEPg1JHY5OKS3AP+1qVMsKXDS+N6P6qXMXQ=";
src = fetchFromGitHub {
owner = "PennyDreadfulMTG";
repo = "pystache";
tag = "v${version}";
hash = "sha256-E6y7r68mfXVoNgsTBqyo561dVOjq1fL73SqSFM32oeQ=";
};
LC_ALL = "en_US.UTF-8";
build-system = [
setuptools
setuptools-scm
];
buildInputs = [ glibcLocales ];
dependencies = lib.optionals (pythonOlder "3.10") [
importlib-metadata
];
nativeCheckInputs = [ unittestCheckHook ];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "pystache" ];
meta = with lib; {
meta = {
description = "Framework-agnostic, logic-free templating system inspired by ctemplate and et";
homepage = "https://github.com/defunkt/pystache";
license = licenses.mit;
maintainers = [ ];
license = lib.licenses.mit;
maintainers = [ lib.maintainers.nickcao ];
};
}
+10 -6
View File
@@ -1,14 +1,18 @@
{
"asterisk_18": {
"sha256": "70af95d1067a5afec7acbf98a242d853ae5dc8637c8f20d1f30d0dcf96eadb29",
"version": "18.24.3"
"sha256": "5da6fbd94f668115ae85aabf484a8b584faac72d75ed98bbb2bb800eeb17db3e",
"version": "18.26.0"
},
"asterisk_20": {
"sha256": "3d3d3c558f0ca9c3209a6aa7c561c2b85a1ab1b4099d4995f33c917b4cff9ee4",
"version": "20.9.3"
"sha256": "69325bf5ae0b38b361c9fd2f936fafdf2387be9812e857bdeb379cbec252bcca",
"version": "20.11.0"
},
"asterisk_21": {
"sha256": "bd9f492d3a9e6a5c9f0a69440402be61285d14df9dc7049377f29f9cbecfeeda",
"version": "21.4.3"
"sha256": "a46e22478b891b2e6d7ce9ba7b1908c6a7f1c4095c013d95415864da80ab2831",
"version": "21.6.0"
},
"asterisk_22": {
"sha256": "c892e9a51919d62bee2bed8b7c6f59ec79dfd48768ae289df61dba2da83f4413",
"version": "22.1.0"
}
}
+2 -2
View File
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "mtools";
version = "4.0.45";
version = "4.0.46";
src = fetchurl {
url = "mirror://gnu/mtools/${pname}-${version}.tar.bz2";
hash = "sha256-CwCKlr0O/g5UL6Q4PUaa9mvEqTOUmQsQNzCoFgpn1hg=";
hash = "sha256-mq2N2Fn4j7d4eSTsR1kBktOr97rWyEBQnIVCkNa8FsA=";
};
patches = lib.optional stdenv.hostPlatform.isDarwin ./UNUSED-darwin.patch;
+4
View File
@@ -1373,6 +1373,9 @@ mapAliases {
vim_configurable = vim-full; # Added 2022-12-04
vinagre = throw "'vinagre' has been removed as it has been archived upstream. Consider using 'gnome-connections' or 'remmina' instead"; # Added 2024-09-14
vinegar = throw "'vinegar' was removed due to being blocked by Roblox, rendering the package useless"; # Added 2024-08-23
libviperfx = throw "'libviperfx' was removed as it is broken and not maintained upstream"; # Added 2024-12-16
viper4linux-gui = throw "'viper4linux-gui' was removed as it is broken and not maintained upstream"; # Added 2024-12-16
viper4linux = throw "'viper4linux' was removed as it is broken and not maintained upstream"; # Added 2024-12-16
virtscreen = throw "'virtscreen' has been removed, as it was broken and unmaintained"; # Added 2024-10-17
vkBasalt = vkbasalt; # Added 2022-11-22
vkdt-wayland = vkdt; # Added 2024-04-19
@@ -1438,6 +1441,7 @@ mapAliases {
### Y ###
yacc = throw "'yacc' has been renamed to/replaced by 'bison'"; # Converted to throw 2024-10-17
yesplaymusic = throw "YesPlayMusic has been removed as it was broken, unmaintained, and used deprecated Node and Electron versions"; # Added 2024-12-13
yafaray-core = libyafaray; # Added 2022-09-23
youtrack_2022_3 = throw "'youtrack_2022_3' has been removed as it was deprecated. Please update to the 'youtrack' package."; # Added 2024-10-17
yrd = throw "'yrd' has been removed, as it was broken and unmaintained"; # added 2024-05-27
-2
View File
@@ -15949,8 +15949,6 @@ with pkgs;
else null;
};
viper4linux-gui = libsForQt5.callPackage ../applications/audio/viper4linux-gui { };
vlc-bin-universal = vlc-bin.override { variant = "universal"; };
libvlc = vlc.override {