mirror of
https://github.com/youwen5/nixos.git
synced 2024-11-24 17:53:51 -08:00
Compare commits
13 commits
1155a2f1a9
...
c28597bc1a
Author | SHA1 | Date | |
---|---|---|---|
c28597bc1a | |||
1236708729 | |||
ccd6199d95 | |||
fa7e3d178e | |||
1056a696d3 | |||
cc8eb445a4 | |||
e9badf4d3d | |||
89097fcb16 | |||
3a917eb837 | |||
a164cd2d2f | |||
911d49affa | |||
5a7a329829 | |||
b1f250812d |
15 changed files with 409 additions and 68 deletions
194
flake.lock
194
flake.lock
|
@ -16,6 +16,23 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"brew-src": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718075954,
|
||||||
|
"narHash": "sha256-4TeUhv5VLEufP+Z/NkKnUk4NUaf59cMsj6NvsVbE+8w=",
|
||||||
|
"owner": "Homebrew",
|
||||||
|
"repo": "brew",
|
||||||
|
"rev": "3f08c75e7b950d4340dab462f3e7f77e8093fa2b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Homebrew",
|
||||||
|
"ref": "4.3.5",
|
||||||
|
"repo": "brew",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"catppuccin": {
|
"catppuccin": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1721784420,
|
"lastModified": 1721784420,
|
||||||
|
@ -125,6 +142,24 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-utils_3": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710146030,
|
||||||
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flakey-profile": {
|
"flakey-profile": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712898590,
|
"lastModified": 1712898590,
|
||||||
|
@ -182,6 +217,38 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"homebrew-cask": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1722851290,
|
||||||
|
"narHash": "sha256-AKG4PyxskEEsbkutZUEMbeToOaX9cPusp61mkOgOwX4=",
|
||||||
|
"owner": "homebrew",
|
||||||
|
"repo": "homebrew-cask",
|
||||||
|
"rev": "812e3ae0f3c750120b131d8b80ae13c8ae3d7f4e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "homebrew",
|
||||||
|
"repo": "homebrew-cask",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"homebrew-core": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1722848547,
|
||||||
|
"narHash": "sha256-QtfYus4K58sqtXiYXgd+WL67geNuD7bFriXHCwe6H2g=",
|
||||||
|
"owner": "homebrew",
|
||||||
|
"repo": "homebrew-core",
|
||||||
|
"rev": "5024945b7225d78c56b0482c503f8a20371d5eff",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "homebrew",
|
||||||
|
"repo": "homebrew-core",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"lanzaboote": {
|
"lanzaboote": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
|
@ -244,22 +311,78 @@
|
||||||
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.90.0.tar.gz"
|
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.90.0.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nix-darwin": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1722421184,
|
"lastModified": 1722609272,
|
||||||
"narHash": "sha256-/DJBI6trCeVnasdjUo9pbnodCLZcFqnVZiLUfqLH4jA=",
|
"narHash": "sha256-Kkb+ULEHVmk07AX+OhwyofFxBDpw+2WvsXguUS2m6e4=",
|
||||||
"owner": "nixos",
|
"owner": "LnL7",
|
||||||
"repo": "nixpkgs",
|
"repo": "nix-darwin",
|
||||||
"rev": "9f918d616c5321ad374ae6cb5ea89c9e04bf3e58",
|
"rev": "f7142b8024d6b70c66fd646e1d099d3aa5bfec49",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "LnL7",
|
||||||
"ref": "nixos-unstable",
|
"repo": "nix-darwin",
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix-darwin_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1716329735,
|
||||||
|
"narHash": "sha256-ap51w+VqG21vuzyQ04WrhI2YbWHd3UGz0e7dc/QQmoA=",
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "eac4f25028c1975a939c8f8fba95c12f8a25e01c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-homebrew": {
|
||||||
|
"inputs": {
|
||||||
|
"brew-src": "brew-src",
|
||||||
|
"flake-utils": "flake-utils_3",
|
||||||
|
"nix-darwin": "nix-darwin_2",
|
||||||
|
"nixpkgs": "nixpkgs_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1719720211,
|
||||||
|
"narHash": "sha256-FNK5ZxmNC+V/wOuioc5HqkUy0ld4eW3NqcsZHLYg9HI=",
|
||||||
|
"owner": "zhaofengli-wip",
|
||||||
|
"repo": "nix-homebrew",
|
||||||
|
"rev": "0afc51fd86693c73e4b60be8ed8c782c4c09b4cc",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "zhaofengli-wip",
|
||||||
|
"repo": "nix-homebrew",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1687274257,
|
||||||
|
"narHash": "sha256-TutzPriQcZ8FghDhEolnHcYU2oHIG5XWF+/SUBNnAOE=",
|
||||||
|
"path": "/nix/store/22qgs3skscd9bmrxv9xv4q5d4wwm5ppx-source",
|
||||||
|
"rev": "2c9ecd1f0400076a4d6b2193ad468ff0a7e7fdc5",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710695816,
|
"lastModified": 1710695816,
|
||||||
|
@ -276,6 +399,38 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1716330097,
|
||||||
|
"narHash": "sha256-8BO3B7e3BiyIDsaKA0tY8O88rClYRTjvAp66y+VBUeU=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "5710852ba686cc1fd0d3b8e22b3117d43ba374c2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1722421184,
|
||||||
|
"narHash": "sha256-/DJBI6trCeVnasdjUo9pbnodCLZcFqnVZiLUfqLH4jA=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "9f918d616c5321ad374ae6cb5ea89c9e04bf3e58",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"pre-commit-hooks-nix": {
|
"pre-commit-hooks-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": [
|
||||||
|
@ -308,9 +463,13 @@
|
||||||
"bleedingpkgs": "bleedingpkgs",
|
"bleedingpkgs": "bleedingpkgs",
|
||||||
"catppuccin": "catppuccin",
|
"catppuccin": "catppuccin",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
|
"homebrew-cask": "homebrew-cask",
|
||||||
|
"homebrew-core": "homebrew-core",
|
||||||
"lanzaboote": "lanzaboote",
|
"lanzaboote": "lanzaboote",
|
||||||
"lix-module": "lix-module",
|
"lix-module": "lix-module",
|
||||||
"nixpkgs": "nixpkgs",
|
"nix-darwin": "nix-darwin",
|
||||||
|
"nix-homebrew": "nix-homebrew",
|
||||||
|
"nixpkgs": "nixpkgs_3",
|
||||||
"stablepkgs": "stablepkgs"
|
"stablepkgs": "stablepkgs"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -384,6 +543,21 @@
|
||||||
"repo": "default",
|
"repo": "default",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|
42
flake.nix
42
flake.nix
|
@ -9,6 +9,17 @@
|
||||||
};
|
};
|
||||||
stablepkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
stablepkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||||
bleedingpkgs.url = "github:nixos/nixpkgs/master";
|
bleedingpkgs.url = "github:nixos/nixpkgs/master";
|
||||||
|
nix-darwin.url = "github:LnL7/nix-darwin";
|
||||||
|
nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
nix-homebrew.url = "github:zhaofengli-wip/nix-homebrew";
|
||||||
|
homebrew-core = {
|
||||||
|
url = "github:homebrew/homebrew-core";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
homebrew-cask = {
|
||||||
|
url = "github:homebrew/homebrew-cask";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
catppuccin.url = "github:catppuccin/nix";
|
catppuccin.url = "github:catppuccin/nix";
|
||||||
lanzaboote = {
|
lanzaboote = {
|
||||||
url = "github:nix-community/lanzaboote/v0.4.1";
|
url = "github:nix-community/lanzaboote/v0.4.1";
|
||||||
|
@ -24,7 +35,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, home-manager, catppuccin, lanzaboote, stablepkgs
|
outputs = { self, nixpkgs, home-manager, catppuccin, lanzaboote, stablepkgs
|
||||||
, bleedingpkgs, lix-module, ... }@inputs: {
|
, bleedingpkgs, lix-module, nix-darwin, nix-homebrew, ... }@inputs: rec {
|
||||||
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt;
|
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt;
|
||||||
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = { inherit inputs; };
|
specialArgs = { inherit inputs; };
|
||||||
|
@ -37,6 +48,7 @@
|
||||||
./modules/nixos/nvidia.nix
|
./modules/nixos/nvidia.nix
|
||||||
./modules/nixos/networking.nix
|
./modules/nixos/networking.nix
|
||||||
./modules/common/fonts.nix
|
./modules/common/fonts.nix
|
||||||
|
./machines/nixos/hardware-configuration.nix
|
||||||
|
|
||||||
catppuccin.nixosModules.catppuccin
|
catppuccin.nixosModules.catppuccin
|
||||||
|
|
||||||
|
@ -51,15 +63,41 @@
|
||||||
home-manager.backupFileExtension = "backup";
|
home-manager.backupFileExtension = "backup";
|
||||||
home-manager.users.youwen = {
|
home-manager.users.youwen = {
|
||||||
imports = [
|
imports = [
|
||||||
./home.nix
|
./modules/home-manager/linux/linux-home.nix
|
||||||
./modules/home-manager/linux/desktop.nix
|
./modules/home-manager/linux/desktop.nix
|
||||||
./modules/home-manager/linux/programs.nix
|
./modules/home-manager/linux/programs.nix
|
||||||
./modules/home-manager/common/core.nix
|
./modules/home-manager/common/core.nix
|
||||||
|
./modules/home-manager/linux/catppuccin.nix
|
||||||
inputs.catppuccin.homeManagerModules.catppuccin
|
inputs.catppuccin.homeManagerModules.catppuccin
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
formatter.aarch64-darwin = nixpkgs.legacyPackages.aarch64-darwin.nixfmt;
|
||||||
|
# Build darwin flake using:
|
||||||
|
# $ darwin-rebuild build --flake .#Youwens-MacBook-Pro
|
||||||
|
darwinConfigurations."Youwens-MacBook-Pro" = nix-darwin.lib.darwinSystem {
|
||||||
|
specialArgs = { inherit inputs; };
|
||||||
|
modules = [
|
||||||
|
./modules/darwin/darwin-configuration.nix
|
||||||
|
home-manager.darwinModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.users.youwen.imports = [
|
||||||
|
./modules/home-manager/darwin/darwin-home.nix
|
||||||
|
./modules/home-manager/common/core.nix
|
||||||
|
];
|
||||||
|
home-manager.backupFileExtension = "backup";
|
||||||
|
|
||||||
|
# Optionally, use home-manager.extraSpecialArgs to pass
|
||||||
|
# arguments to home.nix
|
||||||
|
}
|
||||||
|
nix-homebrew.darwinModules.nix-homebrew
|
||||||
|
./modules/darwin/homebrew.nix
|
||||||
|
./modules/darwin/yabai.nix
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }: {
|
||||||
{
|
|
||||||
fonts = {
|
fonts = {
|
||||||
enableDefaultPackages = true;
|
enableDefaultPackages = true;
|
||||||
fontconfig = {
|
fontconfig = {
|
||||||
|
|
|
@ -1,4 +1,7 @@
|
||||||
{ config, pkgs, ... }: {
|
{ inputs, config, pkgs, ... }: {
|
||||||
|
# Expose the package set, including overlays, for convenience.
|
||||||
|
# darwinPackages = inputs.self.darwinConfigurations."Youwens-MacBook-Pro".pkgs;
|
||||||
|
|
||||||
# List packages installed in system profile. To search by name, run:
|
# List packages installed in system profile. To search by name, run:
|
||||||
# $ nix-env -qaP | grep wget
|
# $ nix-env -qaP | grep wget
|
||||||
environment.systemPackages = with pkgs; [ ];
|
environment.systemPackages = with pkgs; [ ];
|
||||||
|
@ -36,4 +39,14 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
security.pam.enableSudoTouchIdAuth = true;
|
security.pam.enableSudoTouchIdAuth = true;
|
||||||
|
|
||||||
|
fonts = {
|
||||||
|
packages = with pkgs; [
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-cjk
|
||||||
|
noto-fonts-emoji
|
||||||
|
(nerdfonts.override { fonts = [ "CascadiaCode" ]; })
|
||||||
|
(google-fonts.override { fonts = [ "Lora" ]; })
|
||||||
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
14
modules/darwin/homebrew.nix
Normal file
14
modules/darwin/homebrew.nix
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{ inputs, ... }: {
|
||||||
|
nix-homebrew = {
|
||||||
|
enable = true;
|
||||||
|
enableRosetta = true;
|
||||||
|
user = "youwen";
|
||||||
|
|
||||||
|
taps = {
|
||||||
|
"homebrew/homebrew-core" = inputs.homebrew-core;
|
||||||
|
"homebrew/homebrew-cask" = inputs.homebrew-cask;
|
||||||
|
};
|
||||||
|
|
||||||
|
mutableTaps = false;
|
||||||
|
};
|
||||||
|
}
|
30
modules/darwin/yabai.nix
Normal file
30
modules/darwin/yabai.nix
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
{ config, pkgs, ... }: {
|
||||||
|
services.yabai = {
|
||||||
|
enable = true;
|
||||||
|
enableScriptingAddition = true;
|
||||||
|
config = {
|
||||||
|
focus_follows_mouse = "autoraise";
|
||||||
|
mouse_follows_focus = "on";
|
||||||
|
window_placement = "second_child";
|
||||||
|
window_opacity = "off";
|
||||||
|
top_padding = 12;
|
||||||
|
bottom_padding = 12;
|
||||||
|
left_padding = 12;
|
||||||
|
right_padding = 12;
|
||||||
|
window_gap = 10;
|
||||||
|
split_ratio = 0.5;
|
||||||
|
split_type = "auto";
|
||||||
|
layout = "bsp";
|
||||||
|
mouse_modifier = "fn";
|
||||||
|
mouse_action1 = "move";
|
||||||
|
mouse_action2 = "resize";
|
||||||
|
mouse_drop_action = "swap";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
services.skhd = { enable = true; };
|
||||||
|
services.jankyborders = {
|
||||||
|
enable = true;
|
||||||
|
hidpi = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }: {
|
||||||
{
|
programs.bash.enable = pkgs.lib.mkDefault true;
|
||||||
programs.bash.enable = true;
|
programs.nushell = pkgs.lib.mkDefault {
|
||||||
programs.nushell = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
configFile.text = ''
|
configFile.text = ''
|
||||||
$env.config = {
|
$env.config = {
|
||||||
|
@ -11,12 +10,9 @@
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.fzf = {
|
programs.fzf = pkgs.lib.mkDefault { enable = true; };
|
||||||
enable = true;
|
|
||||||
catppuccin.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.git = {
|
programs.git = pkgs.lib.mkDefault {
|
||||||
enable = true;
|
enable = true;
|
||||||
userName = "Youwen Wu";
|
userName = "Youwen Wu";
|
||||||
userEmail = "youwenw@gmail.com";
|
userEmail = "youwenw@gmail.com";
|
||||||
|
@ -28,10 +24,8 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.lazygit = {
|
programs.lazygit = pkgs.lib.mkDefault {
|
||||||
enable = true;
|
enable = true;
|
||||||
catppuccin.enable = true;
|
|
||||||
catppuccin.flavor = "macchiato";
|
|
||||||
settings = {
|
settings = {
|
||||||
git.paging = {
|
git.paging = {
|
||||||
colorArg = "always";
|
colorArg = "always";
|
||||||
|
@ -40,32 +34,28 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.bat.enable = true;
|
programs.bat.enable = pkgs.lib.mkDefault true;
|
||||||
programs.bat.catppuccin = {
|
|
||||||
enable = true;
|
|
||||||
flavor = "macchiato";
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.ripgrep.enable = true;
|
programs.ripgrep.enable = pkgs.lib.mkDefault true;
|
||||||
|
|
||||||
programs.readline = {
|
programs.readline = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraConfig = "set editing-mode vi";
|
extraConfig = "set editing-mode vi";
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.zoxide = {
|
programs.zoxide = pkgs.lib.mkDefault {
|
||||||
enable = true;
|
enable = true;
|
||||||
# enableZshIntegration = true;
|
# enableZshIntegration = true;
|
||||||
enableFishIntegration = true;
|
enableFishIntegration = true;
|
||||||
enableNushellIntegration = true;
|
enableNushellIntegration = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.gh = {
|
programs.gh = pkgs.lib.mkDefault {
|
||||||
enable = true;
|
enable = true;
|
||||||
extensions = [ pkgs.github-copilot-cli ];
|
extensions = [ pkgs.github-copilot-cli ];
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.oh-my-posh = {
|
programs.oh-my-posh = pkgs.lib.mkDefault {
|
||||||
enable = true;
|
enable = true;
|
||||||
# enableZshIntegration = true;
|
# enableZshIntegration = true;
|
||||||
enableFishIntegration = true;
|
enableFishIntegration = true;
|
||||||
|
@ -75,8 +65,6 @@
|
||||||
|
|
||||||
programs.fish = pkgs.lib.mkDefault {
|
programs.fish = pkgs.lib.mkDefault {
|
||||||
enable = true;
|
enable = true;
|
||||||
catppuccin.enable = true;
|
|
||||||
catppuccin.flavor = "mocha";
|
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
rebuild = "sudo nixos-rebuild switch";
|
rebuild = "sudo nixos-rebuild switch";
|
||||||
ls = "eza -l --icons=auto";
|
ls = "eza -l --icons=auto";
|
||||||
|
@ -136,10 +124,9 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.fd.enable = pkgs.lib.mkDefault true;
|
||||||
|
|
||||||
programs.fd.enable = true;
|
programs.btop = pkgs.lib.mkDefault {
|
||||||
|
|
||||||
programs.btop = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
color_theme = "tokyo-night";
|
color_theme = "tokyo-night";
|
||||||
|
@ -148,13 +135,13 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.eza = {
|
programs.eza = pkgs.lib.mkDefault {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableFishIntegration = true;
|
enableFishIntegration = true;
|
||||||
enableBashIntegration = true;
|
enableBashIntegration = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.neovim = {
|
programs.neovim = pkgs.lib.mkDefault {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
viAlias = true;
|
viAlias = true;
|
||||||
|
|
70
modules/home-manager/darwin/darwin-home.nix
Normal file
70
modules/home-manager/darwin/darwin-home.nix
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
{ inputs, config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home.username = "youwen";
|
||||||
|
home.homeDirectory = "/Users/youwen";
|
||||||
|
|
||||||
|
# link the configuration file in current directory to the specified location in home directory
|
||||||
|
# home.file.".config/i3/wallpaper.jpg".source = ./wallpaper.jpg;
|
||||||
|
|
||||||
|
# link all files in `./scripts` to `~/.config/i3/scripts`
|
||||||
|
# home.file.".config/i3/scripts" = {
|
||||||
|
# source = ./scripts;
|
||||||
|
# recursive = true; # link recursively
|
||||||
|
# executable = true; # make all files executable
|
||||||
|
# };
|
||||||
|
|
||||||
|
# encode the file content in nix configuration file directly
|
||||||
|
# home.file.".xxx".text = ''
|
||||||
|
# xxx
|
||||||
|
# '';
|
||||||
|
|
||||||
|
home.file.".config/neofetch/config.conf".source =
|
||||||
|
../../../config/neofetch.conf;
|
||||||
|
|
||||||
|
# Packages that should be installed to the user profile.
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
neofetch
|
||||||
|
|
||||||
|
# archives
|
||||||
|
zip
|
||||||
|
xz
|
||||||
|
unzip
|
||||||
|
p7zip
|
||||||
|
|
||||||
|
# utils
|
||||||
|
nurl # helps fetch git data for nixpkgs
|
||||||
|
|
||||||
|
# nix related
|
||||||
|
#
|
||||||
|
# it provides the command `nom` works just like `nix`
|
||||||
|
# with more details log output
|
||||||
|
nix-output-monitor
|
||||||
|
|
||||||
|
# dev tools
|
||||||
|
nodePackages_latest.pnpm
|
||||||
|
rustfmt
|
||||||
|
rust-analyzer
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.git.extraConfig.commit.gpgsign = "false";
|
||||||
|
|
||||||
|
programs.oh-my-posh.enableZshIntegration = true;
|
||||||
|
|
||||||
|
programs.bash.enable = true;
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
|
||||||
|
# This value determines the home Manager release that your
|
||||||
|
# configuration is compatible with. This helps avoid breakage
|
||||||
|
# when a new home Manager release introduces backwards
|
||||||
|
# incompatible changes.
|
||||||
|
home.stateVersion = "24.05";
|
||||||
|
#
|
||||||
|
# You can update home Manager without changing this value. See
|
||||||
|
# the home Manager release notes for a list of state version
|
||||||
|
# changes in each release.
|
||||||
|
|
||||||
|
# Let home Manager install and manage itself.
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
}
|
18
modules/home-manager/linux/catppuccin.nix
Normal file
18
modules/home-manager/linux/catppuccin.nix
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
programs.fzf.catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
flavor = "macchiato";
|
||||||
|
};
|
||||||
|
programs.lazygit.catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
flavor = "macchiato";
|
||||||
|
};
|
||||||
|
programs.bat.catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
flavor = "macchiato";
|
||||||
|
};
|
||||||
|
programs.fish.catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
flavor = "mocha";
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, ...}:
|
{ pkgs, ... }: {
|
||||||
{
|
|
||||||
wayland.windowManager.hyprland = import ./hyprland-conf.nix;
|
wayland.windowManager.hyprland = import ./hyprland-conf.nix;
|
||||||
|
|
||||||
# Audio effects and EQ tool
|
# Audio effects and EQ tool
|
||||||
|
|
|
@ -19,9 +19,10 @@
|
||||||
# xxx
|
# xxx
|
||||||
# '';
|
# '';
|
||||||
|
|
||||||
home.file.".config/neofetch/config.conf".source = ./config/neofetch.conf;
|
home.file.".config/neofetch/config.conf".source =
|
||||||
|
../../../config/neofetch.conf;
|
||||||
home.file.".wallpapers" = {
|
home.file.".wallpapers" = {
|
||||||
source = ./wallpapers;
|
source = ../../../wallpapers;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
|
|
|
@ -5,9 +5,9 @@
|
||||||
{ config, inputs, pkgs, ... }:
|
{ config, inputs, pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ # Include the results of the hardware scan.
|
# imports = [ # Include the results of the hardware scan.
|
||||||
./hardware-configuration.nix
|
# ./hardware-configuration.nix
|
||||||
];
|
# ];
|
||||||
|
|
||||||
# Bootloader.
|
# Bootloader.
|
||||||
boot.loader = {
|
boot.loader = {
|
||||||
|
@ -80,7 +80,6 @@
|
||||||
# Enable CUPS to print documents.
|
# Enable CUPS to print documents.
|
||||||
services.printing.enable = true;
|
services.printing.enable = true;
|
||||||
|
|
||||||
|
|
||||||
# Enable touchpad support (enabled default in most desktopManager).
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
# services.xserver.libinput.enable = true;
|
# services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ config, ... }:
|
{ config, ... }: {
|
||||||
{
|
|
||||||
hardware.nvidia = {
|
hardware.nvidia = {
|
||||||
modesetting.enable = true;
|
modesetting.enable = true;
|
||||||
powerManagement.enable = true;
|
powerManagement.enable = true;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
({ pkgs, lib, ... }: {
|
({ pkgs, lib, ... }: {
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
# For debugging and troubleshooting Secure Boot.
|
# For debugging and troubleshooting Secure Boot.
|
||||||
pkgs.sbctl
|
pkgs.sbctl
|
||||||
|
@ -14,4 +14,4 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
pkiBundle = "/etc/secureboot";
|
pkiBundle = "/etc/secureboot";
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in a new issue