====== HyprSpace ======
HyprSpace is a WolfRecorder feature that lets you extend the storage space used for user-exported camera video clips beyond the default root filesystem on the fly.
===== Overview =====
By default, all exported video files are saved in a reserved area inside the root filesystem (**/**).
{{:hpace0.png|}}
When HyprSpace is enabled, user exported recordings files can be stored on any other storage location, for example:
* a dedicated physical disk,
* a RAID array/some disks pool
* a mounted network filesystem (e.g. NFS, SMB)
* a remote filesystem mounted via SSHFS
* a distributed filesystem such as CephFS or GlusterFS.
The underlying storage type does not matter as long as it is properly mounted in the system.
===== How it Works =====
The feature can be enabled via a checkbox in "System settings" named "User exported videos in HyprSpace".
{{:hspace3.png|}}
After HyprSpace is activated:
The "Storages" module shows the HyprSpace as "Storage of user exported videos".
{{:hspace1.png|}}
The "System info" module start display information about HyprSpace storage capacity.
{{:hspace2.png|}}
All videos exported by the users will automatically be saved in an alternative mount point **/hyprspace**.
{{:hspace4.png|}}
===== Requirements =====
* The mount point **/hyprspace** must be empty and writable.
* Inside **/hyprspace**, there must be an empty writable directory named **recdl**.
* All exported user videos will be saved inside **/hyprspace/recdl**.
===== Setup Steps =====
Create the mount point if it does not already exist:
mkdir /hyprspace
Prepare and mount the storage device or network share as needed (see examples below).\\
Create the directory **/hyprspace/recdl** and set the correct permissions:
mkdir /hyprspace/recdl
chmod 777 /hyprspace/recdl
Enable the checkbox "User exported videos in HyprSpace" in "System settings".
===== Notes =====
* Only newly exported files will be saved to **/hyprspace/recdl**. Existing exports remain in their original location unless moved manually.
* Ensure the mounted storage has adequate performance and free space for the expected video export load.
===== Migrating Existing User Exported videos =====
To move previously exported user videos to the new HyprSpace location, run:
mv /usr/local/www/apache24/data/wr/howl/recdl/* /hyprspace/recdl/
===== Few examples =====
**Mount a new UFS disk:**
mkdir /hyprspace
newfs -U /dev/da10
mount /dev/da10 /hyprspace
mkdir /hyprspace/recdl
chmod 777 /hyprspace/recdl
**Mount an NFS share:**
mkdir /hyprspace
mount 192.168.0.12:/mnt/share /hyprspace/
mkdir /hyprspace/recdl
chmod 777 /hyprspace/recdl
**Mount a ZFS filesystem:**
zpool create hyprspace /dev/da10
mkdir /hyprspace/recdl
chmod 777 /hyprspace/recdl