46
flake.lock
generated
46
flake.lock
generated
@@ -248,6 +248,21 @@
|
|||||||
"url": "https://git.karaolidis.com/karaolidis/nix-lib.git"
|
"url": "https://git.karaolidis.com/karaolidis/nix-lib.git"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"mnw": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1748710831,
|
||||||
|
"narHash": "sha256-eZu2yH3Y2eA9DD3naKWy/sTxYS5rPK2hO7vj8tvUCSU=",
|
||||||
|
"owner": "Gerg-L",
|
||||||
|
"repo": "mnw",
|
||||||
|
"rev": "cff958a4e050f8d917a6ff3a5624bc4681c6187d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Gerg-L",
|
||||||
|
"repo": "mnw",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixos-wsl": {
|
"nixos-wsl": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": [
|
||||||
@@ -326,6 +341,36 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nvf": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
|
"flake-parts": [
|
||||||
|
"flake-parts"
|
||||||
|
],
|
||||||
|
"mnw": "mnw",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1755463179,
|
||||||
|
"narHash": "sha256-5Ggb1Mhf7ZlRgGi2puCa2PvWs6KbMnWBlW6KW7Vf79Y=",
|
||||||
|
"owner": "NotAShelf",
|
||||||
|
"repo": "nvf",
|
||||||
|
"rev": "03833118267ad32226b014b360692bdce9d6e082",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NotAShelf",
|
||||||
|
"repo": "nvf",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nvidia-patch": {
|
"nvidia-patch": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -405,6 +450,7 @@
|
|||||||
"nixos-wsl": "nixos-wsl",
|
"nixos-wsl": "nixos-wsl",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
|
"nvf": "nvf",
|
||||||
"nvidia-patch": "nvidia-patch",
|
"nvidia-patch": "nvidia-patch",
|
||||||
"quadlet-nix": "quadlet-nix",
|
"quadlet-nix": "quadlet-nix",
|
||||||
"sas": "sas",
|
"sas": "sas",
|
||||||
|
103
flake.nix
103
flake.nix
@@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
|
# Configuration
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
@@ -7,13 +8,63 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
disko = {
|
# Packages
|
||||||
url = "github:nix-community/disko/latest";
|
nur = {
|
||||||
|
url = "github:nix-community/NUR";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.follows = "nixpkgs";
|
||||||
|
flake-parts.follows = "flake-parts";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# DevOps
|
||||||
|
sops-nix = {
|
||||||
|
url = "github:Mic92/sops-nix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
sops-nix = {
|
treefmt-nix = {
|
||||||
url = "github:Mic92/sops-nix";
|
url = "github:numtide/treefmt-nix";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
flake-input-patcher = {
|
||||||
|
url = "github:jfly/flake-input-patcher";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.follows = "nixpkgs";
|
||||||
|
systems.follows = "systems";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Personal
|
||||||
|
lib = {
|
||||||
|
# FIXME: https://github.com/NixOS/nix/issues/12281
|
||||||
|
url = "git+https://git.karaolidis.com/karaolidis/nix-lib.git";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.follows = "nixpkgs";
|
||||||
|
treefmt-nix.follows = "treefmt-nix";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sas = {
|
||||||
|
# FIXME: https://github.com/NixOS/nix/issues/12281
|
||||||
|
url = "git+ssh://git@karaolidis.com/karaolidis/nix-sas.git";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.follows = "nixpkgs";
|
||||||
|
lib.follows = "lib";
|
||||||
|
treefmt-nix.follows = "treefmt-nix";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
secrets = {
|
||||||
|
# FIXME: https://github.com/NixOS/nix/issues/12281
|
||||||
|
url = "git+ssh://git@karaolidis.com/karaolidis/nix-secrets.git";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Hardware
|
||||||
|
disko = {
|
||||||
|
url = "github:nix-community/disko/latest";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -34,48 +85,13 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# FIXME: https://github.com/NixOS/nix/issues/12281
|
# Applications
|
||||||
lib = {
|
nvf = {
|
||||||
url = "git+https://git.karaolidis.com/karaolidis/nix-lib.git";
|
url = "github:NotAShelf/nvf";
|
||||||
inputs = {
|
|
||||||
nixpkgs.follows = "nixpkgs";
|
|
||||||
treefmt-nix.follows = "treefmt-nix";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# FIXME: https://github.com/NixOS/nix/issues/12281
|
|
||||||
sas = {
|
|
||||||
url = "git+ssh://git@karaolidis.com/karaolidis/nix-sas.git";
|
|
||||||
inputs = {
|
|
||||||
nixpkgs.follows = "nixpkgs";
|
|
||||||
lib.follows = "lib";
|
|
||||||
treefmt-nix.follows = "treefmt-nix";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# FIXME: https://github.com/NixOS/nix/issues/12281
|
|
||||||
secrets = {
|
|
||||||
url = "git+ssh://git@karaolidis.com/karaolidis/nix-secrets.git";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
nur = {
|
|
||||||
url = "github:nix-community/NUR";
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.follows = "nixpkgs";
|
nixpkgs.follows = "nixpkgs";
|
||||||
|
flake-compat.follows = "flake-compat";
|
||||||
flake-parts.follows = "flake-parts";
|
flake-parts.follows = "flake-parts";
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
treefmt-nix = {
|
|
||||||
url = "github:numtide/treefmt-nix";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
flake-input-patcher = {
|
|
||||||
url = "github:jfly/flake-input-patcher";
|
|
||||||
inputs = {
|
|
||||||
nixpkgs.follows = "nixpkgs";
|
|
||||||
systems.follows = "systems";
|
systems.follows = "systems";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -111,6 +127,7 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Transitive Dependencies
|
||||||
systems.url = "github:nix-systems/default";
|
systems.url = "github:nix-systems/default";
|
||||||
|
|
||||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||||
|
@@ -1,22 +1,136 @@
|
|||||||
{ user, home }:
|
{ user, home }:
|
||||||
{ ... }:
|
{ inputs, ... }:
|
||||||
{
|
{
|
||||||
home-manager.users.${user}.programs = {
|
home-manager.users.${user} = {
|
||||||
neovim = {
|
imports = [ inputs.nvf.homeManagerModules.default ];
|
||||||
enable = true;
|
|
||||||
defaultEditor = true;
|
|
||||||
viAlias = true;
|
|
||||||
vimAlias = true;
|
|
||||||
vimdiffAlias = true;
|
|
||||||
extraConfig = ''
|
|
||||||
set tabstop=2
|
|
||||||
set shiftwidth=2
|
|
||||||
set expandtab
|
|
||||||
set smartindent
|
|
||||||
set mouse=
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
zsh.p10k.extraRightPromptElements = [ "vim_shell" ];
|
programs = {
|
||||||
|
nvf = {
|
||||||
|
enable = true;
|
||||||
|
defaultEditor = true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
vim = {
|
||||||
|
enableLuaLoader = true;
|
||||||
|
|
||||||
|
viAlias = true;
|
||||||
|
vimAlias = true;
|
||||||
|
|
||||||
|
binds = {
|
||||||
|
cheatsheet.enable = true;
|
||||||
|
hardtime-nvim.enable = true;
|
||||||
|
whichKey.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
clipboard = {
|
||||||
|
enable = true;
|
||||||
|
providers.wl-copy.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
comments = {
|
||||||
|
comment-nvim.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
filetree = {
|
||||||
|
neo-tree = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
git = {
|
||||||
|
enable = true;
|
||||||
|
gitsigns.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
languages = {
|
||||||
|
enableDAP = true;
|
||||||
|
enableFormat = true;
|
||||||
|
enableTreesitter = true;
|
||||||
|
enableExtraDiagnostics = true;
|
||||||
|
|
||||||
|
assembly.enable = true;
|
||||||
|
bash.enable = true;
|
||||||
|
clang.enable = true;
|
||||||
|
csharp.enable = true;
|
||||||
|
css.enable = true;
|
||||||
|
go.enable = true;
|
||||||
|
html.enable = true;
|
||||||
|
java.enable = true;
|
||||||
|
lua.enable = true;
|
||||||
|
markdown.enable = true;
|
||||||
|
nix = {
|
||||||
|
enable = true;
|
||||||
|
format.type = "nixfmt";
|
||||||
|
};
|
||||||
|
php.enable = true;
|
||||||
|
python.enable = true;
|
||||||
|
rust.enable = true;
|
||||||
|
sql.enable = true;
|
||||||
|
svelte.enable = true;
|
||||||
|
ts.enable = true;
|
||||||
|
yaml.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
lsp = {
|
||||||
|
enable = true;
|
||||||
|
formatOnSave = true;
|
||||||
|
nvim-docs-view.enable = true;
|
||||||
|
otter-nvim.enable = true;
|
||||||
|
trouble.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
notify = {
|
||||||
|
nvim-notify.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
options = {
|
||||||
|
tabstop = 2;
|
||||||
|
shiftwidth = 2;
|
||||||
|
expandtab = true;
|
||||||
|
smartindent = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
searchCase = "smart";
|
||||||
|
|
||||||
|
telescope = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
terminal = {
|
||||||
|
toggleterm = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
treesitter = {
|
||||||
|
enable = true;
|
||||||
|
context.enable = true;
|
||||||
|
fold = true;
|
||||||
|
textobjects.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
ui = {
|
||||||
|
colorizer.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
undoFile.enable = true;
|
||||||
|
|
||||||
|
utility = {
|
||||||
|
motion = {
|
||||||
|
precognition.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
visuals = {
|
||||||
|
indent-blankline.enable = true;
|
||||||
|
nvim-cursorline.enable = true;
|
||||||
|
nvim-web-devicons.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
zsh.p10k.extraRightPromptElements = [ "vim_shell" ];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@@ -23,7 +23,7 @@ in
|
|||||||
opener = {
|
opener = {
|
||||||
edit = [
|
edit = [
|
||||||
{
|
{
|
||||||
run = "${hmConfig.programs.neovim.finalPackage}/bin/nvim \"$@\"";
|
run = "${hmConfig.programs.nvf.finalPackage}/bin/nvim \"$@\"";
|
||||||
desc = "nvim";
|
desc = "nvim";
|
||||||
block = true;
|
block = true;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user