From 0ce09b94c307c5fa7e54a51c0ddc770c1d5ad079 Mon Sep 17 00:00:00 2001 From: loco-choco Date: Fri, 29 Mar 2024 20:10:58 -0300 Subject: [PATCH 1/4] irpf: add update script --- pkgs/applications/finance/irpf/default.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/applications/finance/irpf/default.nix b/pkgs/applications/finance/irpf/default.nix index 9bf9c1f2d0cc..4b358c62a13e 100644 --- a/pkgs/applications/finance/irpf/default.nix +++ b/pkgs/applications/finance/irpf/default.nix @@ -7,6 +7,7 @@ , makeWrapper , unzip , xdg-utils +, writeScript }: stdenvNoCC.mkDerivation rec { @@ -22,6 +23,16 @@ stdenvNoCC.mkDerivation rec { hash = "sha256-7Eh5XhZKs2DAQC33ICUG+mgjEU7H3jdYZSeiHNJ6I6Q="; }; + passthru.updateScript = writeScript "update-irpf" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl pup common-updater-scripts + + set -eu -o pipefail + #parses the html with the install links for the containers that contain the instalation files of type 'file archive, gets the version number of each version, and sorts to get the latest one on the website + version="$(curl -s https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/download/pgd/dirpf | pup '.rfb_container .rfb_ositem:parent-of(.fa-file-archive) attr{href}' | grep -oP "IRPF\K(\d+)-[\d.]+\d" | sort -r | head -1)" + update-source-version irpf "$version" + ''; + nativeBuildInputs = [ unzip makeWrapper copyDesktopItems ]; desktopItems = [ From df0ba5c92d6853e48101814f585af52df253850e Mon Sep 17 00:00:00 2001 From: loco-choco Date: Fri, 29 Mar 2024 20:18:47 -0300 Subject: [PATCH 2/4] irpf: move derivation to /pkgs/by-name/ir/irpf --- .../finance/irpf/default.nix => by-name/ir/irpf/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{applications/finance/irpf/default.nix => by-name/ir/irpf/package.nix} (100%) diff --git a/pkgs/applications/finance/irpf/default.nix b/pkgs/by-name/ir/irpf/package.nix similarity index 100% rename from pkgs/applications/finance/irpf/default.nix rename to pkgs/by-name/ir/irpf/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7e871887f3ec..d9a80db0b581 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5547,8 +5547,6 @@ with pkgs; iotools = callPackage ../tools/misc/iotools { }; - irpf = callPackage ../applications/finance/irpf { }; - jellycli = callPackage ../applications/audio/jellycli { }; jellyfin = callPackage ../servers/jellyfin { From 0bd8b0ed2f639f9d37cb275ea540ebb35ca31a39 Mon Sep 17 00:00:00 2001 From: loco-choco Date: Fri, 29 Mar 2024 20:23:46 -0300 Subject: [PATCH 3/4] irpf: change from using rec to finalAttrs syntax --- pkgs/by-name/ir/irpf/package.nix | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/by-name/ir/irpf/package.nix b/pkgs/by-name/ir/irpf/package.nix index 4b358c62a13e..1fc304f6f680 100644 --- a/pkgs/by-name/ir/irpf/package.nix +++ b/pkgs/by-name/ir/irpf/package.nix @@ -10,16 +10,16 @@ , writeScript }: -stdenvNoCC.mkDerivation rec { +stdenvNoCC.mkDerivation (finalAttrs: { pname = "irpf"; version = "2024-1.1"; # https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/download/pgd/dirpf # Para outros sistemas operacionais -> Multi src = let - year = lib.head (lib.splitVersion version); + year = lib.head (lib.splitVersion finalAttrs.version); in fetchzip { - url = "https://downloadirpf.receita.fazenda.gov.br/irpf/${year}/irpf/arquivos/IRPF${version}.zip"; + url = "https://downloadirpf.receita.fazenda.gov.br/irpf/${year}/irpf/arquivos/IRPF${finalAttrs.version}.zip"; hash = "sha256-7Eh5XhZKs2DAQC33ICUG+mgjEU7H3jdYZSeiHNJ6I6Q="; }; @@ -37,8 +37,8 @@ stdenvNoCC.mkDerivation rec { desktopItems = [ (makeDesktopItem { - name = pname; - exec = pname; + name = finalAttrs.pname; + exec = finalAttrs.pname; icon = "rfb64"; desktopName = "Imposto de Renda Pessoa Física"; comment = "Programa Oficial da Receita para elaboração do IRPF"; @@ -49,7 +49,7 @@ stdenvNoCC.mkDerivation rec { installPhase = '' runHook preInstall - BASEDIR="$out/share/${pname}" + BASEDIR="$out/share/${finalAttrs.pname}" mkdir -p "$BASEDIR" cp --no-preserve=mode -r help lib lib-modulos "$BASEDIR" @@ -57,10 +57,10 @@ stdenvNoCC.mkDerivation rec { install -Dm644 irpf.jar Leia-me.htm offline.png online.png pgd-updater.jar "$BASEDIR" # make xdg-open overrideable at runtime - makeWrapper ${jdk11}/bin/java $out/bin/${pname} \ + makeWrapper ${jdk11}/bin/java $out/bin/${finalAttrs.pname} \ --add-flags "-Dawt.useSystemAAFontSettings=on" \ --add-flags "-Dswing.aatext=true" \ - --add-flags "-jar $BASEDIR/${pname}.jar" \ + --add-flags "-jar $BASEDIR/${finalAttrs.pname}.jar" \ --suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \ --set _JAVA_AWT_WM_NONREPARENTING 1 \ --set AWT_TOOLKIT MToolkit @@ -85,4 +85,4 @@ stdenvNoCC.mkDerivation rec { maintainers = with maintainers; [ atila bryanasdev000 ]; mainProgram = "irpf"; }; -} +}) From cef69659f9e0143d47381d3a4df56fe35f4b2edf Mon Sep 17 00:00:00 2001 From: Locochoco Date: Fri, 21 Jun 2024 22:11:19 -0300 Subject: [PATCH 4/4] irpf: 2024-1.1 -> 2024-1.2 --- pkgs/by-name/ir/irpf/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ir/irpf/package.nix b/pkgs/by-name/ir/irpf/package.nix index 1fc304f6f680..ad21b37c5c73 100644 --- a/pkgs/by-name/ir/irpf/package.nix +++ b/pkgs/by-name/ir/irpf/package.nix @@ -12,7 +12,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "irpf"; - version = "2024-1.1"; + version = "2024-1.2"; # https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/download/pgd/dirpf # Para outros sistemas operacionais -> Multi @@ -20,7 +20,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { year = lib.head (lib.splitVersion finalAttrs.version); in fetchzip { url = "https://downloadirpf.receita.fazenda.gov.br/irpf/${year}/irpf/arquivos/IRPF${finalAttrs.version}.zip"; - hash = "sha256-7Eh5XhZKs2DAQC33ICUG+mgjEU7H3jdYZSeiHNJ6I6Q="; + hash = "sha256-gwYWNnvpGej9B1EyFswYGYXh4i4wiyOG67VN1PWX3A0="; }; passthru.updateScript = writeScript "update-irpf" ''