Skip to content

Switch to Filesystem Hierarchy Standard (FHS) compliant installation on Linux#1477

Merged
awawa-dev merged 1 commit intomasterfrom
FHS
Mar 12, 2026
Merged

Switch to Filesystem Hierarchy Standard (FHS) compliant installation on Linux#1477
awawa-dev merged 1 commit intomasterfrom
FHS

Conversation

@awawa-dev
Copy link
Owner

@awawa-dev awawa-dev commented Mar 10, 2026

This PR migrates the Linux installation layout to fully comply with the Filesystem Hierarchy Standard (FHS):

  • Binaries → ${CMAKE_INSTALL_BINDIR}
  • Libraries & bundled dependencies → ${CMAKE_INSTALL_LIBDIR}/hyperhdr
  • Data files, icons, .desktop, web resources → ${CMAKE_INSTALL_DATADIR}/hyperhdr
  • Systemd service template → /usr/lib/systemd/system

The package can be build now without external lib dependencies:

  • ENABLE_DEPENDENCY_PACKAGING ON/OFF for CMAKE
  • or INCLUDE_DEP_LIB for build.sh script

Main changes:

  • Use GNUInstallDirs consistently
  • Replace hardcoded paths with relative ones
  • Install systemd service correct location
  • Remove support for sysV/upstart/initctl (systemd-only)
  • Drop deprecated Berryboot detection
  • Improve IP detection in install scripts
  • Clean up unnecessary files and old init scripts

No breaking changes for default /usr prefix. Custom prefixes (e.g. /opt) now work correctly without manual intervention.

Tested on: Debian, Fedora, Arch, Raspberry Pi.

@awawa-dev awawa-dev force-pushed the FHS branch 30 times, most recently from 1f8a350 to acd5e55 Compare March 11, 2026 20:37
@awawa-dev awawa-dev force-pushed the FHS branch 3 times, most recently from 09a9ed7 to 86a0467 Compare March 12, 2026 18:51
@awawa-dev awawa-dev merged commit d5c4b0b into master Mar 12, 2026
40 checks passed
@awawa-dev awawa-dev deleted the FHS branch March 12, 2026 19:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant