mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-02-24 13:05:08 +00:00
Merge pull request #320205 from yzx9/update-dbeaver-bin-darwin
dbeaver-bin: add darwin support
This commit is contained in:
commit
33c992ca44
@ -23018,6 +23018,15 @@
|
|||||||
githubId = 5253988;
|
githubId = 5253988;
|
||||||
name = "yvt";
|
name = "yvt";
|
||||||
};
|
};
|
||||||
|
yzx9 = {
|
||||||
|
email = "yuan.zx@outlook.com";
|
||||||
|
github = "yzx9";
|
||||||
|
githubId = 41458459;
|
||||||
|
name = "Zexin Yuan";
|
||||||
|
keys = [{
|
||||||
|
fingerprint = "FE16 B281 90EF 6C3F F661 6441 C2DD 1916 FE47 1BE2";
|
||||||
|
}];
|
||||||
|
};
|
||||||
zachcoyle = {
|
zachcoyle = {
|
||||||
email = "zach.coyle@gmail.com";
|
email = "zach.coyle@gmail.com";
|
||||||
github = "zachcoyle";
|
github = "zachcoyle";
|
||||||
|
@ -1,23 +1,27 @@
|
|||||||
{ lib
|
{
|
||||||
, stdenvNoCC
|
lib,
|
||||||
, fetchurl
|
stdenvNoCC,
|
||||||
, makeWrapper
|
fetchurl,
|
||||||
, openjdk17
|
undmg,
|
||||||
, gnused
|
makeWrapper,
|
||||||
, autoPatchelfHook
|
openjdk17,
|
||||||
, wrapGAppsHook3
|
gnused,
|
||||||
|
autoPatchelfHook,
|
||||||
|
wrapGAppsHook3,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||||
pname = "dbeaver-bin";
|
pname = "dbeaver-bin";
|
||||||
version = "24.0.5";
|
version = "24.0.5";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs =
|
||||||
makeWrapper
|
[ makeWrapper ]
|
||||||
gnused
|
++ lib.optionals (!stdenvNoCC.isDarwin) [
|
||||||
autoPatchelfHook
|
gnused
|
||||||
wrapGAppsHook3
|
wrapGAppsHook3
|
||||||
];
|
autoPatchelfHook
|
||||||
|
]
|
||||||
|
++ lib.optionals stdenvNoCC.isDarwin [ undmg ];
|
||||||
|
|
||||||
src =
|
src =
|
||||||
let
|
let
|
||||||
@ -26,10 +30,14 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||||||
suffix = selectSystem {
|
suffix = selectSystem {
|
||||||
x86_64-linux = "linux.gtk.x86_64-nojdk.tar.gz";
|
x86_64-linux = "linux.gtk.x86_64-nojdk.tar.gz";
|
||||||
aarch64-linux = "linux.gtk.aarch64-nojdk.tar.gz";
|
aarch64-linux = "linux.gtk.aarch64-nojdk.tar.gz";
|
||||||
|
x86_64-darwin = "macos-x86_64.dmg";
|
||||||
|
aarch64-darwin = "macos-aarch64.dmg";
|
||||||
};
|
};
|
||||||
hash = selectSystem {
|
hash = selectSystem {
|
||||||
x86_64-linux = "sha256-q6VIr55hXn47kZrE2i6McEOfp2FBOvwB0CcUnRHFMZs=";
|
x86_64-linux = "sha256-q6VIr55hXn47kZrE2i6McEOfp2FBOvwB0CcUnRHFMZs=";
|
||||||
aarch64-linux = "sha256-Xn3X1C31UALBAsZIGyMWdp0HNhJEm5N+7Go7nMs8W64=";
|
aarch64-linux = "sha256-Xn3X1C31UALBAsZIGyMWdp0HNhJEm5N+7Go7nMs8W64=";
|
||||||
|
x86_64-darwin = "sha256-XOQaMNQHOC4dVJXIUn4l4Oa7Gohbq+JMDFusIy/U+tc=";
|
||||||
|
aarch64-darwin = "sha256-554ea5p1MR4XIHtSeByd4S/Ke4cKRZbITTNRRDoRqPI=";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
fetchurl {
|
fetchurl {
|
||||||
@ -40,28 +48,44 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||||||
dontConfigure = true;
|
dontConfigure = true;
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
|
||||||
installPhase = ''
|
sourceRoot = lib.optional stdenvNoCC.isDarwin "dbeaver.app";
|
||||||
runHook preInstall
|
|
||||||
mkdir -p $out/opt/dbeaver $out/bin
|
|
||||||
cp -r * $out/opt/dbeaver
|
|
||||||
makeWrapper $out/opt/dbeaver/dbeaver $out/bin/dbeaver \
|
|
||||||
--prefix PATH : "${openjdk17}/bin" \
|
|
||||||
--set JAVA_HOME "${openjdk17.home}"
|
|
||||||
|
|
||||||
mkdir -p $out/share/icons/hicolor/256x256/apps
|
installPhase =
|
||||||
ln -s $out/opt/dbeaver/dbeaver.png $out/share/icons/hicolor/256x256/apps/dbeaver.png
|
if !stdenvNoCC.isDarwin then
|
||||||
|
''
|
||||||
|
runHook preInstall
|
||||||
|
mkdir -p $out/opt/dbeaver $out/bin
|
||||||
|
cp -r * $out/opt/dbeaver
|
||||||
|
makeWrapper $out/opt/dbeaver/dbeaver $out/bin/dbeaver \
|
||||||
|
--prefix PATH : "${openjdk17}/bin" \
|
||||||
|
--set JAVA_HOME "${openjdk17.home}"
|
||||||
|
|
||||||
mkdir -p $out/share/applications
|
mkdir -p $out/share/icons/hicolor/256x256/apps
|
||||||
ln -s $out/opt/dbeaver/dbeaver-ce.desktop $out/share/applications/dbeaver.desktop
|
ln -s $out/opt/dbeaver/dbeaver.png $out/share/icons/hicolor/256x256/apps/dbeaver.png
|
||||||
|
|
||||||
substituteInPlace $out/opt/dbeaver/dbeaver-ce.desktop \
|
mkdir -p $out/share/applications
|
||||||
--replace-fail "/usr/share/dbeaver-ce/dbeaver.png" "dbeaver" \
|
ln -s $out/opt/dbeaver/dbeaver-ce.desktop $out/share/applications/dbeaver.desktop
|
||||||
--replace-fail "/usr/share/dbeaver-ce/dbeaver" "$out/bin/dbeaver"
|
|
||||||
|
|
||||||
sed -i '/^Path=/d' $out/share/applications/dbeaver.desktop
|
substituteInPlace $out/opt/dbeaver/dbeaver-ce.desktop \
|
||||||
|
--replace-fail "/usr/share/dbeaver-ce/dbeaver.png" "dbeaver" \
|
||||||
|
--replace-fail "/usr/share/dbeaver-ce/dbeaver" "$out/bin/dbeaver"
|
||||||
|
|
||||||
runHook postInstall
|
sed -i '/^Path=/d' $out/share/applications/dbeaver.desktop
|
||||||
'';
|
|
||||||
|
runHook postInstall
|
||||||
|
''
|
||||||
|
else
|
||||||
|
''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/{Applications/dbeaver.app,bin}
|
||||||
|
cp -R . $out/Applications/dbeaver.app
|
||||||
|
makeWrapper $out/{Applications/dbeaver.app/Contents/MacOS,bin}/dbeaver \
|
||||||
|
--prefix PATH : "${openjdk17}/bin" \
|
||||||
|
--set JAVA_HOME "${openjdk17.home}"
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
passthru.updateScript = ./update.sh;
|
passthru.updateScript = ./update.sh;
|
||||||
|
|
||||||
@ -76,8 +100,12 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
|||||||
'';
|
'';
|
||||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux ++ platforms.darwin;
|
||||||
maintainers = with maintainers; [ gepbird mkg20001 ];
|
maintainers = with maintainers; [
|
||||||
|
gepbird
|
||||||
|
mkg20001
|
||||||
|
yzx9
|
||||||
|
];
|
||||||
mainProgram = "dbeaver";
|
mainProgram = "dbeaver";
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
@ -14,7 +14,9 @@ fi
|
|||||||
|
|
||||||
for i in \
|
for i in \
|
||||||
"x86_64-linux linux.gtk.x86_64-nojdk.tar.gz" \
|
"x86_64-linux linux.gtk.x86_64-nojdk.tar.gz" \
|
||||||
"aarch64-linux linux.gtk.aarch64-nojdk.tar.gz"
|
"aarch64-linux linux.gtk.aarch64-nojdk.tar.gz" \
|
||||||
|
"x86_64-darwin macos-x86_64.dmg" \
|
||||||
|
"aarch64-darwin macos-aarch64.dmg"
|
||||||
do
|
do
|
||||||
set -- $i
|
set -- $i
|
||||||
prefetch=$(nix-prefetch-url "https://github.com/dbeaver/dbeaver/releases/download/$latestVersion/dbeaver-ce-$latestVersion-$2")
|
prefetch=$(nix-prefetch-url "https://github.com/dbeaver/dbeaver/releases/download/$latestVersion/dbeaver-ce-$latestVersion-$2")
|
||||||
|
Loading…
Reference in New Issue
Block a user