push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
{
lib,
stdenv,
fetchFromGitHub,
installShellFiles,
makeWrapper,
nixosTests,
python3,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wsdd";
version = "0.9";
src = fetchFromGitHub {
owner = "christgau";
repo = "wsdd";
tag = "v${finalAttrs.version}";
hash = "sha256-i3+Mw1l/kTRQT/CxRKvaEfdEh2qcEQp1Wa90Vk3JUMM=";
};
outputs = [
"out"
"man"
];
nativeBuildInputs = [
installShellFiles
makeWrapper
];
buildInputs = [ python3 ];
installPhase = ''
install -Dm0555 src/wsdd.py $out/bin/wsdd
installManPage man/wsdd.8
wrapProgram $out/bin/wsdd --prefix PYTHONPATH : "$PYTHONPATH"
'';
passthru = {
tests.samba-wsdd = nixosTests.samba-wsdd;
};
meta = {
homepage = "https://github.com/christgau/wsdd";
description = "Web Service Discovery (WSD) host daemon for SMB/Samba";
maintainers = with lib.maintainers; [ izorkin ];
license = lib.licenses.mit;
platforms = lib.platforms.all;
mainProgram = "wsdd";
};
})

View File

@@ -0,0 +1,66 @@
{
lib,
stdenv,
fetchFromGitHub,
meson,
pkg-config,
wayland-scanner,
ninja,
cairo,
libinput,
pango,
wayland,
wayland-protocols,
libxkbcommon,
}:
stdenv.mkDerivation {
pname = "wshowkeys-unstable";
version = "2021-08-01";
src = fetchFromGitHub {
owner = "ammgws";
repo = "wshowkeys";
rev = "e8bfc78f08ebdd1316daae59ecc77e62bba68b2b";
hash = "sha256-/HvNCQWsXOJZeCxHWmsLlbBDhBzF7XP/SPLdDiWMDC4=";
};
strictDeps = true;
nativeBuildInputs = [
meson
pkg-config
wayland-scanner
ninja
];
buildInputs = [
cairo
libinput
pango
wayland
wayland-protocols
libxkbcommon
];
meta = {
description = "Displays keys being pressed on a Wayland session";
longDescription = ''
Displays keypresses on screen on supported Wayland compositors (requires
wlr_layer_shell_v1 support).
Note: This tool requires root permissions to read input events, but these
permissions are dropped after startup. The NixOS module provides such a
setuid binary (use "programs.wshowkeys.enable = true;").
'';
homepage = "https://github.com/ammgws/wshowkeys";
license = with lib.licenses; [
gpl3Only
mit
];
# Some portions of the code are taken from Sway which is MIT licensed.
# TODO: gpl3Only or gpl3Plus (ask upstream)?
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [
berbiche
];
mainProgram = "wshowkeys";
};
}

View File

@@ -0,0 +1,33 @@
{
lib,
fetchzip,
wsjtx,
}:
wsjtx.overrideAttrs (
finalAttrs: old: {
pname = "wsjtz";
version = "2.7.0-rc7-1.48";
src = fetchzip {
url = "mirror://sourceforge/wsjt-z/Source/wsjtz-${finalAttrs.version}.zip";
hash = "sha256-8PHbBlF0MtIgLn4HCFkbGivy8vBwg7NbvjMLaRj+4nI=";
};
postInstall = ''
mv $out/bin/wsjtx $out/bin/wsjtz
mv $out/bin/wsjtx_app_version $out/bin/wsjtz_app_version
'';
meta = {
description = "WSJT-X fork, primarily focused on automation and enhanced functionality";
homepage = "https://sourceforge.net/projects/wsjt-z/";
license = lib.licenses.gpl3Only;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [
scd31
];
mainProgram = "wsjtz";
};
}
)

View File

@@ -0,0 +1,34 @@
{
lib,
stdenv,
fetchFromGitHub,
installShellFiles,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wsl-open";
version = "2.2.1";
src = fetchFromGitHub {
owner = "4U6U57";
repo = "wsl-open";
tag = "v${finalAttrs.version}";
hash = "sha256-amqkDXdgIqGjRZMkltwco0UAI++G0RY/MxLXwtlxogE=";
};
nativeBuildInputs = [ installShellFiles ];
installPhase = ''
install -m0755 -D wsl-open.sh $out/bin/wsl-open
installManPage wsl-open.1
'';
meta = {
description = "Open files with xdg-open from Windows Subsystem for Linux (WSL) in Windows applications";
homepage = "https://gitlab.com/4U6U57/wsl-open";
license = lib.licenses.mit;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ SuperSandro2000 ];
mainProgram = "wsl-open";
};
})

