Upstream bakes their API tokens for external services (like Strava) in its source. When users want to connect golden-cheetah to the external services, they fail and there is no option to add own API keys during runtime. So either the user modifies the derivation to add their own API keys during build, or we add the pre-build AppImage to NixOS. This has the developers API keys built-in, so the connection to external services work as expected. Signed-off-by: Florian Brandes <florian.brandes@posteo.de> Co-authored-by: Adam Stephens <2071575+adamcstephens@users.noreply.github.com>
36 lines
1.1 KiB
Nix
36 lines
1.1 KiB
Nix
{ appimageTools, lib, fetchurl, stdenv }:
|
|
let
|
|
|
|
pname = "golden-cheetah";
|
|
version = "3.6-RC3";
|
|
|
|
src = fetchurl {
|
|
url = "https://github.com/GoldenCheetah/GoldenCheetah/releases/download/v${version}/GoldenCheetah_v3.6-DEV_x64.AppImage";
|
|
hash = "sha256-Bp1IFql96tHc5ssg9nhTrFQqNtaM+5iYJguPGkguvns=";
|
|
};
|
|
|
|
appimageContents = appimageTools.extract { inherit pname src version; };
|
|
in
|
|
appimageTools.wrapType2 {
|
|
inherit pname src version;
|
|
|
|
extraPkgs = pkgs: with pkgs; [ R zlib libusb-compat-0_1 ];
|
|
|
|
extraInstallCommands = ''
|
|
mv $out/bin/${pname}-${version} $out/bin/GoldenCheetah
|
|
mkdir -p $out/share/applications
|
|
mkdir -p $out/share/pixmaps
|
|
cp ${appimageContents}/GoldenCheetah.desktop $out/share/applications/
|
|
cp ${appimageContents}/gc.png $out/share/pixmaps/
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Performance software for cyclists, runners and triathletes. This version includes the API Tokens for e.g. Strava";
|
|
platforms = platforms.linux;
|
|
broken = !stdenv.isx86_64;
|
|
maintainers = with maintainers; [ gador ];
|
|
license = licenses.gpl2Plus;
|
|
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
|
};
|
|
}
|