last commit till merge with desktop
This commit is contained in:
parent
f1019d6648
commit
3392028942
|
@ -14,7 +14,9 @@ in
|
||||||
./freecorn.nix
|
./freecorn.nix
|
||||||
./jimbo.nix
|
./jimbo.nix
|
||||||
./vaultwarden.nix
|
./vaultwarden.nix
|
||||||
"${homeManager}/nixos"
|
"${homeManager}/nixos"
|
||||||
|
# ./wireguard.nix
|
||||||
|
# ./neovim.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
# Bootloader
|
# Bootloader
|
||||||
|
@ -272,6 +274,7 @@ in
|
||||||
steam-run
|
steam-run
|
||||||
# openwebrx
|
# openwebrx
|
||||||
qbittorrent
|
qbittorrent
|
||||||
|
vim
|
||||||
];
|
];
|
||||||
|
|
||||||
# Enable the OpenSSH daemon.
|
# Enable the OpenSSH daemon.
|
||||||
|
@ -327,6 +330,11 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# :3
|
||||||
|
|
||||||
|
|
||||||
# NFS server
|
# NFS server
|
||||||
# services.nfs.server = {
|
# services.nfs.server = {
|
||||||
# enable = true;
|
# enable = true;
|
||||||
|
@ -341,4 +349,3 @@ in
|
||||||
# Don't change this
|
# Don't change this
|
||||||
system.stateVersion = "24.05";
|
system.stateVersion = "24.05";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,10 @@ in {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
users.freecorn = { config, pkgs, ... }: {
|
users.freecorn = { config, pkgs, ... }: {
|
||||||
|
# imports = [
|
||||||
|
# ./zsh.nix
|
||||||
|
# ./neovim.nix
|
||||||
|
# ];
|
||||||
# Install user programs
|
# Install user programs
|
||||||
home.packages = (with pkgs; [
|
home.packages = (with pkgs; [
|
||||||
rustdesk-flutter anydesk vlc
|
rustdesk-flutter anydesk vlc
|
||||||
|
|
106
neovim.nix
Normal file
106
neovim.nix
Normal file
|
@ -0,0 +1,106 @@
|
||||||
|
{pkgs, outputs, ...}: {
|
||||||
|
# Install Neovim and plugins
|
||||||
|
programs.neovim = {
|
||||||
|
enable = true;
|
||||||
|
defaultEditor = true;
|
||||||
|
viAlias = true;
|
||||||
|
vimAlias = true;
|
||||||
|
plugins = with pkgs.vimPlugins; [
|
||||||
|
# Vim theme
|
||||||
|
vim-airline
|
||||||
|
vim-airline-themes
|
||||||
|
|
||||||
|
# Internal clipboard
|
||||||
|
vim-vsnip
|
||||||
|
cmp-vsnip
|
||||||
|
|
||||||
|
# Autocomplete manager
|
||||||
|
lspkind-nvim
|
||||||
|
|
||||||
|
# Autocomplete plugins
|
||||||
|
cmp-nvim-lsp
|
||||||
|
cmp-buffer
|
||||||
|
cmp-path
|
||||||
|
cmp-cmdline
|
||||||
|
nvim-cmp
|
||||||
|
|
||||||
|
# Hex color visualizer and color theme
|
||||||
|
nvim-colorizer-lua
|
||||||
|
vim-monokai-pro
|
||||||
|
|
||||||
|
# Discord
|
||||||
|
vimsence
|
||||||
|
|
||||||
|
];
|
||||||
|
extraConfig = ''
|
||||||
|
lua <<EOF
|
||||||
|
-- Set up nvim-cmp
|
||||||
|
local cmp = require'cmp'
|
||||||
|
|
||||||
|
cmp.setup({
|
||||||
|
snippet = {
|
||||||
|
-- REQUIRED - you must specify a snippet engine
|
||||||
|
expand = function(args)
|
||||||
|
vim.fn["vsnip#anonymous"](args.body)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
mapping = cmp.mapping.preset.insert({
|
||||||
|
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
||||||
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||||
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
|
['<C-e>'] = cmp.mapping.abort(),
|
||||||
|
['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||||
|
}),
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = 'nvim_lsp' },
|
||||||
|
{ name = 'vsnip' }
|
||||||
|
}, {
|
||||||
|
{ name = 'buffer' },
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Use buffer source for '/' and '?'
|
||||||
|
cmp.setup.cmdline({ '/', '?' }, {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = {
|
||||||
|
{ name = 'buffer' }
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Use cmdline & path source for ':'
|
||||||
|
cmp.setup.cmdline(':', {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = 'path' }
|
||||||
|
}, {
|
||||||
|
{ name = 'cmdline' }
|
||||||
|
})
|
||||||
|
})
|
||||||
|
EOF
|
||||||
|
|
||||||
|
colorscheme monokai_pro
|
||||||
|
let g:airline_theme='onedark'
|
||||||
|
let g:airline#extensions#tabline#enabled = 1
|
||||||
|
hi Normal guibg=none ctermbg=235
|
||||||
|
hi EndOfBuffer guibg=none ctermbg=235
|
||||||
|
hi LineNr guibg=none ctermbg=none
|
||||||
|
lua require'colorizer'.setup()
|
||||||
|
|
||||||
|
set nu rnu
|
||||||
|
set termguicolors
|
||||||
|
set mouse=a
|
||||||
|
|
||||||
|
set undofile
|
||||||
|
set undodir=$HOME/.local/share/nvim/undo
|
||||||
|
set undolevels=100
|
||||||
|
set undoreload=10000
|
||||||
|
|
||||||
|
nmap <C-x> :bnext<CR>
|
||||||
|
nmap <C-z> :bprev<CR>
|
||||||
|
nmap <C-w> :bd<CR>
|
||||||
|
|
||||||
|
let g:vimsence_small_text = 'NeoVim'
|
||||||
|
let g:vimsence_small_image = 'neovim'
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
21
wireguard.nix
Normal file
21
wireguard.nix
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
{outputs, ...}: {
|
||||||
|
networking.firewall = {
|
||||||
|
allowedUDPPorts = [ 51820 ];
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.wireguard.interfaces = {
|
||||||
|
"${outputs.ips.wgInt}" = {
|
||||||
|
# Define IP of client in per device config
|
||||||
|
listenPort = 51820;
|
||||||
|
privateKey = outputs.secrets.wgClientPriv;
|
||||||
|
peers = [
|
||||||
|
{ # 0.0.0.0 makes wg act like a traditional VPN
|
||||||
|
publicKey = outputs.secrets.wgServerPub;
|
||||||
|
allowedIPs = [ "0.0.0.0/0" ];
|
||||||
|
endpoint = "other.${outputs.secrets.cornDomain}:51820";
|
||||||
|
persistentKeepalive = 25;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
36
zsh.nix
Normal file
36
zsh.nix
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
{pkgs, config, outputs, ...}: {
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
autosuggestion.enable = true;
|
||||||
|
syntaxHighlighting.enable = true;
|
||||||
|
oh-my-zsh = {
|
||||||
|
enable = true;
|
||||||
|
theme = "alanpeabody";
|
||||||
|
plugins = ["git"];
|
||||||
|
};
|
||||||
|
shellAliases = {
|
||||||
|
|
||||||
|
# NixOS aliases
|
||||||
|
nixclean = "sudo nix-store --gc; nix-collect-garbage -d";
|
||||||
|
nixpurge = "sudo nix-collect-garbage --delete-old";
|
||||||
|
nixoptimize = "sudo nix store optimise";
|
||||||
|
nixcleanall = "nixclean; nixpurge; nixoptimize";
|
||||||
|
|
||||||
|
# Flake commands
|
||||||
|
flakedate = "sudo nix flake update /etc/nixos";
|
||||||
|
sysswitch = "sudo nixos-rebuild switch --flake /etc/nixos";
|
||||||
|
homeswitch = "home-manager switch --flake /etc/nixos";
|
||||||
|
nixswitch = "sysswitch; homeswitch;";
|
||||||
|
nixdate = "flakedate && sysswitch; homeswitch";
|
||||||
|
|
||||||
|
# Unzip to 7za
|
||||||
|
unzip = "7za x";
|
||||||
|
|
||||||
|
};
|
||||||
|
initExtra = ''
|
||||||
|
${pkgs.any-nix-shell}/bin/any-nix-shell zsh --info-right | source /dev/stdin;
|
||||||
|
setopt HIST_IGNORE_SPACE
|
||||||
|
setopt RM_STAR_WAIT
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
Reference in a new issue