pkgs: add wifi-qr

This commit is contained in:
Bruno BELANYI 2023-04-22 12:33:25 +01:00
parent e9f07e67dc
commit ce4e163193
2 changed files with 82 additions and 0 deletions

View file

@ -34,6 +34,8 @@ pkgs.lib.makeScope pkgs.newScope (pkgs: {
volantes-cursors = pkgs.callPackage ./volantes-cursors { };
wifi-qr = pkgs.callPackage ./wifi-qr { };
woodpecker-agent = pkgs.callPackage ./woodpecker/agent.nix { };
woodpecker-cli = pkgs.callPackage ./woodpecker/cli.nix { };

80
pkgs/wifi-qr/default.nix Normal file
View file

@ -0,0 +1,80 @@
{ lib
, fetchFromGitHub
, gnome
, installShellFiles
, makeWrapper
, networkmanager
, qrencode
, stdenvNoCC
, xdg-utils
, zbar
}:
stdenvNoCC.mkDerivation rec {
pname = "wifi-qr";
version = "unstable-2023-04-19";
outputs = [ "out" "man" ];
src = fetchFromGitHub {
owner = "kokoye2007";
repo = "wifi-qr";
rev = "b81d4a44257252f07e745464879aa5618ae3d434";
hash = "sha256-oGTAr+raJGpK4PV4GdBxX8fIUE8gcbXw7W0SvQJAee0=";
};
nativeBuildInputs = [
installShellFiles
makeWrapper
];
dontBuild = true;
dontConfigure = true;
postPatch = ''
substituteInPlace wifi-qr.desktop \
--replace "Exec=sh -c 'wifi-qr g'" "Exec=$out/bin/wifi-qr g" \
--replace "Exec=sh -c 'wifi-qr q'" "Exec=$out/bin/wifi-qr q" \
--replace "Exec=sh -c 'wifi-qr p'" "Exec=$out/bin/wifi-qr p" \
--replace "Exec=sh -c 'wifi-qr c'" "Exec=$out/bin/wifi-qr c" \
--replace "Icon=wifi-qr.svg" "Icon=$out/share/applications/wifi-qr.svg"
'';
installPhase = ''
runHook preInstall
install -Dm755 wifi-qr $out/bin/wifi-qr
install -Dm644 wifi-qr.desktop $out/share/applications/wifi-qr.desktop
install -Dm644 wifi-qr.svg $out/share/applications/wifi-qr.svg
installManPage wifi-qr.1
runHook postInstall
'';
wrapperPath = lib.makeBinPath [
gnome.zenity
networkmanager
qrencode
xdg-utils
zbar
];
fixupPhase = ''
runHook preFixup
patchShebangs $out/bin/wifi-qr
wrapProgram $out/bin/wifi-qr --suffix PATH : "${wrapperPath}"
runHook postFixup
'';
meta = with lib; {
description = "WiFi password sharing via QR codes";
homepage = "https://github.com/kokoye2007/wifi-qr";
license = with licenses; [ gpl3Plus ];
platforms = platforms.linux;
maintainers = with maintainers; [ ambroisie ];
};
}