2025-04-02 16:11:36 +02:00
2025-04-02 16:12:33 +02:00
2025-04-02 16:21:03 +02:00

Hibernate Setup Script

A Python-based utility for configuring hibernation on Linux systems using a swap file.
This script automates resume configuration for GRUB and initramfs, and optionally creates a swap file of configurable size.


🛠 Features

  • Create and activate a swap file (optional)
  • Automatically detect UUID and resume offset
  • Inject resume and resume_offset into GRUB
  • Regenerate initramfs via mkinitcpio
  • Supports Arch-based systems (Manjaro, Arch, etc.)
  • Root permission required

📦 Installation

This utility is available via Kevins Package Manager:
➡️ github.com/kevinveenbirkenbach/package-manager

pkgmgr install setup-hibernate

🚀 Usage

Run the script as root:

sudo ./hibernate_setup.py [OPTIONS]

Options

Option Description
--create-swapfile Creates a swap file at /swapfile
--swap-size <int> Size in GB (default: 32)

Example

sudo ./hibernate_setup.py --create-swapfile --swap-size 40

Requirements

  • Python 3
  • Tools: fallocate, mkswap, swapon, filefrag, findmnt, mkinitcpio, update-grub
  • Root privileges

No external Python packages are required (no requirements.txt needed).


🤖 AI-Assisted Development

This script was developed with the help of ChatGPT
🔗 Click here to view the development conversation


👤 Author

Developed by Kevin Veen-Birkenbach
🌐 https://www.veen.world/


📄 License

This project is licensed under the MIT License.
See LICENSE for details.

Description
A Python script to configure hibernation on Linux systems using a swap file, including GRUB and initramfs integration. Optional swap file creation with custom size support.
Readme MIT 59 KiB
Languages
Python 100%