forked from Fediversity/Fediversity
deduplicate flake inputs
make re-exports explicit again
Revert "deduplicate flake inputs"
This reverts commit 95769084ce
.
switch launch shell to root flake's nixpkgs, see #279
use flake-sourced nixos-anywhere in tf, to reproduce modules for nix
properly pass repo dir for prod, be it with hard-coded TF init
move tf init out of python over read-only nix env
skip tf lock in views.py over read-only nix env
specify XDG_CACHE_HOME, workaround to error writing to /var/empty/.cache
update
document updating TF module
get TF in prod to the same 'installable ... does not correspond to a Nix language value' for non-flakes
seemingly gets further when a similar command is tried from terminal.
as per https://github.com/NixOS/nix/issues/8752#issuecomment-1694714693,
this may have to do with aligning the current working directory.
rm launch flake, as i seem to have reached similar progress without it
update nixos-anywhere to fix error 'installable ... does not correspond to a Nix language value'
rm comment
untrack TF generated provider/module stuff - local dev now requires following launch/README.md
for now gitignore .auto.tfvars.json used to track TF module of nixos-anywhere
in case we want that file for something else, we can move this (and its
ignore) to something separate.
use a mutable HOME in TF for nixos-anywhere to make a `.ssh` dir in - will this not backfire?
change ssh user to root
allow accessing test vms from fedi201's machine ssh key, closes #286
allow accessing test vms from fedi201's machine ssh key, closes #286
update nixpkgs to unstable - resolves manual deploy error on bootloader already on newer version
switch to bash deployment
tmp
67 lines
1.5 KiB
Nix
67 lines
1.5 KiB
Nix
{
|
|
lib,
|
|
pkgs,
|
|
sqlite,
|
|
python3,
|
|
sources ? import ../../npins,
|
|
}:
|
|
let
|
|
src =
|
|
with lib.fileset;
|
|
toSource {
|
|
root = ../src;
|
|
fileset = intersection (gitTracked ../../.) ../src;
|
|
};
|
|
pyproject = fromTOML pyproject-toml;
|
|
# TODO: define this globally
|
|
name = "panel";
|
|
# TODO: we may want this in a file so it's easier to read statically
|
|
version = "0.0.0";
|
|
pyproject-toml = ''
|
|
[project]
|
|
name = "Fediversity-Panel"
|
|
version = "${version}"
|
|
|
|
[tool.setuptools]
|
|
packages = [ "${name}" ]
|
|
include-package-data = true
|
|
'';
|
|
in
|
|
python3.pkgs.buildPythonPackage {
|
|
pname = name;
|
|
inherit (pyproject.project) version;
|
|
pyproject = true;
|
|
inherit src;
|
|
|
|
preBuild = ''
|
|
echo "recursive-include ${name} *" > MANIFEST.in
|
|
cp ${builtins.toFile "source" pyproject-toml} pyproject.toml
|
|
'';
|
|
|
|
propagatedBuildInputs =
|
|
let
|
|
pythonPackages = with python3.pkgs; [
|
|
dj-database-url
|
|
django-compressor
|
|
django-debug-toolbar
|
|
django-libsass
|
|
django-pydantic-field
|
|
django_4
|
|
setuptools
|
|
];
|
|
in
|
|
[
|
|
sqlite
|
|
]
|
|
++ pythonPackages;
|
|
|
|
postInstall = ''
|
|
mkdir -p $out/bin
|
|
cp -v ${src}/manage.py $out/bin/manage.py
|
|
chmod +x $out/bin/manage.py
|
|
wrapProgram $out/bin/manage.py \
|
|
--set REPO_DIR "${import ../../launch/env.nix { inherit lib pkgs; }}" \
|
|
--prefix PYTHONPATH : "$PYTHONPATH"
|
|
cp ${sources.htmx}/dist/htmx.min.js* $out/${python3.sitePackages}/panel/static/
|
|
'';
|
|
}
|