11 KiB
Fedora Kinoite
- Fedora Kinoite
- Podman
- Libvirt, Qemu, KVM
- Network
- Apps
- VSCode
- Bitwarden
- MPV
- Nextcloud Desktop
- Nextcloud Talk
- Discord
- Proton Mail
- Gimp
- Minecraft
- Moonlight
- Steam
- Raspberry Pi Imager
- Fedora Media Writer
- Pods
- Bambu Studio
- Eyedropper
- Mingle
- Obsidian
- Dev Toolbox
- Junction
- Kdenlive
- The Powder Toy
- Pika
- Filezilla
- Transmission
- AdwSteamGtk
- Frog
- CPU-X
- Ungoogled Chromium
- Toolbox
Podman
Since you'll be using podman for most container-based services, you'll want to set the the podman auth file to somewhere persistent, otherwise it'll get deleted every time you reboot.
Add this to your .bashrc:
# Podman auth file
export REGISTRY_AUTH_FILE=$HOME/.podman-auth.json
Source that and then run podman login to create the file.
Libvirt, Qemu, KVM
rpm-ostree install virt-manager
systemctl enable --now libvirtd
Network
VLAN Setup with nmcli
# VLAN 2
nmcli conn
export NMCLI_DEVICE=enp195s0f4u1u3
nmcli connection add type VLAN con-name $NMCLI_DEVICE.2 dev $NMCLI_DEVICE id 2
Apps
Flatpak installs are from Flathub unless otherwise noted.
VSCode
Write code.
flatpak install com.visualstudio.code
# Fix wayland scaling issues
cp /var/lib/flatpak/exports/share/applications/com.visualstudio.code ~/.local/share/applications
# Add `--socket=wayland` and `--ozone-platform=wayland` to the correct locations in the "Exec" field
sed \
-ri 's/(Exec=.* run )(.*)(com.visualstudio.code)/\1--socket=wayland \2\3 --ozone-platform=wayland/g' \
~/.local/share/applications/com.visualstudio.code
# Validate desktop database and reload
desktop-file-validate ~/.local/share/applications/com.nextcloud.talk.desktop
update-desktop-database
Add to settings.json so the host shell is spawned
{
"terminal.integrated.defaultProfile.linux": "bash",
"terminal.integrated.profiles.linux": {
"bash": {
"path": "/app/bin/host-spawn",
"args": ["bash"],
"icon": "terminal-bash",
"overrideName": true
}
}
}
Add these keyboard shortcuts to allow forward and back with alt:
[
...
{ "key": "alt+left", "command": "workbench.action.navigateBack" },
{ "key": "alt+right", "command": "workbench.action.navigateForward" },
...
]
Bitwarden
Password manager.
flatpak install com.bitwarden.desktop
MPV
Video player (like VLC but can frame-by-frame in reverse).
flatpak install io.mpv.Mpv
Nextcloud Desktop
Sync your files.
flatpak install com.nextcloud.desktopclient.nextcloud
# Fix wayland scaling issues
cp /var/lib/flatpak/exports/share/applications/com.visualstudio.code ~/.local/share/applications
# Add `--socket=wayland` and `--ozone-platform=wayland` to the correct locations in the "Exec" field
sed \
-ri 's/(Exec=.* run )(.*)(com.visualstudio.code)/\1--socket=wayland \2\3 --ozone-platform=wayland/g' \
~/.local/share/applications/com.visualstudio.code
# Validate desktop database and reload
desktop-file-validate ~/.local/share/applications/com.nextcloud.talk.desktop
update-desktop-database
# Autostart
ln -s ~/.local/share/applications/com.nextcloud.talk.desktop ~/.config/autostart/
Nextcloud Talk
Talk to your friends.
Download nextcloud talk from:
https://github.com/nextcloud-releases/talk-desktop/releases
flatpak install ./Nextcloud.Talk-linux-x64.flatpak
# autostart
ln -s /var/lib/flatpak/exports/share/applications/com.nextcloud.talk.desktop ~/.config/autostart/
Discord
Talk to your enemies.
flatpak install com.discordapp.Discord
Proton Mail
Talk to your business partners?
flatpak install me.proton.Mail
# Fix wayland scaling issues
cp /var/lib/flatpak/exports/share/applications/me.proton.Mail.desktop ~/.local/share/applications
# Add `--socket=wayland` and `--ozone-platform=wayland` to the correct locations in the "Exec" field
sed \
-ri 's/(Exec=.* run )(.*)(me.proton.Mail)/\1--socket=wayland \2\3 --ozone-platform=wayland/g' \
~/.local/share/applications/me.proton.Mail.desktop
# Validate desktop database and reload
desktop-file-validate ~/.local/share/applications/me.proton.Mail.desktop
update-desktop-database
# Autostart
ln -s ~/.local/share/applications/me.proton.Mail.desktop ~/.config/autostart/
Gimp
Photoshop for Linux.
flatpak install org.gimp.GIMP
Minecraft
Mine. Craft.
flatpak install com.mojang.Minecraft
Moonlight
Mine. Craft. But somewhere else.
flatpak install com.moonlight_stream.Moonlight
Steam
Play games.
flatpak install com.valvesoftware.Steam
Raspberry Pi Imager
Flash your pi.
flatpak install org.raspberrypi.rpi-imager
Fedora Media Writer
Flash your stick.
flatpak install org.fedoraproject.MediaWriter
Pods
Remember Docker Desktop? Pods is the new Docker Desktop.
flatpak install com.github.marhkb.Pods
Bambu Studio
Benchy benchy benchy benchy
flatpak install com.bambulab.BambuStudio
The config is located at ~/.var/app/com.bambulab.BambuStudio/config/BambuStudio/BambuStudio.conf
At the very top of the config you can add a pin for a printer permanently with:
(Do this with Bambu Studio closed, it'll overwrite if it's open.)
{
"user_access_code": {
"printer serial number": "access code here"
},
...
}
Eyedropper
Pick a color, any color (from your screen).
flatpak install com.github.finefindus.eyedropper
Mingle
Create custom emojis.
flatpak install io.github.halfmexican.Mingle
Obsidian
Show your friends your massive graph
flatpak install md.obsidian.Obsidian
Dev Toolbox
Format JSON, base64 encode, and color blindness simulator.
flatpak install me.iepure.devtoolbox
Junction
Choose how to open links you click on
flatpak install re.sonny.Junction
Kdenlive
Edit videos without Adobe
flatpak install org.kde.kdenlive
The Powder Toy
I love sandboxes.
uk.co.powdertoy.tpt
Pika
Backup with Borg.
flatpak install org.gnome.World.PikaBackup
Filezilla
Really easy ftp, ftps, sftp, etc. file transfer.
flatpak install org.filezillaproject.Filezilla
Transmission
Bittorent Client.
flatpak install com.transmissionbt.Transmission
AdwSteamGtk
Make Steam look like a KDE App... you know you want to.
flatpak install io.github.Foldex.AdwSteamGtk
Frog
Extract text, scan QR codes, from images.
flatpak install com.github.tenderowl.frog
CPU-X
CPU-Z but X this time
flatpak install io.github.thetumultuousunicornofdarkness.cpu-x
Ungoogled Chromium
Chrom
flatpak install io.github.ungoogled_software.ungoogled_chromium
# Fix wayland scaling issues
cp /var/lib/flatpak/exports/share/applications/io.github.ungoogled_software.ungoogled_chromium.desktop ~/.local/share/applications
# Add `--socket=wayland` and `--ozone-platform=wayland` to the correct locations in the "Exec" field
sed \
-ri 's/(Exec=.* run )(.*)(io.github.ungoogled_software.ungoogled_chromium)/\1--socket=wayland \2\3 --ozone-platform=wayland/g' \
~/.local/share/applications/io.github.ungoogled_software.ungoogled_chromium.desktop
# Validate and reload desktop database
desktop-file-validate ~/.local/share/applications/io.github.ungoogled_software.ungoogled_chromium.desktop
update-desktop-database
Toolbox
# Create and use an Arch Toolbox
toolbox create --distro arch
toolbox enter arch-toolbox-latest
I'd recommend adding this alias to your .bashrc to make things easier
# Toolbox quick enter
alias tbox='SHELL=zsh toolbox enter arch-toolbox-latest'
Reese's Arch Toolbox
I have a custom arch image based on the default arch-toolbox image. It offers:
- zsh with many completions installed/enabled
- vim
- nslookup
- iperf3
- kubectl
- helm
- nethogs
- python, pip, and pipx
- ansible
- aws cli
- ollama (add
export OLLAMA_HOST=my.ollama.hostto your.zshrcto use a remote host) - podman (connected automatically to the host machine via the unix socket)
- tmux
- ffmpeg
- wine
- podman
- unzip
- bat
- btop
- jq
- yq
- imagemagick
Pipx/Poetry
https://python-poetry.org/docs/
# pipx is already installed but the pathing won't work for installed apps
pipx ensurepath # then source ~/.zshrc or ~/.bashrc
pipx install poetry
# Now this should work.
poetry new test-project
Using Reese's Arch Toolbox
toolbox create -i gitea.reeseapps.com/services/arch-toolbox:latest
SHELL=/bin/zsh toolbox enter arch-toolbox-latest
Updating Reese's Arch Toolbox
# Stop the current arch toolbox
podman container stop arch-toolbox-latest
# Remove the old container
podman container rm arch-toolbox-latest
# Pull the new image
podman pull gitea.reeseapps.com/services/arch-toolbox:latest
# Start with the new image
toolbox create -i gitea.reeseapps.com/services/arch-toolbox:latest
Building Reese's Arch Toolbox
You can build and run the image wit this (See Containerfile in this directory):
# Build latest image
podman build \
--no-cache \
-t gitea.reeseapps.com/services/arch-toolbox:latest \
-f ./infrastructure/graduated/fedora/Containerfile
# Test with podman
podman run -it --rm gitea.reeseapps.com/services/arch-toolbox:latest
# Stop the current arch toolbox
podman container stop arch-toolbox-latest
# Remove the old container
podman container rm arch-toolbox-latest
# Start with the new image
toolbox create -i gitea.reeseapps.com/services/arch-toolbox:latest
SHELL=/bin/zsh toolbox enter
In vscode you can set this as your default build task for homelab and trigger it with
ctrl shift B
.vscode/tasks.json
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "Build arch-toolbox",
"type": "shell",
"command": "./infrastructure/graduated/fedora/arch-build.sh",
"problemMatcher": [],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}