Compare commits
7 Commits
081d5068c2
...
e51088400f
Author | SHA1 | Date | |
---|---|---|---|
e51088400f | |||
5b15769ad5 | |||
1de7b6e5b9 | |||
0ac0bec82e | |||
b617893d5b | |||
2849687eed | |||
a7f1a8f845 |
|
@ -27,6 +27,36 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
# [NETWORK]
|
# [NETWORK]
|
||||||
# networking.firewall.allowedTCPPorts = [ 80 ];
|
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||||
# networking.firewall.allowedUDPPorts = [ ];
|
networking.firewall.allowedUDPPorts = [ ];
|
||||||
|
|
||||||
|
# VM test user
|
||||||
|
users.users.test.isSystemUser = true ;
|
||||||
|
users.users.test.initialPassword = "test";
|
||||||
|
users.users.test.group = "test";
|
||||||
|
users.groups.test = {};
|
||||||
|
|
||||||
|
console = {
|
||||||
|
useXkbConfig = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.xserver = {
|
||||||
|
xkb = {
|
||||||
|
layout = "fox,sus";
|
||||||
|
options = "ctrl:nocaps";
|
||||||
|
extraLayouts.sus = {
|
||||||
|
description = "Swedish US";
|
||||||
|
languages = [ "se" ];
|
||||||
|
symbolsFile = ../shared/sus.xkb;
|
||||||
|
};
|
||||||
|
extraLayouts.fox = {
|
||||||
|
description = "Layout suitable to be used by a fox";
|
||||||
|
languages = [ "se" ];
|
||||||
|
symbolsFile = ../shared/fox.xkb;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
system.stateVersion = "23.11";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
59
flake.lock
59
flake.lock
|
@ -31,11 +31,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1706916489,
|
"lastModified": 1712595875,
|
||||||
"narHash": "sha256-x6OrQdcViKUqF8m/yuF+hIJhecTwiwVSH9T/mJa+K4k=",
|
"narHash": "sha256-KaAhKeESwOQ0R0vxeAO/CDPiPimiemoARyr0uIVTQ4w=",
|
||||||
"owner": "isovector",
|
"owner": "isovector",
|
||||||
"repo": "cornelis",
|
"repo": "cornelis",
|
||||||
"rev": "c1f926eb8a2d5bd051e84f330864ebc3857a83f4",
|
"rev": "9d3347e7d8589a28bcdd283001367d60bacf6b05",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -80,11 +80,11 @@
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1701680307,
|
"lastModified": 1710146030,
|
||||||
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -100,11 +100,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1700814205,
|
"lastModified": 1712386041,
|
||||||
"narHash": "sha256-lWqDPKHRbQfi+zNIivf031BUeyciVOtwCwTjyrhDB5g=",
|
"narHash": "sha256-dA82pOMQNnCJMAsPG7AXG35VmCSMZsJHTFlTHizpKWQ=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "aeb2232d7a32530d3448318790534d196bf9427a",
|
"rev": "d6bb9f934f2870e5cbc5b94c79e9db22246141ff",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -116,11 +116,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1707091808,
|
"lastModified": 1712588820,
|
||||||
"narHash": "sha256-LahKBAfGbY836gtpVNnWwBTIzN7yf/uYM/S0g393r0Y=",
|
"narHash": "sha256-y31s5idk3jMJMAVE4Ud9AdI7HT3CgTAeMTJ0StqKN7Y=",
|
||||||
"owner": "NixOs",
|
"owner": "NixOs",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "9f2ee8c91ac42da3ae6c6a1d21555f283458247e",
|
"rev": "d272ca50d1f7424fbfcd1e6f1c9e01d92f6da167",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -130,13 +130,29 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-unstable": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1713297878,
|
||||||
|
"narHash": "sha256-hOkzkhLT59wR8VaMbh1ESjtZLbGi+XNaBN6h49SPqEc=",
|
||||||
|
"owner": "NixOs",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "66adc1e47f8784803f2deb6cacd5e07264ec2d5c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOs",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1707268954,
|
"lastModified": 1711703276,
|
||||||
"narHash": "sha256-2en1kvde3cJVc3ZnTy8QeD2oKcseLFjYPLKhIGDanQ0=",
|
"narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "f8e2ebd66d097614d51a56a755450d4ae1632df1",
|
"rev": "d8fe5e6c92d0d190646fb9f1056741a229980089",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -152,17 +168,18 @@
|
||||||
"cornelis": "cornelis",
|
"cornelis": "cornelis",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
"ssbm-nix": "ssbm-nix"
|
"ssbm-nix": "ssbm-nix"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"slippi-desktop": {
|
"slippi-desktop": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1707981080,
|
"lastModified": 1711346593,
|
||||||
"narHash": "sha256-Qd1jLAXWvxA5SHcafgHFRs1+XYz8yXLdQ27+qZ8MYxk=",
|
"narHash": "sha256-WWgGRT58w1a4UcEe924hqa4ZVodQtsbXC44aCOEj528=",
|
||||||
"owner": "project-slippi",
|
"owner": "project-slippi",
|
||||||
"repo": "slippi-desktop-app",
|
"repo": "slippi-desktop-app",
|
||||||
"rev": "16ab255406f7ab86846a7786ff15e3543501397c",
|
"rev": "02f3f007cd03c6e2b0da57db65c90646efc04a86",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -177,11 +194,11 @@
|
||||||
"slippi-desktop": "slippi-desktop"
|
"slippi-desktop": "slippi-desktop"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1708119120,
|
"lastModified": 1712071998,
|
||||||
"narHash": "sha256-SuZbD4eGwS9OYeGL0V9uPVsW2SyL7MbLXBd5rngZB4c=",
|
"narHash": "sha256-k95NCkXJ61PGMFuqyMtfvP3yTLozED/7DkN+lBWK0gs=",
|
||||||
"owner": "lytedev",
|
"owner": "lytedev",
|
||||||
"repo": "ssbm-nix",
|
"repo": "ssbm-nix",
|
||||||
"rev": "041f495ab6446e6edd22c1a5fbd48dd704c5b9a6",
|
"rev": "eff966a97287d1d86b189d59a14bf744d86836b0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
17
flake.nix
17
flake.nix
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOs/nixpkgs/nixos-23.11";
|
nixpkgs.url = "github:NixOs/nixpkgs/nixos-23.11";
|
||||||
|
nixpkgs-unstable.url = "github:NixOs/nixpkgs/nixos-unstable";
|
||||||
home-manager.url = "github:nix-community/home-manager/release-23.11";
|
home-manager.url = "github:nix-community/home-manager/release-23.11";
|
||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
agda.url = "github:agda/agda/v2.6.4.1";
|
agda.url = "github:agda/agda/v2.6.4.1";
|
||||||
|
@ -13,7 +14,7 @@
|
||||||
ssbm-nix.url = "github:lytedev/ssbm-nix";
|
ssbm-nix.url = "github:lytedev/ssbm-nix";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, home-manager, agda, cornelis, ssbm-nix }:
|
outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, agda, cornelis, ssbm-nix }:
|
||||||
let nix-config-module =
|
let nix-config-module =
|
||||||
{
|
{
|
||||||
nix.registry.nixpkgs.flake = nixpkgs;
|
nix.registry.nixpkgs.flake = nixpkgs;
|
||||||
|
@ -28,6 +29,7 @@
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
users.rachel = import ./home/rachel.nix {
|
users.rachel = import ./home/rachel.nix {
|
||||||
pkgs = pkgs;
|
pkgs = pkgs;
|
||||||
|
unstable = nixpkgs-unstable.legacyPackages.${system};
|
||||||
agda = agda.packages.${system}.Agda;
|
agda = agda.packages.${system}.Agda;
|
||||||
cornelis = cornelis.packages.${system}.cornelis;
|
cornelis = cornelis.packages.${system}.cornelis;
|
||||||
cornelis-vim = cornelis.packages.${system}.cornelis-vim;
|
cornelis-vim = cornelis.packages.${system}.cornelis-vim;
|
||||||
|
@ -62,6 +64,19 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nixosConfigurations.cafe = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
modules = [
|
||||||
|
nix-config-module
|
||||||
|
./cafe/host.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
virtualisation.forwardPorts = [
|
||||||
|
{ from = "host"; host.port = 80; guest.port = 8080; }
|
||||||
|
];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
keyboardLayouts.fox = ./shared/fox.xkb;
|
keyboardLayouts.fox = ./shared/fox.xkb;
|
||||||
|
|
||||||
fonts.sax2nf = import ./shared/sax2nf.nix { pkgs = nixpkgs.legacyPackages.x86_64-linux; };
|
fonts.sax2nf = import ./shared/sax2nf.nix { pkgs = nixpkgs.legacyPackages.x86_64-linux; };
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, cornelis, cornelis-vim, agda, slippi-netplay, ... }:
|
{ pkgs, unstable, cornelis, cornelis-vim, agda, slippi-netplay, ... }:
|
||||||
let username = "rachel";
|
let username = "rachel";
|
||||||
homeDir = "/home/${username}";
|
homeDir = "/home/${username}";
|
||||||
SAX2NF = import ../shared/sax2nf.nix { inherit pkgs; };
|
SAX2NF = import ../shared/sax2nf.nix { inherit pkgs; };
|
||||||
|
@ -85,6 +85,7 @@ in
|
||||||
whalebird
|
whalebird
|
||||||
lean4
|
lean4
|
||||||
slippi-netplay
|
slippi-netplay
|
||||||
|
unstable.kicad
|
||||||
];
|
];
|
||||||
stateVersion = "23.11";
|
stateVersion = "23.11";
|
||||||
};
|
};
|
||||||
|
@ -182,11 +183,15 @@ in
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
lspcfg.clangd.setup({
|
||||||
|
cmd = { '${pkgs.clang-tools}/bin/clangd' },
|
||||||
|
})
|
||||||
|
lspcfg.ocamllsp.setup({})
|
||||||
require('orgmode').setup_ts_grammar()
|
require('orgmode').setup_ts_grammar()
|
||||||
require('nvim-treesitter.configs').setup({
|
require('nvim-treesitter.configs').setup({
|
||||||
highlight = {
|
highlight = {
|
||||||
enable = true,
|
enable = true,
|
||||||
disable = { "c" },
|
disable = { "c", "lua" },
|
||||||
additional_vim_regex_highlighting = {'org'},
|
additional_vim_regex_highlighting = {'org'},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
@ -194,6 +199,43 @@ in
|
||||||
require('lean').setup({
|
require('lean').setup({
|
||||||
mappings = true,
|
mappings = true,
|
||||||
})
|
})
|
||||||
|
require('lualine').setup {
|
||||||
|
options = {
|
||||||
|
icons_enabled = true,
|
||||||
|
theme = 'gruvbox',
|
||||||
|
component_separators = { left = "", right = ""},
|
||||||
|
section_separators = { left = "", right = ""},
|
||||||
|
always_divide_middle = true,
|
||||||
|
globalstatus = false,
|
||||||
|
refresh = {
|
||||||
|
statusline = 1000,
|
||||||
|
tabline = 1000,
|
||||||
|
winbar = 1000,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
sections = {
|
||||||
|
lualine_a = {'mode'},
|
||||||
|
lualine_b = { {
|
||||||
|
'diagnostics',
|
||||||
|
always_visible = true,
|
||||||
|
on_click = function(n,b,m)
|
||||||
|
vim.diagnostic.goto_next()
|
||||||
|
end
|
||||||
|
} },
|
||||||
|
lualine_c = {'filename'},
|
||||||
|
lualine_x = {'encoding', 'filetype'},
|
||||||
|
lualine_y = {'progress'},
|
||||||
|
lualine_z = {'location'}
|
||||||
|
},
|
||||||
|
inactive_sections = {
|
||||||
|
lualine_a = {},
|
||||||
|
lualine_b = {},
|
||||||
|
lualine_c = {'filename'},
|
||||||
|
lualine_x = {'location'},
|
||||||
|
lualine_y = {},
|
||||||
|
lualine_z = {}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
vim.api.nvim_create_autocmd('LspAttach', {
|
vim.api.nvim_create_autocmd('LspAttach', {
|
||||||
callback = function(args)
|
callback = function(args)
|
||||||
|
@ -201,6 +243,12 @@ in
|
||||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts)
|
vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts)
|
||||||
vim.keymap.set('n', '<localleader>r', vim.lsp.buf.rename, opts)
|
vim.keymap.set('n', '<localleader>r', vim.lsp.buf.rename, opts)
|
||||||
vim.keymap.set('n', '<localleader>a', vim.lsp.buf.code_action, opts)
|
vim.keymap.set('n', '<localleader>a', vim.lsp.buf.code_action, opts)
|
||||||
|
vim.keymap.set('n', '<localleader>gd', vim.lsp.buf.definition, opts)
|
||||||
|
vim.keymap.set('n', '<localleader>gi', vim.lsp.buf.implementation, opts)
|
||||||
|
vim.keymap.set('n', '<localleader>gr', vim.lsp.buf.references, opts)
|
||||||
|
vim.keymap.set('n', '<localleader>e', vim.diagnostic.open_float, opts)
|
||||||
|
vim.keymap.set('n', '<localleader>n', vim.diagnostic.goto_next, opts)
|
||||||
|
vim.keymap.set('n', '<localleader>N', vim.diagnostic.goto_prev, opts)
|
||||||
vim.keymap.set('i', '<C-n>', vim.lsp.omnifunc, opts)
|
vim.keymap.set('i', '<C-n>', vim.lsp.omnifunc, opts)
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
@ -241,7 +289,6 @@ in
|
||||||
set signcolumn=no
|
set signcolumn=no
|
||||||
set linebreak
|
set linebreak
|
||||||
let g:cornelis_use_global_binary = 1
|
let g:cornelis_use_global_binary = 1
|
||||||
let g:lightline = { 'colorscheme': 'gruvbox' }
|
|
||||||
set conceallevel=2 concealcursor=nc
|
set conceallevel=2 concealcursor=nc
|
||||||
colorscheme gruvbox
|
colorscheme gruvbox
|
||||||
hi Normal guibg=NONE ctermbg=NONE
|
hi Normal guibg=NONE ctermbg=NONE
|
||||||
|
@ -302,8 +349,6 @@ in
|
||||||
comment-nvim
|
comment-nvim
|
||||||
vimtex
|
vimtex
|
||||||
gruvbox-nvim
|
gruvbox-nvim
|
||||||
lightline-vim
|
|
||||||
lightline-gruvbox-vim
|
|
||||||
tmux-nvim
|
tmux-nvim
|
||||||
cornelis-vim
|
cornelis-vim
|
||||||
nvim-lspconfig
|
nvim-lspconfig
|
||||||
|
@ -318,6 +363,7 @@ in
|
||||||
lean-nvim
|
lean-nvim
|
||||||
bqn-vim
|
bqn-vim
|
||||||
bqn-nvim
|
bqn-nvim
|
||||||
|
lualine-nvim
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user