https://github.com/mdxprograms/nixpkgs
https://github.com/mdxprograms/nixpkgs
Last synced: 28 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/mdxprograms/nixpkgs
- Owner: mdxprograms
- Created: 2020-10-04T20:15:23.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2020-10-20T13:59:59.000Z (over 5 years ago)
- Last Synced: 2025-02-23T04:15:43.187Z (about 1 year ago)
- Language: Emacs Lisp
- Homepage:
- Size: 25.4 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Nix the world
My home-manager, direnv, nix setup
### Setup
Clone this repo into `~/.config` with default name of repo being used as the directory
1. Install nix if not already available:
```bash
curl -L https://nixos.org/nix/install | sh
```
2. Add the unstable channel and home-manager channel:
```bash
nix-channel --add https://nixos.org/channels/nixpkgs-unstable
nix-channel --add https://github.com/rycee/home-manager/archive/master.tar.gz home-manager
nix-channel --update
```
3. Install home-manager for default programs and tooling setup and activate from `~/`
```bash
nix-shell '' -A install
home-manager switch
```
4. Install `direnv` to automatically pick up local packages and configurations to specific projects when changing into their respective directories.
```bash
# via arch AUR
yay -S direnv
# macOS
brew install direnv
```
5. Create a `.envrc` with `use_nix` as its content in each project that uses nix and run `direnv allow .` within the project to allow direnv to auto enable and disable nix packages for the project.
The following will be automatic after allowing direnv:
Anything inside of `shell.nix` within a project directory will be available when running `nix-shell shell.nix`
### Install DOOM or sync
**NOTE** if ran for first time make sure to run `home-manager switch`
**IMPORTANT** Run `home-manager switch` after settings have been changed in doom
```bash
./doom-sync.sh
```