View File

@@ -0,0 +1,86 @@
{
lib,
resholve,
fetchFromGitHub,
# Runtime dependencies
coreutils,
dnsutils,
gawk,
gnugrep,
gvproxy,
iproute2,
iptables,
iputils,
wget,
}:
let
version = "0.4.1";
gvproxyWin = gvproxy.overrideAttrs (_: {
buildPhase = ''
GOARCH=amd64 GOOS=windows go build -ldflags '-s -w' -o bin/gvproxy-windows.exe ./cmd/gvproxy
'';
});
in
resholve.mkDerivation {
pname = "wsl-vpnkit";
inherit version;
src = fetchFromGitHub {
owner = "sakai135";
repo = "wsl-vpnkit";
tag = "v${version}";
hash = "sha256-Igbr3L2W32s4uBepllSz07bkbI3qwAKMZkBrXLqGrGA=";
};
postPatch = ''
substituteInPlace wsl-vpnkit \
--replace "/app/wsl-vm" "${gvproxy}/bin/gvforwarder" \
--replace "/app/wsl-gvproxy.exe" "${gvproxyWin}/bin/gvproxy-windows.exe"
'';
installPhase = ''
mkdir -p $out/bin
cp wsl-vpnkit $out/bin
'';
solutions.wsl-vpnkit = {
scripts = [ "bin/wsl-vpnkit" ];
interpreter = "none";
inputs = [
coreutils
dnsutils
gawk
gnugrep
iproute2
iptables
iputils
wget
];
keep = {
"$VMEXEC_PATH" = true;
"$GVPROXY_PATH" = true;
};
execer = [
"cannot:${iproute2}/bin/ip"
"cannot:${wget}/bin/wget"
];
fix = {
aliases = true;
ping = "${iputils}/bin/ping";
};
};
meta = {
description = "Provides network connectivity to Windows Subsystem for Linux (WSL) when blocked by VPN";
homepage = "https://github.com/sakai135/wsl-vpnkit";
changelog = "https://github.com/sakai135/wsl-vpnkit/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ terlar ];
mainProgram = "wsl-vpnkit";
};
}

View File

@@ -0,0 +1,53 @@
{
stdenv,
lib,
fetchFromGitHub,
pkg-config,
cunit,
sphinx,
autoreconfHook,
nettle,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wslay";
version = "1.1.1";
src = fetchFromGitHub {
owner = "tatsuhiro-t";
repo = "wslay";
tag = "release-${finalAttrs.version}";
hash = "sha256-xKQGZO5hNzMg+JYKeqOBsu73YO+ucBEOcNhG8iSNYvA=";
};
postPatch = ''
substituteInPlace doc/sphinx/conf.py.in \
--replace-fail "add_stylesheet" "add_css_file"
'';
strictDeps = true;
nativeBuildInputs = [
autoreconfHook
pkg-config
sphinx
];
buildInputs = [ nettle ];
doCheck = true;
checkInputs = [ cunit ];
preCheck = lib.optionalString stdenv.hostPlatform.isDarwin ''
export DYLD_LIBRARY_PATH=$(pwd)/lib/.libs
'';
meta = {
homepage = "https://tatsuhiro-t.github.io/wslay/";
description = "WebSocket library in C";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ pingiun ];
platforms = lib.platforms.unix;
};
})

View File

