Skip to content

Commit e77c31f

Browse files
authored
cherry-studio: 1.0.1 -> 1.1.8 (#390414)
2 parents dd1206c + 8eeecc4 commit e77c31f

File tree

2 files changed

+30
-38
lines changed

2 files changed

+30
-38
lines changed

pkgs/by-name/ch/cherry-studio/package.nix

Lines changed: 14 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,26 @@
11
{
22
lib,
3-
stdenv,
43
stdenvNoCC,
54
fetchFromGitHub,
65
cacert,
76
yarn-berry,
8-
nodejs,
97
electron,
108
makeWrapper,
119
writableTmpDirAsHomeHook,
1210
makeDesktopItem,
1311
copyDesktopItems,
14-
nix-update-script,
1512
commandLineArgs ? "",
1613
}:
1714

18-
stdenv.mkDerivation (finalAttrs: {
15+
stdenvNoCC.mkDerivation (finalAttrs: {
1916
pname = "cherry-studio";
20-
version = "1.0.1";
17+
version = "1.1.8";
2118

2219
src = fetchFromGitHub {
2320
owner = "CherryHQ";
2421
repo = "cherry-studio";
2522
tag = "v${finalAttrs.version}";
26-
hash = "sha256-C8D0XCwIFWG+5WakAK+TmI4VVuIYJBSgkv5ynM2Ewkc=";
23+
hash = "sha256-zZwweJso4KaJMXNUJ+kEvbkHOkhvvPv/IYu/evXzsWs=";
2724
};
2825

2926
yarnOfflineCache = stdenvNoCC.mkDerivation {
@@ -36,30 +33,13 @@ stdenv.mkDerivation (finalAttrs: {
3633
writableTmpDirAsHomeHook
3734
];
3835

39-
postConfigure =
40-
let
41-
supportedArchitectures = builtins.toJSON {
42-
os = [
43-
"darwin"
44-
"linux"
45-
];
46-
cpu = [
47-
"x64"
48-
"ia32"
49-
"arm64"
50-
];
51-
libc = [
52-
"glibc"
53-
"musl"
54-
];
55-
};
56-
in
57-
''
58-
yarn config set enableTelemetry false
59-
yarn config set enableGlobalCache false
60-
yarn config set supportedArchitectures --json '${supportedArchitectures}'
61-
yarn config set cacheFolder $out
62-
'';
36+
postConfigure = ''
37+
yarn config set enableTelemetry false
38+
yarn config set enableGlobalCache false
39+
yarn config set --json supportedArchitectures.os '[ "linux", "darwin" ]'
40+
yarn config set --json supportedArchitectures.cpu '["arm", "arm64", "ia32", "x64"]'
41+
yarn config set cacheFolder $out
42+
'';
6343

6444
buildPhase = ''
6545
runHook preBuild
@@ -70,7 +50,7 @@ stdenv.mkDerivation (finalAttrs: {
7050
'';
7151

7252
outputHashMode = "recursive";
73-
outputHash = "sha256-DrEkaXkbaY40uYH7niT10OFJH+PD7ip3A4OCwbKmtz8=";
53+
outputHash = "sha256-HKtd+zdP7e/6vmlL4NS8X8gZ8AhxThtOS7taQ+iAnK0=";
7454
};
7555

7656
nativeBuildInputs = [
@@ -80,11 +60,7 @@ stdenv.mkDerivation (finalAttrs: {
8060
copyDesktopItems
8161
];
8262

83-
env = {
84-
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
85-
npm_config_build_from_source = "true";
86-
npm_config_nodedir = nodejs;
87-
};
63+
env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
8864

8965
postConfigure = ''
9066
yarn config set enableTelemetry false
@@ -126,7 +102,7 @@ stdenv.mkDerivation (finalAttrs: {
126102
mkdir -p $out/lib/cherry-studio
127103
cp -r dist/linux-unpacked/{resources,LICENSE*} $out/lib/cherry-studio
128104
install -Dm644 build/icon.png $out/share/pixmaps/cherry-studio.png
129-
makeWrapper "${lib.getExe electron}" $out/bin/cherry-studio \
105+
makeWrapper ${lib.getExe electron} $out/bin/cherry-studio \
130106
--inherit-argv0 \
131107
--add-flags $out/lib/cherry-studio/resources/app.asar \
132108
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}" \
@@ -135,7 +111,7 @@ stdenv.mkDerivation (finalAttrs: {
135111
runHook postInstall
136112
'';
137113

138-
passthru.updateScript = nix-update-script { };
114+
passthru.updateScript = ./update.sh;
139115

140116
meta = {
141117
description = "Desktop client that supports for multiple LLM providers";
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#!/usr/bin/env nix-shell
2+
#!nix-shell -i bash -p curl gnused jq nix bash coreutils nix-update
3+
4+
set -eou pipefail
5+
6+
latestTag=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} -sL https://api.github.com/repos/CherryHQ/cherry-studio/releases/latest | jq --raw-output .tag_name)
7+
latestVersion=$(echo "$latestTag" | sed 's/^v//')
8+
9+
currentVersion=$(nix-instantiate --eval -E "with import ./. {}; cherry-studio.version or (lib.getVersion cherry-studio)" | tr -d '"')
10+
11+
if [[ "$currentVersion" == "$latestVersion" ]]; then
12+
echo "package is up-to-date: $currentVersion"
13+
exit 0
14+
fi
15+
16+
nix-update cherry-studio --version "$latestVersion"

0 commit comments

Comments
 (0)