denaro: 2023.2.2 -> 2023.5.0; add updateScript

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