Install Podman and Distrobox
Arch
https://wiki.archlinux.org/title/Podman
Code: Select all
sudo pacman -S podman distrobox
Code: Select all
sudo zypper in podman distrobox netavark
Code: Select all
sudo dnf install podman distrobox
Code: Select all
sudo apt install -y podman distrobox
As of 3.5 preview podman and Distrobox is now installed by default.
BA-5.6
As of SteamOS 3.6, distrobox has been upgraded to 1.6 and can now run a 24.04 container. Upgrading to 1.8 is unnecessary unless there are other fixes/features you want.
If you want to use BA-5.6 on Debian 12, Distrobox will need to be upgraded. You can learn more about upgrading here: https://github.com/89luca89/distrobox/b ... k_guide.md
Create Distrobox Container
Create Directory for BibleAnalyzer Home
I recommend using a "clean" home directory for your Ubuntu install. I put my in ~/.bibleanalyzercontainer/.
Code: Select all
mkdir ~/.bibleanalyzercontainer
Code: Select all
distrobox create --image ubuntu:24.04 --name bibleanalyzer --home ~/.bibleanalyzercontainer/
Code: Select all
distrobox create --image ubuntu:jammy-20231004 --name bibleanalyzer --home ~/.bibleanalyzercontainer/
Code: Select all
distrobox enter bibleanalyzer
Allow Apt Sandbox as Root
Code: Select all
echo 'APT::Sandbox::User "root";' | sudo tee -a /etc/apt/apt.conf.d/10sandbox
Code: Select all
wget https://www.bibleanalyzer.com/bibleanalyzer_5.6-5_all.deb
sudo apt install ./bibleanalyzer_5.6-5_all.deb python3-lxml libcanberra-gtk-module libcanberra-gtk3-module -y
Code: Select all
wget https://www.bibleanalyzer.com/bibleanalyzer_5.5-1_all.deb
sudo apt install ./bibleanalyzer_5.5-1_all.deb libopengl0 xapp libcanberra-gtk3-module appmenu-gtk3-module libwebkit2gtk-4.0-37 -y
Run Font Cache
Code: Select all
fc-cache -v
Run the command below and make sure you can open the Module Manager
Code: Select all
export XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/ && bibleanalyzer
See troubleshooting at bottom.
If all went well, create the shortcut (in container).
Code: Select all
distrobox-export --app bibleanalyzer
Code: Select all
~/.local/share/applications/bibleanalyzer-bibleanalyzer.desktop
Code: Select all
Exec=/usr/bin/distrobox-enter -n bibleanalyzer -- python3 -u /opt/bibleanalyzer/ba-run.py
Code: Select all
Exec=/usr/bin/distrobox-enter -n bibleanalyzer -- /bin/bash -c "export XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/ && python3 -u /opt/bibleanalyzer/ba-run.py"
Troubleshooting
If you see a message like: "Authorization required, but no authorization protocol specified
Unable to access the X Display, is $DISPLAY set properly?"
On the host machine enter this:
Code: Select all
xhost +"local:podman@"
Code: Select all
touch ~/.config/plasma-workspace/env/xhost.sh
Code: Select all
#!/bin/sh
xhost +"local:podman@"
Code: Select all
chmod +x ~/.config/plasma-workspace/env/xhost.sh
In container
Code: Select all
cd ~
mkdir .config
I discovered that clicking the menu link also initiates an update of the image. You can follow this using
Code: Select all
podman logs -f bibleanalyzer
Error: command required for rootless mode with multiple IDs: exec: "newuidmap": executable file not found in $PATH
This error was found by zortmo in Debian and MXLinux.
The fix for Debian is to install rootlesskit to the host machine.
Code: Select all
sudo apt install -y rootlesskit
I use Plasma with the Sweet-Dark theme. BibleAnalyzer respects the GTK theme that is set so I just added a GTK theme that is light to my launch command in the Desktop file. Please choose an installed GTK theme that best aligns with your system's light color. In my case, I went with Breeze.
This is the command. Notice the GTK theme:
XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/ GTK_THEME=Breeze && python3 -u /opt/bibleanalyzer/ba-run.py"
Code: Select all
XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/ GTK_THEME=Breeze && python3 -u /opt/bibleanalyzer/ba-run.py"
Recently switched to Hyprland and noticed pop-up windows were not working. With this fix all pop-ups will be centered on the screen, but for now that is the best I could do. Please add this line to the window rules section of hyprland.conf
Code: Select all
windowrulev2=noinitialfocus,initalTitle:^ba-run.py,floating:1