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,2 @@
---
BUNDLE_NO_INSTALL: true

View File

@@ -0,0 +1,3 @@
source "https://rubygems.org"
gem 'pt'

View File

@@ -0,0 +1,69 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.6.0)
public_suffix (>= 2.0.2, < 4.0)
axiom-types (0.1.1)
descendants_tracker (~> 0.0.4)
ice_nine (~> 0.11.0)
thread_safe (~> 0.3, >= 0.3.1)
coercible (1.0.0)
descendants_tracker (~> 0.0.1)
colored (1.2)
declarative (0.0.10)
declarative-option (0.1.0)
descendants_tracker (0.0.4)
thread_safe (~> 0.3, >= 0.3.1)
equalizer (0.0.11)
excon (0.64.0)
faraday (0.9.2)
multipart-post (>= 1.2, < 3)
faraday_middleware (0.13.1)
faraday (>= 0.7.4, < 1.0)
highline (2.0.2)
hirb (0.7.3)
hirb-unicode (0.0.5)
hirb (~> 0.5)
unicode-display_width (~> 0.1.1)
ice_nine (0.11.2)
multi_json (1.13.1)
multipart-post (2.0.0)
pt (0.10.0)
colored (~> 1.2)
highline
hirb (~> 0.7, >= 0.7.3)
hirb-unicode (~> 0.0.5, >= 0.0.5)
thor
tracker_api (~> 1.6.0)
public_suffix (3.0.3)
representable (3.0.4)
declarative (< 0.1.0)
declarative-option (< 0.2.0)
uber (< 0.2.0)
thor (0.20.3)
thread_safe (0.3.6)
tracker_api (1.6.0)
addressable
equalizer
excon
faraday (~> 0.9.0)
faraday_middleware
multi_json
representable
virtus
uber (0.1.0)
unicode-display_width (0.1.1)
virtus (1.0.5)
axiom-types (~> 0.1)
coercible (~> 1.0)
descendants_tracker (~> 0.0, >= 0.0.3)
equalizer (~> 0.0, >= 0.0.9)
PLATFORMS
ruby
DEPENDENCIES
pt
BUNDLED WITH
2.1.4

View File

