Debian-Hyprland/BUILD_METHOD_OPTIONS.md
Don Williams a7c6d8da50 Testing build from debian packages
On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	new file:   BUILD_METHOD_OPTIONS.md
	new file:   CHANGES_SUMMARY.md
	new file:   GIT_STATUS.md
	new file:   INSTALL_METHOD_GUIDE.md
	new file:   QUICK_START.txt
	modified:   install.sh
2025-12-13 06:00:56 -05:00

4.3 KiB

Hyprland Installation Method Options

Overview

The install.sh script has been updated to support two installation methods:

  1. Build from Source (Original method)
  2. Install from Pre-built Packages (New method - faster)

Configuration

Setting the Package Source Location

At the top of install.sh, you'll find this variable:

DEB_PACKAGES_SOURCE="/mnt/nas/Projects/Jak/debian-pkg/build/debs"

To change the package location:

  • Modify DEB_PACKAGES_SOURCE to point to your pre-built .deb package directory
  • Can be a local path or network share
  • Leave empty to always build from source

Current Configuration

Current source location: /mnt/nas/Projects/Jak/debian-pkg/build/debs

Available packages: 59 .deb files

  • All Hyprland components (0.52.2)
  • All dependencies (utilities, graphics, cursors, etc.)
  • 9 Hyprland plugins
  • Debug symbols and development files

Installation Flow

Automatic Method Selection

When you run install.sh:

  1. Environment Check: Script checks if packages are available at DEB_PACKAGES_SOURCE

  2. User Prompt: If packages found, you're asked to choose:

    • YES → Install from pre-built packages (faster, ~5-10 minutes)
    • NO → Build from source (slower, ~1-2 hours)
  3. Execution: Script runs the selected method

Build from Source Method

If you choose "from source" or no packages are available:

  • Runs all the original install scripts
  • Builds each component from GitHub source
  • Takes significantly longer but gives latest upstream code

Build from Packages Method

If you choose "pre-built packages":

  1. Validates package directory exists and contains .deb files
  2. Counts available packages
  3. Installs all .deb files using dpkg -i
  4. Fixes any missing dependencies with apt-get install -f
  5. Completes much faster than source builds

Usage Examples

To use current pre-built packages (on test network):

cd ~/Projects/Jak/Debian-Hyprland
./install.sh
# When prompted, select YES to use pre-built packages

To always build from source (ignore packages):

# Edit install.sh and change:
DEB_PACKAGES_SOURCE=""
# Then run:
./install.sh

To use packages from a different location:

# Edit install.sh and change:
DEB_PACKAGES_SOURCE="/path/to/your/packages"
# Then run:
./install.sh

Building Your Own Packages

To generate pre-built packages:

cd /mnt/nas/Projects/Jak/debian-pkg
./build_all_final.sh

This creates all 59 .deb packages in build/debs/

Package Versions

All pre-built packages match upstream versions:

Package Version
hyprland 0.52.2
hyprutils 0.10.4
hyprgraphics 0.4.0
aquamarine 0.10.0
hyprtoolkit 0.4.0
(and 11 more) (see VERSION_VERIFICATION.txt)

Benefits of Each Method

Build from Source

  • Ensures latest upstream code
  • Custom compilation options possible
  • Takes 1-2 hours
  • Requires all build tools and deb-src enabled

Build from Packages

  • Fast installation (5-10 minutes)
  • Pre-tested and validated builds
  • No build tools required
  • Works from network share
  • Fixed versions (no custom compilation)

Troubleshooting

"No .deb files found" error

Solution:

  1. Check DEB_PACKAGES_SOURCE path exists
  2. Verify .deb files are in that location
  3. Check file permissions
  4. Run ls $DEB_PACKAGES_SOURCE/*.deb to verify

Package installation fails

Solution:

# Manually fix dependencies:
sudo apt-get install -f -y

# Or reinstall specific package:
sudo dpkg -i /path/to/package.deb
sudo apt-get install -f -y

Mixed dependency errors

Solution: Ensure all interdependent packages are installed together:

sudo dpkg -i $DEB_PACKAGES_SOURCE/*.deb
sudo apt-get install -f -y

Network Share Access

If packages are on a NAS/network share:

# Mount the share (if not already mounted):
sudo mount -t nfs nas:/path/to/share /mnt/nas

# Or modify DEB_PACKAGES_SOURCE to your network path:
DEB_PACKAGES_SOURCE="//nas/Projects/Jak/debian-pkg/build/debs"

Version Information

  • Install script updated: 2025-12-13
  • Package build system: Debian dpkg-buildpackage
  • Supported distributions: Debian Trixie / SiD
  • Pre-built packages location: /mnt/nas/Projects/Jak/debian-pkg/build/debs