tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
termius: switch to a snap source
Artturin
4 years ago
5ff54697
f0672fa7
+28
-15
1 changed file
expand all
collapse all
unified
split
pkgs
applications
networking
termius
default.nix
+28
-15
pkgs/applications/networking/termius/default.nix
···
1
{ atomEnv
2
, autoPatchelfHook
3
-
, dpkg
4
, fetchurl
5
, makeDesktopItem
6
, makeWrapper
···
12
13
stdenv.mkDerivation rec {
14
pname = "termius";
15
-
version = "7.16.0";
16
17
src = fetchurl {
18
-
# find the latest version by
19
-
# curl https://deb.termius.com/dists/squeeze/main/binary-amd64/Packages
20
-
url = "https://deb.termius.com/pool/main/t/termius-app/termius-app_${version}_amd64.deb";
21
-
sha256 = "013nli61bk4x4hkhr6gcpzm1y8ycmqk3vr7q0w2dn2bfdwjg559v";
0
0
22
};
23
24
desktopItem = makeDesktopItem {
···
36
dontPatchELF = true;
37
dontWrapGApps = true;
38
39
-
nativeBuildInputs = [ autoPatchelfHook dpkg makeWrapper wrapGAppsHook ];
40
41
buildInputs = atomEnv.packages;
42
43
-
unpackPhase = "dpkg-deb -x $src .";
0
0
0
0
44
45
installPhase = ''
46
runHook preInstall
0
0
0
0
0
0
0
0
0
0
0
47
48
-
mkdir -p "$out/bin"
49
-
cp -R "opt" "$out"
50
-
cp -R "usr/share" "$out/share"
51
-
chmod -R g-w "$out"
52
-
# Desktop file
53
-
mkdir -p "$out/share/applications"
54
cp "${desktopItem}/share/applications/"* "$out/share/applications"
0
55
56
runHook postInstall
57
'';
···
59
runtimeDependencies = [ (lib.getLib udev) ];
60
61
postFixup = ''
62
-
makeWrapper $out/opt/Termius/termius-app $out/bin/termius-app \
63
"''${gappsWrapperArgs[@]}"
64
'';
65
···
1
{ atomEnv
2
, autoPatchelfHook
3
+
, squashfsTools
4
, fetchurl
5
, makeDesktopItem
6
, makeWrapper
···
12
13
stdenv.mkDerivation rec {
14
pname = "termius";
15
+
version = "7.17.1";
16
17
src = fetchurl {
18
+
# find the latest version with
19
+
# curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-app | jq '.version'
20
+
# and the url with
21
+
# curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-app | jq '.download_url' -r
22
+
url = "https://api.snapcraft.io/api/v1/snaps/download/WkTBXwoX81rBe3s3OTt3EiiLKBx2QhuS_81.snap";
23
+
sha256 = "sha256-jNwWQTjUy8nJ8gHlbP9WgDlARWOhTQAA7KAcQNXKhNg=";
24
};
25
26
desktopItem = makeDesktopItem {
···
38
dontPatchELF = true;
39
dontWrapGApps = true;
40
41
+
nativeBuildInputs = [ autoPatchelfHook squashfsTools makeWrapper wrapGAppsHook ];
42
43
buildInputs = atomEnv.packages;
44
45
+
unpackPhase = ''
46
+
runHook preUnpack
47
+
unsquashfs "$src"
48
+
runHook postUnpack
49
+
'';
50
51
installPhase = ''
52
runHook preInstall
53
+
cd squashfs-root
54
+
mkdir -p $out/opt/termius
55
+
cp -r \
56
+
icudtl.dat \
57
+
libffmpeg.so \
58
+
locales \
59
+
resources \
60
+
resources.pak \
61
+
termius-app \
62
+
v8_context_snapshot.bin \
63
+
$out/opt/termius
64
65
+
mkdir -p "$out/share/applications" "$out/share/pixmaps/termius-app.png"
0
0
0
0
0
66
cp "${desktopItem}/share/applications/"* "$out/share/applications"
67
+
cp meta/gui/icon.png $out/share/pixmaps/termius-app.png
68
69
runHook postInstall
70
'';
···
72
runtimeDependencies = [ (lib.getLib udev) ];
73
74
postFixup = ''
75
+
makeWrapper $out/opt/termius/termius-app $out/bin/termius-app \
76
"''${gappsWrapperArgs[@]}"
77
'';
78