tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
gdevelop: added update script
Matteo Pacini
8 months ago
b4b2d723
be269002
+45
-1
4 changed files
expand all
collapse all
unified
split
pkgs
by-name
gd
gdevelop
darwin.nix
linux.nix
package.nix
update.sh
+7
-1
pkgs/by-name/gd/gdevelop/darwin.nix
···
6
6
pname,
7
7
version,
8
8
meta,
9
9
+
passthru,
9
10
}:
10
11
stdenvNoCC.mkDerivation (finalAttrs: {
11
11
-
inherit pname version meta;
12
12
+
inherit
13
13
+
pname
14
14
+
version
15
15
+
meta
16
16
+
passthru
17
17
+
;
12
18
13
19
src = fetchurl {
14
20
url = "https://github.com/4ian/GDevelop/releases/download/v${version}/GDevelop-5-${version}-universal-mac.zip";
+2
pkgs/by-name/gd/gdevelop/linux.nix
···
6
6
version,
7
7
pname,
8
8
meta,
9
9
+
passthru,
9
10
}:
10
11
let
11
12
src =
···
29
30
version
30
31
src
31
32
meta
33
33
+
passthru
32
34
;
33
35
34
36
extraInstallCommands = ''
+3
pkgs/by-name/gd/gdevelop/package.nix
···
20
20
mainProgram = "gdevelop";
21
21
platforms = [ "x86_64-linux" ] ++ lib.platforms.darwin;
22
22
};
23
23
+
passthru.updateScript = ./update.sh;
23
24
in
24
25
if stdenv.hostPlatform.isDarwin then
25
26
callPackage ./darwin.nix {
···
27
28
pname
28
29
version
29
30
meta
31
31
+
passthru
30
32
;
31
33
}
32
34
else
···
35
37
pname
36
38
version
37
39
meta
40
40
+
passthru
38
41
;
39
42
}
+33
pkgs/by-name/gd/gdevelop/update.sh
···
1
1
+
#!/usr/bin/env nix-shell
2
2
+
#!nix-shell -i bash -p curl jq gnused
3
3
+
4
4
+
set -euo pipefail
5
5
+
6
6
+
cd "$(dirname "$0")" || exit 1
7
7
+
8
8
+
# Grab latest version from the GitHub repository
9
9
+
LATEST_VER="$(curl --fail -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} "https://api.github.com/repos/4ian/GDevelop/releases" | jq -r '.[0].tag_name' | sed 's/^v//')"
10
10
+
CURRENT_VER="$(grep -oP 'version = "\K[^"]+' package.nix)"
11
11
+
12
12
+
if [[ "$LATEST_VER" == "$CURRENT_VER" ]]; then
13
13
+
echo "gdevelop is up-to-date"
14
14
+
exit 0
15
15
+
fi
16
16
+
17
17
+
echo "Updating gdevelop from $CURRENT_VER to $LATEST_VER"
18
18
+
19
19
+
# Update the version
20
20
+
sed -i "s#version = \".*\";#version = \"$LATEST_VER\";#g" package.nix
21
21
+
22
22
+
# Update hashes
23
23
+
# - Linux
24
24
+
25
25
+
LINUX_HASH="$(nix-hash --to-sri --type sha256 "$(nix-prefetch-url --type sha256 "https://github.com/4ian/GDevelop/releases/download/v${LATEST_VER}/GDevelop-5-${LATEST_VER}.AppImage")")"
26
26
+
sed -i "s#hash = \".*\"#hash = \"$LINUX_HASH\"#g" linux.nix
27
27
+
28
28
+
# - Darwin
29
29
+
30
30
+
DARWIN_HASH="$(nix-hash --to-sri --type sha256 "$(nix-prefetch-url --type sha256 "https://github.com/4ian/GDevelop/releases/download/v${LATEST_VER}/GDevelop-5-${LATEST_VER}-universal-mac.zip")")"
31
31
+
sed -i "s#hash = \".*\"#hash = \"$DARWIN_HASH\"#g" darwin.nix
32
32
+
33
33
+
echo "Updated gdevelop to $LATEST_VER"