@@ -0,0 +1,305 @@
{
addressable = {
dependencies = [ "public_suffix" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0bcm2hchn897xjhqj9zzsxf3n9xhddymj4lsclz508f4vw3av46l";
type = "gem";
};
version = "2.6.0";
};
axiom-types = {
dependencies = [
"descendants_tracker"
"ice_nine"
"thread_safe"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "10q3k04pll041mkgy0m5fn2b1lazm6ly1drdbcczl5p57lzi3zy1";
type = "gem";
};
version = "0.1.1";
};
coercible = {
dependencies = [ "descendants_tracker" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1p5azydlsz0nkxmcq0i1gzmcfq02lgxc4as7wmf47j1c6ljav0ah";
type = "gem";
};
version = "1.0.0";
};
colored = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0b0x5jmsyi0z69bm6sij1k89z7h0laag3cb4mdn7zkl9qmxb90lx";
type = "gem";
};
version = "1.2";
};
declarative = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0642xvwzzbgi3kp1bg467wma4g3xqrrn0sk369hjam7w579gnv5j";
type = "gem";
};
version = "0.0.10";
};
declarative-option = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1g4ibxq566f1frnhdymzi9hxxcm4g2gw4n21mpjk2mhwym4q6l0p";
type = "gem";
};
version = "0.1.0";
};
descendants_tracker = {
dependencies = [ "thread_safe" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "15q8g3fcqyb41qixn6cky0k3p86291y7xsh1jfd851dvrza1vi79";
type = "gem";
};
version = "0.0.4";
};
equalizer = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
type = "gem";
};
version = "0.0.11";
};
excon = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0vcplvlykirg2vc56jjxavgpkllzq26xgp7ind7wc5ikaqaz64gn";
type = "gem";
};
version = "0.64.0";
};
faraday = {
dependencies = [ "multipart-post" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1kplqkpn2s2yl3lxdf6h7sfldqvkbkpxwwxhyk7mdhjplb5faqh6";
type = "gem";
};
version = "0.9.2";
};
faraday_middleware = {
dependencies = [ "faraday" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1a93rs58bakqck7bcihasz66a1riy22h2zpwrpmb13gp8mw3wkmr";
type = "gem";
};
version = "0.13.1";
};
highline = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1g0zpalfj8wvca86hcnirir5py2zyqrhkgdgv9f87fxkjaw815wr";
type = "gem";
};
version = "2.0.2";
};
hirb = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0mzch3c2lvmf8gskgzlx6j53d10j42ir6ik2dkrl27sblhy76cji";
type = "gem";
};
version = "0.7.3";
};
hirb-unicode = {
dependencies = [
"hirb"
"unicode-display_width"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1b7hka1p4mkjdy2wr2cxsivnsmnz31zz1bswznmmxnvf5a6c00jk";
type = "gem";
};
version = "0.0.5";
};
ice_nine = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
type = "gem";
};
version = "0.11.2";
};
multi_json = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
type = "gem";
};
version = "1.13.1";
};
multipart-post = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
type = "gem";
};
version = "2.0.0";
};
pt = {
dependencies = [
"colored"
"highline"
"hirb"
"hirb-unicode"
"thor"
"tracker_api"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1ypyya7bk0w7zd9c3224zsizhv5wbs1icjpn0023wh3ii1by16a8";
type = "gem";
};
version = "0.10.0";
};
public_suffix = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
type = "gem";
};
version = "3.0.3";
};
representable = {
dependencies = [
"declarative"
"declarative-option"
"uber"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0qm9rgi1j5a6nv726ka4mmixivlxfsg91h8rpp72wwd4vqbkkm07";
type = "gem";
};
version = "3.0.4";
};
thor = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1yhrnp9x8qcy5vc7g438amd5j9sw83ih7c30dr6g6slgw9zj3g29";
type = "gem";
};
version = "0.20.3";
};
thread_safe = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
type = "gem";
};
version = "0.3.6";
};
tracker_api = {
dependencies = [
"addressable"
"equalizer"
"excon"
"faraday"
"faraday_middleware"
"multi_json"
"representable"
"virtus"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0pxwzbjzxign81wynl44napkvkrrhlyl7rm4ywrcdqahmzxmavsp";
type = "gem";
};
version = "1.6.0";
};
uber = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1p1mm7mngg40x05z52md3mbamkng0zpajbzqjjwmsyw0zw3v9vjv";
type = "gem";
};
version = "0.1.0";
};
unicode-display_width = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "06dpm3yqc974qfy6nyx7b0w0f6b8k08jadd5l9xnmla3fji6c405";
type = "gem";
};
version = "0.1.1";
};
virtus = {
dependencies = [
"axiom-types"
"coercible"
"descendants_tracker"
"equalizer"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "06iphwi3c4f7y9i2rvhvaizfswqbaflilziz4dxqngrdysgkn1fk";
type = "gem";
};
version = "1.0.5";
};
}

View File

@@ -0,0 +1,26 @@
{
lib,
bundlerApp,
bundlerUpdateScript,
}:
bundlerApp {
pname = "pt";
gemdir = ./.;
exes = [ "pt" ];
passthru.updateScript = bundlerUpdateScript "pt";
meta = with lib; {
description = "Minimalist command-line Pivotal Tracker client";
homepage = "http://www.github.com/raul/pt";
license = licenses.mit;
maintainers = with maintainers; [
ebzzry
manveru
nicknovitski
];
platforms = platforms.unix;
mainProgram = "pt";
};
}

View File

@@ -0,0 +1,50 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
nixosTests,
alsa-lib,
SDL2,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "pt2-clone";
version = "1.78";
src = fetchFromGitHub {
owner = "8bitbubsy";
repo = "pt2-clone";
rev = "v${finalAttrs.version}";
sha256 = "sha256-qbzs+EaypbulB1jkKQHMbhXwJIQwoyqVCdSvx5vYk2A=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ SDL2 ] ++ lib.optional stdenv.hostPlatform.isLinux alsa-lib;
postInstall = ''
install -Dm444 "$src/release/other/Freedesktop.org Resources/ProTracker 2 clone.desktop" \
$out/share/applications/pt2-clone.desktop
install -Dm444 "$src/release/other/Freedesktop.org Resources/ProTracker 2 clone.png" \
$out/share/icons/hicolor/512x512/apps/pt2-clone.png
# gtk-update-icon-cache does not like whitespace. Note that removing this
# will not make the build fail, but it will make the NixOS test fail.
substituteInPlace $out/share/applications/pt2-clone.desktop \
--replace-fail "Icon=ProTracker 2 clone" Icon=pt2-clone
'';
passthru.tests = {
pt2-clone-opens = nixosTests.pt2-clone;
};
meta = with lib; {
description = "Highly accurate clone of the classic ProTracker 2.3D software for Amiga";
homepage = "https://16-bits.org/pt2.php";
license = licenses.bsd3;
maintainers = with maintainers; [ fgaz ];
# From HOW-TO-COMPILE.txt:
# > This code is NOT big-endian compatible
platforms = platforms.littleEndian;
mainProgram = "pt2-clone";
};
})

