Cross-platform boot OS selector for Linux, Windows, and macOS
Project description
OS-Flip 🌀
A Linux terminal tool to view, set, and flip your default boot OS.
✨ Overview
OS Flip is a Python-based utility to manage boot preferences on Linux systems using GRUB2. Whether you're running a dual-boot setup or switching between multiple Linux distributions, OS Flip gives you a simple terminal UI to:
- 🔍 View bootable OS entries
- ✅ Set the default OS
- 🔁 Temporarily flip into another OS for one-time boot
🖥️ Platforms Supported
- 🐧 Linux only (GRUB2-based bootloaders)
Windows and macOS are not supported. Windows does not allow GRUB changes, and macOS/Boot Camp setups are incompatible. Any Linux distribution should manage BIOS/UEFI defaults through firmware settings.
⚙️ Features
- 🧠 Auto-detects current OS
- 📜 Lists all GRUB boot entries
- ✅ Set permanent default boot entry
- 🔁 Flip OS temporarily (one-time boot)
- 📁 Logs activity to a Linux-specific log file
📦 Installation
Requires root/sudo
sudo pip install os-flip
Then run:
sudo os-flip
Requires Python 3.6+
📋 Requirements
- Python 3
- GRUB2 bootloader
os-prober,update-gruborgrub2-mkconfigsudoor root privileges
🚀 Example Output
____ _____ ______ _ _____ _____
/ __ \ / ____| | ____| | |_ _| __ \
| | | | (___ ___ | |__ | | | | | |__) |
| | | |\___ \ | __| | | | | | ___/
| |__| |____) | | | | |____ _| |_| |
\____/|_____/ |_| |______|_____|_|
Welcome to OS FLIP
By - AK (Your OS)
📜 Available Boot Entries:
1. Fedora Linux (Current Default)
2. Windows Boot Manager (on /dev/nvme0n1p1)
⚙️ Options:
1. Set default boot OS
2. Flip OS
3. Exit
📝 Custom Shortcuts (Advanced)
1. Using a Text File
You can automate OS Flip actions using a simple text file shortcut.
For example, create a text file named win_boot.txt containing:
2
1
y
Meaning:
2→ Choose Flip OS1→ Select OS option1(e.g., Windows Boot Manager) for one-time booty→ Confirm and reboot immediately
Run it with:
sudo os-flip < win_boot.txt
2. Create a Quick Command (Alias)
To make this even faster, add a shortcut to your shell configuration file (~/.bashrc, ~/.zshrc, etc.):
alias flip='sudo os-flip < /path/to/win_boot.txt'
After saving and reloading your shell (source ~/.bashrc), just type:
flip
…and your system will instantly flip and reboot into the selected OS.
📂 Log Location
| OS | Log File Path |
|---|---|
| Linux | /tmp/os_flip_<username>.log |
🚧 Disclaimer
⚠️ Use at your own risk. Editing bootloader configs may prevent systems from booting. Always back up and know what you're changing.
👨💻 Author
Made with ❤️ by AK MIT Licensed — attribution appreciated!
🔗 Related Links
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file os_flip-1.0.5.tar.gz.
File metadata
- Download URL: os_flip-1.0.5.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0ea6ec041f6bcd8b12fdc112cb9e860f90c9d0949f44b100f19109e635c382c
|
|
| MD5 |
4d90d59c1112b0009b3447de5bbdcec0
|
|
| BLAKE2b-256 |
055bd32ae284647a8b1dbdf3ca343597c7dcb80ca63b393fdcd4e3aba0cb3e82
|
File details
Details for the file os_flip-1.0.5-py3-none-any.whl.
File metadata
- Download URL: os_flip-1.0.5-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f83dc54dcb8594217fcf4031a5ea0af7d7524d8dcac3a0e29f811ffbd0b0abfb
|
|
| MD5 |
7c288e4b16519b1aceda1124a470612d
|
|
| BLAKE2b-256 |
ad3c681a596ee89c4f43816b1fea3dab9ec952c4126273da7c4c92201989c384
|