fit-trackee: init at 0.7.15
This commit is contained in:
parent
bec31afea7
commit
9478a7ef82
2 changed files with 107 additions and 0 deletions
105
pkgs/servers/geospatial/fit-trackee/default.nix
Normal file
105
pkgs/servers/geospatial/fit-trackee/default.nix
Normal file
|
@ -0,0 +1,105 @@
|
||||||
|
{ lib
|
||||||
|
, python3
|
||||||
|
, fetchFromGitHub
|
||||||
|
, fetchPypi
|
||||||
|
, postgresql
|
||||||
|
, postgresqlTestHook
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
python = python3.override {
|
||||||
|
packageOverrides = self: super: {
|
||||||
|
sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec {
|
||||||
|
version = "1.4.49";
|
||||||
|
src = fetchPypi {
|
||||||
|
pname = "SQLAlchemy";
|
||||||
|
inherit version;
|
||||||
|
hash = "sha256-Bv8ly64ww5bEt3N0ZPKn/Deme32kCZk7GCsCTOyArtk=";
|
||||||
|
};
|
||||||
|
# Remove "test/typing" that does not exist
|
||||||
|
disabledTestPaths = [
|
||||||
|
"test/aaa_profiling"
|
||||||
|
"test/ext/mypy"
|
||||||
|
];
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
in
|
||||||
|
python.pkgs.buildPythonApplication rec {
|
||||||
|
pname = "fit-trackee";
|
||||||
|
version = "0.7.22";
|
||||||
|
format = "pyproject";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "SamR1";
|
||||||
|
repo = "FitTrackee";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-aPQ8jLssN9nx0Bpd/44E3sQi2w0cR8ecG76DJjreeHA=";
|
||||||
|
};
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace pyproject.toml \
|
||||||
|
--replace psycopg2-binary psycopg2 \
|
||||||
|
--replace 'poetry>=0.12' 'poetry-core' \
|
||||||
|
--replace 'poetry.masonry.api' 'poetry.core.masonry.api'
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
python3.pkgs.poetry-core
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = with python.pkgs; [
|
||||||
|
authlib
|
||||||
|
babel
|
||||||
|
dramatiq
|
||||||
|
flask
|
||||||
|
flask-bcrypt
|
||||||
|
flask-dramatiq
|
||||||
|
flask-limiter
|
||||||
|
flask-migrate
|
||||||
|
gpxpy
|
||||||
|
gunicorn
|
||||||
|
humanize
|
||||||
|
psycopg2
|
||||||
|
pyjwt
|
||||||
|
pyopenssl
|
||||||
|
pytz
|
||||||
|
shortuuid
|
||||||
|
sqlalchemy
|
||||||
|
staticmap
|
||||||
|
ua-parser
|
||||||
|
] ++ dramatiq.optional-dependencies.redis;
|
||||||
|
|
||||||
|
pythonImportsCheck = [ "fittrackee" ];
|
||||||
|
|
||||||
|
nativeCheckInputs = with python.pkgs; [
|
||||||
|
pytestCheckHook
|
||||||
|
freezegun
|
||||||
|
postgresqlTestHook
|
||||||
|
postgresql
|
||||||
|
];
|
||||||
|
|
||||||
|
pytestFlagsArray = [
|
||||||
|
"fittrackee"
|
||||||
|
];
|
||||||
|
|
||||||
|
postgresqlTestSetupPost = ''
|
||||||
|
export DATABASE_TEST_URL=postgresql://$PGUSER/$PGDATABAS?host=$PGHOST
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
mkdir -p $out/var/share/fittrackee-instance
|
||||||
|
'';
|
||||||
|
|
||||||
|
preCheck = ''
|
||||||
|
export TMP=$(mktemp -d)
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Self-hosted outdoor activity tracker :bicyclist";
|
||||||
|
homepage = "https://github.com/SamR1/FitTrackee";
|
||||||
|
changelog = "https://github.com/SamR1/FitTrackee/blob/${src.rev}/CHANGELOG.md";
|
||||||
|
license = licenses.agpl3Only;
|
||||||
|
maintainers = with maintainers; [ traxys ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -27708,6 +27708,8 @@ with pkgs;
|
||||||
|
|
||||||
### SERVERS / GEOSPATIAL
|
### SERVERS / GEOSPATIAL
|
||||||
|
|
||||||
|
fit-trackee = callPackage ../servers/geospatial/fit-trackee { };
|
||||||
|
|
||||||
geoserver = callPackage ../servers/geospatial/geoserver { };
|
geoserver = callPackage ../servers/geospatial/geoserver { };
|
||||||
|
|
||||||
mapcache = callPackage ../servers/geospatial/mapcache { };
|
mapcache = callPackage ../servers/geospatial/mapcache { };
|
||||||
|
|
Loading…
Reference in a new issue