Moved to RPi4 Ubuntu Micro Desktop

Recently I changed my RPi4 OS to Ubuntu so I leaved a record here. This article records the my own Raspberry Pi 4 + Ubuntu personalized micro-desktop settings, so you can use this just for reference. You can also find my article for RPi4+RasPiOS micro-desktop here.

Last modified on 5th August, 2021, KST.


Note that I’m using Raspberry Pi 4 B 8GB and Eviciv 10.1 inch touchscreen with rear housing case that two Noctua NF-A4x10 PWM 12V 40x10mm Premium Quiet Fan assembled, Sandisk MicroSDXC Extreme Pro UHS-I U3 V30 A1 64GB and 128GB sub, and 64GB backup MicroSDXC, Anker 2in1 USB 3.0 SD Card Reader, Uctronics GPIO Ribbon cable, Audio Injector Isolated DAC and ADC Sound Card, and XLR preamplifier, Moukey Phantom Power Supply, Audio Technica AT2035 Condenser Microphone, OneOdio Pro-50 Headphones, AKAI MPK Mini MK3 MIDI Keyboard, and others.


RPi4 + Ubuntu 21.04 Hirsute Hippo

Group Permissions

sudo usermod -a -G adm,dialout,cdrom,sudo,media,audio,video,plugdev,games,users,input,netdev,gpio,i2c,spi lee-yunseok

Overclock + Call Audio Injector Isolated

sudo nano /boot/firmware/config.txt
#dtparam=audio
dtoverlay=audioinjector-isolated-soundcard
gpu_mem=512
disable_splash=1
# add in [pi4],
over_voltage=6
arm_freq=2147
gpu_freq=750
gpu_mem=512
initial_turbo=30

For Realtime Recording

sudo nano /etc/sysctl.conf
vm.swappiness=10
fs.inotify.max_user_watches = 524288

System Update

sudo apt -y update && sudo apt -y full-upgrade && sudo apt autoremove && sudo reboot

GNU Nano Setting

sudo nano /etc/nanorc

remove # to linenumbers, softwrap, tabsize and edit tabsize 8 to 4, numbercolor and edit numbercolor to magenta

Install Libraries via APT

sudo apt -y purge firefox && sudo apt -y install ibus-hangul fonts-unfonts-core p7zip unrar-free exfat-fuse checkinstall cpufrequtils gconf2 pv libappindicator1 libpango1.0-0 libgtk-3-dev xclip nixnote2 fbreader gnucash gimp mypaint-brushes gimp-gmic goxel webp parallel imagemagick qt5-image-formats-plugins mesa-utils alsa-firmware-loaders lmms audacious calf-plugins ladspa-sdk polyphone opus-tools lame picard ffmpeg vlc kdenlive godot3 love at default-jdk poedit git-lfs git-svn clamav clamav-daemon rkhunter python3-pip python3-liblo cmake ruby-full clang meson npm cmdtest apache2 php mariadb-server wordpress safeeyes redshift aria2 && sudo apt -y autoremove

For Building MEGASync

sudo apt install libzen-dev libmediainfo-dev debhelper qtbase5-dev qt5-qmake libqt5x11extras5-dev libqt5svg5-dev libcrypto++-dev libraw-dev libc-ares-dev libsqlite3-dev dh-autoreconf cdbs libtool-bin qttools5-dev-tools libavcodec-dev libavutil-dev libavformat-dev libfreeimage-dev libswscale-dev libmediainfo-dev

Other Applications + Personals

  • Copy: Quadplay Twine TuesdayJS Markdown-Editor ZzFx Piskel Fonts Soundfonts GitHub-Clones
  • Decrypt: HomeSetFiles Docs Works Pictures
  • Install: VSCode Min Waveform Carla Surge GX Dexed Helm TAL Vex Oxe Zynaddsubfx IzPack Jellyfin
  • Compile: qView piclone MEGASync
  • Withhold: Urho3d Ren’Py raylib blender ldtk Tiled RetroPie Collective DEC

Performance Scailing + UFW + Python + Node + etc.

sudo rkhunter --propupd && sudo ufw allow 22 && sudo ufw allow 80 && sudo ufw allow 8096 && sudo ufw allow from 192.168.1.0/24; sleep 60 && sudo ufw --force enable && sudo apt install -y openvpn dialog && sudo pip3 install icloudpd protonvpn-cli tinypng && sudo apt clean all && sudo protonvpn init && cd /usr/lib/nodejs && sudo npm i -g n && sudo n stable && sudo npm i -g node-modules cordova && sudo gem i jekyll bundler && sudo bundle install && sudo bundle update jekyll && sudo pip3 list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1  | xargs -n1 sudo pip3 install -U --ignore-installed pip && echo 'GOVERNOR="performance"' | sudo tee /etc/default/cpufrequtils && sudo reboot

Snap + Jellyfin + System Setting + etc.

  • Remove unnecessary softwares from snap, then install RPi-imager and fre:ac, and ncspot
  • Set Wallpaper, Dark Mode, Night Light, Never Blank screen, Onscreen Keyboard, iBus Hangul, 150% Fractional Scale, Disable File History on Settings
  • Set Terminal font size 16
  • Set Jellyfin to http://127.0.0.1:8096
  • Install writer2pub to Libreoffice Writer
  • Copy TAL presets to ~/TAL
  • Copy Dexed presets to ~/.local/share/DigitalSuburban/Dexed/Cartridges
  • Copy Helm presets to ~/.helm

Finished.