# PinePhoneBoy Operating System Linux UI customized to resemble a Fallout Pip-Boy. To be used with the PINE64 PinePhone running Arch Linux ARM, enclosed in the PinePhoneBoy harness. ## Screenshots ![Main screen](screenshot.jpg) ### Radio tab ![Radio](screenshots/radio.jpg) ## Components - sway: Window Manager - waybar: Side panel - termite: Terminal emulator - mako: Notifications daemon - mpd: Music player daemon - xfmpc: Music player client - mplayer: Sound effects player ## Dependencies - [Sway on PinePhone](https://github.com/Dejvino/pinephone-sway-poc) - [feather icons](https://github.com/feathericons/feather) ## Install ```bash sudo pacman -S \ sway swaylock swayidle swaybg waybar \ termite termite-terminfo \ htop dialog \ imv \ ttf-font-awesome unicode-emoji \ portfolio-fm \ mplayer pavucontrol \ xfmpc mpd mpc \ git git clone --recurse-submodules https://git.dejvino.cz/dejvino/PinePhoneBoyOS cd PinePhoneBoyOS ./convert_icons.sh sudo cp -R usr/* /usr/ sudo cp -R etc/* /etc/ mkdir -p ~/.config cp config/* ~/.config/ cp config/.dialogrc ~/.dialogrc cp config/.menuoptions ~/.menuoptions sudo systemctl disable phosh || echo "Needed only if you still have phosh installed." sudo systemctl enable --now sway ... ``` ### Virtual Keyboard (Squeekboard) Terminal layout replaces (default) English layout: ```bash mkdir -p ~/.local/share/squeekboard/keyboards/ wget https://source.puri.sm/Librem5/squeekboard/-/raw/master/data/keyboards/terminal_wide.yaml -O ~/.local/share/squeekboard/keyboards/us_wide.yaml ``` Source: [puri.sm](https://developer.puri.sm/projects/squeekboard/tutorial.html) ### Theme ```bash git clone https://github.com/i-mint/midnight mkdir -p ~/.themes cp -R midnight/Midnight* ~/.themes/ gsettings set org.gnome.desktop.interface gtk-theme "Midnight-GreenNight" gsettings set org.gnome.desktop.wm.preferences theme "Midnight-GreenNight" git clone -b Abyss-Desktop-Theme-Icons-and-Folders https://github.com/rtlewis88/rtl88-Themes cp -R rtl88-Themes/Abyss-ENVY-Suru ~/.icons/Abyss-ENVY gsettings set org.gnome.desktop.interface icon-theme "Abyss-ENVY" ``` ### Bootsplash 1. Find an image you want shown during boot (see [example](https://techgage.com/wp-content/uploads/2015/11/Fallout-4-Pip-Boy-App-Android-Logo.jpg)) 2. Clone the [bootsplash package](https://github.com/dreemurrs-embedded/Pine64-Arch/tree/master/PKGBUILDS/danctnix/bootsplash-danctnix), replace the image and profit! ```bash git clone https://github.com/dreemurrs-embedded/Pine64-Arch cd PKGBUILDS/danctnix/bootsplash-danctnix # change the sha256sum for danctnix.png to 'SKIP' vim PKGBUILD # download your image wget some-image-url -O bootsplash.jpg # rotate it to face the right way up convert bootspalsh.jpg -distort SRT -90 danctnix.png # install! makepkg -sif # reboot to see it during the next startup ``` ### DATA - Epiphany Source: [ArchWiki](https://wiki.archlinux.org/index.php/GNOME/Web) #### Ad blocking ```bash gsettings set org.gnome.Epiphany adblock-filters "['https://easylist.to/easylist/easylist.txt', 'https://easylist.to/easylist/easyprivacy.txt', 'https://easylist.to/easylist/fanboy-annoyance.txt', 'https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=1&mimetype=plaintext', 'https://www.malwaredomainlist.com/hostslist/hosts.txt', 'https://mirror.cedia.org.ec/malwaredomains/justdomains']" ``` ### RADIO - MPD Packages: mpd xfmpc mpc ```bash mkdir -p ~/.config/mpd/playlists ``` ## Notes - make sure mpd is running user-wide and not system-wide, otherwise it can't access alsa or pulseaudio (i.e. create ~/.config/mpd/mpd.conf)