# Fedora Kinoite - [Fedora Kinoite](#fedora-kinoite) - [Podman](#podman) - [Apps](#apps) - [VSCode](#vscode) - [Bitwarden](#bitwarden) - [MPV](#mpv) - [Nextcloud Desktop](#nextcloud-desktop) - [Nextcloud Talk](#nextcloud-talk) - [Discord](#discord) - [Proton Mail](#proton-mail) - [Gimp](#gimp) - [Minecraft](#minecraft) - [Moonlight](#moonlight) - [Steam](#steam) - [Marknote](#marknote) - [Raspberry Pi Imager](#raspberry-pi-imager) - [Fedora Media Writer](#fedora-media-writer) - [Pods](#pods) - [Bambu Studio](#bambu-studio) - [Toolbox](#toolbox) - [Reese's Arch Toolbox](#reeses-arch-toolbox) - [Using Reese's Arch Toolbox](#using-reeses-arch-toolbox) - [Updating Reese's Arch Toolbox](#updating-reeses-arch-toolbox) - [Building Reese's Arch Toolbox](#building-reeses-arch-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`: ```bash # Podman auth file export REGISTRY_AUTH_FILE=$HOME/.podman-auth.json ``` Source that and then run `podman login` to create the file. ## Apps Flatpak installs are from Flathub unless otherwise noted. ### VSCode Write code. ```bash flatpak install com.visualstudio.code ``` Add to settings.json so the host shell is spawned ```json { "terminal.integrated.defaultProfile.linux": "bash", "terminal.integrated.profiles.linux": { "bash": { "path": "/app/bin/host-spawn", "args": ["bash"], "icon": "terminal-bash", "overrideName": true } } } ``` ### Bitwarden Password manager. ```bash flatpak install com.bitwarden.desktop ``` ### MPV Video player (like VLC but can frame-by-frame in reverse). ```bash flatpak install io.mpv.Mpv ``` ### Nextcloud Desktop Sync your files. ```bash flatpak install com.nextcloud.desktopclient.nextcloud ``` ### Nextcloud Talk Talk to your friends. Download nextcloud talk from: ```bash flatpak install ./Nextcloud.Talk-linux-x64.flatpak ``` ### Discord Talk to your enemies. ```bash flatpak install com.discordapp.Discord ``` ### Proton Mail Talk to your business partners? ```bash flatpak install me.proton.Mail ``` ### Gimp Photoshop for Linux. ```bash flatpak install org.gimp.GIMP ``` ### Minecraft Mine. Craft. ```bash flatpak install com.mojang.Minecraft ``` ### Moonlight Mine. Craft. But somewhere else. ```bash flatpak install com.moonlight_stream.Moonlight ``` ### Steam Play games. ```bash flatpak install com.valvesoftware.Steam ``` ### Marknote Take notes with Mark. ```bash flatpak install org.kde.marknote ``` ### Raspberry Pi Imager Flash your pi. ```bash flatpak install org.raspberrypi.rpi-imager ``` ### Fedora Media Writer Flash your stick. ```bash flatpak install org.fedoraproject.MediaWriter ``` ### Pods Remember Docker Desktop? Pods is the new Docker Desktop. ```bash flatpak install com.github.marhkb.Pods ``` ### Bambu Studio Benchy benchy benchy benchy ```bash 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: ```json { "user_access_code": { "printer serial number": "access code here" }, ... } ``` ## Toolbox ```bash # 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 ```bash # 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.host` to your `.zshrc` to use a remote host) - podman (connected automatically to the host machine via the unix socket) #### Using Reese's Arch Toolbox ```bash toolbox create -i gitea.reeseapps.com/services/arch-toolbox:latest SHELL=/bin/zsh toolbox enter arch-toolbox-latest ``` #### Updating Reese's Arch Toolbox ```bash # 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): ```bash # Build latest image podman build \ -t gitea.reeseapps.com/services/arch-toolbox:latest \ -t gitea.reeseapps.com/services/arch-toolbox:$(date +%s) \ -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 ``` You can push the image up to your registry like normal: ```bash # Push all tags for the "latest" image podman image ls \ -f 'reference=gitea.reeseapps.com/services/arch-toolbox:latest' \ -n --no-trunc --format '{{ .Repository }}:{{ .Tag }}' \ | xargs -I {} podman push {} ```