Skip to content

contini-aron/nixos-conf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NixOS Configuration

This repository contains my personal NixOS configuration, including various system settings, package definitions, and configurations for Neovim and other utilities.

Folder Structure

  • flake.nix: The entry point for the NixOS system configuration and package management.
  • flake.lock: A lock file generated by nix flake update, ensuring reproducible builds.
  • hosts/: Contains configuration for specific hosts (e.g., machine-specific settings).
  • modules/: Custom NixOS modules for adding additional functionality, namely most of them are just abstraction of a group of packages.
  • pkgs/: Custom package definitions and overlays.
  • resources/: Static resources used by the system configuration (e.g., wallpapers, scripts).
  • LICENSE: The license under which this configuration is shared.
  • README.md: This file, providing an overview of the repository.

Usage

To apply this NixOS configuration to your system, follow these steps:

1. Clone the Repository

git clone https://github.com/contini-aron/nixos-conf.git
cd nixos-conf

2. Build and Apply the Configuration

Replace default with your actual hostname (matching a file under hosts/), or keep default if applicable.

sudo nixos-rebuild switch --flake ./nixos-conf#default --impure

Note: The --impure flag is required to include the autogenerated hardware configuration located at /etc/nixos/hardware-configuration.nix, which is not managed by the flake.

Neovim Configuration

The Neovim configuration in this repository can be used independently without installing the full NixOS system configuration.

Quick Try (Temporary, No Installation)

Run Neovim with this configuration once without installing:

nix run github:contini-aron/nixos-conf#neovim-conf

This will launch Neovim with all plugins and settings, but won't persist the installation.

Install to User Profile

To install the Neovim configuration persistently to your user profile:

nix profile install github:contini-aron/nixos-conf#neovim-conf

After installation, you can launch Neovim from anywhere with the configured setup.

Update Neovim Configuration

If you've already installed the Neovim config and want to upgrade to the latest version:

# Method 1: Upgrade by pattern matching
nix profile upgrade '.*neovim-conf.*'
# Method 2: Run with refresh flag (fetches latest without modifying profile)
nix run github:contini-aron/nixos-conf#neovim-conf --refresh

Manage Installed Profiles

List all installed profiles to see what's currently installed:

nix profile list

Remove the Neovim configuration from your profile:

nix profile remove '.*neovim-conf.*'

After removing the Neovim configuration, clean up unused dependencies and free disk space:

nix-collect-garbage

Requirements

About

my NixOs configuration featuring flakes and home-manager

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages