diff --git a/pkgs/applications/version-management/github-desktop/default.nix b/pkgs/applications/version-management/github-desktop/default.nix deleted file mode 100644 index b16befcd080d..000000000000 --- a/pkgs/applications/version-management/github-desktop/default.nix +++ /dev/null @@ -1,86 +0,0 @@ -{ stdenv -, lib -, fetchurl -, autoPatchelfHook -, wrapGAppsHook -, makeWrapper -, gnome -, libsecret -, git -, curl -, nss -, nspr -, xorg -, libdrm -, alsa-lib -, cups -, mesa -, systemd -, openssl -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "github-desktop"; - version = "3.3.6"; - rcversion = "3"; - arch = "amd64"; - - src = fetchurl { - url = "https://github.com/shiftkey/desktop/releases/download/release-${finalAttrs.version}-linux${finalAttrs.rcversion}/GitHubDesktop-linux-${finalAttrs.arch}-${finalAttrs.version}-linux${finalAttrs.rcversion}.deb"; - hash = "sha256-900JhfHN78CuAXptPX2ToTvT9E+g+xRXqmlm34J9l6k="; - }; - - nativeBuildInputs = [ - autoPatchelfHook - (wrapGAppsHook.override { inherit makeWrapper; }) - ]; - - buildInputs = [ - gnome.gnome-keyring - xorg.libXdamage - xorg.libX11 - libsecret - git - curl - nss - nspr - libdrm - alsa-lib - cups - mesa - openssl - ]; - - unpackPhase = '' - mkdir -p $TMP/${finalAttrs.pname} $out/{opt,bin} - cp $src $TMP/${finalAttrs.pname}.deb - ar vx ${finalAttrs.pname}.deb - tar --no-overwrite-dir -xvf data.tar.xz -C $TMP/${finalAttrs.pname}/ - ''; - - installPhase = '' - cp -R $TMP/${finalAttrs.pname}/usr/share $out/ - cp -R $TMP/${finalAttrs.pname}/usr/lib/${finalAttrs.pname}/* $out/opt/ - ln -sf $out/opt/${finalAttrs.pname} $out/bin/${finalAttrs.pname} - ''; - - preFixup = '' - gappsWrapperArgs+=( - --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland}}" - ) - ''; - - runtimeDependencies = [ - (lib.getLib systemd) - ]; - - meta = { - description = "GUI for managing Git and GitHub."; - homepage = "https://desktop.github.com/"; - sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ dan4ik605743 ]; - platforms = lib.platforms.linux; - mainProgram = "github-desktop"; - }; -}) diff --git a/pkgs/by-name/gi/github-desktop/package.nix b/pkgs/by-name/gi/github-desktop/package.nix new file mode 100644 index 000000000000..7ada2ddb663b --- /dev/null +++ b/pkgs/by-name/gi/github-desktop/package.nix @@ -0,0 +1,101 @@ +{ stdenvNoCC +, lib +, fetchurl +, autoPatchelfHook +, wrapGAppsHook +, makeWrapper +, gnome +, libsecret +, git +, curl +, nss +, nspr +, xorg +, libdrm +, alsa-lib +, cups +, mesa +, systemd +, openssl +}: + +let + rcversion = "2"; +in +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "github-desktop"; + version = "3.3.12"; + + src = + let + urls = { + "x86_64-linux" = { + url = "https://github.com/shiftkey/desktop/releases/download/release-${finalAttrs.version}-linux${rcversion}/GitHubDesktop-linux-amd64-${finalAttrs.version}-linux${rcversion}.deb"; + hash = "sha256-iflKD7NPuZvhxviNW8xmtCOYgdRz1rXiG42ycWCjXiY="; + }; + "aarch64-linux" = { + url = "https://github.com/shiftkey/desktop/releases/download/release-${finalAttrs.version}-linux${rcversion}/GitHubDesktop-linux-arm64-${finalAttrs.version}-linux${rcversion}.deb"; + hash = "sha256-C9eCvuf/TwXQiYjZ88xSiyaqi8+cppmrLiSYTyQCkmg="; + }; + }; + in + fetchurl urls."${stdenvNoCC.hostPlatform.system}" or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}"); + + nativeBuildInputs = [ + autoPatchelfHook + (wrapGAppsHook.override { inherit makeWrapper; }) + ]; + + buildInputs = [ + gnome.gnome-keyring + xorg.libXdamage + xorg.libX11 + libsecret + git + curl + nss + nspr + libdrm + alsa-lib + cups + mesa + openssl + ]; + + unpackPhase = '' + runHook preUnpack + mkdir -p $TMP/github-desktop $out/{opt,bin} + cp $src $TMP/github-desktop.deb + ar vx github-desktop.deb + tar --no-overwrite-dir -xvf data.tar.xz -C $TMP/github-desktop/ + runHook postUnpack + ''; + + installPhase = '' + runHook preInstall + cp -R $TMP/github-desktop/usr/share $out/ + cp -R $TMP/github-desktop/usr/lib/github-desktop/* $out/opt/ + ln -sf $out/opt/github-desktop $out/bin/github-desktop + runHook postInstall + ''; + + preFixup = '' + gappsWrapperArgs+=( + --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland}}" + ) + ''; + + runtimeDependencies = [ + (lib.getLib systemd) + ]; + + meta = { + description = "GUI for managing Git and GitHub."; + homepage = "https://desktop.github.com/"; + license = lib.licenses.mit; + mainProgram = "github-desktop"; + maintainers = with lib.maintainers; [ dan4ik605743 ]; + platforms = lib.platforms.linux; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + }; +}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a910dd75a624..cd69d18656c7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3831,8 +3831,6 @@ with pkgs; github-copilot-intellij-agent = callPackage ../development/tools/github-copilot-intellij-agent { }; - github-desktop = callPackage ../applications/version-management/github-desktop { }; - github-to-sqlite = with python3Packages; toPythonApplication github-to-sqlite; gistyc = with python3Packages; toPythonApplication gistyc;