commit 3ee7e124cf1d9cbed469ca5fc6af0540a4ef79c7
parent c0fe6d1dd5f7f7614a2b69fb55ea55385b47d187
Author: Nikolay Korotkiy <sikmir@disroot.org>
Date: Sun, 8 Feb 2026 21:31:57 +0400
Add fietsboek
Diffstat:
6 files changed, 228 insertions(+), 0 deletions(-)
diff --git a/pkgs/by-name/fi/fietsboek/package.nix b/pkgs/by-name/fi/fietsboek/package.nix
@@ -0,0 +1,73 @@
+{
+ lib,
+ fetchFromGitea,
+ python3Packages,
+ pyramid-debugtoolbar,
+ pyramid-retry,
+ pyramid-tm,
+ zope-sqlalchemy,
+}:
+
+python3Packages.buildPythonApplication (finalAttrs: {
+ pname = "fietsboek";
+ version = "0.12.1";
+ pyproject = true;
+
+ src = fetchFromGitea {
+ domain = "codeberg.org";
+ owner = "dunj3";
+ repo = "fietsboek";
+ tag = "v${finalAttrs.version}";
+ hash = "sha256-48ORARprpXN+2JJku+QMz0mLNZT0iWzvMXwFRylsUjU=";
+ };
+
+ build-system = with python3Packages; [ poetry-core ];
+
+ pythonRelaxDeps = true;
+
+ dependencies = with python3Packages; [
+ pyramid
+ pyramid-jinja2
+ pyramid-debugtoolbar
+ pyramid-retry
+ pyramid-tm
+ waitress
+ sqlalchemy
+ alembic
+ transaction
+ zope-sqlalchemy
+ redis
+ babel
+ cryptography
+ gpxpy
+ markdown
+ nh3
+ click
+ requests
+ pydantic
+ termcolor
+ filelock
+ brotli
+ click-option-group
+ fitparse
+ pillow
+ typst
+ matplotlib
+ ];
+
+ nativeCheckInputs = with python3Packages; [
+ pytestCheckHook
+ pytest-cov-stub
+ pytest-playwright
+ webtest
+ ];
+
+ doCheck= false;
+
+ meta = {
+ description = "GPX file sharing website";
+ homepage = "https://fietsboek.org/";
+ license = lib.licenses.agpl3Plus;
+ maintainers = [ lib.maintainers.sikmir ];
+ };
+})
diff --git a/pkgs/default.nix b/pkgs/default.nix
@@ -78,6 +78,9 @@ lib.makeScope newScope (
pyarrow_ops = callPackage ./development/python-modules/pyarrow_ops { };
pycouchdb = callPackage ./development/python-modules/pycouchdb { };
pymbtiles = callPackage ./development/python-modules/pymbtiles { };
+ pyramid-debugtoolbar = callPackage ./development/python-modules/pyramid-debugtoolbar { };
+ pyramid-retry = callPackage ./development/python-modules/pyramid-retry { };
+ pyramid-tm = callPackage ./development/python-modules/pyramid-tm { };
pytest-docker-fixtures = callPackage ./development/python-modules/pytest-docker-fixtures { };
pytest-mp = callPackage ./development/python-modules/pytest-mp { };
pytest-shell-utilities = callPackage ./development/python-modules/pytest-shell-utilities { };
@@ -85,6 +88,7 @@ lib.makeScope newScope (
python-cmr = callPackage ./development/python-modules/python-cmr { };
s2sphere = callPackage ./development/python-modules/s2sphere { };
tinynetrc = callPackage ./development/python-modules/tinynetrc { };
+ zope-sqlalchemy = callPackage ./development/python-modules/zope-sqlalchemy { };
### EMBEDDED
diff --git a/pkgs/development/python-modules/pyramid-debugtoolbar/default.nix b/pkgs/development/python-modules/pyramid-debugtoolbar/default.nix
@@ -0,0 +1,40 @@
+{
+ lib,
+ python3Packages,
+}:
+
+python3Packages.buildPythonPackage (finalAttrs: {
+ pname = "pyramid-debugtoolbar";
+ version = "4.12.1";
+ pyproject = true;
+
+ src = python3Packages.fetchPypi {
+ pname = "pyramid_debugtoolbar";
+ inherit (finalAttrs) version;
+ hash = "sha256-ceiI00nIX8yhKz5txMeujj8CodWswFFU/Zuox/ZhtD0=";
+ };
+
+ build-system = with python3Packages; [ setuptools ];
+
+ dependencies = with python3Packages; [
+ pyramid
+ pyramid-mako
+ ];
+
+ nativeCheckInputs = with python3Packages; [
+ pytestCheckHook
+ sqlalchemy
+ webtest
+ ];
+
+ pythonImportsCheck = [ "pyramid_debugtoolbar" ];
+
+ disabledTests = [ "test_panel" ];
+
+ meta = {
+ description = "Pyramid debug toolbar";
+ homepage = "https://github.com/Pylons/pyramid_debugtoolbar";
+ license = lib.licenses.bsd3;
+ maintainers = [ lib.maintainers.sikmir ];
+ };
+})
diff --git a/pkgs/development/python-modules/pyramid-retry/default.nix b/pkgs/development/python-modules/pyramid-retry/default.nix
@@ -0,0 +1,36 @@
+{
+ lib,
+ python3Packages,
+}:
+
+python3Packages.buildPythonPackage (finalAttrs: {
+ pname = "pyramid-retry";
+ version = "2.1.1";
+ pyproject = true;
+
+ src = python3Packages.fetchPypi {
+ pname = "pyramid_retry";
+ inherit (finalAttrs) version;
+ hash = "sha256-uqgnauaLq60J5fL5TvxPdCHzuPtSYVHfUiBS+M0+wMk=";
+ };
+
+ build-system = with python3Packages; [ setuptools ];
+
+ dependencies = with python3Packages; [
+ pyramid
+ ];
+
+ nativeCheckInputs = with python3Packages; [
+ pytestCheckHook
+ webtest
+ ];
+
+ pythonImportsCheck = [ "pyramid_retry" ];
+
+ meta = {
+ description = "An execution policy for pyramid that handles retryable errors";
+ homepage = "https://github.com/Pylons/pyramid_retry";
+ license = lib.licenses.bsd0;
+ maintainers = [ lib.maintainers.sikmir ];
+ };
+})
diff --git a/pkgs/development/python-modules/pyramid-tm/default.nix b/pkgs/development/python-modules/pyramid-tm/default.nix
@@ -0,0 +1,38 @@
+{
+ lib,
+ python3Packages,
+}:
+
+python3Packages.buildPythonPackage (finalAttrs: {
+ pname = "pyramid-tm";
+ version = "2.6";
+ pyproject = true;
+
+ src = python3Packages.fetchPypi {
+ pname = "pyramid_tm";
+ inherit (finalAttrs) version;
+ hash = "sha256-gUjSGRKFKAyaDCPm3xAYs1FLTO8CEVuHLdA1Ck14cJw=";
+ };
+
+ build-system = with python3Packages; [ setuptools ];
+
+ dependencies = with python3Packages; [
+ pyramid
+ transaction
+ ];
+
+ nativeCheckInputs = with python3Packages; [
+ pytestCheckHook
+ pytest-cov-stub
+ webtest
+ ];
+
+ pythonImportsCheck = [ "pyramid_tm" ];
+
+ meta = {
+ description = "A package which allows Pyramid requests to join the active transaction";
+ homepage = "https://github.com/Pylons/pyramid_tm";
+ license = lib.licenses.bsd3;
+ maintainers = [ lib.maintainers.sikmir ];
+ };
+})
diff --git a/pkgs/development/python-modules/zope-sqlalchemy/default.nix b/pkgs/development/python-modules/zope-sqlalchemy/default.nix
@@ -0,0 +1,37 @@
+{
+ lib,
+ python3Packages,
+ fetchFromGitHub,
+}:
+
+python3Packages.buildPythonPackage (finalAttrs: {
+ pname = "zope-sqlalchemy";
+ version = "4.1";
+ pyproject = true;
+
+ src = fetchFromGitHub {
+ owner = "zopefoundation";
+ repo = "zope.sqlalchemy";
+ tag = finalAttrs.version;
+ hash = "sha256-E8Z1ljtF66K7XVfIU9pmXVYduzMOGaemNWmN1ysSm1w=";
+ };
+
+ build-system = with python3Packages; [ setuptools ];
+
+ dependencies = with python3Packages; [
+ sqlalchemy
+ transaction
+ zope-interface
+ ];
+
+ pythonImportsCheck = [ "zope.sqlalchemy" ];
+
+ pythonNamespaces = [ "zope" ];
+
+ meta = {
+ description = "Integration of SQLAlchemy with transaction management";
+ homepage = "https://github.com/zopefoundation/zope.sqlalchemy";
+ license = lib.licenses.zpl21;
+ maintainers = [ lib.maintainers.sikmir ];
+ };
+})