Get the Hollywood Source Code

Review & audit our code or compile your own copy.

The base of the Hollywood operating system is free and open source software, available under FSF & OSI compliant licenses including GPL2, GPL3, MIT, BSD and others. This includes the Hollywood desktop environment. There are a few exceptions to the FOSS rule including:

  • Proprietary GPU drivers (where you opt to enable)
  • Wireless card proprietary binary blobs (due to FCC & other authority regulations, and the ability for FOSS drivers to violate these regulations, it's very unlikely vendors will release FOSS drivers for Wi-Fi)
  • Linux kernel firmware binary blobs for supporting other hardware.

The code to Hollywood is in 3 parts: Hollywood Desktop, Hollywood Packages and Supporting Libraries.

Hollywood Desktop

The Hollywood desktop git repository is at github.com/kitsnotes/hollywood. This repository holds all of the code for the desktop environment, as well as the horizon installer system.

This codebase can be checked out via:

git clone https://github.com/kitsnotes/hollywood.git

Compiling Hollywood Desktop

The Hollywood desktop is a Qt qmake based project. We do not support compiling this on non-Hollywood distributions, but in the interests of freedom, here's how to do it anyway.

It is advised to create two build folders inside the Hollywood tree as you need to build the entire tree for Qt6, as well as build some supporting libraries for Qt5.

cd /path/to/source/checkout/desktop/
mkdir build6 && cd build6
qmake-qt6 ../
make -j4 && sudo make install
cd ../ && mkdir build5 && cd build5
qmake-qt5 ../
make -j4 && sudo make install

Please note you should adjust the proper qmake binary names/paths to where you or your distribution has Qt installed. These binary names align with the Alpine/Hollywood qmake names.

Hollywood Packages

The Hollywood package repository is at github.com/kitsnotes/hollywood-packages. This repository holds an aports tree, which is all of the build scripts for building the system packages.

Compiling Hollywood Packages

On Hollywood you can install the hollywood-sdk package to obtain compilers, toolchains and the abuild system. Hollywood uses APKBUILD scripts like Alpine Linux. If you have built Alpine packages before, you're right at home. If you have built Arch Linux PKGBUILD files before, you should feel at home with minimal adjustments.

You should start by reading Creating an Alpine Package on the Alpine Linux wiki. This will largely apply to setting up the abuild system on Hollwyood as well. You can run abuild commands on individual packages within the system/ directory of the package repository.

Other helpful resources:

Supporting Libraries

Hollywood's Terminull currently requires a forked version of QTermWidget re-targeted for Qt6 with some additional patches. We hope to sync this upstream and eliminate this fork in the future.

You should obtain this from github.com/kitsnotes/qtermwidget-qt6.