Skip to content

Megakuul/beastos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

187 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BeastOS ❄️

(for marketing reasons also known as Nixomaticon)

informli

Basically just a superior operating system for work packaged as nixos module 🥶

Installation


1. Download and burn nixos iso:

wget 
dd if=./nixos of=/dev/sdx --status=progress

2. Boot into iso and setup your disks

# setup boot part with at least EFI part (500mb) + Linux part (rest)
fdisk /dev/nvme0n1

# configure luks on Linux part
cryptsetup /dev/nvme0n1p2
cryptopen /dev/nvme0n1p2 cryptmapper

# setup filesystems
mkfs.ext4 -L NIXROOT /dev/nvme0n1p2
mount /dev/disk/by-label/NIXROOT /mnt

mkfs.fat -F 32 /dev/nvme0n1p1
fatlabel NIXBOOT /dev/nvme0n1p1
mount /dev/disk/by-label/NIXBOOT /mnt/boot --mkdir

3. Create your flake and install nixos

mkdir -p /mnt/etc/nixos
vim /mnt/etc/nixos/flake.nix
nixos-generate-config --show-hardware-config > /mnt/etc/nixos/hardware-configuration.nix

Create a basic flake that pulls the beast module and configure the options accordingly:

{
  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";

    beastos = {
      url = "github:Megakuul/beastos";
    };
  };

  outputs = {...} @ inputs: let
    system = "x86_64-linux";
  in {
    nixosConfigurations = {
      laptop = inputs.nixpkgs.lib.nixosSystem {
        inherit system;
        modules = [
          ./hardware-configuration.nix
          inputs.beastos.nixosModules.default
          {
            beast = {
              nixomaticon = true;
              host = "yourhostname123";
              profile = {
                username = "yourname123";
                git = {
                  username = "yourgitname123";
                  email = "[email protected]";
                  configPath = "~/.config/git";
                };
              };
            };
          }
        ];
      };
    };
  };
}

Enter the environment and install nixos

NIX_STORE_DIR=/mnt/nix/store nixos-install --root /mnt --flake /mnt/etc/nixos#desktop

Reboot the system and you successfully installed the beast 🎉

Tip

You can just add your local nix module to the modules list to apply additional configurations to your system.

Git Setup


To setup git authentication and signing keys (assuming you are using ssh) install the following keys to the beast.profile.git.configPath:

# key used to sign git commits
ssh-keygen -f signingkey
# key used to authenticate against codeberg.org
ssh-keygen -f codeberg
# key used to authenticate against github.com
ssh-keygen -f github

Q & A


Question Answer
Where are .desktop files mounted? User: /etc/profiles/per-user/<username>/share/applications System: /run/current-system/sw/share/applications

About

❄️ My personal Nixos config

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors