Skip to content

rick-yao/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2,234 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rick's dotfile

Currently this setup is written by nix flake.

Platforms

  • macOS
  • Ubuntu(which I use most, cannot guarantee for other distribution)

Project Structure

  • flake.nix: Describes the project and its dependencies (only for flake-enabled projects).
  • home-manager/: Describes different hm config based on platform.
  • lib/: Directory for custom Nix functions.
  • machines/: Directory for custom machine config.
  • overlays/: Directory for Nix package overlays.
  • config/: Directory for my custom app config.

How to use

Platform Prerequisite

  • nix -- recommend lix-installer curl -sSf -L https://install.lix.systems/lix | sh -s -- install

For MacOS

Some deps need installing. Optional:

  • 1password -- I use 1password to sync my ssh keys

For Linux

Deploy

MacOS

The Makefile will automatically detect your current username and hostname.

Standard Deployment:

make deploy-mac

Custom Deployment: You can override the target user or host if needed:

# Deploy for a different user
make deploy-mac USER=alice

# Deploy for a specific host (requires machines/<Host>.nix)
make deploy-mac HOST=OfficeMac

Note: You may need to logout and login for some settings to take full effect.

Linux

make deploy-linux

Inspired By

This project is heavily inspired by following repo:

  1. mitchellh/nixos-config
  2. ryan4yin/nix-darwin-kickstarter
  3. ryan4yin/nixos-and-flakes-book

About

My dotfiles managed by Nix, could be used by macOS and Linux

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages