Compare commits

...

7 Commits

Author SHA1 Message Date
Rachel Lambda Samuelsson e51088400f add unstable packages 2024-04-19 15:24:00 +02:00
Rachel Lambda Samuelsson 5b15769ad5 ocamllsp 2024-04-19 15:17:01 +02:00
Rachel Lambda Samuelsson 1de7b6e5b9 update lock 2024-04-19 15:16:45 +02:00
Rachel Lambda Samuelsson 0ac0bec82e formatting 2024-04-19 15:16:30 +02:00
Rachel Lambda Samuelsson b617893d5b clangd 2024-04-19 15:16:12 +02:00
Rachel Lambda Samuelsson 2849687eed oops 2024-04-19 15:15:24 +02:00
Rachel Lambda Samuelsson a7f1a8f845 lualine 2024-04-19 15:13:55 +02:00
4 changed files with 154 additions and 46 deletions

View File

@ -27,6 +27,36 @@ in
};
# [NETWORK]
# networking.firewall.allowedTCPPorts = [ 80 ];
# networking.firewall.allowedUDPPorts = [ ];
networking.firewall.allowedTCPPorts = [ 80 ];
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";
}

View File

@ -31,11 +31,11 @@
]
},
"locked": {
"lastModified": 1706916489,
"narHash": "sha256-x6OrQdcViKUqF8m/yuF+hIJhecTwiwVSH9T/mJa+K4k=",
"lastModified": 1712595875,
"narHash": "sha256-KaAhKeESwOQ0R0vxeAO/CDPiPimiemoARyr0uIVTQ4w=",
"owner": "isovector",
"repo": "cornelis",
"rev": "c1f926eb8a2d5bd051e84f330864ebc3857a83f4",
"rev": "9d3347e7d8589a28bcdd283001367d60bacf6b05",
"type": "github"
},
"original": {
@ -80,11 +80,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
@ -100,11 +100,11 @@
]
},
"locked": {
"lastModified": 1700814205,
"narHash": "sha256-lWqDPKHRbQfi+zNIivf031BUeyciVOtwCwTjyrhDB5g=",
"lastModified": 1712386041,
"narHash": "sha256-dA82pOMQNnCJMAsPG7AXG35VmCSMZsJHTFlTHizpKWQ=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "aeb2232d7a32530d3448318790534d196bf9427a",
"rev": "d6bb9f934f2870e5cbc5b94c79e9db22246141ff",
"type": "github"
},
"original": {
@ -116,11 +116,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1707091808,
"narHash": "sha256-LahKBAfGbY836gtpVNnWwBTIzN7yf/uYM/S0g393r0Y=",
"lastModified": 1712588820,
"narHash": "sha256-y31s5idk3jMJMAVE4Ud9AdI7HT3CgTAeMTJ0StqKN7Y=",
"owner": "NixOs",
"repo": "nixpkgs",
"rev": "9f2ee8c91ac42da3ae6c6a1d21555f283458247e",
"rev": "d272ca50d1f7424fbfcd1e6f1c9e01d92f6da167",
"type": "github"
},
"original": {
@ -130,13 +130,29 @@
"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": {
"locked": {
"lastModified": 1707268954,
"narHash": "sha256-2en1kvde3cJVc3ZnTy8QeD2oKcseLFjYPLKhIGDanQ0=",
"lastModified": 1711703276,
"narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f8e2ebd66d097614d51a56a755450d4ae1632df1",
"rev": "d8fe5e6c92d0d190646fb9f1056741a229980089",
"type": "github"
},
"original": {
@ -152,17 +168,18 @@
"cornelis": "cornelis",
"home-manager": "home-manager",
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable",
"ssbm-nix": "ssbm-nix"
}
},
"slippi-desktop": {
"flake": false,
"locked": {
"lastModified": 1707981080,
"narHash": "sha256-Qd1jLAXWvxA5SHcafgHFRs1+XYz8yXLdQ27+qZ8MYxk=",
"lastModified": 1711346593,
"narHash": "sha256-WWgGRT58w1a4UcEe924hqa4ZVodQtsbXC44aCOEj528=",
"owner": "project-slippi",
"repo": "slippi-desktop-app",
"rev": "16ab255406f7ab86846a7786ff15e3543501397c",
"rev": "02f3f007cd03c6e2b0da57db65c90646efc04a86",
"type": "github"
},
"original": {
@ -177,11 +194,11 @@
"slippi-desktop": "slippi-desktop"
},
"locked": {
"lastModified": 1708119120,
"narHash": "sha256-SuZbD4eGwS9OYeGL0V9uPVsW2SyL7MbLXBd5rngZB4c=",
"lastModified": 1712071998,
"narHash": "sha256-k95NCkXJ61PGMFuqyMtfvP3yTLozED/7DkN+lBWK0gs=",
"owner": "lytedev",
"repo": "ssbm-nix",
"rev": "041f495ab6446e6edd22c1a5fbd48dd704c5b9a6",
"rev": "eff966a97287d1d86b189d59a14bf744d86836b0",
"type": "github"
},
"original": {

View File

@ -4,6 +4,7 @@
inputs = {
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.inputs.nixpkgs.follows = "nixpkgs";
agda.url = "github:agda/agda/v2.6.4.1";
@ -13,7 +14,7 @@
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 =
{
nix.registry.nixpkgs.flake = nixpkgs;
@ -28,6 +29,7 @@
useUserPackages = true;
users.rachel = import ./home/rachel.nix {
pkgs = pkgs;
unstable = nixpkgs-unstable.legacyPackages.${system};
agda = agda.packages.${system}.Agda;
cornelis = cornelis.packages.${system}.cornelis;
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;
fonts.sax2nf = import ./shared/sax2nf.nix { pkgs = nixpkgs.legacyPackages.x86_64-linux; };

View File

@ -1,4 +1,4 @@
{ pkgs, cornelis, cornelis-vim, agda, slippi-netplay, ... }:
{ pkgs, unstable, cornelis, cornelis-vim, agda, slippi-netplay, ... }:
let username = "rachel";
homeDir = "/home/${username}";
SAX2NF = import ../shared/sax2nf.nix { inherit pkgs; };
@ -85,6 +85,7 @@ in
whalebird
lean4
slippi-netplay
unstable.kicad
];
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('nvim-treesitter.configs').setup({
highlight = {
enable = true,
disable = { "c" },
disable = { "c", "lua" },
additional_vim_regex_highlighting = {'org'},
},
})
@ -194,6 +199,43 @@ in
require('lean').setup({
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', {
callback = function(args)
@ -201,6 +243,12 @@ in
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>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)
end,
})
@ -241,7 +289,6 @@ in
set signcolumn=no
set linebreak
let g:cornelis_use_global_binary = 1
let g:lightline = { 'colorscheme': 'gruvbox' }
set conceallevel=2 concealcursor=nc
colorscheme gruvbox
hi Normal guibg=NONE ctermbg=NONE
@ -278,32 +325,30 @@ in
endfunction
'';
plugins = let
bqn-vim = pkgs.vimUtils.buildVimPlugin {
name = "bqn-vim";
src = "${pkgs.fetchFromGitHub {
owner = "mlochbaum";
repo = "BQN";
rev = "f4b09b675386c789c8296c96874871916a3abdcf";
hash = "sha256-rvsageS5sYF9QvWuoRutjx5i0ngrfhGvIPRO834pwwM=";
}}/editors/vim";
};
bqn-nvim = pkgs.vimUtils.buildVimPlugin {
name = "bqn-nvim";
src = pkgs.fetchFromSourcehut {
owner = "~detegr";
repo = "nvim-bqn";
rev = "52d8b49f3ebc32d340e2e2b8dba1f6bbd1873b78";
hash = "sha256-5wITedTuUn9BKLqmQtPWeFNOa8dXfPIRpUvPSkNJcas=";
bqn-vim = pkgs.vimUtils.buildVimPlugin {
name = "bqn-vim";
src = "${pkgs.fetchFromGitHub {
owner = "mlochbaum";
repo = "BQN";
rev = "f4b09b675386c789c8296c96874871916a3abdcf";
hash = "sha256-rvsageS5sYF9QvWuoRutjx5i0ngrfhGvIPRO834pwwM=";
}}/editors/vim";
};
bqn-nvim = pkgs.vimUtils.buildVimPlugin {
name = "bqn-nvim";
src = pkgs.fetchFromSourcehut {
owner = "~detegr";
repo = "nvim-bqn";
rev = "52d8b49f3ebc32d340e2e2b8dba1f6bbd1873b78";
hash = "sha256-5wITedTuUn9BKLqmQtPWeFNOa8dXfPIRpUvPSkNJcas=";
};
};
};
in
with pkgs.vimPlugins; [
nvim-surround
comment-nvim
vimtex
gruvbox-nvim
lightline-vim
lightline-gruvbox-vim
tmux-nvim
cornelis-vim
nvim-lspconfig
@ -318,6 +363,7 @@ in
lean-nvim
bqn-vim
bqn-nvim
lualine-nvim
];
};