Skip to content

akibahmed229/nixos

Repository files navigation

Akib | NixOS Config Go Wilde

Current System Preview

my current setup

Table of Contents

  1. NixOS Btrfs Installation Guide

  2. File Structure

1. Installation My version of NixOS

NixOS setup using falke and home-manager as module. Hyperland as default Window Manager.

Installation Prerequisites

Before you begin, ensure you have the following:

  • A Linux system with an EFI-enabled BIOS (for BIOS installations, adjust the commands accordingly).
  • The disk identifier (/dev/sdX) for the target installation disk. Replace sdX with the appropriate disk identifier for your system.

Installation Steps

Install NixOS

sudo su
nix-shell -p git --command 'nix run github:akibahmed229/nixos#akibOS --experimental-features "nix-command flakes"'

Note: During the installation process, akibOS will prompt for the disk identifier (/dev/sdX) , hostname and the username. Replace sdX with the appropriate disk identifier for your system. also replace hostname with your desired hostname and username with your desired username. the default password for the user is 123456 you can change it later.

Congratulations! You have successfully installed NixOS with a Btrfs filesystem. Enjoy your fault-tolerant, advanced feature-rich, and easy-to-administer system! Note: The Configuration will clone from this repository and will be placed in /home/username/.config/flake respectively.

For more information about NixOS and its configuration options, refer to the official NixOS documentation.

2. File Structure

File Structure
  • Flake.nix : Main flake file for defining the system configuration

    • home-manager : Configuration files for Home Manager and desktop environment
    • hosts : Host-specific configuration files
    • modules : Program-specific configuration files (includes custom and predefined modules for NixOS and Home Manager)
    • pkgs : Nix derivations, custom packages, and shell scripts
    • public : Wallpaper folder, GTK, and QT themes
    • flake.lock : Lock file for the flake inputs
  • devShell/flake.nix : Flake file defining the development shell