Experimento: Omini Linux

A ideia aqui é simples um mega script que adiciona “transformações” no sistema do pinguim, para usos específicos como jogar por exemplo, o que eu posso testar é em Debians-like (especialmente KDE Plasma) como Zorin, Tiger, Mint e Ubuntu outras distros podem funcionar com pequenos ajustes. A ideia é simples: ter cards com scripts tipo copia e cola, exemplo:

Modo XPTO

Esse é um modo de exemplo, que não faz nada

#!/usr/bin/env bash
echo "Teste"

Então a pessoa copia o código, cola num arquivo e executa. O objetivo é ter scripts o menos destrutivo possível, então se um script roda um “install”, deve ter um “–uninstall” associado que desfaz. Sim, o nome “Omini” vem de “ominitrix”, por isso se a moderação puder transformar numa Wiki seria interessante, vou postando enquanto der pra postar, dito isso, vamos lá:


:video_game: Modo Gamer

Instala e configura as principais formas de jogos no Linux. Ao rodar esse script, o sistema ficará praticamente pronto pra jogar!

#!/usr/bin/env bash

if [[ $EUID -ne 0 ]]; then
   echo "Por favor, execute como root ou use sudo."
   exit 1
fi
if [ -f "/var/lib/omininux/gamer-mode" ]; then
   echo "Modo gamer já ativo"
   exit
fi

function desinstalar-modo-gamer {
 echo
 echo "Removendo plataformas de jogos..."
 echo
 flatpak uninstall --delete-data com.valvesoftware.Steam -y
 flatpak uninstall --delete-data com.heroicgameslauncher.hgl -y
 flatpak uninstall --delete-data io.itch.itch -y
 flatpak uninstall --delete-data net.lutris.Lutris -y

 echo
 echo "Removendo overrides de permissões..."
 echo
 flatpak override --reset com.valvesoftware.Steam
 flatpak override --reset com.heroicgameslauncher.hgl
 flatpak override --reset io.itch.itch
 flatpak override --reset net.lutris.Lutris

 echo
 echo "Removendo script de auto Steam Play..."
 echo
 rm -f /etc/profile.d/habilita_steamplay.sh

 echo
 echo "Desinstalando pacotes auxiliares..."
 echo
 apt remove --purge joystick jstest-gtk  -y
 apt autoremove -y
 
 rm "/var/lib/omininux/gamer-mode"
}

# Deixa um flatpak com permissões semelhantes a um app nativo
function modo-permissivo {
  flatpak override --system                \
    ${1}                                   \
    --filesystem=host                      \
    --filesystem=/run/udev:ro              \
    --device=all                           \
    --share=network                        \
    --socket=x11                           \
    --socket=wayland                       \
    --socket=pulseaudio                    \
    --socket=pipewire                      \
    --env=STEAM_FORCE_DESKTOPUI_SCALING=1
}

if [[ "${1}" == "--uninstall" ]]; then
  desinstalar-modo-gamer
  exit 0
fi

echo
echo "Atualizando o sistema..."
echo
apt update && apt upgrade -y

echo
echo "Instalando a ferramenta de teste de controles..."
echo
apt install joystick jstest-gtk --install-recommends --reinstall -y

echo
echo "Instalando o Flatpak..."
echo
apt install flatpak ca-certificates --install-recommends --reinstall -y

echo
echo "Adicionando Flathub..."
echo
flatpak remote-add --if-not-exists flathub "https://flathub.org/repo/flathub.flatpakrepo"

echo
echo "Instalando plataformas de jogos..."
echo
flatpak install --system flathub com.valvesoftware.Steam -y
flatpak install --system flathub com.heroicgameslauncher.hgl -y
flatpak install --system flathub io.itch.itch -y
flatpak install --system flathub net.lutris.Lutris -y

echo
echo "Aplicando permissões estendidas às plataformas de  jogos..."
echo
modo-permissivo "com.valvesoftware.Steam"
modo-permissivo "com.heroicgameslauncher.hgl"
modo-permissivo "io.itch.itch"
modo-permissivo "net.lutris.Lutris"

echo
echo "Criando script que ativa Steam Play automaticamente..."
echo
cat > /etc/profile.d/habilita_steamplay.sh << 'EOF'
#!/bin/bash

CONFIG_DIR="${HOME}/.var/app/com.valvesoftware.Steam/.steam/steam/config"
CONFIG_FILE="${CONFIG_DIR}/config.vdf"

if [ ! -f "$CONFIG_FILE" ]; then
    mkdir -p "$CONFIG_DIR"
    cat > "$CONFIG_FILE" << EOC
"InstallConfigStore"
{
    "Software"
    {
        "Valve"
        {
            "Steam"
            {
                "SteamPlay"
                {
                    "Enable"    "1"
                    "Allowed"   "windows;linux;mac"
                }
            }
        }
    }
}
EOC
fi
EOF

chmod +x /etc/profile.d/habilita_steamplay.sh

echo -ne "\n\n\n"
echo "Seu sistema está quase pronto pra jogar, só falta um detalhe: reiniciar o sistema"
echo "Após reiniciar é só acessar a sessão 'Jogos' no menu de apps"
echo -ne "\n\n\n"

mkdir -p /var/lib/omininux/
touch /var/lib/omininux/gamer-mode
6 curtidas

Adorei essa ideia :eyes:

Interessante essa ideia, é que nem o ArchCraft faz, é um Shell Script que instala tudo bonitinho.
Boa Sorte :four_leaf_clover: