This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Damselfly ====== **Note:** since i don't use this service anymore, this page might be not updated. [[https://damselfly.info|Damselfly]] is a digital asset management tool to manage huge collections of photos. Still testing, i love the concept. ===== Installation ===== Installing Damselfly can be done on bare-metal, but the dev does not support it, so i will show you both ways. In general you can find more installation information [[https://github.com/Webreaper/Damselfly/blob/master/docs/Installation.md|here]]. ==== Common installation steps ==== Create a damselfly user and make it member of the //photos// group: <code bash> groupadd photos useradd -d /data/daemons/damselfly -m -g photos damselfly </code> Since Damselfly uses INotify triggers, you need to increase defaults or it will be unable to monitor large collections of photos (see [[https://github.com/Webreaper/Damselfly/blob/master/docs/Installation.md#filewatcher-inotify-limits|here]]). Create the file **/etc/sysctl.d/damselfly.conf**: <file damselfy.conf> fs.inotify.max_user_instances=524288 </file> And for it to be applied without a reboot: <code bash> sysctl -p /etc/sysctl.d/damselfly.conf </code> ==== Bare Metal Installation (not recomended) ==== Non-containerized install instructions [[https://github.com/Webreaper/Damselfly/blob/master/docs/Installation.md#can-i-run-damselfly-without-docker|here]] Download and decompress the release: <code bash> su - damselfly wget https://github.com/Webreaper/Damselfly/releases/download/4.1.0/damselfly-server-linux-4.1.0.zip mkdir damselfly cd damselfly unzip damselfly-server-linux-4.1.0.zip </code> (the release zip file requires a sub-folder to store neatly all files) In order for Damselfly to work you need to install some dependencies, which can be found in the [[https://github.com/Webreaper/Damselfly-Base-Image/blob/main/Dockerfile|Docker file]]. There you go: <code bash> emerge -s media-fonts/liberation-fonts dev-dotnet/libgdiplus media-gfx/dcraw media-libs/exiftool </code> The supposed //libgmp1// dependency is satisfied by adding **openmp** useflag to GCC (see [[https://forums.gentoo.org/viewtopic-p-5039135.html#6577903|here]]) which should be enabled by default in Gentoo. ==== Podman installation ==== Create the following //docker-compose.yml//: <file - docker-compose.yml> version: "3.8" name: damselfly services: damselfly: container_name: damselfly image: webreaper/damselfly ports: - 6363:6363/tcp volumes: - /data/daemons/damselfly/config:/config - /data/daemons/damselfly/thumbs:/thumbs - /data/Photos:/pictures restart: unless-stopped networks: damselfly-net: {} </file> And install it: <code bash> su - damselfly podman compose pull </code> ===== Reverse Proxy ===== Damselfly do not support sub-paths, so you __must__ spin your own subdomain for it to work. Here is the relevant NGINX configuration file: <file - damselfly.conf> TBD </file> ===== Startup ===== ==== Bare Metal running ==== Start: <code bash> ./Damselfly.Web /path/to/my/photos </code> You will need the usual script & /etc/local.d/damselfly.start script for automatic start on boot. ==== Podman running ==== Running is, as usual: <code bash> su - damselfly podman compose up </code> To run at boot, add the following lines to your **/etc/local.d/80-containers.start**: <code> podman network create damselfly-net su - damselfly -c "podman compose up -d" </code> and the following lines to **/etc/local.d/80-containers.stop**: <code> su - damselfly -c "podman compose down" </code>