fix nixpkgs
This commit is contained in:
parent
8c4adb4188
commit
8924f70a59
7 changed files with 42 additions and 10 deletions
|
|
@ -20,6 +20,7 @@ $ docker load < $(nix-build nix/docker.nix)
|
|||
| `NO_OVERLAYFS` | `` | disable the filesystem overlay mechanism |
|
||||
| `NO_DEFAULTDB` | `` | disable the default db (activates manyfold installer) |
|
||||
| `NO_DELETEBIGFILES` | `` | disable deleting big files which are older than 5 days and bigger than ($currentyear-2020) MB's |
|
||||
| `NO_PACKAGEALL` | `` | don't package all experiences every hour to /usr/src/app/public/experiences.zip |
|
||||
| `RCLONE_REMOTE` | `` | specify **single** rclone remote name (without semicolon) to mount |
|
||||
| `UPLOAD_PATH` | `/mnt/models`| specify default library where user-files are uploaded (regular dir or mounted rclone path) |
|
||||
|
||||
|
|
@ -36,7 +37,7 @@ $ docker load < $(nix-build nix/docker.nix)
|
|||
The server-image will boot `manyfold/cli/manyfold.sh boot` and check for directory `/manyfold` (in the container).
|
||||
When found, it uses the files in there instead (`/manyfold/usr/src/app/public/404.html` instead of `/usr/src/app/public/404.html` e.g.).
|
||||
|
||||
# Remote network-drives (with models)
|
||||
# Federated (remote) network-drives
|
||||
|
||||
> Thanks to [rclone](https://rclone.org) network-drives automatically show up as manyfold libraries.
|
||||
|
||||
|
|
@ -72,6 +73,7 @@ You can put scripts in there, which are fired when needed.
|
|||
|
||||
> Example: [manyfold/root/hook.d/daily/delete_big_files.sh] is triggered daily to cleanup files which exceed a certain age/size.
|
||||
|
||||
Currently inotify events (`inotify_MODIFY` e.g.) are triggered when files in `/mnt/models` change.
|
||||
Currently inotify events (`inotify_MODIFY` e.g.) are triggered for local file-changes (`/mnt/models` e.g.).
|
||||
In theory, federated drives can still be reacted upon, but by integrating with XRForge's ActivityPub (**Follow** feature e.g.)
|
||||
|
||||
> Perhaps in the future this will also work for rclone remotes, by writing a `hourly`-script which scans them and fires `inotify_MODIFY` accordingly.
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ start_hook_daemon(){
|
|||
$0 infinite 86400 hook daily &
|
||||
$0 infinite 3600 hook hourly &
|
||||
# trigger hooks when files change in /mnt/models
|
||||
inotifywait -r -m /mnt/models | awk '$2 ~ /(CREATE|MODIFY|MOVED_TO)/ { system("'$0' hook inotify_"$2" "$1""$3) }' &
|
||||
inotifywait -r -m /mnt/models | awk '$2 ~ /(CREATE|MODIFY|MOVED_TO|DELETE)/ { system("'$0' hook inotify_"$2" "$1""$3) }' &
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -148,7 +148,10 @@ set_modelpath(){
|
|||
rename_app(){
|
||||
echocolor "[$APPNAME]" "renaming manyfold to $APPNAME"
|
||||
sed -i 's/title: Manyfold/title: '$APPNAME'/g' /usr/src/app/config/locales/*.yml
|
||||
sed -i 's|powered_by_html:.*|powered_by_html: Powered by <a href="https://forgejo.isvery.ninja/coderofsalvation/xrforge">XR Forge</a>, <a href="https://manifold.app" target="_blank">Manyfold</a>, <a href="https://xrfragment.org">XR Fragments</a> and <a href="https://nixos.org" target="_blank">NIX</a>|g' /usr/src/app/config/locales/*.yml
|
||||
sed -i 's|powered_by_html:.*|powered_by_html: Radically opensource-powered by <a href="https://forgejo.isvery.ninja/coderofsalvation/xrforge">XR Forge</a>, <a href="https://manifold.app" target="_blank">Manyfold</a>, <a href="https://xrfragment.org">XR Fragments</a> and <a href="https://nixos.org" target="_blank">NIX</a>|g' /usr/src/app/config/locales/*.yml
|
||||
|
||||
sed -i 's|Models|Experiences|g' /usr/src/app/config/locales/*.yml
|
||||
sed -i 's|Model|Experience|g' /usr/src/app/config/locales/*.yml
|
||||
}
|
||||
|
||||
start_syslog(){
|
||||
|
|
|
|||
17
manyfold/root/hook.d/daily/package_experiences_zip.sh
Executable file
17
manyfold/root/hook.d/daily/package_experiences_zip.sh
Executable file
|
|
@ -0,0 +1,17 @@
|
|||
#!/bin/sh
|
||||
test -n "$NO_PACKAGEALL" && exit 0; # nothing to do
|
||||
cd /mnt/models
|
||||
{
|
||||
echo "# XRForge experiences"
|
||||
echo ""
|
||||
echo "XRForge [$PUBLIC_HOSTNAME] snapshot made at $(date)"
|
||||
echo ""
|
||||
echo "# How to view"
|
||||
echo ""
|
||||
echo "You'll need a 3D app/website/viewer with:"
|
||||
echo ""
|
||||
echo "* support for multiple 3D fileformats"
|
||||
echo "* XR Fragments support (at least href extras) to teleport between them"
|
||||
} > /mnt/models/README.md
|
||||
|
||||
zip -r /usr/src/app/public/experiences.zip *
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
#!/bin/sh
|
||||
echo $0 $*
|
||||
|
|
@ -1 +0,0 @@
|
|||
../hourly/placeholder.sh
|
||||
|
|
@ -1,8 +1,21 @@
|
|||
{ pkgs ? import <nixpkgs> { }
|
||||
, pkgsLinux ? import <nixpkgs> { system = "x86_64-linux"; }
|
||||
}:
|
||||
#{ pkgs ? import <nixpkgs> { }
|
||||
# , pkgsLinux ? import <nixpkgs> { system = "x86_64-linux"; }
|
||||
#}:
|
||||
{} :
|
||||
|
||||
let
|
||||
pkgs = import (builtins.fetchGit {
|
||||
#name = "nixos-24.05";
|
||||
#url = "https://github.com/nixos/nixpkgs/";
|
||||
#ref = "refs/heads/nixos-unstable";
|
||||
#rev = "ef99fa5c5ed624460217c31ac4271cfb5cb2502c";
|
||||
|
||||
name = "nixos-25.05";
|
||||
url = "https://github.com/NixOS/nixpkgs";
|
||||
rev = "b65adef5fe1f68db0bbd27dbb1d5f779805c2b8b";
|
||||
#hash = "sha256-P+QnQOEh8n+4terom/1ZijQYgv4SnrFLfRzIcFzT1MI=";
|
||||
|
||||
}) {};
|
||||
vars = import ./vars.nix;
|
||||
|
||||
# generate the reproducable blob below via:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue