diff --git a/pkgs/by-name/cl/clipse/package.nix b/pkgs/by-name/cl/clipse/package.nix index 1e9d95a2f3eb..07920fd3aa08 100644 --- a/pkgs/by-name/cl/clipse/package.nix +++ b/pkgs/by-name/cl/clipse/package.nix @@ -2,26 +2,84 @@ lib, buildGoModule, fetchFromGitHub, + stdenv, + enableWayland ? stdenv.hostPlatform.isLinux, + enableX11 ? false, + libpng, + libx11, + libxi, + libxkbcommon, + libxtst, + pkg-config, + xclip, + xinput, + xkbcomp, + xkbutils, + xsel, }: +assert lib.assertMsg ( + stdenv.hostPlatform.isLinux -> (lib.xor enableX11 enableWayland) +) "Exactly one of enableWayland, enableX11 must be true"; + buildGoModule (finalAttrs: { - pname = "clipse"; - version = "1.1.0"; + pname = "clipse${lib.optionalString enableX11 "-x11"}"; + version = "1.2.1"; src = fetchFromGitHub { owner = "savedra1"; repo = "clipse"; - rev = "v${finalAttrs.version}"; - hash = "sha256-yUkHT7SZT7Eudvk1n43V+WGWqUKtXaV+p4ySMK/XzQw="; + tag = "v${finalAttrs.version}"; + hash = "sha256-iDMHEhYuxspBYG54WivnVj2GfMxAc5dcrjNxtAMhsck="; }; - vendorHash = "sha256-+9uoB/1g4qucdM8RJRs+fSc5hpcgaCK0GrUOFgHWeKo="; + strictDeps = true; + __structuredAttrs = true; + + vendorHash = "sha256-LxwST4Zjxq6Fwc47VeOdv19J3g/DHZ7Fywp2ZvVR06I="; + + tags = + if stdenv.hostPlatform.isDarwin then + [ "darwin" ] + else if enableWayland then + [ "wayland" ] + else if enableX11 then + [ "linux" ] + else + [ ]; + + env = { + CGO_ENABLED = if enableX11 || stdenv.hostPlatform.isDarwin then "1" else "0"; + }; + + nativeBuildInputs = lib.optionals enableX11 [ + pkg-config + ]; + + buildInputs = lib.optionals enableX11 [ + libpng + libx11 + libxi + libxkbcommon + libxtst + xclip + xinput + xkbcomp + xkbutils + xsel + ]; + + proxyVendor = true; meta = { + changelog = "https://github.com/savedra1/clipse/blob/main/CHANGELOG.md"; description = "Useful clipboard manager TUI for Unix"; homepage = "https://github.com/savedra1/clipse"; license = lib.licenses.mit; mainProgram = "clipse"; - maintainers = [ lib.maintainers.savedra1 ]; + maintainers = with lib.maintainers; [ + magicquark + savedra1 + ]; }; }) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fe2fd4a521fc..ca543516cb3c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11542,4 +11542,9 @@ with pkgs; gpac-unstable = callPackage ../by-name/gp/gpac/package.nix { releaseChannel = "unstable"; }; + + clipse-x11 = callPackage ../by-name/cl/clipse/package.nix { + enableWayland = false; + enableX11 = true; + }; }