tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
denaro: 2023.2.2 -> 2023.5.0; add updateScript
Chuang Zhu
2 years ago
f590d97b
f91ee306
+44
-17
3 changed files
expand all
collapse all
unified
split
pkgs
applications
finance
denaro
default.nix
deps.nix
update.sh
+16
-12
pkgs/applications/finance/denaro/default.nix
···
2
2
, stdenvNoCC
3
3
, buildDotnetModule
4
4
, fetchFromGitHub
5
5
-
, fetchpatch
6
5
, dotnetCorePackages
7
6
, gtk4
8
7
, libadwaita
···
10
9
, wrapGAppsHook4
11
10
, glib
12
11
, shared-mime-info
13
13
-
, python3
14
14
-
, desktop-file-utils
15
12
, gdk-pixbuf
13
13
+
, blueprint-compiler
16
14
}:
17
15
18
16
buildDotnetModule rec {
19
17
pname = "denaro";
20
20
-
version = "2023.2.2";
18
18
+
version = "2023.5.0";
21
19
22
20
src = fetchFromGitHub {
23
23
-
owner = "nlogozzo";
24
24
-
repo = "NickvisionMoney";
21
21
+
owner = "NickvisionApps";
22
22
+
repo = "Denaro";
25
23
rev = version;
26
26
-
hash = "sha256-B84uzJ+B7kGU+O2tuObrIFCvgUfszLd1VU7F5tL90bU=";
24
24
+
hash = "sha256-kYN4Qm4xxOUkMi3twyVkT9PBnauDp7aenYy0YXzwKNA=";
27
25
};
28
26
29
27
dotnet-sdk = dotnetCorePackages.sdk_7_0;
···
42
40
wrapGAppsHook4
43
41
glib # For glib-compile-resources
44
42
shared-mime-info # For update-mime-database
45
45
-
python3
46
46
-
desktop-file-utils
47
43
gdk-pixbuf # Fixes icon missing in envs where GDK_PIXBUF_MODULE_FILE is not set
44
44
+
blueprint-compiler
48
45
];
49
46
47
47
+
buildInputs = [ gtk4 libadwaita ]; # Used by blueprint-compiler
48
48
+
49
49
+
# Denaro switches installation tool frequently (bash -> just -> cake)
50
50
+
# For maintainability, let's do it ourselves
50
51
postInstall = ''
51
51
-
sh NickvisionMoney.GNOME/install_extras.sh $out
52
52
-
desktop-file-edit $out/share/applications/org.nickvision.money.desktop \
53
53
-
--set-key=Exec --set-value=$out/bin/NickvisionMoney.GNOME
52
52
+
substituteInPlace NickvisionMoney.Shared/org.nickvision.money.desktop.in --replace '@EXEC@' "NickvisionMoney.GNOME"
53
53
+
install -Dm444 NickvisionMoney.Shared/Resources/org.nickvision.money.svg -t $out/share/icons/hicolor/scalable/apps/
54
54
+
install -Dm444 NickvisionMoney.Shared/Resources/org.nickvision.money-symbolic.svg -t $out/share/icons/hicolor/symbolic/apps/
55
55
+
install -Dm444 NickvisionMoney.Shared/org.nickvision.money.desktop.in -T $out/share/applications/org.nickvision.money.desktop
54
56
'';
55
57
56
58
runtimeDeps = [
···
58
60
libadwaita
59
61
glib # Fixes "Could not retrieve parent type - is the typeid valid?"
60
62
];
63
63
+
64
64
+
passthru.updateScript = ./update.sh;
61
65
62
66
meta = with lib; {
63
67
description = "Personal finance manager for GNOME";
+10
-5
pkgs/applications/finance/denaro/deps.nix
···
2
2
# Please dont edit it manually, your changes might get overwritten!
3
3
4
4
{ fetchNuGet }: [
5
5
+
(fetchNuGet { pname = "Cake.Tool"; version = "3.0.0"; sha256 = "0gjacqdgnh1d40sm9vrdb8vr6jv3vyh6j265gj1aaf9af2569637"; })
5
6
(fetchNuGet { pname = "Docnet.Core"; version = "2.3.1"; sha256 = "03b39x0vlymdknwgwhsmnpw4gj3njmbl9pd57ls3rhfn9r832d44"; })
6
7
(fetchNuGet { pname = "GirCore.Adw-1"; version = "0.3.0"; sha256 = "1bsjqxck58dff9hnw21cp3xk1afly8721sfsbnxcr5i39hlrbl37"; })
7
8
(fetchNuGet { pname = "GirCore.Cairo-1.0"; version = "0.3.0"; sha256 = "1zb8ilgywpwgjrzrbdvzvy70f46fb05iy49592mkjg2lv24q5l3y"; })
···
21
22
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "2.8.2.3"; sha256 = "052d8frpkj4ijs6fm6xp55xbv95b1s9biqwa0w8zp3rgm88m9236"; })
22
23
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "2.8.2.3"; sha256 = "08khd2jqm8sw58ljz5srangzfm2sz3gd2q1jzc5fr80lj8rv6r74"; })
23
24
(fetchNuGet { pname = "Hazzik.Qif"; version = "1.0.3"; sha256 = "16v6cfy3pa0qy699v843pss3418rvq5agz6n43sikzh69vzl2azy"; })
24
24
-
(fetchNuGet { pname = "Microsoft.Data.Sqlite.Core"; version = "7.0.3"; sha256 = "00rdsirs32vlqpa1hri3f1m368b05d4r0k95wv5n2y0xi5i8lml6"; })
25
25
+
(fetchNuGet { pname = "Microsoft.Data.Sqlite.Core"; version = "7.0.5"; sha256 = "11gkdlf2apnzvwfd7bxdhjvb4qd0p2ridp4rrz44f7h76x1sb0gk"; })
25
26
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
26
27
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
27
28
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "5.0.0"; sha256 = "0z3qyv7qal5irvabc8lmkh58zsl42mrzd1i0sssvzhv4q4kl3cg6"; })
28
29
(fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
29
30
(fetchNuGet { pname = "NETStandard.Library"; version = "1.6.1"; sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8"; })
30
31
(fetchNuGet { pname = "OfxSharp.NetStandard"; version = "1.0.0"; sha256 = "1v7yw2glyywb4s0y5fw306bzh2vw175bswrhi5crvd92wf93makj"; })
31
31
-
(fetchNuGet { pname = "QuestPDF"; version = "2022.12.1"; sha256 = "0nbbk43jr73f0pfgdx3fzn57mjba34sir5jzxk2rscyfljfw002x"; })
32
32
+
(fetchNuGet { pname = "PdfSharpCore"; version = "1.3.56"; sha256 = "0a01b2a14gygh25rq3509rky85331l8808q052br2fzidhb2vc10"; })
33
33
+
(fetchNuGet { pname = "QuestPDF"; version = "2023.5.1"; sha256 = "1yfjwb7aj975aars7mcp1dxvarxl8aq122bndpw808b4cx3058gl"; })
32
34
(fetchNuGet { pname = "ReadSharp.Ports.SgmlReader.Core"; version = "1.0.0"; sha256 = "0pcvlh0gq513vw6y12lfn90a0br56a6f26lvppcj4qb839zmh3id"; })
33
35
(fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
34
36
(fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
···
46
48
(fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; })
47
49
(fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; })
48
50
(fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
51
51
+
(fetchNuGet { pname = "SharpZipLib"; version = "1.3.3"; sha256 = "1gij11wfj1mqm10631cjpnhzw882bnzx699jzwhdqakxm1610q8x"; })
52
52
+
(fetchNuGet { pname = "SixLabors.Fonts"; version = "1.0.0-beta17"; sha256 = "1qm8q82wzj54nbv63kx3ybln51k47sl18hia3jnzk1zrb6wdsw9a"; })
49
53
(fetchNuGet { pname = "SixLabors.ImageSharp"; version = "2.1.3"; sha256 = "12qb0r7v2v91vw8q8ygr67y527gwhbas6d6zdvrv4ksxwjx9dzp9"; })
50
54
(fetchNuGet { pname = "SkiaSharp"; version = "2.88.3"; sha256 = "1yq694myq2rhfp2hwwpyzcg1pzpxcp7j72wib8p9pw9dfj7008sv"; })
51
55
(fetchNuGet { pname = "SkiaSharp.HarfBuzz"; version = "2.88.3"; sha256 = "0axz2zfyg0h3zis7rr86ikrm2jbxxy0gqb3bbawpgynf1k0fsi6a"; })
52
56
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.3"; sha256 = "0dajvr60nwvnv7s6kcqgw1w97zxdpz1c5lb7kcq7r0hi0l05ck3q"; })
53
57
(fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.3"; sha256 = "191ajgi6fnfqcvqvkayjsxasiz6l0bv3pps8vv9abbyc4b12qvph"; })
54
58
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.3"; sha256 = "03wwfbarsxjnk70qhqyd1dw65098dncqk2m0vksx92j70i7lry6q"; })
55
55
-
(fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlcipher"; version = "2.1.4"; sha256 = "1v9wly6v2bj244wch6ijfx2imrbgmafn1w9km44718fngdxfhysq"; })
59
59
+
(fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlcipher"; version = "2.1.5"; sha256 = "0xnzpkhm9z09yay76wxgn4j8js260pansx8r10lrksxv2b4b0n4x"; })
56
60
(fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.4"; sha256 = "09akxz92qipr1cj8mk2hw99i0b81wwbwx26gpk21471zh543f8ld"; })
57
57
-
(fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlcipher"; version = "2.1.4"; sha256 = "14qr84h88jfvy263yx51zjm059aqgwlvgi6g02yxhbr2m7brs4mm"; })
58
58
-
(fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlcipher"; version = "2.1.4"; sha256 = "1s1dv1qfgjsvcdbwf2pl48c6k60hkxwyy6z5w8g32fypksnvb7cs"; })
61
61
+
(fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.5"; sha256 = "03181hahmxv8jlaikx0nkzfc2q1l1cdp3chgx5q6780nhqyjkhhx"; })
62
62
+
(fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlcipher"; version = "2.1.5"; sha256 = "1chij7jlpi2mdm55chrkn8bmlda5qb3q6idkljgc3rz26n6c2l5b"; })
63
63
+
(fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlcipher"; version = "2.1.5"; sha256 = "11xah1nfzryh52zfwhlvfm2ra7d3an5ygff2brylp75wa685gm7g"; })
59
64
(fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
60
65
(fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
61
66
(fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
+18
pkgs/applications/finance/denaro/update.sh
···
1
1
+
#!/usr/bin/env nix-shell
2
2
+
#!nix-shell -I nixpkgs=./. -i bash -p curl jq common-updater-scripts
3
3
+
#shellcheck shell=bash
4
4
+
5
5
+
set -eu -o pipefail
6
6
+
7
7
+
version=$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \
8
8
+
https://api.github.com/repos/NickvisionApps/Denaro/releases/latest | jq -e -r .tag_name)
9
9
+
old_version=$(nix-instantiate --eval -A denaro.version | jq -e -r)
10
10
+
11
11
+
if [[ $version == "$old_version" ]]; then
12
12
+
echo "New version same as old version, nothing to do." >&2
13
13
+
exit 0
14
14
+
fi
15
15
+
16
16
+
update-source-version denaro "$version"
17
17
+
18
18
+
$(nix-build -A denaro.fetch-deps --no-out-link) "$(dirname -- "${BASH_SOURCE[0]}")/deps.nix"