Compare commits
15 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
7deb3fe8d9
|
|||
|
5e83ab9626
|
|||
| ea58f1d641 | |||
|
5b1b62dd32
|
|||
|
7972ab111c
|
|||
|
b6bea84f8b
|
|||
|
6913e58e0b
|
|||
|
6a8d644c94
|
|||
|
890d3381a5
|
|||
| 1cad2253b3 | |||
|
091e23932d
|
|||
|
c1bebc9df1
|
|||
|
7d79e9d8ae
|
|||
|
ebd650e854
|
|||
|
5becaf1588
|
18
.gitea/workflows/auto_update.yaml
Normal file
18
.gitea/workflows/auto_update.yaml
Normal file
@ -0,0 +1,18 @@
|
||||
name: update the nix flake lock automatically every week
|
||||
run-name: update
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 4 * * 1"
|
||||
|
||||
jobs:
|
||||
update:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: get repo
|
||||
uses: actions/checkout@v4.2.2
|
||||
|
||||
- name: install nix
|
||||
uses: https://github.com/cachix/install-nix-action@v31
|
||||
|
||||
- name: run the update
|
||||
run: nix flake update
|
||||
@ -3,7 +3,7 @@ run-name: iso building
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
- 'iso'
|
||||
|
||||
jobs:
|
||||
test:
|
||||
|
||||
16
Makefile
16
Makefile
@ -1,10 +1,15 @@
|
||||
HOST ?= $(file < /etc/nixosFlakeName)
|
||||
THREADS ?= $(shell nproc)
|
||||
FLAKE ?= .
|
||||
MODE ?= boot
|
||||
MODE ?= switch
|
||||
|
||||
|
||||
FLAGS = --impure --cores $(THREADS) -j $(THREADS)
|
||||
|
||||
ifdef OFFLINE
|
||||
FLAGS += --option binary-caches ''
|
||||
endif
|
||||
|
||||
all: os home
|
||||
|
||||
update:
|
||||
@ -13,6 +18,15 @@ update:
|
||||
|
||||
os:
|
||||
sudo nixos-rebuild $(MODE) $(FLAGS) --flake $(FLAKE)#$(HOST)
|
||||
|
||||
vm:
|
||||
sudo nixos-rebuild build-vm $(FLAGS) --flake $(FLAKE)#$(HOST)
|
||||
./result/bin/*
|
||||
rm ./result
|
||||
rm ./*.qcow2
|
||||
|
||||
hoem : home
|
||||
|
||||
home :
|
||||
home-manager switch $(FLAGS) --flake $(FLAKE)#$(HOST)
|
||||
|
||||
|
||||
42
flake.lock
generated
42
flake.lock
generated
@ -5,11 +5,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768575137,
|
||||
"narHash": "sha256-e0SsKnkSnq+UwZNS9ZyPJjTjabzq9TRc1hqeDnvOF1Q=",
|
||||
"lastModified": 1775994227,
|
||||
"narHash": "sha256-4VKeWtl9dEubrgpy9fSXkXbjBZlNXPNlQQM5l1ppHv4=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"rev": "48e67b4ad22072f1ae30b0ed8e1cb020cf06c611",
|
||||
"rev": "d0a9a21ed8e235956a768fc624242ec9a3e15575",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -26,11 +26,11 @@
|
||||
},
|
||||
"locked": {
|
||||
"dir": "pkgs/firefox-addons",
|
||||
"lastModified": 1768622624,
|
||||
"narHash": "sha256-Em6PP667PeXbEjidbV2LnNwmUYohbrSFvVPLYLUDHms=",
|
||||
"lastModified": 1776139376,
|
||||
"narHash": "sha256-rBykvCL5GRT6VmiY39XnxAR10cohBsLeAENP0+3JM/0=",
|
||||
"owner": "rycee",
|
||||
"repo": "nur-expressions",
|
||||
"rev": "8061c6d9199dc6cc0727d4241959eea28f2fa0a6",
|
||||
"rev": "ccfaa2303117e22752bda4e1a1bb07d17f38ea2d",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
@ -47,11 +47,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768598210,
|
||||
"narHash": "sha256-kkgA32s/f4jaa4UG+2f8C225Qvclxnqs76mf8zvTVPg=",
|
||||
"lastModified": 1776136611,
|
||||
"narHash": "sha256-b2pu3Pb28W0bJzQVP3OJHZC5+dgOOeqjlli2WVakKEU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "c47b2cc64a629f8e075de52e4742de688f930dc6",
|
||||
"rev": "8a423e444b17dde406097328604a64fc7429e34e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -62,11 +62,11 @@
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1768584846,
|
||||
"narHash": "sha256-IRPmIOV2tPwxbhP/I9M5AmwhTC0lMPtoPStC+8T6xl0=",
|
||||
"lastModified": 1775490113,
|
||||
"narHash": "sha256-2ZBhDNZZwYkRmefK5XLOusCJHnoeKkoN95hoSGgMxWM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "cce68f4a54fa4e3d633358364477f5cc1d782440",
|
||||
"rev": "c775c2772ba56e906cbeb4e0b2db19079ef11ff7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -78,11 +78,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1768305791,
|
||||
"narHash": "sha256-AIdl6WAn9aymeaH/NvBj0H9qM+XuAuYbGMZaP0zcXAQ=",
|
||||
"lastModified": 1775423009,
|
||||
"narHash": "sha256-vPKLpjhIVWdDrfiUM8atW6YkIggCEKdSAlJPzzhkQlw=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "1412caf7bf9e660f2f962917c14b1ea1c3bc695e",
|
||||
"rev": "68d8aa3d661f0e6bd5862291b5bb263b2a6595c9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -94,11 +94,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1768564909,
|
||||
"narHash": "sha256-Kell/SpJYVkHWMvnhqJz/8DqQg2b6PguxVWOuadbHCc=",
|
||||
"lastModified": 1775710090,
|
||||
"narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e4bae1bd10c9c57b2cf517953ab70060a828ee6f",
|
||||
"rev": "4c1018dae018162ec878d42fec712642d214fdfa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -125,11 +125,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768481291,
|
||||
"narHash": "sha256-NjKtkJraCZEnLHAJxLTI+BfdU//9coAz9p5TqveZwPU=",
|
||||
"lastModified": 1776119890,
|
||||
"narHash": "sha256-Zm6bxLNnEOYuS/SzrAGsYuXSwk3cbkRQZY0fJnk8a5M=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "e085e303dfcce21adcb5fec535d65aacb066f101",
|
||||
"rev": "d4971dd58c6627bfee52a1ad4237637c0a2fb0cd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
@ -90,7 +90,7 @@
|
||||
|
||||
|
||||
homeConfigurations = {
|
||||
vbox = homeConfig { flakeName = "vbox";};
|
||||
default = homeConfig { flakeName = "default";};
|
||||
ft = homeConfig { flakeName = "ft"; username = "tomoron"; homeDir = "/home/tomoron"; sops = false;};
|
||||
laptop = homeConfig { flakeName = "laptop"; };
|
||||
desktop = homeConfig { flakeName = "desktop"; };
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
{ lib, pkgs, ... }:
|
||||
{ lib, pkgs, config, ... }:
|
||||
{
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
@ -12,6 +12,7 @@
|
||||
};
|
||||
|
||||
gtk = {
|
||||
gtk4.theme = config.gtk.theme;
|
||||
enable = true;
|
||||
theme = { package = pkgs.flat-remix-gtk; name = "Flat-Remix-GTK-Grey-Darkest"; };
|
||||
font = { name = "Sans"; size = 11; };
|
||||
|
||||
11
homeConfigs/global/defaultApplications.nix
Normal file
11
homeConfigs/global/defaultApplications.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ ... }:
|
||||
{
|
||||
xdg.mimeApps.defaultApplications = {
|
||||
"application/pdf" = "firefox.desktop";
|
||||
"x-scheme-handler/https" = "firefox.desktop";
|
||||
"x-scheme-handler/http" = "firefox.desktop";
|
||||
|
||||
"inode/directory" = "yazi.desktop";
|
||||
"image/*" = "qimgv.desktop";
|
||||
};
|
||||
}
|
||||
@ -6,13 +6,5 @@
|
||||
};
|
||||
|
||||
home.sessionVariables.BROWSER = "yazi";
|
||||
programs.bash.bashrcExtra = ''
|
||||
function y() {
|
||||
local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" cwd
|
||||
yazi "$@" --cwd-file="$tmp"
|
||||
IFS= read -r -d "" cwd < "$tmp"
|
||||
[ -n "$cwd" ] && [ "$cwd" != "$PWD" ] && builtin cd -- "$cwd"
|
||||
rm -f -- "$tmp"
|
||||
}
|
||||
'';
|
||||
programs.yazi.shellWrapperName = "y";
|
||||
}
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
{ ... }:
|
||||
{ homeDir, ... }:
|
||||
{
|
||||
home.shell.enableBashIntegration = true;
|
||||
home.shellAliases = {
|
||||
@ -10,6 +10,13 @@
|
||||
clr = "clear";
|
||||
noidle = "systemctl --user stop hypridle";
|
||||
};
|
||||
|
||||
programs.bash.profileExtra = ''
|
||||
PATH=$PATH:${homeDir}/.cargo/bin
|
||||
'';
|
||||
|
||||
programs.direnv.enable = true;
|
||||
programs.direnv.enableBashIntegration = true;
|
||||
|
||||
programs.bash = {
|
||||
enable = true;
|
||||
|
||||
@ -4,21 +4,19 @@
|
||||
mods.x11.enable = true;
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
monitor = [
|
||||
"DP-1, 1280x1024@75.03Hz, -3200x0, auto"
|
||||
"HDMI-A-1, 1920x1080@60Hz, -1920x0, auto"
|
||||
"DP-2, 1920x1080@60Hz, -1920x0, auto"
|
||||
"HDMI-A-3, 1920x1080@60Hz, 0x0, auto"
|
||||
"DP-3, 1920x1080@60.00Hz, 1920x0, auto"
|
||||
"DP-4, 1280x1024@75.03Hz, 3840x0, auto"
|
||||
];
|
||||
workspace = [
|
||||
"4, monitor:DP-1"
|
||||
"3, monitor:HDMI-A-1"
|
||||
"3, monitor:DP-2"
|
||||
"1, monitor:HDMI-A-3, default:true"
|
||||
"2, monitor:DP-3"
|
||||
"5, monitor:DP-4"
|
||||
"4, monitor:DP-4"
|
||||
];
|
||||
env = [
|
||||
"AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card0"
|
||||
"AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card2"
|
||||
"LIBVA_DRIVER_NAME,nvidia"
|
||||
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
||||
];
|
||||
|
||||
@ -28,8 +28,8 @@
|
||||
", XF86Launch4, exec, pkill activate-linux"
|
||||
];
|
||||
bindl = [
|
||||
",switch:off:Lid Switch,exec,hyprctl keyword monitor \"eDP-1, 1920x1080@120, 0x0, 1\""
|
||||
",switch:on:Lid Switch,exec,hyprctl keyword monitor \"eDP-1, disable\""
|
||||
# ",switch:off:Lid Switch,exec,hyprctl keyword monitor \"eDP-1, 1920x1080@120, 0x0, 1\""
|
||||
# ",switch:on:Lid Switch,exec,hyprctl keyword monitor \"eDP-1, disable\""
|
||||
|
||||
];
|
||||
monitor= [
|
||||
@ -47,4 +47,5 @@
|
||||
impala
|
||||
];
|
||||
|
||||
services.mpris-proxy.enable = true;
|
||||
}
|
||||
|
||||
@ -11,6 +11,7 @@
|
||||
programs.git = {
|
||||
enable = true;
|
||||
lfs.enable = true;
|
||||
signing.format = "openpgp";
|
||||
settings = {
|
||||
user.email = "tomoron@student.42angouleme.fr";
|
||||
user.name = "tomoron";
|
||||
@ -19,8 +20,10 @@
|
||||
push.autoSetupRemote = true;
|
||||
rerere.enabled = true;
|
||||
help.autocorrect = 1;
|
||||
|
||||
user.signingkey = "251B4BD73683A8DF13D760A868BFAFE31DF313AD";
|
||||
commit.gpgsign = true;
|
||||
|
||||
alias = {
|
||||
fuck = "!f() { git reset --hard \"@{upstream}\" && git restore . && git clean -f .; };f";
|
||||
back = "reset HEAD~";
|
||||
|
||||
@ -46,7 +46,7 @@ in
|
||||
text = (lib.strings.concatStrings [''
|
||||
auto=true
|
||||
root=${config.mods.sync.homeFolder}
|
||||
root=ssh://tom@free.tmoron.fr:1880/${config.mods.sync.destFolder}
|
||||
root=ssh://tom@d.tmoron.fr:1880/${config.mods.sync.destFolder}
|
||||
''
|
||||
(lib.strings.concatMapStrings (x: "\npath=" + x) (( if config.mods.sync.defaultSynced then defPathLst else [] ) ++ config.mods.sync.syncedAdditions ))
|
||||
(if !(isNull config.mods.sync.customHostName) then "\nclientHostName=${config.mods.sync.customHostName}" else "")
|
||||
|
||||
@ -18,6 +18,7 @@
|
||||
home.packages = with pkgs; [
|
||||
clang-tools
|
||||
nixd
|
||||
rust-analyzer
|
||||
nodejs_24
|
||||
glsl_analyzer
|
||||
(pkgs.python3.withPackages (ps: with ps; [
|
||||
@ -32,22 +33,110 @@
|
||||
# vim.lsp.config('pylsp', {})
|
||||
# '';
|
||||
|
||||
programs.neovim.extraLuaConfig = ''
|
||||
local coq = require "coq"
|
||||
programs.neovim.initLua= ''
|
||||
local cmp = require'cmp'
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
vim.fn["vsnip#anonymous"](args.body) -- For `vsnip` users.
|
||||
end,
|
||||
},
|
||||
|
||||
window = {
|
||||
completion = cmp.config.window.bordered(),
|
||||
documentation = cmp.config.window.bordered(),
|
||||
},
|
||||
|
||||
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' },
|
||||
})
|
||||
})
|
||||
|
||||
-- To use git you need to install the plugin petertriho/cmp-git and uncomment lines below
|
||||
-- Set configuration for specific filetype.
|
||||
--[[ cmp.setup.filetype('gitcommit', {
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'git' },
|
||||
}, {
|
||||
{ name = 'buffer' },
|
||||
})
|
||||
})
|
||||
require("cmp_git").setup() ]]--
|
||||
|
||||
-- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore).
|
||||
cmp.setup.cmdline({ '/', '?' }, {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = {
|
||||
{ name = 'buffer' }
|
||||
}
|
||||
})
|
||||
|
||||
cmp.setup.cmdline(':', {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'path' }
|
||||
}, {
|
||||
{ name = 'cmdline' }
|
||||
}),
|
||||
matching = { disallow_symbol_nonprefix_matching = false }
|
||||
})
|
||||
|
||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
|
||||
vim.lsp.config('clangd', coq.lsp_ensure_capabilities({}))
|
||||
vim.lsp.enable('clangd')
|
||||
vim.lsp.config('clangd', {
|
||||
capabilities = capabilities
|
||||
})
|
||||
|
||||
vim.lsp.config('nixd', coq.lsp_ensure_capabilities({}))
|
||||
vim.lsp.enable('nixd')
|
||||
vim.lsp.config('nixd', {
|
||||
capabilities = capabilities
|
||||
})
|
||||
|
||||
vim.lsp.config('glsl_analyzer', coq.lsp_ensure_capabilities({}))
|
||||
vim.lsp.enable('glsl_analyzer')
|
||||
vim.lsp.config('glsl_analyzer', {
|
||||
capabilities = capabilities
|
||||
})
|
||||
|
||||
vim.lsp.config('pylsp', coq.lsp_ensure_capabilities({
|
||||
cmd = {"pylsp", "-vvv", "--log-file", "/tmp/lsp.log"}
|
||||
}))
|
||||
vim.lsp.enable('pylsp')
|
||||
vim.lsp.config('pylsp', {
|
||||
capabilities = capabilities
|
||||
})
|
||||
|
||||
vim.lsp.enable('rust_analyzer')
|
||||
vim.lsp.config('rust_analyzer', {
|
||||
capabilities = capabilities,
|
||||
settings = {
|
||||
["rust-analyzer"] = {
|
||||
cargo = {
|
||||
features = "all"
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
vim.diagnostic.config({
|
||||
virtual_lines = {
|
||||
current_line = true
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
'';
|
||||
|
||||
@ -56,7 +145,6 @@
|
||||
set ai
|
||||
autocmd BufWinLeave *.* mkview
|
||||
autocmd BufWinEnter *.* silent! loadview
|
||||
autocmd VimEnter * COQnow --shut-up
|
||||
set tabstop=4
|
||||
set scrolloff=10
|
||||
set smartindent
|
||||
@ -92,9 +180,16 @@
|
||||
Plug 'lambdalisue/fern-renderer-nerdfont.vim'
|
||||
Plug 'lambdalisue/fern-git-status.vim'
|
||||
Plug 'lambdalisue/fern.vim'
|
||||
Plug 'ms-jpq/coq_nvim', { 'branch': 'coq' }
|
||||
Plug 'ms-jpq/coq.artifacts', { 'branch': 'artifacts' }
|
||||
Plug 'ms-jpq/coq.thirdparty', { 'branch': '3p' }
|
||||
Plug 'hrsh7th/nvim-cmp'
|
||||
Plug 'ThePrimeagen/99'
|
||||
Plug 'hrsh7th/cmp-nvim-lsp'
|
||||
Plug 'hrsh7th/cmp-buffer'
|
||||
Plug 'hrsh7th/cmp-path'
|
||||
Plug 'hrsh7th/cmp-cmdline'
|
||||
Plug 'hrsh7th/nvim-cmp'
|
||||
|
||||
Plug 'hrsh7th/cmp-vsnip'
|
||||
Plug 'hrsh7th/vim-vsnip'
|
||||
call plug#end()
|
||||
|
||||
colorscheme catppuccin-mocha
|
||||
|
||||
@ -96,12 +96,12 @@
|
||||
"$mainMod, o, exec, playerctl play-pause"
|
||||
];
|
||||
|
||||
windowrulev2 = [
|
||||
#ignore maximize requests
|
||||
"suppressevent maximize, class:.*"
|
||||
#fix dragging issues with xwayland
|
||||
"nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0"
|
||||
];
|
||||
# windowrulev2 = [
|
||||
# #ignore maximize requests
|
||||
# "suppressevent maximize, class:.*"
|
||||
# #fix dragging issues with xwayland
|
||||
# "nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0"
|
||||
# ];
|
||||
|
||||
input = {
|
||||
kb_layout = "fr";
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/02/09 22:01:56 by tomoron #+# #+# #
|
||||
# Updated: 2026/02/06 23:43:40 by tomoron ### ########.fr #
|
||||
# Updated: 2026/03/27 12:00:06 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -19,7 +19,7 @@
|
||||
htop
|
||||
gnumake
|
||||
git
|
||||
neofetch
|
||||
fastfetch
|
||||
clang
|
||||
ninja
|
||||
gdb
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/09/05 23:37:58 by tomoron #+# #+# #
|
||||
# Updated: 2025/09/06 00:56:38 by tomoron ### ########.fr #
|
||||
# Updated: 2026/04/03 11:46:09 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -22,6 +22,27 @@
|
||||
timeout = 1;
|
||||
};
|
||||
|
||||
boot.consoleLogLevel = 3;
|
||||
boot.initrd.verbose = false;
|
||||
boot.kernelParams = [
|
||||
"quiet"
|
||||
"udev.log_level=3"
|
||||
"systemd.show_status=auto"
|
||||
];
|
||||
|
||||
catppuccin.plymouth.enable = false;
|
||||
|
||||
boot.plymouth = {
|
||||
enable = true;
|
||||
theme = "nixos-bgrt";
|
||||
themePackages = with pkgs; [ #(adi1090x-plymouth-themes.override {
|
||||
# selected_themes = [ "black_hud" "circle_hud" "square_hud" "spinner_alt" ];
|
||||
# })
|
||||
# catppuccin-plymouth
|
||||
nixos-bgrt-plymouth
|
||||
];
|
||||
};
|
||||
|
||||
services.journald.extraConfig = ''
|
||||
SystemMaxUse=100M
|
||||
SystemMaxFileSize=50M
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/12/30 20:37:07 by tomoron #+# #+# #
|
||||
# Updated: 2026/02/05 12:47:23 by tomoron ### ########.fr #
|
||||
# Updated: 2026/02/21 13:54:43 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -15,7 +15,6 @@
|
||||
{
|
||||
programs.nix-ld.enable = true;
|
||||
programs.nix-ld.libraries = with pkgs; [
|
||||
# List by default
|
||||
zlib
|
||||
zstd
|
||||
stdenv.cc.cc
|
||||
@ -31,28 +30,24 @@
|
||||
xz
|
||||
systemd
|
||||
|
||||
# My own additions
|
||||
xorg.libXcomposite
|
||||
xorg.libXtst
|
||||
xorg.libXrandr
|
||||
xorg.libXext
|
||||
xorg.libX11
|
||||
xorg.libXfixes
|
||||
libxcomposite
|
||||
libxtst
|
||||
libxrandr
|
||||
libxext
|
||||
libx11
|
||||
libxfixes
|
||||
libGL
|
||||
libva
|
||||
pipewire
|
||||
xorg.libxcb
|
||||
xorg.libXdamage
|
||||
xorg.libxshmfence
|
||||
xorg.libXxf86vm
|
||||
libxcb
|
||||
libxdamage
|
||||
libxshmfence
|
||||
libxxf86vm
|
||||
libelf
|
||||
|
||||
# Required
|
||||
glib
|
||||
gtk2
|
||||
|
||||
# Inspired by steam
|
||||
# https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/st/steam/package.nix#L36-L85
|
||||
networkmanager
|
||||
vulkan-loader
|
||||
libgbm
|
||||
@ -61,16 +56,14 @@
|
||||
coreutils
|
||||
pciutils
|
||||
zenity
|
||||
# glibc_multi.bin # Seems to cause issue in ARM
|
||||
|
||||
# # Without these it silently fails
|
||||
xorg.libXinerama
|
||||
xorg.libXcursor
|
||||
xorg.libXrender
|
||||
xorg.libXScrnSaver
|
||||
xorg.libXi
|
||||
xorg.libSM
|
||||
xorg.libICE
|
||||
libxinerama
|
||||
libxcursor
|
||||
libxrender
|
||||
libxscrnsaver
|
||||
libxi
|
||||
libsm
|
||||
libice
|
||||
gnome2.GConf
|
||||
nspr
|
||||
nss
|
||||
@ -80,7 +73,6 @@
|
||||
libusb1
|
||||
dbus-glib
|
||||
ffmpeg
|
||||
# Only libraries are needed from those two
|
||||
libudev0-shim
|
||||
|
||||
# needed to run unity
|
||||
@ -88,16 +80,9 @@
|
||||
icu
|
||||
libnotify
|
||||
gsettings-desktop-schemas
|
||||
# https://github.com/NixOS/nixpkgs/issues/72282
|
||||
# https://github.com/NixOS/nixpkgs/blob/2e87260fafdd3d18aa1719246fd704b35e55b0f2/pkgs/applications/misc/joplin-desktop/default.nix#L16
|
||||
# log in /home/leo/.config/unity3d/Editor.log
|
||||
# it will segfault when opening files if you don’t do:
|
||||
# export XDG_DATA_DIRS=/nix/store/0nfsywbk0qml4faa7sk3sdfmbd85b7ra-gsettings-desktop-schemas-43.0/share/gsettings-schemas/gsettings-desktop-schemas-43.0:/nix/store/rkscn1raa3x850zq7jp9q3j5ghcf6zi2-gtk+3-3.24.35/share/gsettings-schemas/gtk+3-3.24.35/:$XDG_DATA_DIRS
|
||||
# other issue: (Unity:377230): GLib-GIO-CRITICAL **: 21:09:04.706: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed
|
||||
|
||||
# Verified games requirements
|
||||
xorg.libXt
|
||||
xorg.libXmu
|
||||
libxt
|
||||
libxmu
|
||||
libogg
|
||||
libvorbis
|
||||
SDL
|
||||
@ -131,10 +116,9 @@
|
||||
libgcrypt
|
||||
libvpx
|
||||
librsvg
|
||||
xorg.libXft
|
||||
libxft
|
||||
libvdpau
|
||||
# ...
|
||||
# Some more libraries that I needed to run programs
|
||||
|
||||
pango
|
||||
cairo
|
||||
atk
|
||||
@ -150,7 +134,6 @@
|
||||
libxcrypt-legacy # For natron
|
||||
libGLU # For natron
|
||||
|
||||
# Appimages need fuse, e.g. https://musescore.org/fr/download/musescore-x86_64.AppImage
|
||||
fuse
|
||||
e2fsprogs
|
||||
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/02/09 01:43:46 by tomoron #+# #+# #
|
||||
# Updated: 2025/09/06 00:51:46 by tomoron ### ########.fr #
|
||||
# Updated: 2026/04/03 22:08:01 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -32,4 +32,6 @@
|
||||
|
||||
hardware.logitech.wireless.enable = true;
|
||||
hardware.logitech.wireless.enableGraphical = true;
|
||||
|
||||
services.fstrim.enable = true; # trims all the ssds on the machine every week
|
||||
}
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/09/06 00:57:04 by tomoron #+# #+# #
|
||||
# Updated: 2025/12/23 18:41:48 by tomoron ### ########.fr #
|
||||
# Updated: 2026/03/30 13:46:43 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -44,4 +44,8 @@
|
||||
|
||||
services.openssh.enable = true;
|
||||
programs.droidcam.enable = true;
|
||||
|
||||
boot.kernelPackages = pkgs.linuxPackages;
|
||||
boot.supportedFilesystems = [ "zfs" ];
|
||||
networking.hostId = "98e475dd";
|
||||
}
|
||||
|
||||
@ -6,16 +6,16 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/09/06 00:56:57 by tomoron #+# #+# #
|
||||
# Updated: 2026/02/03 14:40:35 by tomoron ### ########.fr #
|
||||
# Updated: 2026/04/10 20:07:49 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
{ lib, config, pkgs, ... }:
|
||||
|
||||
{
|
||||
boot.initrd.luks.yubikeySupport = true;
|
||||
services.udev.packages = [ pkgs.yubikey-personalization ];
|
||||
boot.initrd.kernelModules = [ "vfat" "nls_cp437" "nls_iso8859-1" "usbhid" ];
|
||||
boot.initrd.luks.yubikeySupport = true;
|
||||
boot.initrd.luks.devices.cryptroot = {
|
||||
device = "/dev/disk/by-uuid/a4593b01-069d-4a5d-a550-74a762b89b3f";
|
||||
allowDiscards = true;
|
||||
@ -35,7 +35,6 @@
|
||||
programs.droidcam.enable = true;
|
||||
|
||||
mods.displayManager.enable = true;
|
||||
mods.virtualHost.enable = true;
|
||||
mods.yubikey.pam.enable = true;
|
||||
networking.firewall.enable = false;
|
||||
|
||||
@ -47,6 +46,8 @@
|
||||
networking.networkmanager.enable = false;
|
||||
|
||||
specialisation.vfio_ready.configuration = {
|
||||
|
||||
mods.virtualHost.enable = true;
|
||||
boot.extraModulePackages = with config.boot.kernelPackages; [ kvmfr ];
|
||||
boot.kernelModules = [ "kvmfr" ];
|
||||
boot.extraModprobeConfig = ''
|
||||
@ -66,6 +67,7 @@
|
||||
'';
|
||||
environment.systemPackages = with pkgs; [ looking-glass-client ];
|
||||
};
|
||||
|
||||
services.udev.extraRules = ''
|
||||
SUBSYSTEM=="usb", ATTRS{idVendor}=="2e3c", ATTRS{idProduct}=="df11", TAG+="uaccess"
|
||||
SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", TAG+="uaccess"
|
||||
@ -78,6 +80,8 @@
|
||||
|
||||
programs.noisetorch.enable = true;
|
||||
|
||||
services.postgresql.enable = true;
|
||||
|
||||
hardware.bluetooth.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
@ -91,12 +95,11 @@
|
||||
enable = true;
|
||||
powahCommandAdditions = [
|
||||
"supergfxctl -m Hybrid"
|
||||
"if asusctl profile -p | grep Balanced ; then asusctl profile -P Performance; fi"
|
||||
"if asusctl profile -p | grep Quiet ; then asusctl profile -P Balanced; fi"
|
||||
"if [ $# -gt 0 ] && [[ \"$1\" == \"moar\" ]] ; then asusctl profile set Performance; fi"
|
||||
];
|
||||
tagueuleCommandAdditions = [
|
||||
"echo \"can't safely turn off the GPU\""
|
||||
"asusctl profile -P Quiet"
|
||||
"asusctl profile set Quiet"
|
||||
];
|
||||
cpuMaxFreq = 4465261;
|
||||
|
||||
@ -105,7 +108,7 @@
|
||||
|
||||
services.asusd = {
|
||||
enable = true;
|
||||
enableUserService = true;
|
||||
# enableUserService = true;
|
||||
};
|
||||
|
||||
services.supergfxd.enable = true;
|
||||
@ -130,16 +133,28 @@
|
||||
|
||||
services.usbmuxd.enable = true; #sometimes hangs when shutting down
|
||||
|
||||
# boot.plymouth = {
|
||||
# enable = true;
|
||||
# theme = "ycontre-glow";
|
||||
# themePackages = [
|
||||
# inputs.plymouth-theme-ycontre-glow.defaultPackage.x86_64-linux
|
||||
# ];
|
||||
# };
|
||||
|
||||
services.flatpak.enable = true;
|
||||
services.avahi.enable = true;
|
||||
services.pipewire = {
|
||||
raopOpenFirewall = true;
|
||||
|
||||
extraConfig.pipewire = {
|
||||
"10-airplay"."context.modules" = [
|
||||
{ name = "libpipewire-module-raop-discover"; }
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
services.k3s.enable = true;
|
||||
services.pipewire.wireplumber.extraConfig."10-bluez" = {
|
||||
"monitor.bluez.properties" = {
|
||||
"bluez5.enable-sbc-xq" = true;
|
||||
"bluez5.enable-msbc" = true;
|
||||
"bluez5.enable-hw-volume" = true;
|
||||
};
|
||||
};
|
||||
hardware.bluetooth.settings = {
|
||||
General = {
|
||||
Enable = "Source,Sink,Media,Socket";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/09/06 00:57:09 by tomoron #+# #+# #
|
||||
# Updated: 2026/01/27 18:56:23 by tomoron ### ########.fr #
|
||||
# Updated: 2026/04/09 13:21:07 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -33,11 +33,15 @@ in
|
||||
];
|
||||
|
||||
|
||||
|
||||
|
||||
services.openssh.enable = true;
|
||||
services.openssh.settings.PasswordAuthentication = false;
|
||||
services.openssh.ports = [ 1880 ];
|
||||
|
||||
sops.secrets."cloudflared/token" = {};
|
||||
sops.secrets."zfs/p_user" = {};
|
||||
sops.secrets."zfs/p_token" = {};
|
||||
systemd.services.cloudflared = {
|
||||
after = [
|
||||
"network.target"
|
||||
@ -61,6 +65,24 @@ in
|
||||
|
||||
boot.supportedFilesystems = [ "zfs" ];
|
||||
|
||||
services.zfs = {
|
||||
autoScrub.enable = true;
|
||||
zed.settings = {
|
||||
ZED_NOTIFY_VERBOSE=1;
|
||||
ZED_PUSHOVER_TOKEN="$(cat ${config.sops.secrets."zfs/p_token".path})";
|
||||
ZED_PUSHOVER_USER="$(cat ${config.sops.secrets."zfs/p_user".path})";
|
||||
};
|
||||
};
|
||||
|
||||
services.sanoid.enable = true;
|
||||
services.sanoid.datasets."raid_vol" = {
|
||||
daily = 31;
|
||||
hourly = 24;
|
||||
monthly = 12;
|
||||
autosnap = true;
|
||||
autoprune = true;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
zfs
|
||||
screen #can be user (and global)
|
||||
|
||||
@ -3,6 +3,9 @@ nextcloud_fuse:
|
||||
password: ENC[AES256_GCM,data:Rlyc9wO3rXJ97AAMzM+vJclEJ+eaSPtHkitqRL0=,iv:yuS2Tyo2HZGVb9tbWmmgOEwkyzLhlvq8iZ2YjGD0u9E=,tag:pf8n4pTvseh1pd12w8w4tw==,type:str]
|
||||
cloudflared:
|
||||
token: ENC[AES256_GCM,data:LS1VIwbbVsJxZ90p+kK4xJhzrBRJ51XL2j8mGLDVj5JjYJKXKBDIXtlb0x8A9WDIVyBuLBkE9pfSfQXtvfvZdUeyXswVJFUNW0mX3yC/WaeNQdPYy7UgyGjorqk31aNJ6b9XqtdfV0++qPvXQDvwn44UY0juuiIJ5KcLZEskRcqVTilG5WYi/nInhGbSqtzniRNvrbsynIq0CVQDhi3haCHNpCJMQUIyXM/g6Xsc9b++GYlHjgrtHQ==,iv:DbvJfbMblgr6+dYBJqDSzECKK90Nkq8Eci5dC8fMIXQ=,tag:bjAs8p5dAkh2Adon0JDNqg==,type:str]
|
||||
zfs:
|
||||
p_user: ENC[AES256_GCM,data:5RZ14HcDfSrOGm6VFNQGSlH4bcJ+DtMk4NkrXXTo,iv:iTt//ip7ZK5tuQky1DPmzgexV+chhHG9rHQNMYyJZJs=,tag:cmwA0KHsqBG7f5WI7Fwclg==,type:str]
|
||||
p_token: ENC[AES256_GCM,data:VFYSHIqeKFbPaCqO08UrgqtsmCULcXlGjGco03BT,iv:aEaOH+jSp6A2Z3V+vwAYuhS26oTZ/CA+/EKg+/ZktDQ=,tag:UH1LG3aS/plWnaLdpcUcuA==,type:str]
|
||||
sops:
|
||||
age:
|
||||
- recipient: age1sjzkhwr8ycdsmuj8xg8y4v2hcpuq9vethnhytxtwzeury692dsxqf80fwv
|
||||
@ -14,7 +17,7 @@ sops:
|
||||
clZaazZQdW5wYUhUNmM0QW91K0NLOTAKB6z7cKg54QmJo0U03u6RQkSCfJOAdeJa
|
||||
DiyPYjm02BNe8YPFbBFRpyT7G++j3h0yG+/Nr2zcQFyMMEpMv5QJvg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-12-16T16:16:27Z"
|
||||
mac: ENC[AES256_GCM,data:2Ju1exddd4qcru1UjXKXUBjugUWT9D2HJjKV03JwMCL4Wssb/H6DNNRJcmD0oXqA9DnEp5NpElhwa93LcogcNVsXL+sKGzQpP5m+/vDVfl2NcwdLyBVIvTQ0dASee/JMwBLcgcYBZuvL00Twv07/ImdvYROIs/fQUSualc6Sgcw=,iv:XsJ1MYLwLuFPLYGJoa/RsfAqs88AQwuH+3ItWc681LU=,tag:8pNSPKnv0yLoNrmxb9l2Xg==,type:str]
|
||||
lastmodified: "2026-04-09T09:44:50Z"
|
||||
mac: ENC[AES256_GCM,data:1TWoO9xeAyfT5kheTDLBqqeqpSpc5begsXN/FIjwK01xJJrgFfQg+93OZcH989z6WGumvjH+JuY98y9xDfur6mc2sopbLX8/Qbnfl4D2Aq1ya42b5/2cHlFhGI8bBOiXr6qA2sixQ/E1MIklTMxN+Z1fKbT5Mp7cfoPlG8YXhbI=,iv:DB1opS2DEr/WM1yK5SJf8NtoApmzJq5mgMoMlOoLli4=,tag:ZhiLFFCZF+fdfai0djwjYw==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.11.0
|
||||
|
||||
Reference in New Issue
Block a user