@@ -0,0 +1,22 @@
diff --git a/src/wslu-header b/src/wslu-header
index 5f33925..159c6af 100644
--- a/src/wslu-header
+++ b/src/wslu-header
@@ -169,11 +169,17 @@ if [ -f "$HOME/.config/wslu/conf" ]; then
debug_echo "$HOME/.config/wslu/conf found, sourcing"
source "$HOME/.config/wslu/conf"
fi
+
if [ -f "$HOME/.wslurc" ]; then
debug_echo "$HOME/.wslurc found, sourcing"
source "$HOME/.wslurc"
fi
+if [ -f "@out@/share/wslu/conf" ]; then
+ debug_echo "@out@/share/wslu/conf found, sourcing"
+ source "@out@/share/wslu/conf"
+fi
+
# functions
function help {

View File

@@ -0,0 +1,45 @@
{
lib,
stdenv,
fetchFromGitHub,
copyDesktopItems,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wslu";
version = "4.1.4";
src = fetchFromGitHub {
owner = "wslutilities";
repo = "wslu";
tag = "v${finalAttrs.version}";
hash = "sha256-ssiwYkQg2rOirC/ZZVq2bJm4Ggc364uRkoS2y365Eb0=";
};
nativeBuildInputs = [ copyDesktopItems ];
patches = [
./fallback-conf-nix-store.diff
];
postPatch = ''
substituteInPlace src/wslu-header \
--subst-var out
substituteInPlace src/etc/wslview.desktop \
--replace-fail /usr/bin/wslview wslview
'';
makeFlags = [
"DESTDIR=$(out)"
"PREFIX="
];
meta = {
description = "Collection of utilities for Windows Subsystem for Linux";
homepage = "https://github.com/wslutilities/wslu";
changelog = "https://github.com/wslutilities/wslu/releases/tag/v${finalAttrs.version}";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ jamiemagee ];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,52 @@
{
stdenv,
fetchFromGitHub,
autoreconfHook,
pkg-config,
openssl,
openwsman,
}:
stdenv.mkDerivation rec {
pname = "wsmancli";
version = "2.8.0";
src = fetchFromGitHub {
owner = "Openwsman";
repo = "wsmancli";
tag = "v${version}";
hash = "sha256-pTA5p5+Fuiw2lQaaSKnp/29HMy8NZNTFwP5K/+sJ9OU=";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
openwsman
openssl
];
postPatch = ''
touch AUTHORS NEWS README
'';
meta = {
description = "Openwsman command-line client";
longDescription = ''
Openwsman provides a command-line tool, wsman, to perform basic
operations on the command-line. These operations include Get, Put,
Invoke, Identify, Delete, Create, and Enumerate. The command-line tool
also has several switches to allow for optional features of the
WS-Management specification and Testing.
'';
downloadPage = "https://github.com/Openwsman/wsmancli/releases";
inherit (openwsman.meta)
homepage
license
maintainers
platforms
;
};
}

View File

@@ -0,0 +1,56 @@
{
lib,
python3Packages,
fetchFromGitHub,
nix-update-script,
}:
python3Packages.buildPythonApplication rec {
pname = "wsrepl";
version = "0.2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "doyensec";
repo = "wsrepl";
tag = "v${version}";
hash = "sha256-Y96p39TjpErGsR5vFS0NxEF/2Tnr2Zk7ULDgNXaXx9o=";
};
pythonRelaxDeps = [
"rich"
"textual"
];
build-system = with python3Packages; [
poetry-core
];
dependencies = with python3Packages; [
pygments
pyperclip
rich
textual
websocket-client
];
# Project has no tests
doCheck = false;
pythonImportsCheck = [
"wsrepl"
];
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "WebSocket REPL";
homepage = "https://github.com/doyensec/wsrepl";
changelog = "https://github.com/doyensec/wsrepl/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "wsrepl";
};
}

View File

@@ -0,0 +1,54 @@
{
lib,
fetchFromGitHub,
rustPlatform,
nixosTests,
nix-update-script,
versionCheckHook,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "wstunnel";
version = "10.4.4";
src = fetchFromGitHub {
owner = "erebe";
repo = "wstunnel";
tag = "v${finalAttrs.version}";
hash = "sha256-byJli3L5/ZBLD6oIBK8yDiA70eWeN3tjiLDaw3QEN4U=";
};
cargoHash = "sha256-K8ury524O27N27F0iOXDAAQnzFgeSX7ArkZOchsroLE=";
cargoBuildFlags = [ "--package wstunnel-cli" ];
nativeBuildInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
doInstallCheck = true;
checkFlags = [
# Tries to launch a test container
"--skip=tcp::tests::test_proxy_connection"
"--skip=protocols::tcp::server::tests::test_proxy_connection"
];
passthru = {
updateScript = nix-update-script { };
tests = {
nixosTest = nixosTests.wstunnel;
};
};
meta = {
description = "Tunnel all your traffic over Websocket or HTTP2 - Bypass firewalls/DPI";
homepage = "https://github.com/erebe/wstunnel";
changelog = "https://github.com/erebe/wstunnel/releases/tag/v${finalAttrs.version}";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [
raylas
rvdp
neverbehave
];
mainProgram = "wstunnel";
};
})

