Skip to main content

SwichySSD

Versione 0.3.0. Sposta le app Flatpak tra il disco interno e un SSD esterno su Fedora Linux. Niente fstab pericoloso, niente blocchi all'avvio: il disco si monta e si smonta dai bottoni.

Cosa fa

  • Smonta immagine chiude solo il file .img delle app. I documenti sulla partizione exFAT restano aperti.
  • Espelli disco smonta prima l'immagine, poi l'exFAT, e spegne il disco. Usalo prima di staccare il cavo.
  • Aggiorna rilegge se il disco è collegato e se l'immagine è montata, e aggiorna i bottoni.
  • Lo spostamento copia l'app già installata, dal remote da cui proviene, senza riscaricarla da Flathub. La voce di menu e le icone si creano solo se la copia riesce. Se la disinstallazione fallisce, l'errore resta nel terminale e l'app non viene nascosta.

Come funziona

  1. Installi le app normalmente da GNOME Software (finiscono sul disco interno)
  2. Collega il tuo SSD esterno
  3. Apri Swichy SSD: se il disco non è ancora montato, clicca "Monta il Predator"
  4. Un click su "Sposta su Predator" copia l'app sull'SSD e la toglie dal disco interno
  5. Per chiudere solo le app e tenere i file: Smonta immagine
  6. Per staccare il disco: Espelli disco, poi clicca Aggiorna

Viceversa, le app sull'SSD hanno il bottone "<- Sposta sul disco interno" per quando devi usare il PC senza il disco. Lo spostamento chiede la password di amministrazione perché il repository Flatpak sul Predator è di root.

I tuoi dati e impostazioni delle app restano sempre intatti: vivono in ~/.var/app/ e non vengono toccati quando sposti un'app.

Requisiti hardware (una tantum)

Il tuo SSD esterno deve contenere un file immagine ext4 (.img) dentro una partizione exFAT. Questo permette a Flatpak di funzionare correttamente mantenendo la compatibilita' con Windows.

Se parti da zero

# 1. Crea il file immagine da 50 GB dentro la cartella dedicata
sudo mkdir -p /run/media/$USER/NOME_SSD/asus-linux
dd if=/dev/zero of=/run/media/$USER/NOME_SSD/asus-linux/fedora-apps.img bs=1M count=51200
mkfs.ext4 -L fedora-apps /run/media/$USER/NOME_SSD/asus-linux/fedora-apps.img

# 2. Montalo una volta per creare la struttura
sudo mkdir -p /mnt/predator-fedora
sudo mount -o loop /run/media/$USER/NOME_SSD/asus-linux/fedora-apps.img /mnt/predator-fedora
sudo mkdir -p /mnt/predator-fedora/programs
sudo umount /mnt/predator-fedora

Se hai gia' il file immagine (es. dopo una reinstallazione)

Non devi rifarlo. Basta montarlo:

sudo mkdir -p /mnt/predator-fedora
sudo mount -o loop "/run/media/$USER/PSSD GP30/asus-linux/fedora-apps.img" /mnt/predator-fedora

(Adatta il percorso in base a dove GNOME monta il tuo SSD.)

Configurazione Flatpak (una tantum)

sudo mkdir -p /etc/flatpak/installations.d
sudo tee /etc/flatpak/installations.d/predator.conf > /dev/null <<'CONF'
[Installation "predator"]
Path=/mnt/predator-fedora/programs
DisplayName=Predator SSD
StorageType=ssd
CONF
sudo flatpak remote-add --installation=predator --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Installazione

GTK non arriva da pip. Su Fedora:

sudo dnf install python3-gobject gtk4
pipx install swichyssd
swichyssd --install

Poi cerca "Swichy SSD" nel menu delle applicazioni (icona disco).

Da un clone, gli stessi file:

git clone https://github.com/bitfarmy/swichyssd.git
cd swichyssd
python3 swichyssd.py --install

Come si comporta il sistema

Situazione Cosa succede
PC senza SSD collegato Fedora avvia normalmente. Lo store installa sul disco interno. Swichy SSD mostra "Predator non collegato".
SSD collegato, non montato Swichy SSD rileva il disco e mostra "Monta il Predator". Il bottone Aggiorna rilegge anche questo stato.
SSD montato Vedi le app sul Predator e puoi spostarle avanti e indietro. Smonta immagine chiude solo il file .img. Espelli disco smonta prima l'immagine, poi la partizione exFAT, e spegne il disco.

Niente fstab, niente blocchi all'avvio. Il montaggio e' manuale o tramite bottone.

Installare da terminale direttamente sul Predator

# Prima monta il file immagine (se non e' gia' montato)
sudo mount -o loop "/run/media/$USER/PSSD GP30/asus-linux/fedora-apps.img" /mnt/predator-fedora

# Poi installa con --installation
flatpak install --installation=predator flathub nomeapp

Per installare sul disco interno (default):

flatpak install flathub nomeapp

File e repository personali

Non usare il file immagine .img per i tuoi file. Montalo solo per le app Flatpak.

Per i tuoi documenti, codice, repository: usa la partizione exFAT del Predator direttamente, ad esempio:

/run/media/$USER/NOME_SSD/progetti
/run/media/$USER/NOME_SSD/repository

Windows legge queste cartelle normalmente.

Requisiti software

  • Fedora (o altra distro) con GNOME e Flatpak
  • python3-gobject e GTK4 (gia' presenti su Fedora Workstation)
  • Ptyxis, GNOME Terminal o kgx, per mostrare il progresso degli spostamenti e chiedere la password

Regole d'oro con un SSD esterno

  • Espelli sempre il disco con il bottone Espelli disco prima di scollegarlo. Staccare il cavo con l'immagine ancora montata lascia l'exFAT sporco.
  • Se Windows propone di formattare il disco o il file .img, annulla sempre
  • Senza disco collegato, le app sull'SSD non sono disponibili (e il programma te lo segnala)
  • Se reinstalli Fedora, il file .img e le app dentro restano intatti sul SSD

Licenza

MIT - vedi LICENSE

Metadata

Release files for swichyssd 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for swichyssd 0.3.0
File Size Uploaded
swichyssd-0.3.0.tar.gz 12.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for swichyssd 0.3.0
File Interpreter ABI Platform
swichyssd-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 25.0 kB

Release files / swichyssd-0.3.0.tar.gz

Download URL swichyssd-0.3.0.tar.gz
Size 12.3 kB
Tags Source
SHA-256 checksum
How to use checksums
4a92fefefadee7f1b0b4279bb88a8bcb65e67552a075d990043d74ec0def5887
BLAKE2b-256 checksum
How to use checksums
4c9717baa1444355d48bd3d6a967a8a0b19eaa66e25291de529a823f03b31216
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / swichyssd-0.3.0-py3-none-any.whl

Download URL swichyssd-0.3.0-py3-none-any.whl
Size 12.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
50832bad18a184041ae6c6febe912bbce1a6f539658a83d8e1cc43aa2552888a
BLAKE2b-256 checksum
How to use checksums
97b1a14ff3466dbea261279723c3427a52621807f252c455e4bc7f7165264399
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page