View File

@@ -0,0 +1,42 @@
{
fetchFromGitHub,
ctags,
lib,
makeWrapper,
rustPlatform,
}:
rustPlatform.buildRustPackage rec {
pname = "ptags";
version = "0.3.5";
src = fetchFromGitHub {
owner = "dalance";
repo = "ptags";
rev = "v${version}";
sha256 = "sha256-bxp38zWufqS6PZqhw8X5HR5zMRcwH58MuZaJmDRuiys=";
};
cargoHash = "sha256-zzbGyfuzJXB/Rf/cm4JTVfjx2rWz1iTnELokie6qBrw=";
nativeBuildInputs = [ makeWrapper ];
postInstall = ''
# `ctags` must be accessible in `PATH` for `ptags` to work.
wrapProgram "$out/bin/ptags" \
--prefix PATH : "${lib.makeBinPath [ ctags ]}"
'';
# Sanity check.
checkPhase = ''
$releaseDir/ptags --help > /dev/null
'';
meta = with lib; {
description = "Parallel universal-ctags wrapper for git repository";
mainProgram = "ptags";
homepage = "https://github.com/dalance/ptags";
maintainers = with maintainers; [ pamplemousse ];
license = licenses.mit;
};
}

View File

@@ -0,0 +1,65 @@
{
stdenv,
lib,
fetchFromGitHub,
nix-update-script,
libsForQt5,
libvorbis,
pkg-config,
rtmidi,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ptcollab";
version = "0.6.4.9";
src = fetchFromGitHub {
owner = "yuxshao";
repo = "ptcollab";
rev = "v${finalAttrs.version}";
hash = "sha256-1fVhimwBAYtC+HnuxA7ywfEnVlqHnlzwfKT9+H/ZG0k=";
};
nativeBuildInputs = [
pkg-config
]
++ (with libsForQt5; [
qmake
qttools
wrapQtAppsHook
]);
buildInputs = [
libvorbis
rtmidi
]
++ (with libsForQt5; [
qtbase
qtmultimedia
]);
postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
# Move appbundles to Applications before wrapping happens
mkdir $out/Applications
mv $out/{bin,Applications}/ptcollab.app
'';
postFixup = lib.optionalString stdenv.hostPlatform.isDarwin ''
# Link to now-wrapped binary inside appbundle
ln -s $out/{Applications/ptcollab.app/Contents/MacOS,bin}/ptcollab
'';
passthru = {
updateScript = nix-update-script { };
};
meta = with lib; {
description = "Experimental pxtone editor where you can collaborate with friends";
mainProgram = "ptcollab";
homepage = "https://yuxshao.github.io/ptcollab/";
changelog = "https://github.com/yuxshao/ptcollab/releases/tag/v${finalAttrs.version}";
license = licenses.mit;
maintainers = with maintainers; [ OPNA2608 ];
platforms = platforms.all;
};
})

View File

@@ -0,0 +1,16 @@
diff --git a/dtnetsubs.c b/dtnetsubs.c
index ad1c30d..c1fda9b 100644
--- a/dtnetsubs.c
+++ b/dtnetsubs.c
@@ -865,10 +865,7 @@ int dtSend (NetFet *fet, const void *buf, int len)
** Update the IN pointer, then wake the send thread.
*/
fet->sendin = in;
- if (ssemp (fet) != NULL)
- {
- sem_post (ssemp (fet));
- }
+ sem_post (ssemp (fet));
if (dtSendFree (fet) == 0)
{

View File

@@ -0,0 +1,53 @@
{
lib,
stdenv,
fetchurl,
libsndfile,
wxGTK32,
SDL,
}:
stdenv.mkDerivation rec {
pname = "pterm";
version = "6.0.4";
buildInputs = [
libsndfile
SDL
wxGTK32
];
src = fetchurl {
url = "https://www.cyber1.org/download/linux/pterm-${version}.tar.bz2";
hash = "sha256-0OJvoCOGx/a51Ja7n3fOTeQJEcdyn/GhaJ0NtVCyuC8=";
};
patches = [ ./0001-dtnetsubs-remove-null-check.patch ];
preBuild = ''
substituteInPlace Makefile.common Makefile.wxpterm --replace "/bin/echo" "echo"
echo "exit 0" > wxversion.py
'';
hardeningDisable = [ "format" ];
env.PTERMVERSION = "${version}";
installPhase = ''
runHook preInstall
install -Dm755 "pterm" "$out/bin/pterm"
runHook postInstall
'';
meta = with lib; {
description = "Terminal emulator for the Cyber1 mainframe-based CYBIS system";
homepage = "https://www.cyber1.org/";
license = licenses.zlib;
maintainers = with maintainers; [ sarcasticadmin ];
mainProgram = "pterm";
platforms = platforms.unix;
broken = stdenv.hostPlatform.isDarwin;
};
}

View File

@@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchFromGitHub,
zlib,
cmake,
}:
stdenv.mkDerivation rec {
pname = "ptex";
version = "2.4.2";
src = fetchFromGitHub {
owner = "wdas";
repo = "ptex";
rev = "v${version}";
sha256 = "sha256-PR1ld9rXmL6BK4llznAsD5PNvi3anFMz2i9NDsG95DQ=";
};
outputs = [
"bin"
"dev"
"out"
"lib"
];
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib ];
meta = with lib; {
description = "Per-Face Texture Mapping for Production Rendering";
mainProgram = "ptxinfo";
homepage = "http://ptex.us/";
license = licenses.bsd3;
platforms = platforms.all;
maintainers = [ maintainers.guibou ];
};
}

