diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 2bb9d287968..c6d8f4acba3 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -169,6 +169,7 @@ ./programs/gpaste.nix ./programs/gnupg.nix ./programs/gphoto2.nix + ./programs/haguichi.nix ./programs/hamster.nix ./programs/htop.nix ./programs/iftop.nix diff --git a/nixos/modules/programs/haguichi.nix b/nixos/modules/programs/haguichi.nix new file mode 100644 index 00000000000..4f48551cf1d --- /dev/null +++ b/nixos/modules/programs/haguichi.nix @@ -0,0 +1,15 @@ +{ lib, pkgs, config, ... }: + +with lib; + +{ + options.programs.haguichi = { + enable = mkEnableOption "Haguichi, a Linux GUI frontend to the proprietary LogMeIn Hamachi"; + }; + + config = mkIf config.programs.haguichi.enable { + environment.systemPackages = with pkgs; [ haguichi ]; + + services.logmein-hamachi.enable = true; + }; +} diff --git a/pkgs/tools/networking/haguichi/default.nix b/pkgs/tools/networking/haguichi/default.nix new file mode 100644 index 00000000000..34ba1da28e4 --- /dev/null +++ b/pkgs/tools/networking/haguichi/default.nix @@ -0,0 +1,54 @@ +{ stdenv +, lib +, fetchFromGitHub +, meson +, ninja +, pkg-config +, python3 +, vala +, wrapGAppsHook +, desktop-file-utils +, glib +, gtk3 +}: + +stdenv.mkDerivation rec { + pname = "haguichi"; + version = "1.4.5"; + + src = fetchFromGitHub { + owner = "ztefn"; + repo = "haguichi"; + rev = version; + sha256 = "1kgjl9g9lyg00cfx4x28s4xyqsqk5057xv6k2cj6ckg9lkxaixvc"; + }; + + nativeBuildInputs = [ + meson + ninja + pkg-config + python3 + vala + wrapGAppsHook + desktop-file-utils # for update-desktop-database + glib # for glib-compile-resources + gtk3 # for gtk-update-icon-cache + ]; + + buildInputs = [ + glib + gtk3 + ]; + + postPatch = '' + patchShebangs meson_post_install.py + ''; + + meta = with lib; { + description = "Graphical frontend for Hamachi on Linux"; + homepage = "https://haguichi.net/"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ OPNA2608 ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 976a93dd3ce..e553290be42 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6850,6 +6850,8 @@ with pkgs; pxz = callPackage ../tools/compression/pxz { }; + haguichi = callPackage ../tools/networking/haguichi { }; + hans = callPackage ../tools/networking/hans { }; h2 = callPackage ../servers/h2 { };