froide: 0-unstable-2024-11-12 -> 0-unstable-2025-04-25 (#402061)

This commit is contained in:
Jonas Heinrich 2025-05-07 08:14:07 +02:00 committed by GitHub
commit a2fe2cfd77
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 72 additions and 38 deletions

View File

@ -51,9 +51,13 @@
testers,
enableShared ? !stdenv.hostPlatform.isStatic,
enableFlight ? stdenv.buildPlatform == stdenv.hostPlatform,
enableJemalloc ? !stdenv.hostPlatform.isDarwin && !stdenv.hostPlatform.isAarch64,
# Disable also on RiscV
# configure: error: cannot determine number of significant virtual address bits
enableJemalloc ?
!stdenv.hostPlatform.isDarwin && !stdenv.hostPlatform.isAarch64 && !stdenv.hostPlatform.isRiscV64,
enableS3 ? true,
enableGcs ? !stdenv.hostPlatform.isDarwin,
# google-cloud-cpp fails to build on RiscV
enableGcs ? !stdenv.hostPlatform.isDarwin && !stdenv.hostPlatform.isRiscV64,
}:
let

View File

@ -1,11 +1,12 @@
{
stdenv,
lib,
python3Packages,
fetchFromGitHub,
makeWrapper,
gdal,
geos,
pnpm_9,
pnpm,
nodejs,
postgresql,
postgresqlTestHook,
@ -20,20 +21,21 @@ let
in
python.pkgs.buildPythonApplication rec {
pname = "froide";
version = "0-unstable-2024-11-22";
version = "0-unstable-2025-04-25";
pyproject = true;
src = fetchFromGitHub {
owner = "okfde";
repo = "froide";
rev = "a90f5c4d40b46a161111eefdc84e5214e85715b0";
hash = "sha256-Q+iNI3yqxqAtDONHY+SaZeMyjY6hqTxwy7YmiiY94+0=";
rev = "9e4838fc5f17a0506af42ad5fd1ebc66cff4b92a";
hash = "sha256-0EC6oCaiK7gw5ikemskiK3qOlflGHzlG4giDQNj9tBQ=";
};
patches = [ ./django_42_storages.patch ];
# Relax dependency pinning
# Channels: https://github.com/okfde/froide/issues/995
pythonRelaxDeps = [
"pikepdf"
"channels"
];
@ -42,7 +44,7 @@ python.pkgs.buildPythonApplication rec {
nativeBuildInputs = [
makeWrapper
nodejs
pnpm_9.configHook
pnpm.configHook
];
dependencies = with python.pkgs; [
@ -75,6 +77,7 @@ python.pkgs.buildPythonApplication rec {
djangorestframework
djangorestframework-csv
djangorestframework-jsonp
dogtail
drf-spectacular
drf-spectacular-sidecar
easy-thumbnails
@ -99,9 +102,9 @@ python.pkgs.buildPythonApplication rec {
websockets
];
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = pnpm.fetchDeps {
inherit pname version src;
hash = "sha256-DMoaXNm5S64XBERHFnFM6IKBkzXRGDEYWSTruccK9Hc=";
hash = "sha256-IeuQoiI/r9AKLZgKkZx0C+qE9ueWuC39Y77MB08zSAc=";
};
postBuild = ''
@ -155,14 +158,20 @@ python.pkgs.buildPythonApplication rec {
"test_logfile_rotation"
];
preCheck = ''
export PGUSER="froide"
export postgresqlEnableTCP=1
export postgresqlTestUserOptions="LOGIN SUPERUSER"
export GDAL_LIBRARY_PATH="${gdal}/lib/libgdal.so"
export GEOS_LIBRARY_PATH="${geos}/lib/libgeos_c.so"
export PLAYWRIGHT_BROWSERS_PATH="${playwright-driver.browsers}"
'';
preCheck =
''
export PGUSER="froide"
export postgresqlEnableTCP=1
export postgresqlTestUserOptions="LOGIN SUPERUSER"
export GDAL_LIBRARY_PATH="${gdal}/lib/libgdal.so"
export GEOS_LIBRARY_PATH="${geos}/lib/libgeos_c.so"
''
+ lib.optionalString (!stdenv.hostPlatform.isRiscV) ''
export PLAYWRIGHT_BROWSERS_PATH="${playwright-driver.browsers}"
'';
# Playwright tests not supported on RiscV yet
doCheck = lib.meta.availableOn stdenv.hostPlatform playwright-driver.browsers;
meta = {
description = "Freedom of Information Portal";

View File

@ -46,15 +46,17 @@ stdenv.mkDerivation rec {
libxml2 # xml2-config
];
buildInputs = [
curl
hdf5
libxml2
mpi
bzip2
libzip
zstd
] ++ lib.optional szipSupport szip;
buildInputs =
[
curl
hdf5
libxml2
bzip2
libzip
zstd
]
++ lib.optional szipSupport szip
++ lib.optional mpiSupport mpi;
strictDeps = true;

View File

@ -75,6 +75,12 @@ stdenv.mkDerivation rec {
pmix
];
# Setting this manually, required for RiscV cross-compile
configureFlags = [
"--with-pmix=${lib.getDev pmix}"
"--with-pmix-libdir=${lib.getLib pmix}/lib"
];
enableParallelBuilding = true;
meta = {

View File

@ -1,4 +1,5 @@
{
stdenv,
lib,
buildPythonPackage,
fetchFromGitHub,
@ -28,13 +29,15 @@
poppler-utils,
pytest-playwright,
playwright-driver,
pnpm_9,
pnpm,
nodejs,
markdown,
nh3,
}:
buildPythonPackage rec {
pname = "django-filingcabinet";
version = "0.17-unstable-2024-11-15";
version = "0.17-unstable-2025-04-10";
pyproject = true;
src = fetchFromGitHub {
@ -42,11 +45,13 @@ buildPythonPackage rec {
repo = "django-filingcabinet";
# No release tagged yet on GitHub
# https://github.com/okfde/django-filingcabinet/issues/69
rev = "33c88e1ca9fccd0ea70f8b609580eeec486bda5c";
hash = "sha256-p7VJUiO7dhTR+S3/4QrmrQeJO6xGj7D7I8W3CBF+jo8=";
rev = "64b7b4ad804067e2f16e8a0f165c139e3ffe5fb5";
hash = "sha256-48Peui/5N/GfzWS1EJ5uKeKEoPjX+fPEXzG2owxsDaE=";
};
postPatch = ''
# zipstream is discontinued and outdated
# https://github.com/okfde/django-filingcabinet/issues/90
substituteInPlace pyproject.toml \
--replace-fail "zipstream" "zipstream-ng"
'';
@ -55,7 +60,7 @@ buildPythonPackage rec {
nativeBuildInputs = [
nodejs
pnpm_9.configHook
pnpm.configHook
];
dependencies = [
@ -68,6 +73,8 @@ buildPythonPackage rec {
djangorestframework
feedgen
jsonschema
markdown
nh3
pikepdf
pycryptodome
pypdf
@ -85,9 +92,9 @@ buildPythonPackage rec {
#annotate = [ fcdocs-annotate ];
};
pnpmDeps = pnpm_9.fetchDeps {
pnpmDeps = pnpm.fetchDeps {
inherit pname version src;
hash = "sha256-32kOhB2+37DD4hKXKep08iDxhXpasKPfcv9fkwISxeU=";
hash = "sha256-uMO2iEOi9ACYdIM8Thf7+y1KpHQEqVxO3yxZ8RaGFXA=";
};
postBuild = ''
@ -117,13 +124,19 @@ buildPythonPackage rec {
"test_document_viewer"
];
preCheck = ''
export DJANGO_SETTINGS_MODULE="test_project.settings"
export PLAYWRIGHT_BROWSERS_PATH="${playwright-driver.browsers}"
'';
preCheck =
''
export DJANGO_SETTINGS_MODULE="test_project.settings"
''
+ lib.optionalString (!stdenv.hostPlatform.isRiscV) ''
export PLAYWRIGHT_BROWSERS_PATH="${playwright-driver.browsers}"
'';
pythonImportsCheck = [ "filingcabinet" ];
# Playwright tests not supported on RiscV yet
doCheck = lib.meta.availableOn stdenv.hostPlatform playwright-driver.browsers;
meta = {
description = "Django app that manages documents with pages, annotations and collections";
homepage = "https://github.com/okfde/django-filingcabinet";