mobilizon/flake.nix

62 lines
1.4 KiB
Nix
Raw Normal View History

2023-03-15 21:57:31 +01:00
{
description = "Mobilizon fork for potsda.mn";
2023-03-15 21:57:31 +01:00
inputs = {
nixpkgs.url = "github:erictapen/nixpkgs/mobilizon-3";
nix-filter.url = "github:numtide/nix-filter";
};
2023-03-15 21:57:31 +01:00
outputs = { self, nixpkgs, nix-filter }:
2023-08-09 15:28:38 +02:00
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
filter = nix-filter.lib;
2023-08-09 15:28:38 +02:00
in
{
2023-03-15 21:57:31 +01:00
2023-08-09 16:03:20 +02:00
packages.x86_64-linux = {
mobilizon = pkgs.callPackage ./. {
src = filter {
root = ./.;
exclude = [
(filter.matchExt "nix")
"js"
];
2023-08-09 16:03:20 +02:00
};
src-config = ./config;
2023-08-09 16:03:20 +02:00
mobilizon-js = self.packages.x86_64-linux.mobilizon-frontend;
};
2023-08-03 17:26:07 +02:00
2023-08-09 16:03:20 +02:00
mobilizon-frontend = pkgs.callPackage ./js { inherit filter; };
default = self.packages.x86_64-linux.mobilizon;
# Update local Mobilizon definition
update =
pkgs.writeShellScriptBin "update" ''
set -eou pipefail
2023-03-15 21:57:31 +01:00
2023-08-09 16:03:20 +02:00
${pkgs.yarn2nix}/bin/yarn2nix --lockfile="./js/yarn.lock" > js/yarn.nix
${pkgs.mix2nix}/bin/mix2nix ./mix.lock > mix.nix
'';
};
2023-03-15 21:57:31 +01:00
2023-08-09 15:28:38 +02:00
devShells.x86_64-linux.default =
pkgs.mkShell {
buildInputs = with pkgs; [
elixir
mix2nix
cmake
imagemagick
(yarn.override {
nodejs = nodejs-18_x;
})
yarn2nix
nodejs-18_x
];
};
2023-03-15 21:57:31 +01:00
2023-08-09 15:28:38 +02:00
};
2023-03-15 21:57:31 +01:00
}