View File

@@ -0,0 +1,36 @@
{
lib,
stdenv,
fetchFromGitHub,
}:
stdenv.mkDerivation {
pname = "ptext";
version = "0-unstable-2024-08-19";
src = fetchFromGitHub {
owner = "proh14";
repo = "ptext";
rev = "86cc1a165f398bd1f08fc45f2db93d4a9701ab0e";
hash = "sha256-bmqQslC/T7dFJwg/ZCevQRpmkVJHRQ++0EV4b88xF6k=";
};
enableParallelBuilding = true;
hardeningDisable = [ "fortify" ];
makeFlags = [
"INSTALL_DIR=${placeholder "out"}/bin"
"MANPAGE_INSTALL_DIR=${placeholder "out"}/share/man/man1"
];
preInstall = "mkdir -p $out/{bin,share/man/man1}";
meta = {
description = "Nano like text editor built with pure C";
homepage = "https://github.com/proh14/ptext";
license = lib.licenses.bsd2;
maintainers = with lib.maintainers; [ sigmanificient ];
platforms = lib.platforms.linux;
mainProgram = "ptext";
};
}

View File

@@ -0,0 +1,79 @@
{
lib,
stdenv,
fetchFromGitHub,
cups,
cups-filters,
foomatic-db-engine,
ghostscript,
libpng,
libxml2,
autoreconfHook,
perl,
patchPpdFilesHook,
}:
stdenv.mkDerivation rec {
pname = "ptouch-driver";
version = "1.7.1";
src = fetchFromGitHub {
owner = "philpem";
repo = "printer-driver-ptouch";
rev = "v${version}";
hash = "sha256-MVvtfos2ze6uXFg8sEH1UlJ9gg4iq91dLK0k0xuTE1Y=";
};
buildInputs = [
cups
cups-filters
ghostscript
libpng
libxml2
];
nativeBuildInputs = [
autoreconfHook
foomatic-db-engine
patchPpdFilesHook
(perl.withPackages (pp: with pp; [ XMLLibXML ]))
];
postPatch = ''
patchShebangs ./foomaticalize
'';
postInstall = ''
export FOOMATICDB="${placeholder "out"}/share/foomatic"
mkdir -p "${placeholder "out"}/share/cups/model"
foomatic-compiledb -j "$NIX_BUILD_CORES" -d "${placeholder "out"}/share/cups/model/ptouch-driver"
'';
# compress ppd files
postFixup = ''
echo 'compressing ppd files'
find -H "${placeholder "out"}/share/cups/model/ptouch-driver" -type f -iname '*.ppd' -print0 \
| xargs -0r -n 4 -P "$NIX_BUILD_CORES" gzip -9n
'';
# Comments indicate the respective
# package the command is contained in.
ppdFileCommands = [
"rastertoptch" # ptouch-driver
"gs" # ghostscript
"foomatic-rip" # cups-filters
];
meta = {
changelog = "https://github.com/philpem/printer-driver-ptouch/releases/tag/v${version}";
description = "Printer Driver for Brother P-touch and QL Label Printers";
downloadPage = "https://github.com/philpem/printer-driver-ptouch";
homepage = "https://github.com/philpem/printer-driver-ptouch";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ sascha8a ];
platforms = lib.platforms.linux;
longDescription = ''
This is ptouch-driver, a printer driver based on CUPS and foomatic,
for the Brother P-touch and QL label printer families.
'';
};
}