View File

@@ -0,0 +1,43 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 31e8048..b21f6f4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -5,12 +5,7 @@ set(CMAKE_CXX_STANDARD 17)
find_package(PkgConfig)
include(FetchContent)
-FetchContent_Declare(
- spdlog
- GIT_REPOSITORY https://github.com/gabime/spdlog.git
- GIT_TAG v1.10.0
-)
-FetchContent_MakeAvailable(spdlog)
+find_package(spdlog REQUIRED)
pkg_check_modules(GTKMM REQUIRED gtkmm-3.0)
find_package(X11 REQUIRED)
@@ -19,4 +14,10 @@ link_directories(${GTKMM_LIBRARY_DIRS})
include_directories(${GTKMM_INCLUDE_DIRS} ${X11_INCLUDE_DIR})
add_executable(WSysMon src/main.cpp src/ui/MainWindow.cpp src/ui/widgets/GraphWidget.cpp src/ui/widgets/PerformanceButton.cpp src/ui/views/ProcessesView.cpp src/ui/views/PerformanceView.cpp src/ui/views/performance/PerformanceCPUView.cpp src/ui/views/performance/PerformanceGPUView.cpp src/ui/views/performance/PerformanceNetworkView.cpp src/ui/views/performance/PerformanceRAMView.cpp src/utils/DispatcherThread.cpp src/utils/UnitConverter.cpp src/utils/X11Utils.cpp src/api/process/ProcessManager.cpp src/api/process/ProcessNode.cpp src/api/linux/ProcessesApi.cpp src/api/linux/GPUApi.cpp src/api/linux/NetworkApi.cpp src/api/linux/SystemInfoApi.cpp src/api/DiskApi.h src/api/linux/DiskApi.cpp src/ui/views/performance/PerformanceDiskView.cpp src/ui/views/performance/PerformanceDiskView.h src/api/linux/gpu/nvml.h src/api/linux/gpu/nvml_hook_funcs.inl src/api/linux/gpu/NvGpuApi.cpp src/api/linux/gpu/NvGpuApi.h src/api/HwMonApi.h src/api/linux/HwMonApi.cpp)
-target_link_libraries(WSysMon PRIVATE spdlog::spdlog pthread procps ${CMAKE_DL_LIBS} ${GTKMM_LIBRARIES} ${X11_LIBRARIES})
+target_link_libraries(WSysMon PRIVATE spdlog::spdlog pthread ${CMAKE_DL_LIBS} ${GTKMM_LIBRARIES} ${X11_LIBRARIES})
+
+install(
+ TARGETS
+ WSysMon
+ RUNTIME DESTINATION bin
+)
diff --git a/src/api/process/ProcessManager.h b/src/api/process/ProcessManager.h
index 44989f4..2e98963 100644
--- a/src/api/process/ProcessManager.h
+++ b/src/api/process/ProcessManager.h
@@ -5,8 +5,6 @@
#include <map>
#include <vector>
-#include <proc/readproc.h>
-
#include "ProcessNode.h"
#include "../ProcessesApi.h"

View File

@@ -0,0 +1,50 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
pkg-config,
gtkmm3,
gtk3,
spdlog,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wsysmon";
version = "0.1.0";
src = fetchFromGitHub {
owner = "slyfabi";
repo = "wsysmon";
tag = finalAttrs.version;
hash = "sha256-5kfZT+hm064qXoAzi0RdmUqXi8VaXamlbm+FJOrGh3A=";
};
patches = [
# - Dynamically link spdlog
# - Remove dependency on procps (had a newer version than this package expected)
# - See https://github.com/SlyFabi/WSysMon/issues/4 for the issue about procps and why it could be removed
# - Add an installPhase
./fix-deps-and-add-install.patch
];
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
gtkmm3
gtk3
spdlog
];
meta = {
description = "Windows task manager clone for Linux";
homepage = "https://github.com/SlyFabi/WSysMon";
license = lib.licenses.mit;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ totoroot ];
mainProgram = "WSysMon";
};
})