VelociFS is a practical Linux CLI that optimizes an existing Steam library (Steam + Proton) by applying safe, reversible filesystem and OS tuning. It targets real pain points like metadata storms, shadercache churn, compatdata writes, and btrfs CoW overhead.
Safety first: VelociFS never deletes data, supports
--dry-run, produces rollback steps, and logs every operation.
- Scan your Steam library and detect filesystem/mount options, disk type, and Steam subdirectories.
- Plan optimizations with safety profiles (safe, balanced, aggressive) and get an undo plan.
- Apply / Rollback actions with explicit confirmation.
- Doctor common problems (NTFS/exFAT issues, CoW on btrfs, ownership mismatches, HDD warnings).
- Debian 12/13
- Ubuntu (current releases)
cargo build --release
./target/release/velocifs --help# 1) Scan your Steam library
velocifs scan --path ~/.local/share/Steam
# 2) Create a safe plan
velocifs plan --path ~/.local/share/Steam --profile safe --out plan.json
# 3) Dry-run the plan to see commands
velocifs apply --plan plan.json --dry-run --yes
# 4) Apply for real (requires root for some actions)
sudo velocifs apply --plan plan.json --yes
# 5) Rollback if needed
sudo velocifs rollback --plan plan.json --yes- Detects filesystem type and mount options.
- Detects the block device, scheduler, and SSD/HDD.
- Reports btrfs subvol/compression/autodefrag if applicable.
- Discovers Steam library subdirectories:
steamapps/commonsteamapps/compatdatasteamapps/shadercachesteamapps/downloadingsteamapps/temp
Creates a plan describing actions and rollback steps. Profiles:
- Safe: no remounts or sysctl changes; only safe directory-level changes and recommendations.
- Balanced: includes sysctl drop-in and optional remount suggestions.
- Aggressive: more recommendations, still no unsafe journaling and no data=writeback.
Executes the plan in order. If an action needs root, the tool will ask you to re-run with sudo.
Reverts changes where possible. For sysctl drop-ins, VelociFS restores the latest backup if it exists.
Outputs a prioritized checklist of issues:
- NTFS/exFAT warnings
- ownership/permissions mismatches
- btrfs CoW on heavy-write directories
- HDD performance warnings
- Flatpak Steam path mismatch
chattr +Con heavy-write directories:steamapps/compatdatasteamapps/shadercachesteamapps/downloadingsteamapps/temp
Important: +C only affects new files. Existing files keep their CoW extents until rewritten.
- Recommends
noatimeorrelatimeif not present. - Suggests
commit=with clear warnings about a larger crash window.
- Recommends a suitable I/O scheduler for SSD/NVMe or HDD.
- Optional sysctl drop-in:
vm.swappinessvm.dirty_background_ratiovm.dirty_ratiovm.vfs_cache_pressure
All operations are logged to:
~/.cache/velocifs/logs/<timestamp>.log
- No deletions.
- Dry-run prints exact commands without executing.
- Undo plan is included in every plan.
- Backups created for
/etc/sysctl.d/velocifs.confbefore overwriting.
Will this break my games?
The safe profile only makes reversible changes like chattr +C on new files and recommendations. Balanced/aggressive profiles add sysctl and remount suggestions that are still conservative.
Do I need root?
Some actions (sysctl, remounts) require root. VelociFS tells you when sudo is required.
What about Flatpak Steam?
VelociFS detects the Flatpak library path (~/.var/app/com.valvesoftware.Steam/data/Steam) and warns if your target path doesn’t match.
Can I undo everything?
Yes, most changes are reversible. For chattr +C, disabling CoW on existing files isn’t fully reversible unless files are rewritten; VelociFS documents this limitation.
cargo testMIT