View File

@@ -0,0 +1,58 @@
{
cmake,
fetchgit,
gd,
gettext,
git,
lib,
libjpeg,
libpng,
libusb1,
pkg-config,
stdenv,
zlib,
}:
stdenv.mkDerivation {
pname = "ptouch-print";
version = "1.5-unstable-2024-02-11";
src = fetchgit {
url = "https://git.familie-radermacher.ch/linux/ptouch-print.git";
rev = "8aaeecd84b619587dc3885dd4fea4b7310c82fd4";
hash = "sha256-IIq3SmMfsgwSYbgG1w/wrBnFtb6xdFK2lkK27Qqk6mw=";
};
nativeBuildInputs = [
cmake
git
pkg-config
];
buildInputs = [
gd
gettext
libjpeg
libpng
zlib
libusb1
];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
mv ptouch-print $out/bin
runHook postInstall
'';
meta = with lib; {
description = "Command line tool to print labels on Brother P-Touch printers on Linux";
homepage = "https://dominic.familie-radermacher.ch/projekte/ptouch-print/";
license = licenses.gpl3Plus;
mainProgram = "ptouch-print";
maintainers = with maintainers; [ shamilton ];
platforms = platforms.unix;
};
}

View File

@@ -0,0 +1,53 @@
{
lib,
stdenv,
fetchurl,
fetchpatch,
libpcap,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ptunnel";
version = "0.72";
src = fetchurl {
url = "https://www.cs.uit.no/~daniels/PingTunnel/PingTunnel-${finalAttrs.version}.tar.gz";
hash = "sha256-sxj3qn2IkYtiadBUp+JvBPl9iHD0e9Sadsssmcc0B6Q=";
};
patches = [
# fix hyphen-used-as-minus-sign lintian warning in manpage.
(fetchpatch {
url = "https://salsa.debian.org/alteholz/ptunnel/-/raw/7475a32bc401056aeeb1b99e56b9ae5f1ee9c960/debian/patches/fix_minus_chars_in_man.patch";
hash = "sha256-DcMsCZczO+SxOiQuFbdSJn5UH5E4TVf3+vupJ4OurVg=";
})
# fix typo in README file.
(fetchpatch {
url = "https://salsa.debian.org/alteholz/ptunnel/-/raw/7475a32bc401056aeeb1b99e56b9ae5f1ee9c960/debian/patches/fix_typo.diff";
hash = "sha256-9cdOCfr2r9FnTmxJwvoClW5uf27j05zWQLykahKMJQg=";
})
# reverse parameters to memset.
(fetchpatch {
url = "https://salsa.debian.org/alteholz/ptunnel/-/raw/1dbf9b69507e19c86ac539fd8e3c60fc274717b3/debian/patches/memset-fix.patch";
hash = "sha256-dYbuMM0/ZUgi3OxukBIp5rKhlwAjGu7cl/3w3sWr/xU=";
})
];
makeFlags = [
"prefix=$(out)"
"CC=cc"
];
buildInputs = [
libpcap
];
meta = with lib; {
description = "Tool for reliably tunneling TCP connections over ICMP echo request and reply packets";
homepage = "https://www.cs.uit.no/~daniels/PingTunnel";
license = licenses.bsd3;
mainProgram = "ptunnel";
maintainers = with maintainers; [ d3vil0p3r ];
platforms = platforms.unix;
};
})

View File

@@ -0,0 +1,53 @@
{
lib,
stdenv,
fetchFromGitLab,
meson,
ninja,
pkg-config,
wrapGAppsHook4,
desktop-file-utils,
libadwaita,
json-glib,
vte-gtk4,
libportal-gtk4,
pcre2,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ptyxis";
version = "48.5";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "chergert";
repo = "ptyxis";
tag = finalAttrs.version;
hash = "sha256-qZ2nDX1ivnKYJQSqh29L23ayQ4wV9Ss4XD4JRpK35UU=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
wrapGAppsHook4
desktop-file-utils
];
buildInputs = [
libadwaita
json-glib
vte-gtk4
libportal-gtk4
pcre2
];
meta = {
description = "Terminal for GNOME with first-class support for containers";
homepage = "https://gitlab.gnome.org/chergert/ptyxis";
license = lib.licenses.gpl3Plus;
mainProgram = "ptyxis";
maintainers = with lib.maintainers; [ aleksana ];
platforms = lib.platforms.linux;
};
})