Raspberry Pi Related Stuff
RaspberryPi/
├── docs/ # Documentation and reference files
│ ├── Commands.txt # Common command reference
│ ├── dietpi.txt # DietPi configuration notes
│ ├── pihole.txt # Pi-hole configuration
│ ├── sqlite-reference.txt # SQLite optimization tips
│ └── REFERENCES.md # Reference notes and tool links
├── Scripts/ # Executable scripts
│ ├── Setup.sh # System setup automation
│ ├── Docker-clean.sh # Docker cleanup
│ ├── docker.sh # Docker configuration
│ └── ...
├── dots/ # Dotfiles and configurations
├── PiClean.sh # System cleanup script
├── update.sh # System update script
├── raspi-f2fs.sh # F2FS filesystem conversion
└── README.md # This file
curl -fsSL https://raw.githubusercontent.com/Ven0m0/Linux-OS/refs/heads/main/RaspberryPi/update.sh | bashcurl -fsSL https://raw.githubusercontent.com/Ven0m0/Linux-OS/refs/heads/main/RaspberryPi/PiClean.sh | bashnet.ipv4.ip_forward=1
https://gitlab.com/volian/nala/-/blob/main/docs/nala-fetch.8.rst?ref_type=headsTools
wget -qO- https://raw.githubusercontent.com/Itai-Nelken/PiApps-terminal_bash-edition/main/install.sh | bashDietPi/Raspberry Pi OS on F2FS
Convert DietPi or Raspberry Pi OS from ext4 to F2FS for better SD card performance and longevity.
Interactive Mode (Easiest):
cd RaspberryPi
sudo ./f2fs-new.sh -iDirect Flash:
# Download latest DietPi and flash to device
sudo ./f2fs-new.sh --device /dev/mmcblk0
# Use local image
sudo ./f2fs-new.sh --src ~/DietPi.img.xz --device /dev/mmcblk0Create Image File:
# Download and convert to F2FS image
sudo ./f2fs-new.sh --out ~/dietpi-f2fs.img
# Flash later
sudo dd if=~/dietpi-f2fs.img of=/dev/mmcblk0 bs=4M conv=fsync status=progress| Script | Purpose | Best For |
|---|---|---|
f2fs-new.sh |
Convert images to F2FS | Image creation, direct flashing |
raspi-f2fs.sh |
Advanced F2FS flasher | Custom boot size, shrinking, SSH |
dietpi-chroot.sh |
Post-conversion customization | Initramfs regen, package install |
✅ DietPi Detection - Auto-detects and handles DietPi-specific configs ✅ Interactive Mode - fzf-based selection for source and destination ✅ F2FS Optimization - Compression, ATGC, garbage collection ✅ Config Cleanup - Removes ext4-specific settings automatically ✅ Verification - Post-conversion checks ensure bootability
- Complete Guide - Full documentation with troubleshooting
- Examples - Common use cases and workflows
- PRD - Product requirements and technical details
- Raspberry Pi 3, 4, or 5
- Kernel with F2FS support (most modern kernels have this)
- Tools:
mkfs.f2fs,losetup,rsync,fzf(for interactive mode)
- DietPi Documentation
- F2FS Kernel Docs
- Original implementations: aarontc, d-a-v, timothybrown
DietPi Server Stacks
- Raspberry pi 4: LEMP (Nginx, MariaDB, PHP)
- Raspberry pi 3: LLSP (Lighttpd, SQLite, PHP)
Reference Documentation:
See docs/dietpi.txt for detailed DietPi configuration
CasaOS
- Install CasaOS
sudo casaos-uninstall
curl -fsSL https://get.casaos.io | sudo bash- Update
curl -fsSL https://get.casaos.io/update | sudo bashOther selfhost tools/OS's
Install
curl -L https://setup.runtipi.io | bashInstall
https://cosmos-cloud.io/doc/1%20index/#automatic-installation
# IF YOU NEED TO CHANGE THE PORTS, DO IT BEFORE RUNNING THE COMMAND
# You can overwrite any other env var by adding them here
export COSMOS_HTTP_PORT=80 COSMOS_HTTPS_PORT=443
# You can run a dry run to see what will be installed
curl -fsSL https://cosmos-cloud.io/get.sh | sudo -E bash -s -- --dry-run
# If you are happy with the result, you can run the command
curl -fsSL https://cosmos-cloud.io/get.sh | sudo -E bash -sOne liner:
env COSMOS_HTTP_PORT=80 COSMOS_HTTPS_PORT=443 curl -fsSL https://cosmos-cloud.io/get.sh | sudo -E bash -sInstall
docker run --name homepage \
-e HOMEPAGE_ALLOWED_HOSTS=gethomepage.dev \
-e PUID=1000 \
-e PGID=1000 \
-p 3000:3000 \
-v /path/to/config:/app/config \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
--restart unless-stopped \
ghcr.io/gethomepage/homepage:latest