fmt: reformat
This commit is contained in:
parent
9dbe1605e0
commit
a057d9bcc7
@ -1 +0,0 @@
|
|||||||
indentation = "Tabs"
|
|
94
flake.nix
94
flake.nix
@ -54,52 +54,56 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = {
|
outputs =
|
||||||
self,
|
{
|
||||||
systems,
|
self,
|
||||||
nixpkgs,
|
systems,
|
||||||
cmp-vimtex,
|
nixpkgs,
|
||||||
spaceport-nvim,
|
cmp-vimtex,
|
||||||
nomodoro,
|
spaceport-nvim,
|
||||||
...
|
nomodoro,
|
||||||
} @ inputs: let
|
...
|
||||||
customPackageOverlay =
|
}@inputs:
|
||||||
(import ./overlays/default.nix {
|
let
|
||||||
inherit cmp-vimtex;
|
customPackageOverlay =
|
||||||
inherit spaceport-nvim;
|
(import ./overlays/default.nix {
|
||||||
inherit inputs;
|
inherit cmp-vimtex;
|
||||||
inherit nomodoro;
|
inherit spaceport-nvim;
|
||||||
parrot-nvim = inputs.parrot-nvim;
|
inherit inputs;
|
||||||
})
|
inherit nomodoro;
|
||||||
.overlay;
|
parrot-nvim = inputs.parrot-nvim;
|
||||||
# Small tool to iterate over each systems
|
}).overlay;
|
||||||
eachSystem = f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system});
|
# Small tool to iterate over each systems
|
||||||
|
eachSystem = f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system});
|
||||||
|
|
||||||
# Eval the treefmt modules from ./treefmt.nix
|
# Eval the treefmt modules from ./treefmt.nix
|
||||||
treefmtEval = eachSystem (pkgs: inputs.treefmt-nix.lib.evalModule pkgs ./treefmt.nix);
|
treefmtEval = eachSystem (pkgs: inputs.treefmt-nix.lib.evalModule pkgs ./treefmt.nix);
|
||||||
in {
|
in
|
||||||
nixosConfigurations = (
|
{
|
||||||
import ./hosts/hosts.nix {
|
nixosConfigurations = (
|
||||||
inherit inputs;
|
import ./hosts/hosts.nix {
|
||||||
inherit customPackageOverlay;
|
inherit inputs;
|
||||||
}
|
inherit customPackageOverlay;
|
||||||
);
|
}
|
||||||
|
);
|
||||||
|
|
||||||
formatter = eachSystem (pkgs: treefmtEval.${pkgs.system}.config.build.wrapper);
|
formatter = eachSystem (pkgs: treefmtEval.${pkgs.system}.config.build.wrapper);
|
||||||
# for `nix flake check`
|
# for `nix flake check`
|
||||||
checks = eachSystem (pkgs: {
|
checks = eachSystem (pkgs: {
|
||||||
formatting = treefmtEval.${pkgs.system}.config.build.check self;
|
formatting = treefmtEval.${pkgs.system}.config.build.check self;
|
||||||
});
|
});
|
||||||
|
|
||||||
devShells = eachSystem (pkgs: {
|
devShells = eachSystem (pkgs: {
|
||||||
default = pkgs.mkShell {
|
default = pkgs.mkShell {
|
||||||
buildInputs = with pkgs; [
|
buildInputs = with pkgs; [
|
||||||
kubernetes-helm
|
kubernetes-helm
|
||||||
kubectl
|
kubectl
|
||||||
jq
|
jq
|
||||||
stern
|
stern
|
||||||
];
|
nixfmt-rfc-style
|
||||||
};
|
alejandra
|
||||||
});
|
];
|
||||||
};
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,7 @@
|
|||||||
{pkgs ? import <nixpkgs> {}}: let
|
{
|
||||||
|
pkgs ? import <nixpkgs> { },
|
||||||
|
}:
|
||||||
|
let
|
||||||
custom-fonts = pkgs.stdenvNoCC.mkDerivation {
|
custom-fonts = pkgs.stdenvNoCC.mkDerivation {
|
||||||
pname = "input";
|
pname = "input";
|
||||||
version = "1.0.2";
|
version = "1.0.2";
|
||||||
@ -16,6 +19,7 @@
|
|||||||
description = "Input DJR font";
|
description = "Input DJR font";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
inherit custom-fonts;
|
inherit custom-fonts;
|
||||||
}
|
}
|
||||||
|
@ -4,73 +4,76 @@
|
|||||||
specialArgs,
|
specialArgs,
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}:
|
||||||
|
let
|
||||||
pkgs-unstable = specialArgs.nixpkgs-unstable;
|
pkgs-unstable = specialArgs.nixpkgs-unstable;
|
||||||
in
|
in
|
||||||
# default_python = pkgs-unstable.python313;
|
# default_python = pkgs-unstable.python313;
|
||||||
{
|
{
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
home.packages =
|
home.packages =
|
||||||
[
|
[
|
||||||
pkgs.hello
|
pkgs.hello
|
||||||
# (pkgs.writeScriptBin "nixFlakes" ''
|
# (pkgs.writeScriptBin "nixFlakes" ''
|
||||||
# exec ${pkgs.nixVersions.git}/bin/nix --experimental-features "nix-command flakes" "$@"
|
# exec ${pkgs.nixVersions.git}/bin/nix --experimental-features "nix-command flakes" "$@"
|
||||||
# '')
|
# '')
|
||||||
pkgs.cachix
|
pkgs.cachix
|
||||||
pkgs.attic-client
|
pkgs.attic-client
|
||||||
pkgs.kubectl
|
pkgs.kubectl
|
||||||
pkgs.bat
|
pkgs.bat
|
||||||
pkgs.eza
|
pkgs.eza
|
||||||
pkgs.fd
|
pkgs.fd
|
||||||
pkgs.ripgrep
|
pkgs.ripgrep
|
||||||
pkgs.just
|
pkgs.just
|
||||||
|
|
||||||
# cli markdown tool
|
# cli markdown tool
|
||||||
pkgs.glow
|
pkgs.glow
|
||||||
|
|
||||||
# lsps
|
# lsps
|
||||||
pkgs.nil
|
pkgs.nil
|
||||||
# pkgs.nodePackages.pyright
|
# pkgs.nodePackages.pyright
|
||||||
# pkgs.pyright
|
# pkgs.pyright
|
||||||
|
|
||||||
pkgs.thefuck
|
pkgs.thefuck
|
||||||
pkgs.fzf
|
pkgs.fzf
|
||||||
pkgs.sops
|
pkgs.sops
|
||||||
pkgs.age
|
pkgs.age
|
||||||
pkgs.ydiff
|
pkgs.ydiff
|
||||||
pkgs.delta
|
pkgs.delta
|
||||||
|
|
||||||
pkgs-unstable.claude-code
|
pkgs-unstable.claude-code
|
||||||
# default_python
|
# default_python
|
||||||
# pkgs-unstable.uv
|
# pkgs-unstable.uv
|
||||||
# pkgs-unstable.nodejs
|
# pkgs-unstable.nodejs
|
||||||
|
|
||||||
# From our claude bundle
|
# From our claude bundle
|
||||||
pkgs.custom-servers.arxiv-mcp-server
|
pkgs.custom-servers.arxiv-mcp-server
|
||||||
pkgs.custom-servers.basic-memory-server
|
pkgs.custom-servers.basic-memory-server
|
||||||
pkgs.custom-servers.mcp-text-editor
|
pkgs.custom-servers.mcp-text-editor
|
||||||
]
|
]
|
||||||
++ pkgs.lib.optionals specialArgs.withGUI [
|
++ pkgs.lib.optionals specialArgs.withGUI [
|
||||||
pkgs.discord
|
pkgs.discord
|
||||||
pkgs.obsidian
|
pkgs.obsidian
|
||||||
pkgs.audacity
|
pkgs.audacity
|
||||||
pkgs.nextcloud-client
|
pkgs.nextcloud-client
|
||||||
pkgs.libreoffice-qt6-fresh
|
pkgs.libreoffice-qt6-fresh
|
||||||
];
|
|
||||||
|
|
||||||
home.homeDirectory = "/home/deepak";
|
|
||||||
home.username = "deepak";
|
|
||||||
|
|
||||||
# required, was previously default
|
|
||||||
home.stateVersion = "18.09";
|
|
||||||
|
|
||||||
home.sessionPath = [
|
|
||||||
"$HOME/.local/bin"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
home.sessionVariables = let
|
home.homeDirectory = "/home/deepak";
|
||||||
|
home.username = "deepak";
|
||||||
|
|
||||||
|
# required, was previously default
|
||||||
|
home.stateVersion = "18.09";
|
||||||
|
|
||||||
|
home.sessionPath = [
|
||||||
|
"$HOME/.local/bin"
|
||||||
|
];
|
||||||
|
|
||||||
|
home.sessionVariables =
|
||||||
|
let
|
||||||
win_home_dir = specialArgs.win_home_dir or "/mnt/c/Users/Deepak";
|
win_home_dir = specialArgs.win_home_dir or "/mnt/c/Users/Deepak";
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
# Namespace our own nixconf variables with DPK
|
# Namespace our own nixconf variables with DPK
|
||||||
|
|
||||||
# Set a common directory for Windows for WSL installs
|
# Set a common directory for Windows for WSL installs
|
||||||
@ -83,189 +86,189 @@ in
|
|||||||
# UV_PYTHON = "${default_python}";
|
# UV_PYTHON = "${default_python}";
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.direnv.enable = true;
|
programs.direnv.enable = true;
|
||||||
programs.direnv.nix-direnv.enable = true;
|
programs.direnv.nix-direnv.enable = true;
|
||||||
|
|
||||||
xdg.enable = true;
|
xdg.enable = true;
|
||||||
|
|
||||||
services.nextcloud-client = pkgs.lib.mkIf specialArgs.withGUI {
|
services.nextcloud-client = pkgs.lib.mkIf specialArgs.withGUI {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
userName = "Deepak Mallubhotla";
|
||||||
|
userEmail = "dmallubhotla+github@gmail.com";
|
||||||
|
signing = {
|
||||||
|
key = specialArgs.gitSigningKey;
|
||||||
|
signByDefault = true;
|
||||||
};
|
};
|
||||||
|
extraConfig = {
|
||||||
programs.git = {
|
core = {
|
||||||
enable = true;
|
fileMode = false;
|
||||||
userName = "Deepak Mallubhotla";
|
|
||||||
userEmail = "dmallubhotla+github@gmail.com";
|
|
||||||
signing = {
|
|
||||||
key = specialArgs.gitSigningKey;
|
|
||||||
signByDefault = true;
|
|
||||||
};
|
};
|
||||||
extraConfig = {
|
init = {
|
||||||
core = {
|
defaultBranch = "master";
|
||||||
fileMode = false;
|
|
||||||
};
|
|
||||||
init = {
|
|
||||||
defaultBranch = "master";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
includes = [
|
|
||||||
# this allows us to have a local gitconfig maybe?
|
|
||||||
{path = "~/.gitconfig.local";}
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
includes = [
|
||||||
|
# this allows us to have a local gitconfig maybe?
|
||||||
|
{ path = "~/.gitconfig.local"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
programs.neovim = {
|
programs.neovim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs-unstable.neovim-unwrapped;
|
package = pkgs-unstable.neovim-unwrapped;
|
||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
vimAlias = true;
|
vimAlias = true;
|
||||||
|
|
||||||
plugins = with pkgs.vimPlugins; [
|
plugins = with pkgs.vimPlugins; [
|
||||||
{
|
{
|
||||||
plugin = vimtex;
|
plugin = vimtex;
|
||||||
config = "let g:nix_recommended_style = 0";
|
config = "let g:nix_recommended_style = 0";
|
||||||
}
|
}
|
||||||
vim-nix
|
vim-nix
|
||||||
# plenary and stuff for telescope
|
# plenary and stuff for telescope
|
||||||
plenary-nvim
|
plenary-nvim
|
||||||
telescope-nvim
|
telescope-nvim
|
||||||
nvim-treesitter
|
nvim-treesitter
|
||||||
telescope-fzf-native-nvim
|
telescope-fzf-native-nvim
|
||||||
telescope-file-browser-nvim
|
telescope-file-browser-nvim
|
||||||
# need fzf for parrot
|
# need fzf for parrot
|
||||||
fzf-lua
|
fzf-lua
|
||||||
ctrlp-vim
|
ctrlp-vim
|
||||||
# lsp stuff
|
# lsp stuff
|
||||||
lsp-zero-nvim
|
lsp-zero-nvim
|
||||||
nvim-cmp
|
nvim-cmp
|
||||||
cmp-nvim-lsp
|
cmp-nvim-lsp
|
||||||
cmp_luasnip
|
cmp_luasnip
|
||||||
nvim-lspconfig
|
nvim-lspconfig
|
||||||
|
|
||||||
vim-tmux-navigator
|
vim-tmux-navigator
|
||||||
# vim-vinegar
|
# vim-vinegar
|
||||||
oil-nvim
|
oil-nvim
|
||||||
|
|
||||||
wiki-vim
|
wiki-vim
|
||||||
vim-markdown
|
vim-markdown
|
||||||
cmp-buffer
|
cmp-buffer
|
||||||
# vim-airline
|
# vim-airline
|
||||||
vim-fugitive
|
vim-fugitive
|
||||||
flash-nvim
|
flash-nvim
|
||||||
gitsigns-nvim
|
gitsigns-nvim
|
||||||
friendly-snippets
|
friendly-snippets
|
||||||
luasnip
|
luasnip
|
||||||
which-key-nvim
|
which-key-nvim
|
||||||
|
|
||||||
overseer-nvim
|
overseer-nvim
|
||||||
|
|
||||||
# prettiness
|
# prettiness
|
||||||
lualine-nvim
|
lualine-nvim
|
||||||
goyo-vim
|
goyo-vim
|
||||||
limelight-vim
|
limelight-vim
|
||||||
nui-nvim
|
nui-nvim
|
||||||
zen-mode-nvim
|
zen-mode-nvim
|
||||||
twilight-nvim
|
twilight-nvim
|
||||||
|
|
||||||
# color schemes
|
# color schemes
|
||||||
rose-pine
|
rose-pine
|
||||||
kanagawa-nvim
|
kanagawa-nvim
|
||||||
nightfox-nvim
|
nightfox-nvim
|
||||||
|
|
||||||
# custom plugins from flakes
|
# custom plugins from flakes
|
||||||
pkgs.customVimPlugins.cmp-vimtex
|
pkgs.customVimPlugins.cmp-vimtex
|
||||||
pkgs.customVimPlugins.spaceport-nvim
|
pkgs.customVimPlugins.spaceport-nvim
|
||||||
pkgs.customVimPlugins.nomodoro
|
pkgs.customVimPlugins.nomodoro
|
||||||
pkgs.customVimPlugins.parrot-nvim
|
pkgs.customVimPlugins.parrot-nvim
|
||||||
pkgs.customVimPlugins.nvim-web-devicons
|
pkgs.customVimPlugins.nvim-web-devicons
|
||||||
|
|
||||||
# syntax highlighting
|
# syntax highlighting
|
||||||
vim-just
|
vim-just
|
||||||
];
|
];
|
||||||
extraConfig = import ./neovim/init-vim.nix {inherit config;};
|
extraConfig = import ./neovim/init-vim.nix { inherit config; };
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.thefuck.enable = true;
|
||||||
|
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
shellAliases = {
|
||||||
|
doo = "./do.sh";
|
||||||
|
wttr = "curl wttr.in";
|
||||||
|
gcd = "_t=$(git rev-parse --show-toplevel) && cd \"$_t\" && pwd";
|
||||||
};
|
};
|
||||||
|
history = {
|
||||||
programs.thefuck.enable = true;
|
size = 10000;
|
||||||
|
path = "${lib.removePrefix "/home/deepak/" config.xdg.dataHome}/zsh/history";
|
||||||
programs.zsh = {
|
};
|
||||||
|
oh-my-zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
shellAliases = {
|
|
||||||
doo = "./do.sh";
|
|
||||||
wttr = "curl wttr.in";
|
|
||||||
gcd = "_t=$(git rev-parse --show-toplevel) && cd \"$_t\" && pwd";
|
|
||||||
};
|
|
||||||
history = {
|
|
||||||
size = 10000;
|
|
||||||
path = "${lib.removePrefix "/home/deepak/" config.xdg.dataHome}/zsh/history";
|
|
||||||
};
|
|
||||||
oh-my-zsh = {
|
|
||||||
enable = true;
|
|
||||||
plugins = [
|
|
||||||
"poetry"
|
|
||||||
"themes"
|
|
||||||
"emoji-clock"
|
|
||||||
"screen"
|
|
||||||
"ssh-agent"
|
|
||||||
];
|
|
||||||
theme = "random";
|
|
||||||
};
|
|
||||||
plugins = [
|
plugins = [
|
||||||
{
|
"poetry"
|
||||||
name = "sd";
|
"themes"
|
||||||
src = pkgs.fetchFromGitHub {
|
"emoji-clock"
|
||||||
owner = "ianthehenry";
|
"screen"
|
||||||
repo = "sd";
|
"ssh-agent"
|
||||||
rev = "ecd1ab8d3fc3a829d8abfb8bf1e3722c9c99407b";
|
|
||||||
sha256 = "0fm1r8w73vaab5r9dj5jdxsfc7pbddxf4dvvasfq8rry2dxaf7sy";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "zsh-z";
|
|
||||||
src = pkgs.fetchFromGitHub {
|
|
||||||
owner = "agkozak";
|
|
||||||
repo = "zsh-z";
|
|
||||||
rev = "b5e61d03a42a84e9690de12915a006b6745c2a5f";
|
|
||||||
sha256 = "1gsgmsvl1sl9m3yfapx6bp0y15py8610kywh56bgsjf9wxkrc3nl";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
pkgs.customZshPlugins.zsh-completions
|
|
||||||
];
|
];
|
||||||
initExtra = ''
|
theme = "random";
|
||||||
eval "$(${pkgs.direnv}/bin/direnv hook zsh)"
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
plugins = [
|
||||||
programs.tmux = {
|
{
|
||||||
enable = true;
|
name = "sd";
|
||||||
historyLimit = 100000;
|
src = pkgs.fetchFromGitHub {
|
||||||
clock24 = true;
|
owner = "ianthehenry";
|
||||||
keyMode = "vi";
|
repo = "sd";
|
||||||
prefix = "M-,";
|
rev = "ecd1ab8d3fc3a829d8abfb8bf1e3722c9c99407b";
|
||||||
plugins = [
|
sha256 = "0fm1r8w73vaab5r9dj5jdxsfc7pbddxf4dvvasfq8rry2dxaf7sy";
|
||||||
pkgs.tmuxPlugins.vim-tmux-navigator
|
|
||||||
pkgs.tmuxPlugins.better-mouse-mode
|
|
||||||
pkgs.tmuxPlugins.sensible
|
|
||||||
# pkgs.tmuxPlugins.tmux-powerline
|
|
||||||
|
|
||||||
pkgs.tmuxPlugins.power-theme
|
|
||||||
];
|
|
||||||
extraConfig = ''
|
|
||||||
set-option -g status-position top
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
sops = {
|
|
||||||
age.keyFile = "/home/deepak/.config/sops/age/keys.txt"; # must have no password!
|
|
||||||
# It's also possible to use a ssh key, but only when it has no password:
|
|
||||||
#age.sshKeyPaths = [ "/home/user/path-to-ssh-key" ];
|
|
||||||
defaultSopsFile = ./secrets.yaml;
|
|
||||||
|
|
||||||
secrets = {
|
|
||||||
anthropic_api_key = {
|
|
||||||
path = "${config.sops.defaultSymlinkPath}/anthropic_api_key";
|
|
||||||
};
|
};
|
||||||
hello = {};
|
}
|
||||||
newkey = {};
|
{
|
||||||
|
name = "zsh-z";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "agkozak";
|
||||||
|
repo = "zsh-z";
|
||||||
|
rev = "b5e61d03a42a84e9690de12915a006b6745c2a5f";
|
||||||
|
sha256 = "1gsgmsvl1sl9m3yfapx6bp0y15py8610kywh56bgsjf9wxkrc3nl";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
pkgs.customZshPlugins.zsh-completions
|
||||||
|
];
|
||||||
|
initExtra = ''
|
||||||
|
eval "$(${pkgs.direnv}/bin/direnv hook zsh)"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.tmux = {
|
||||||
|
enable = true;
|
||||||
|
historyLimit = 100000;
|
||||||
|
clock24 = true;
|
||||||
|
keyMode = "vi";
|
||||||
|
prefix = "M-,";
|
||||||
|
plugins = [
|
||||||
|
pkgs.tmuxPlugins.vim-tmux-navigator
|
||||||
|
pkgs.tmuxPlugins.better-mouse-mode
|
||||||
|
pkgs.tmuxPlugins.sensible
|
||||||
|
# pkgs.tmuxPlugins.tmux-powerline
|
||||||
|
|
||||||
|
pkgs.tmuxPlugins.power-theme
|
||||||
|
];
|
||||||
|
extraConfig = ''
|
||||||
|
set-option -g status-position top
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
sops = {
|
||||||
|
age.keyFile = "/home/deepak/.config/sops/age/keys.txt"; # must have no password!
|
||||||
|
# It's also possible to use a ssh key, but only when it has no password:
|
||||||
|
#age.sshKeyPaths = [ "/home/user/path-to-ssh-key" ];
|
||||||
|
defaultSopsFile = ./secrets.yaml;
|
||||||
|
|
||||||
|
secrets = {
|
||||||
|
anthropic_api_key = {
|
||||||
|
path = "${config.sops.defaultSymlinkPath}/anthropic_api_key";
|
||||||
};
|
};
|
||||||
|
hello = { };
|
||||||
|
newkey = { };
|
||||||
};
|
};
|
||||||
}
|
};
|
||||||
|
}
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
{config}: ''
|
{ config }:
|
||||||
|
''
|
||||||
inoremap jj <Esc>
|
inoremap jj <Esc>
|
||||||
inoremap kk <Esc>
|
inoremap kk <Esc>
|
||||||
|
|
||||||
|
@ -6,9 +6,11 @@
|
|||||||
modulesPath,
|
modulesPath,
|
||||||
hostname,
|
hostname,
|
||||||
...
|
...
|
||||||
}: let
|
}:
|
||||||
custom-fonts = import ../fonts {inherit pkgs;};
|
let
|
||||||
in {
|
custom-fonts = import ../fonts { inherit pkgs; };
|
||||||
|
in
|
||||||
|
{
|
||||||
imports = [
|
imports = [
|
||||||
"${modulesPath}/profiles/minimal.nix"
|
"${modulesPath}/profiles/minimal.nix"
|
||||||
];
|
];
|
||||||
@ -38,8 +40,8 @@ in {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
trusted-substituters = ["http://attic.baklava"];
|
trusted-substituters = [ "http://attic.baklava" ];
|
||||||
trusted-public-keys = ["systems:tvbHIThn7MAwvgMSiYR3ULVlL6cBrA40afqGuextnNQ="];
|
trusted-public-keys = [ "systems:tvbHIThn7MAwvgMSiYR3ULVlL6cBrA40afqGuextnNQ=" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
|
@ -1,18 +1,21 @@
|
|||||||
{
|
{
|
||||||
inputs,
|
inputs,
|
||||||
customPackageOverlay,
|
customPackageOverlay,
|
||||||
# ...
|
# ...
|
||||||
}: let
|
}:
|
||||||
|
let
|
||||||
linuxSystem = "x86_64-linux";
|
linuxSystem = "x86_64-linux";
|
||||||
lib = inputs.nixpkgs.lib;
|
lib = inputs.nixpkgs.lib;
|
||||||
nixpkgs-unstable = import inputs.nixpkgs {
|
nixpkgs-unstable = import inputs.nixpkgs {
|
||||||
system = linuxSystem;
|
system = linuxSystem;
|
||||||
config.allowUnfreePredicate = pkg:
|
config.allowUnfreePredicate =
|
||||||
|
pkg:
|
||||||
builtins.elem (lib.getName pkg) [
|
builtins.elem (lib.getName pkg) [
|
||||||
"claude-code"
|
"claude-code"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
"maxos" = inputs.nixpkgs-24-11.lib.nixosSystem {
|
"maxos" = inputs.nixpkgs-24-11.lib.nixosSystem {
|
||||||
system = linuxSystem;
|
system = linuxSystem;
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
@ -33,7 +36,7 @@ in {
|
|||||||
};
|
};
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.users.deepak = {
|
home-manager.users.deepak = {
|
||||||
imports = [../home/deepak/home.nix];
|
imports = [ ../home/deepak/home.nix ];
|
||||||
};
|
};
|
||||||
home-manager.sharedModules = [
|
home-manager.sharedModules = [
|
||||||
inputs.sops-nix.homeManagerModules.sops
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
@ -95,7 +98,7 @@ in {
|
|||||||
};
|
};
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.users.deepak = {
|
home-manager.users.deepak = {
|
||||||
imports = [../home/deepak/home.nix];
|
imports = [ ../home/deepak/home.nix ];
|
||||||
};
|
};
|
||||||
home-manager.sharedModules = [
|
home-manager.sharedModules = [
|
||||||
inputs.sops-nix.homeManagerModules.sops
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
|
@ -5,9 +5,11 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
customPackageOverlay,
|
customPackageOverlay,
|
||||||
...
|
...
|
||||||
}: let
|
}:
|
||||||
custom-fonts = import ../../fonts {inherit pkgs;};
|
let
|
||||||
in {
|
custom-fonts = import ../../fonts { inherit pkgs; };
|
||||||
|
in
|
||||||
|
{
|
||||||
imports = [
|
imports = [
|
||||||
# Include the results of the hardware scan.
|
# Include the results of the hardware scan.
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
@ -150,7 +152,7 @@ in {
|
|||||||
# Open ports in the firewall.
|
# Open ports in the firewall.
|
||||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||||
networking.firewall.allowedUDPPorts = [62532];
|
networking.firewall.allowedUDPPorts = [ 62532 ];
|
||||||
# Or disable the firewall altogether.
|
# Or disable the firewall altogether.
|
||||||
# networking.firewall.enable = false;
|
# networking.firewall.enable = false;
|
||||||
|
|
||||||
|
@ -6,7 +6,8 @@
|
|||||||
lib,
|
lib,
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}: {
|
}:
|
||||||
|
{
|
||||||
imports = [
|
imports = [
|
||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
@ -18,19 +19,20 @@
|
|||||||
"usbhid"
|
"usbhid"
|
||||||
"sd_mod"
|
"sd_mod"
|
||||||
];
|
];
|
||||||
boot.initrd.kernelModules = [];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [
|
boot.kernelModules = [
|
||||||
"kvm-intel"
|
"kvm-intel"
|
||||||
"wl"
|
"wl"
|
||||||
];
|
];
|
||||||
boot.extraModulePackages = [config.boot.kernelPackages.broadcom_sta];
|
boot.extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ];
|
||||||
|
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "/dev/disk/by-uuid/6d9433c6-2dab-4936-a924-d0a205381189";
|
device = "/dev/disk/by-uuid/6d9433c6-2dab-4936-a924-d0a205381189";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.initrd.luks.devices."nixosroot".device = "/dev/disk/by-uuid/3b0d4c02-d9e5-44ab-8461-30797547ed70";
|
boot.initrd.luks.devices."nixosroot".device =
|
||||||
|
"/dev/disk/by-uuid/3b0d4c02-d9e5-44ab-8461-30797547ed70";
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" = {
|
||||||
device = "/dev/disk/by-uuid/67E3-17ED";
|
device = "/dev/disk/by-uuid/67E3-17ED";
|
||||||
@ -38,7 +40,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [
|
swapDevices = [
|
||||||
{device = "/dev/disk/by-uuid/1e0f60e9-cf43-451d-8466-81887f27c7cf";}
|
{ device = "/dev/disk/by-uuid/1e0f60e9-cf43-451d-8466-81887f27c7cf"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||||
|
@ -3,9 +3,11 @@
|
|||||||
customPackageOverlay,
|
customPackageOverlay,
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}: let
|
}:
|
||||||
custom-fonts = import ../../fonts {inherit pkgs;};
|
let
|
||||||
in {
|
custom-fonts = import ../../fonts { inherit pkgs; };
|
||||||
|
in
|
||||||
|
{
|
||||||
imports = [
|
imports = [
|
||||||
"${modulesPath}/profiles/minimal.nix"
|
"${modulesPath}/profiles/minimal.nix"
|
||||||
];
|
];
|
||||||
|
@ -3,9 +3,11 @@
|
|||||||
customPackageOverlay,
|
customPackageOverlay,
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}: let
|
}:
|
||||||
custom-fonts = import ../../fonts {inherit pkgs;};
|
let
|
||||||
in {
|
custom-fonts = import ../../fonts { inherit pkgs; };
|
||||||
|
in
|
||||||
|
{
|
||||||
imports = [
|
imports = [
|
||||||
"${modulesPath}/profiles/minimal.nix"
|
"${modulesPath}/profiles/minimal.nix"
|
||||||
];
|
];
|
||||||
|
@ -4,49 +4,54 @@
|
|||||||
nomodoro,
|
nomodoro,
|
||||||
parrot-nvim,
|
parrot-nvim,
|
||||||
inputs,
|
inputs,
|
||||||
}: let
|
}:
|
||||||
pluginoverlay = _final: prev: let
|
let
|
||||||
cmpVimtexPlugin = prev.vimUtils.buildVimPlugin {
|
pluginoverlay =
|
||||||
src = cmp-vimtex;
|
_final: prev:
|
||||||
name = "cmp-vimtex";
|
let
|
||||||
};
|
cmpVimtexPlugin = prev.vimUtils.buildVimPlugin {
|
||||||
spaceportNvimPlugin = prev.vimUtils.buildVimPlugin {
|
src = cmp-vimtex;
|
||||||
src = spaceport-nvim;
|
name = "cmp-vimtex";
|
||||||
name = "spaceport-nvim";
|
};
|
||||||
};
|
spaceportNvimPlugin = prev.vimUtils.buildVimPlugin {
|
||||||
nomodoroNvimPlugin = prev.vimUtils.buildVimPlugin {
|
src = spaceport-nvim;
|
||||||
src = nomodoro;
|
name = "spaceport-nvim";
|
||||||
name = "nomodoro";
|
};
|
||||||
};
|
nomodoroNvimPlugin = prev.vimUtils.buildVimPlugin {
|
||||||
|
src = nomodoro;
|
||||||
|
name = "nomodoro";
|
||||||
|
};
|
||||||
|
|
||||||
parrotNvimPlugin = prev.vimUtils.buildVimPlugin {
|
parrotNvimPlugin = prev.vimUtils.buildVimPlugin {
|
||||||
src = parrot-nvim;
|
src = parrot-nvim;
|
||||||
name = "parrot-nvim";
|
name = "parrot-nvim";
|
||||||
};
|
};
|
||||||
|
|
||||||
nvimWebDeviconPlugin = prev.vimUtils.buildVimPlugin {
|
nvimWebDeviconPlugin = prev.vimUtils.buildVimPlugin {
|
||||||
src = inputs.nvim-web-devicons;
|
src = inputs.nvim-web-devicons;
|
||||||
name = "nvim-web-devicons";
|
name = "nvim-web-devicons";
|
||||||
};
|
};
|
||||||
|
|
||||||
zshCompletionPlugin = {
|
zshCompletionPlugin = {
|
||||||
name = "zsh-completions";
|
name = "zsh-completions";
|
||||||
src = inputs.zsh-completions;
|
src = inputs.zsh-completions;
|
||||||
};
|
};
|
||||||
in {
|
in
|
||||||
customVimPlugins = {
|
{
|
||||||
cmp-vimtex = cmpVimtexPlugin;
|
customVimPlugins = {
|
||||||
spaceport-nvim = spaceportNvimPlugin;
|
cmp-vimtex = cmpVimtexPlugin;
|
||||||
nomodoro = nomodoroNvimPlugin;
|
spaceport-nvim = spaceportNvimPlugin;
|
||||||
parrot-nvim = parrotNvimPlugin;
|
nomodoro = nomodoroNvimPlugin;
|
||||||
nvim-web-devicons = nvimWebDeviconPlugin;
|
parrot-nvim = parrotNvimPlugin;
|
||||||
};
|
nvim-web-devicons = nvimWebDeviconPlugin;
|
||||||
|
};
|
||||||
|
|
||||||
customZshPlugins = {
|
customZshPlugins = {
|
||||||
zsh-completions = zshCompletionPlugin;
|
zsh-completions = zshCompletionPlugin;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
in
|
||||||
in {
|
{
|
||||||
overlay = inputs.nixpkgs.lib.composeManyExtensions [
|
overlay = inputs.nixpkgs.lib.composeManyExtensions [
|
||||||
pluginoverlay
|
pluginoverlay
|
||||||
inputs.claude-mcp-bundle.overlays.default
|
inputs.claude-mcp-bundle.overlays.default
|
||||||
|
17
treefmt.nix
17
treefmt.nix
@ -1,5 +1,6 @@
|
|||||||
# treefmt.nix
|
# treefmt.nix
|
||||||
{...}: {
|
{ ... }:
|
||||||
|
{
|
||||||
projectRootFile = "treefmt.nix";
|
projectRootFile = "treefmt.nix";
|
||||||
settings.global.excludes = [
|
settings.global.excludes = [
|
||||||
"*.toml"
|
"*.toml"
|
||||||
@ -14,23 +15,17 @@
|
|||||||
|
|
||||||
programs.mdsh.enable = true;
|
programs.mdsh.enable = true;
|
||||||
|
|
||||||
# programs.nixfmt.enable = true;
|
programs.nixfmt.enable = true;
|
||||||
# settings.formatter.nixfmt.indent = " ";
|
|
||||||
programs.alejandra.enable = true;
|
|
||||||
settings.formatter.alejandra.indentation = "Tabs";
|
|
||||||
|
|
||||||
programs.shellcheck.enable = true;
|
programs.shellcheck.enable = true;
|
||||||
|
|
||||||
programs.shfmt.enable = true;
|
programs.shfmt.enable = true;
|
||||||
settings.formatter.shfmt.indent = "\t";
|
settings.formatter.shfmt.indent_size = 0;
|
||||||
|
|
||||||
programs.yamlfmt.enable = true;
|
programs.yamlfmt.enable = true;
|
||||||
settings.formatter.yamlfmt.indent = 1; # yamlfmt uses number of tab characters for indent
|
|
||||||
settings.formatter.yamlfmt.use_tabs = true;
|
|
||||||
|
|
||||||
programs.just.enable = true; # just format uses tabs by default if first line has tabs
|
programs.just.enable = true;
|
||||||
|
|
||||||
programs.stylua.enable = true; # Already configured for tabs in stylua.toml
|
programs.stylua.enable = true;
|
||||||
|
|
||||||
# Formatter specific settings
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user