Skip to main content

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-grub or grub2-mkconfig
  • sudo or 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 OS
  • 1 → Select OS option 1 (e.g., Windows Boot Manager) for one-time boot
  • y → 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

os_flip-1.0.5.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

os_flip-1.0.5-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

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

Hashes for os_flip-1.0.5.tar.gz
Algorithm Hash digest
SHA256 c0ea6ec041f6bcd8b12fdc112cb9e860f90c9d0949f44b100f19109e635c382c
MD5 4d90d59c1112b0009b3447de5bbdcec0
BLAKE2b-256 055bd32ae284647a8b1dbdf3ca343597c7dcb80ca63b393fdcd4e3aba0cb3e82

See more details on using hashes here.

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

Hashes for os_flip-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f83dc54dcb8594217fcf4031a5ea0af7d7524d8dcac3a0e29f811ffbd0b0abfb
MD5 7c288e4b16519b1aceda1124a470612d
BLAKE2b-256 ad3c681a596ee89c4f43816b1fea3dab9ec952c4126273da7c4c92201989c384

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page