Minha distro pessoal baseada no Fedora, com niri + Noctalia v5.
English ·
Documentação ·
Solução de problemas
O msbos é minha distro pessoal baseada no Fedora: um conjunto de scripts bash idempotentes que transforma um Fedora 44/45 já instalado num desktop enxuto, sem ISO própria. A instalação segue a rota C: em vez de gerar uma ISO, um script de bootstrap troca o shell do Plasma pelo niri (compositor Wayland) e pelo Noctalia v5, instala o driver de GPU e aplica os ajustes de memória e desempenho. Os apps do KDE continuam e o tema dos aplicativos segue o Breeze Dark, o dark padrão do KDE.
O foco é um desktop enxuto e de baixo consumo, sem abrir mão dos apps do dia a dia. Não há meta numérica de RAM: o consumo varia com o kernel, os drivers, a GPU e o hardware.
Obrigado a quem torna isso possível. O msbos é só a cola pessoal entre projetos excelentes: o Fedora Project e a comunidade KDE fornecem a base e os aplicativos; o niri, de YaLTeR, oferece o compositor; o Noctalia traz o shell e o greeter; e o greetd, de Kenny Levinsen, cuida do login. Obrigado também a todos os projetos upstream citados nos créditos completos. O msbos é um projeto pessoal, sem afiliação com Fedora, KDE, niri ou Noctalia.
| Camada | Escolha |
|---|---|
| Base | Fedora 44/45 KDE Plasma Desktop (ou instalação mínima) |
| Sessão gráfica | niri — compositor Wayland com tiling rolável |
| Shell | Noctalia v5 — barra, launcher, notificações, OSD e lock screen |
| Login | greetd + Noctalia Greeter (substitui o Plasma Login Manager) |
| Apps | Apps do KDE mantidos + Zed, Brave, ONLYOFFICE, LocalSend, lazydocker… |
| Tema dos apps | Breeze Dark (Qt via kdeglobals, GTK via dconf/settings.ini) |
| Terminal | alacritty translúcido com blur + zsh com autocomplete |
| Dev | Rust (rustup), Node LTS via nvm, gcc/make, GitHub CLI, KVM/libvirt |
- Fedora 44 ou 45 já instalado, x86_64, com internet e acesso a
sudo. - Base recomendada: Fedora KDE (o script remove o shell do Plasma e mantém os apps KDE).
- Alternativa mais enxuta: instalação mínima do Fedora (o script adiciona o restante).
- Em VM, é preciso virtio-gpu com aceleração 3D e GL no Spice — o niri rejeita renderização por software. Veja VM e GPU.
Sem clonar o repositório:
curl -fsSL https://raw.githubusercontent.com/marcos2872/msbos/main/bootstrap.sh -o /tmp/msbos.sh
sudo bash /tmp/msbos.sh --dry-run # simula tudo (recomendado na 1ª vez)
sudo bash /tmp/msbos.sh # instala de verdade
sudo rebootOu com clone (para desenvolvimento):
git clone https://github.com/marcos2872/msbos.git
cd msbos
./install.sh --dry-run # simula tudo, sem alterar nada
./install.sh # instala (pergunta antes de remover o shell do Plasma)
sudo rebootO zoom por output do niri é opcional: sem --with-niri-zoom o msbos instala o niri do
pacote, que não tem zoom. Para compilar o fork com zoom por monitor, rode a instalação com
--with-niri-zoom — passo a passo, requisitos e como remover depois em
instalação.
O instalador avisa antes de agendar a remoção do shell do Plasma; nada é parado na sessão
atual. A troca para o greetd/niri vale no próximo boot. Não rode o install.sh no
%post do Anaconda — veja instalação.
Depois de reiniciar, a sessão niri aparece na tela do greetd. No primeiro login, o
msbos sincroniza a aparência com a tela de login automaticamente; o wallpaper aparece no
próximo logout/reboot (para repetir: noctalia msg greeter-sync). Atalhos básicos:
Super+T terminal · Super+Space launcher · Super+S control center · Super+P monitores.
| Documento | Conteúdo |
|---|---|
| Instalação | Base, ISOs, VM, bootstrap, opções, Anaconda e primeiros passos |
| Uso diário | Atalhos do niri/Noctalia, wallpapers, apps padrão, tema e configs pessoais |
| Arquitetura e etapas | Fluxo dos scripts, as 7 etapas base + migração (e o zoom opt-in), lib/common.sh, assets e verificação |
| Solução de problemas | dnf, VM/GPU, flatpak, Noctalia, greeter e recuperação |
| Créditos | Projetos e pessoas que tornam o msbos possível |
| Índice | Ponto de entrada de toda a documentação |
Toda a documentação tem versão em inglês com sufixo .en.md (por exemplo,
README.en.md e docs/index.en.md).
MIT — use, modifique e redistribua como quiser.

