diff options
Diffstat (limited to '')
| -rw-r--r-- | trivionomicon/pkgs/athena-bccr/0001-Remove-CheckUpdatePlugin-from-default-list.patch (renamed from pkgs/athena-bccr/0001-Remove-CheckUpdatePlugin-from-default-list.patch) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/athena-bccr/LaunchGaudi.java (renamed from pkgs/athena-bccr/LaunchGaudi.java) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/athena-bccr/default.nix (renamed from pkgs/athena-bccr/default.nix) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/athena-bccr/firmador.nix (renamed from pkgs/athena-bccr/firmador.nix) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/athena-bccr/gaudi-env.nix (renamed from pkgs/athena-bccr/gaudi-env.nix) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/athena-bccr/releases.nix | 33 | ||||
| -rw-r--r-- | trivionomicon/pkgs/athena-bccr/unwrapped.nix (renamed from pkgs/athena-bccr/unwrapped.nix) | 3 | ||||
| -rw-r--r-- | trivionomicon/pkgs/default.nix | 13 | ||||
| -rw-r--r-- | trivionomicon/pkgs/ibkr-tws/default.nix | 106 | ||||
| -rw-r--r-- | trivionomicon/pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch (renamed from pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/snapborg/default.nix (renamed from pkgs/snapborg/default.nix) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/socialpredict/0001-Support-POSTGRES_URL-for-overriding-the-PG-DSN.patch (renamed from pkgs/socialpredict/0001-Support-POSTGRES_URL-for-overriding-the-PG-DSN.patch) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/socialpredict/0002-Fix-API_URL-api-v0-.-API_URL-v0.patch (renamed from pkgs/socialpredict/0002-Fix-API_URL-api-v0-.-API_URL-v0.patch) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/socialpredict/default.nix (renamed from pkgs/socialpredict/default.nix) | 0 | ||||
| -rw-r--r-- | trivionomicon/pkgs/spliit/default.nix | 76 |
15 files changed, 230 insertions, 1 deletions
diff --git a/pkgs/athena-bccr/0001-Remove-CheckUpdatePlugin-from-default-list.patch b/trivionomicon/pkgs/athena-bccr/0001-Remove-CheckUpdatePlugin-from-default-list.patch index a15896a..a15896a 100644 --- a/pkgs/athena-bccr/0001-Remove-CheckUpdatePlugin-from-default-list.patch +++ b/trivionomicon/pkgs/athena-bccr/0001-Remove-CheckUpdatePlugin-from-default-list.patch diff --git a/pkgs/athena-bccr/LaunchGaudi.java b/trivionomicon/pkgs/athena-bccr/LaunchGaudi.java index e4bcdbf..e4bcdbf 100644 --- a/pkgs/athena-bccr/LaunchGaudi.java +++ b/trivionomicon/pkgs/athena-bccr/LaunchGaudi.java diff --git a/pkgs/athena-bccr/default.nix b/trivionomicon/pkgs/athena-bccr/default.nix index 038220b..038220b 100644 --- a/pkgs/athena-bccr/default.nix +++ b/trivionomicon/pkgs/athena-bccr/default.nix diff --git a/pkgs/athena-bccr/firmador.nix b/trivionomicon/pkgs/athena-bccr/firmador.nix index e8e0a2d..e8e0a2d 100644 --- a/pkgs/athena-bccr/firmador.nix +++ b/trivionomicon/pkgs/athena-bccr/firmador.nix diff --git a/pkgs/athena-bccr/gaudi-env.nix b/trivionomicon/pkgs/athena-bccr/gaudi-env.nix index db79641..db79641 100644 --- a/pkgs/athena-bccr/gaudi-env.nix +++ b/trivionomicon/pkgs/athena-bccr/gaudi-env.nix diff --git a/trivionomicon/pkgs/athena-bccr/releases.nix b/trivionomicon/pkgs/athena-bccr/releases.nix new file mode 100644 index 0000000..203e57c --- /dev/null +++ b/trivionomicon/pkgs/athena-bccr/releases.nix @@ -0,0 +1,33 @@ +{ + "athena" = { + latest = "deb64-rev26"; + + "deb64-rev26" = { + # nix hash convert --hash-algo sha256 --from base16 --to sri $(sha256sum sfd_ClientesLinux_DEB64_Rev26.zip | cut -d' ' -f1) + hash = "sha256-ZPWP9TqJQ5coJAPzUSiaXKVItBWlqFM4smCjOf+gqQM="; + filename = "sfd_ClientesLinux_DEB64_Rev26.zip"; + basename = "sfd_ClientesLinux_DEB64_Rev26"; + + srcPaths = { + gaudi = "Firma Digital/Agente GAUDI/agente-gaudi_20.0_amd64.deb"; + idprotect = "Firma Digital/PinTool/IDProtect PINTool 7.24.02/DEB/idprotectclient_7.24.02-0_amd64.deb"; + }; + }; + }; + + "idopte" = { + latest = "deb64-rev26.2"; + + "deb64-rev26.2" = { + # nix hash convert --hash-algo sha256 --from base16 --to sri $(sha256sum sfd_ClientesLinux_DEB64_Ubuntu24_rev26_02 | cut -d' ' -f1) + hash = "sha256-DNzP0YRnuUbfKLhi7JeQCirdGx4kM7ROqHDkTuVs0mA="; + filename = "sfd_ClientesLinux_DEB64_Ubuntu24_rev26_02.zip"; + basename = "sfd_ClientesLinux_DEB64_Ubuntu24_26_02"; + + srcPaths = { + gaudi = "Firma Digital/Agente GAUDI/agente-gaudi_27.0_amd64.deb"; + idopte = "Firma Digital/Idopte/Idopte_6.23.44.0_ubun24_amd64.deb"; + }; + }; + }; +} diff --git a/pkgs/athena-bccr/unwrapped.nix b/trivionomicon/pkgs/athena-bccr/unwrapped.nix index bf99a84..dc9f142 100644 --- a/pkgs/athena-bccr/unwrapped.nix +++ b/trivionomicon/pkgs/athena-bccr/unwrapped.nix @@ -5,9 +5,10 @@ requireFile, release, gaudiHash ? null, + vendor, ... }: let - inherit (release) srcPaths vendor; + inherit (release) srcPaths; url = if mirror != null diff --git a/trivionomicon/pkgs/default.nix b/trivionomicon/pkgs/default.nix new file mode 100644 index 0000000..255a365 --- /dev/null +++ b/trivionomicon/pkgs/default.nix @@ -0,0 +1,13 @@ +final: prev: +with prev.lib; let + inherit (final) callPackage; +in { + override = {}; + + athena-bccr = callPackage ./athena-bccr {vendor = "athena";}; + ibkr-tws = callPackage ./ibkr-tws {}; + idopte-bccr = callPackage ./athena-bccr {vendor = "idopte";}; + snapborg = final.python3Packages.callPackage ./snapborg {}; + socialpredict = callPackage ./socialpredict {}; + spliit = callPackage ./spliit {}; +} diff --git a/trivionomicon/pkgs/ibkr-tws/default.nix b/trivionomicon/pkgs/ibkr-tws/default.nix new file mode 100644 index 0000000..ea3e94b --- /dev/null +++ b/trivionomicon/pkgs/ibkr-tws/default.nix @@ -0,0 +1,106 @@ +{ + lib, + makeWrapper, + openjdk, + requireFile, + stdenv, +}: let + version = "10.44.1g"; + + jdk = openjdk.override { + enableJavaFX = true; + }; + + removeJavaVersionCheck = file: '' + # Lie about the openjdk version to skip the version check + sed -i 's/\(read_db_entry || create_db_entry \$2\)/\1; ver_major=17; ver_minor=0; ver_micro=16/' ${file} + ''; +in + stdenv.mkDerivation { + pname = "ibkr-tws"; + inherit version; + + src = requireFile { + name = "tws-${version}-standalone-linux-x64.sh"; + url = "https://www.interactivebrokers.com/en/trading/download-tws.php?p=offline-latest"; + + # 1. Rename 'tws-latest-standalone-linux-x64.sh' to 'tws-${version}-standalone-linux-x64.sh' + # 2. nix hash convert --hash-algo sha256 --from base16 --to sri $(sha256sum tws-${version}-standalone-linux-x64.sh | cut -d' ' -f1) + hash = "sha256-UfyfTHOcPiwTof0ZMhV1haX7gyb08v7U2A12VjAny7c="; + }; + + nativeBuildInputs = [ + makeWrapper + ]; + + unpackPhase = '' + runHook preUnpack + + cp $src bundle.sh + chmod +x bundle.sh + + runHook postUnpack + ''; + + patchPhase = '' + runHook prePatch + + ${removeJavaVersionCheck "bundle.sh"} + + runHook postPatch + ''; + + preBuild = '' + export INSTALL4J_NO_DB=true + export INSTALL4J_JAVA_HOME=${jdk} + export INSTALL4J_DISABLE_BUNDLED_JRE=true + ''; + + buildPhase = '' + runHook preBuild + + # Where should Trader Workstation 10.44 be installed?: $out + # Run Trader Workstation 10.44? Yes [y], No [n, Enter]: n + echo -e "$out/lib/tws\nn" | ./bundle.sh + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + mkdir -p "$out/bin" "$out/share/applications" + + ${removeJavaVersionCheck "$out/lib/tws/tws"} + makeWrapper \ + "$out/lib/tws/tws" "$out/bin/tws" \ + --set INSTALL4J_NO_DB true \ + --set INSTALL4J_JAVA_HOME ${jdk} + + mv "$out/lib/tws/.install4j/tws.png" "$out/lib/tws" + + for path in $out/lib/tws/*.desktop; do + target="$(readlink -f "$path")" + mv "$target" "$out/share/applications/$(basename "$path")" + rm -f "$path" + done + + sed -i \ + 's@$out/lib/tws/tws\>@$out/bin/tws@; s@$out/lib/tws/.install4j/tws.png@$out/lib/tws/tws.png@' \ + $out/share/applications/*.desktop + + #TODO + sed -i \ + 's@/build/Jts@/tmp/Jts@g' \ + $out/lib/tws/.install4j/{i4jparams.conf,response.varfile} + + rm -f "$out/lib/tws/uninstall" $out/lib/tws/.install4j/*.log + + runHook postInstall + ''; + + meta = { + license = lib.licenses.unfree; + mainProgram = "tws"; + }; + } diff --git a/pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch b/trivionomicon/pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch index 33f7a0c..33f7a0c 100644 --- a/pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch +++ b/trivionomicon/pkgs/snapborg/0001-Remove-env-arg-from-subprocess-calls.patch diff --git a/pkgs/snapborg/default.nix b/trivionomicon/pkgs/snapborg/default.nix index 271be5c..271be5c 100644 --- a/pkgs/snapborg/default.nix +++ b/trivionomicon/pkgs/snapborg/default.nix diff --git a/pkgs/socialpredict/0001-Support-POSTGRES_URL-for-overriding-the-PG-DSN.patch b/trivionomicon/pkgs/socialpredict/0001-Support-POSTGRES_URL-for-overriding-the-PG-DSN.patch index 69dc660..69dc660 100644 --- a/pkgs/socialpredict/0001-Support-POSTGRES_URL-for-overriding-the-PG-DSN.patch +++ b/trivionomicon/pkgs/socialpredict/0001-Support-POSTGRES_URL-for-overriding-the-PG-DSN.patch diff --git a/pkgs/socialpredict/0002-Fix-API_URL-api-v0-.-API_URL-v0.patch b/trivionomicon/pkgs/socialpredict/0002-Fix-API_URL-api-v0-.-API_URL-v0.patch index 09b0d70..09b0d70 100644 --- a/pkgs/socialpredict/0002-Fix-API_URL-api-v0-.-API_URL-v0.patch +++ b/trivionomicon/pkgs/socialpredict/0002-Fix-API_URL-api-v0-.-API_URL-v0.patch diff --git a/pkgs/socialpredict/default.nix b/trivionomicon/pkgs/socialpredict/default.nix index 22dc6a9..22dc6a9 100644 --- a/pkgs/socialpredict/default.nix +++ b/trivionomicon/pkgs/socialpredict/default.nix diff --git a/trivionomicon/pkgs/spliit/default.nix b/trivionomicon/pkgs/spliit/default.nix new file mode 100644 index 0000000..280e820 --- /dev/null +++ b/trivionomicon/pkgs/spliit/default.nix @@ -0,0 +1,76 @@ +{ + buildNpmPackage, + fetchFromGitHub, + nodePackages, + lib, + writeShellScriptBin, + pkgs, +}: let + schemaEngine = "${pkgs.prisma-engines}/bin/schema-engine"; + queryEngineBin = "${pkgs.prisma-engines}/bin/query-engine"; + queryEngineLib = "${pkgs.prisma-engines}/lib/libquery_engine.node"; + buildFlags = ["--ignore-scripts"]; +in + buildNpmPackage { + pname = "spliit2"; + version = "master-20250420"; + + src = fetchFromGitHub { + repo = "spliit"; + owner = "spliit-app"; + + rev = "a11efc79c13298c0d282e47496d132538752405f"; + hash = "sha256-v4gaPzLzBbbqw/LDYxe1fiyficcrqcGOop23YPiTrdc="; + }; + + npmDepsHash = "sha256-sd0/7ruNUFxUKTeTwx/v8Vc/G3llkXP6RSDE78h3qVU="; + + nativeBuildInputs = [pkgs.openssl]; + + npmRebuildFlags = buildFlags; + + PRISMA_SCHEMA_ENGINE_BINARY = schemaEngine; + PRISMA_QUERY_ENGINE_BINARY = queryEngineBin; + PRISMA_QUERY_ENGINE_LIBRARY = queryEngineLib; + + preBuild = '' + cp -v scripts/build.env .env + + npx prisma generate + ''; + + npmBuildFlags = buildFlags; + + postInstall = '' + cp -r .next public package.json next.config.mjs $out/lib/node_modules/spliit2 + + install -Dvm755 -t $out/bin ${lib.getExe (writeShellScriptBin "spliit2" '' + set -euxo pipefail + + cd @out@/lib/node_modules/spliit2 + + export PATH="$PWD/node_modules/.bin:$PATH" + export NEXT_TELEMETRY_DISABLED=1 + + export PRISMA_SCHEMA_ENGINE_BINARY="${schemaEngine}" + export PRISMA_QUERY_ENGINE_BINARY="${queryEngineBin}" + export PRISMA_QUERY_ENGINE_LIBRARY="${queryEngineLib}" + + prisma migrate deploy + next start + '')} + + substituteInPlace $out/bin/spliit2 \ + --replace @out@ $out + + wrapProgram $out/bin/spliit2 \ + --prefix PATH : ${lib.makeBinPath [pkgs.openssl]} + ''; + + meta = { + description = "Free and Open Source Alternative to Splitwise. Share expenses with your friends and family."; + homepage = "https://spliit.app"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; []; + }; + } |
