feat(ds-fr): Switch to new upstream packaging.....
This commit is contained in:
parent
0c45a88561
commit
c6691cf9f1
6 changed files with 65 additions and 29 deletions
|
@ -3,9 +3,7 @@
|
||||||
stdenv,
|
stdenv,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
git,
|
git,
|
||||||
fetchYarnDeps,
|
bun,
|
||||||
yarn,
|
|
||||||
prefetch-yarn-deps,
|
|
||||||
nodejs,
|
nodejs,
|
||||||
ruby_3_2,
|
ruby_3_2,
|
||||||
bundlerEnv,
|
bundlerEnv,
|
||||||
|
@ -18,7 +16,7 @@ let
|
||||||
inherit (lib) getExe;
|
inherit (lib) getExe;
|
||||||
|
|
||||||
# Head of the DGNum repo
|
# Head of the DGNum repo
|
||||||
dgn-id = "12e4a32ca5d909a90ca6f7e53081cc6b6b14c416";
|
dgn-id = "1b6a2a23331398f46f3c292cd9631c163390916b";
|
||||||
|
|
||||||
pname = "ds-fr";
|
pname = "ds-fr";
|
||||||
meta = import ./meta.nix;
|
meta = import ./meta.nix;
|
||||||
|
@ -50,20 +48,42 @@ let
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
node_modules = stdenv.mkDerivation {
|
||||||
|
pname = "${pname}-node_modules";
|
||||||
|
inherit src version;
|
||||||
|
|
||||||
|
impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [
|
||||||
|
"GIT_PROXY_COMMAND"
|
||||||
|
"SOCKS_SERVER"
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ bun ];
|
||||||
|
|
||||||
|
dontConfigure = true;
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
bun install --no-progress --frozen-lockfile --ignore-scripts
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mv node_modules $out
|
||||||
|
'';
|
||||||
|
|
||||||
|
dontFixup = true;
|
||||||
|
|
||||||
|
outputHash = meta.deps-hash or lib.fakeHash;
|
||||||
|
outputHashAlgo = "sha256";
|
||||||
|
outputHashMode = "recursive";
|
||||||
|
};
|
||||||
|
|
||||||
dsModules = stdenv.mkDerivation {
|
dsModules = stdenv.mkDerivation {
|
||||||
pname = "${pname}-modules";
|
pname = "${pname}-modules";
|
||||||
inherit src version;
|
inherit src version;
|
||||||
|
|
||||||
offlineCache = fetchYarnDeps {
|
|
||||||
yarnLock = "${src}/yarn.lock";
|
|
||||||
hash = meta.deps-hash;
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [ rubyEnv ];
|
buildInputs = [ rubyEnv ];
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
prefetch-yarn-deps
|
bun
|
||||||
nodejs
|
nodejs
|
||||||
yarn
|
|
||||||
rubyEnv.wrappedRuby
|
rubyEnv.wrappedRuby
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -84,18 +104,13 @@ let
|
||||||
APP_HOST = "precompile_placeholder";
|
APP_HOST = "precompile_placeholder";
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
export HOME=$(mktemp -d)
|
cp -R ${node_modules} node_modules
|
||||||
yarn config --offline set yarn-offline-mirror $offlineCache
|
chmod u+w -R node_modules
|
||||||
fixup-yarn-lock yarn.lock
|
|
||||||
yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
|
|
||||||
|
|
||||||
patchShebangs node_modules/
|
patchShebangs node_modules
|
||||||
patchShebangs bin/
|
patchShebangs bin/
|
||||||
|
|
||||||
bin/rake assets:precompile
|
bin/rake assets:precompile
|
||||||
|
|
||||||
yarn cache clean --offline
|
|
||||||
rm -rf node_modules/
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
version = "2024-04-02-03";
|
version = "2024-04-16-03";
|
||||||
src-hash = "sha256-32FXEoQb1W1Bqf7lNpt6ljEU9QIDZkE/+njsu4DKFFY=";
|
src-hash = "sha256-fZICNAQPmmo3wp9dQ/YDHZgSxN0llGJJvI9mkAHnjgA=";
|
||||||
deps-hash = "sha256-ZtZ1iqKHWGPR5+BDOtOvrpgdndfP5IiqrLkju96YAM4=";
|
deps-hash = "sha256-vKBx8rFvJ2fGAzTgSZa3BU+tkw48JTyf4KeiwciuRds=";
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@ gem 'chunky_png'
|
||||||
gem 'clamav-client', require: 'clamav/client'
|
gem 'clamav-client', require: 'clamav/client'
|
||||||
gem 'daemons'
|
gem 'daemons'
|
||||||
gem 'deep_cloneable' # Enable deep clone of active record models
|
gem 'deep_cloneable' # Enable deep clone of active record models
|
||||||
gem 'delayed_cron_job' # Cron jobs
|
gem 'delayed_cron_job', require: false # Cron jobs
|
||||||
gem 'delayed_job_active_record'
|
gem 'delayed_job_active_record'
|
||||||
gem 'delayed_job_web'
|
gem 'delayed_job_web'
|
||||||
gem 'devise', git: 'https://github.com/heartcombo/devise.git', ref: "edffc79bf05d7f1c58ba50ffeda645e2e4ae0cb1" # Gestion des comptes utilisateurs, drop ref on next release: 4.9.4
|
gem 'devise', git: 'https://github.com/heartcombo/devise.git', ref: "edffc79bf05d7f1c58ba50ffeda645e2e4ae0cb1" # Gestion des comptes utilisateurs, drop ref on next release: 4.9.4
|
||||||
|
@ -91,6 +91,7 @@ gem 'sentry-ruby'
|
||||||
gem 'sentry-sidekiq'
|
gem 'sentry-sidekiq'
|
||||||
gem 'sib-api-v3-sdk'
|
gem 'sib-api-v3-sdk'
|
||||||
gem 'sidekiq'
|
gem 'sidekiq'
|
||||||
|
gem 'sidekiq-cron'
|
||||||
gem 'skylight'
|
gem 'skylight'
|
||||||
gem 'spreadsheet_architect'
|
gem 'spreadsheet_architect'
|
||||||
gem 'strong_migrations' # lint database migrations
|
gem 'strong_migrations' # lint database migrations
|
||||||
|
|
|
@ -721,6 +721,10 @@ GEM
|
||||||
connection_pool (>= 2.3.0)
|
connection_pool (>= 2.3.0)
|
||||||
rack (>= 2.2.4)
|
rack (>= 2.2.4)
|
||||||
redis-client (>= 0.19.0)
|
redis-client (>= 0.19.0)
|
||||||
|
sidekiq-cron (1.12.0)
|
||||||
|
fugit (~> 1.8)
|
||||||
|
globalid (>= 1.0.1)
|
||||||
|
sidekiq (>= 6)
|
||||||
simple_xlsx_reader (1.0.4)
|
simple_xlsx_reader (1.0.4)
|
||||||
nokogiri
|
nokogiri
|
||||||
rubyzip
|
rubyzip
|
||||||
|
@ -973,6 +977,7 @@ DEPENDENCIES
|
||||||
shoulda-matchers
|
shoulda-matchers
|
||||||
sib-api-v3-sdk
|
sib-api-v3-sdk
|
||||||
sidekiq
|
sidekiq
|
||||||
|
sidekiq-cron
|
||||||
simple_xlsx_reader
|
simple_xlsx_reader
|
||||||
skylight
|
skylight
|
||||||
spreadsheet_architect
|
spreadsheet_architect
|
||||||
|
|
|
@ -3587,6 +3587,21 @@
|
||||||
};
|
};
|
||||||
version = "7.2.1";
|
version = "7.2.1";
|
||||||
};
|
};
|
||||||
|
sidekiq-cron = {
|
||||||
|
dependencies = [
|
||||||
|
"fugit"
|
||||||
|
"globalid"
|
||||||
|
"sidekiq"
|
||||||
|
];
|
||||||
|
groups = [ "default" ];
|
||||||
|
platforms = [ ];
|
||||||
|
source = {
|
||||||
|
remotes = [ "https://rubygems.org" ];
|
||||||
|
sha256 = "0v09lg8kza19jmigqv5hx2ibhm75j6pa639sfy4bv2208l50hqv6";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.12.0";
|
||||||
|
};
|
||||||
simple_xlsx_reader = {
|
simple_xlsx_reader = {
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"nokogiri"
|
"nokogiri"
|
||||||
|
|
|
@ -26,13 +26,13 @@ done
|
||||||
CWD=$(pwd)
|
CWD=$(pwd)
|
||||||
|
|
||||||
TMP=$(mktemp -d)
|
TMP=$(mktemp -d)
|
||||||
cd "$TMP"
|
cd "$TMP" || exit 1
|
||||||
|
|
||||||
# Fetch the latest source or the required version
|
# Fetch the latest source or the required version
|
||||||
gitUrl="https://github.com/demarches-simplifiees/demarches-simplifiees.fr.git"
|
gitUrl="https://github.com/demarches-simplifiees/demarches-simplifiees.fr.git"
|
||||||
|
|
||||||
if [ -n "$version" ]; then
|
if [ -n "$version" ]; then
|
||||||
git clone --depth 1 --branch $version $gitUrl .
|
git clone --depth 1 --branch "$version" $gitUrl .
|
||||||
else
|
else
|
||||||
git clone --depth 1 $gitUrl .
|
git clone --depth 1 $gitUrl .
|
||||||
|
|
||||||
|
@ -48,10 +48,10 @@ cp gemset.nix Gemfile Gemfile.lock "$CWD/rubyEnv/"
|
||||||
# Print the new source details
|
# Print the new source details
|
||||||
SRC_HASH=$(nix-shell -p nurl --run "nurl --hash $gitUrl $version")
|
SRC_HASH=$(nix-shell -p nurl --run "nurl --hash $gitUrl $version")
|
||||||
|
|
||||||
# Print Yarn deps hash
|
# Switch to bun
|
||||||
hash=$(nix-shell -p prefetch-yarn-deps --run "prefetch-yarn-deps yarn.lock")
|
nix-shell -p bun --run "bun install --frozen-lockfile --no-cache --no-progress --ignore-scripts"
|
||||||
|
|
||||||
DEPS_HASH=$(nix-hash --to-sri --type sha256 "$hash")
|
DEPS_HASH=$(nix-hash --sri --type sha256 node_modules)
|
||||||
|
|
||||||
cat <<EOF >"$CWD/meta.nix"
|
cat <<EOF >"$CWD/meta.nix"
|
||||||
{
|
{
|
||||||
|
@ -61,6 +61,6 @@ cat <<EOF >"$CWD/meta.nix"
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
nixfmt "$CWD"
|
nix-shell -p nixfmt-rfc-style --run "nixfmt $CWD"
|
||||||
|
|
||||||
rm -rf "$TMP"
|
rm -rf "$TMP"
|
||||||
|
|
Loading…
Reference in a new issue