Coder Social home page Coder Social logo

nix's Introduction

NixOS + MacOS configuration

This repository contains my personal configuration for NixOS and MacOS. It's a Nix flake that provides configuration modules for both systems.

Files Purpose
flake.nix The main entry point, defines configuration for two machines: x86_64-linux NixOS and aarch64-darwin MacOS.
globals.nix An attrs set with some global values. Propogated to all modules.
private.nix An attrs set with some global values that are personal data. Encrypted by git-crypt. Propogated to all modules.
hm/*.nix home-manager configuration modules that shared between NixOS and MacOS.
nixos/*.nix NixOS configuration modules. home.nix is a top-level home-manager module. hardware-configuration.nix is a hardware configuration and also encrypted by git-crypt.
darwin/*.nix nix-darwin configuration modules. home.nix is a top-level home-manager module.

Setup on NixOS

Installation command:

sudo nixos-rebuild switch --flake .

Setup on MacOS

Install Nix and homebrew. Homebrew will be used only for installing casks. Then run the following command:

nix --extra-experimental-features nix-command --extra-experimental-features flakes run nix-darwin -- switch --flake .

Common tasks

  • formatting: nix fmt
  • upgrade to new versions: nix flake update

nix's People

Contributors

ffloyd avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.