diff --git a/README.md b/README.md index 55ebead..a41905b 100644 --- a/README.md +++ b/README.md @@ -68,30 +68,3 @@ nix search nixpkgs nom_du_package 2. Package pas encore dans nixpkgs : chercher un flake upstream officiel (packages..degault), ajouter comme input et le référencer ### Machine ancienne Bien utiliser la version `laptop` qui prend la plupart des paquets par cachix (pour éviter la compilation en locale qui dépasse les capacités de la RAM) - -### Ensuite -#### Thunderbird -Générer clé GPG -`gpg --quick-generate-key "afoucaultc" default default never` -Afficher la clé -`gpg --list-secret-keys --keyid-format=long` -Initialiser avec pass (empreinte = dernière partie après sec) -`pass init ` -Fermer en partie les permissions sur .gnupg -```bash -chmod 700 ~/.gnupg -chmod 600 ~/.gnupg/* 2>/dev/null -find ~/.gnupg -type d -exec chmod 700 {} \; -find ~/.gnupg -type f -exec chmod 600 {} \; -``` -Lancer le proton mail bridge -```shell -protonmail-bridge --cli ->>> login #(puis se login) -``` -Ensuite normalement c'est bon, taper "info" pour récupérer le mot de passe -Puis `cert export` et le mettre dans le home par exemple. Ensuite : -`parametres -> vie privée et sécurité -> certificats -> gérer -> autorités -> importer` -Importer et cocher site web. - -Puis se connecter à son compte sur thunderbird : il faut faire `info` sur le protonmail bridge, pour récupérer son mot de passe, puis valider l'exception pour le certificat. diff --git a/dotfiles/hypr/conf/binding.lua b/dotfiles/hypr/conf/binding.lua index 8988690..185618a 100644 --- a/dotfiles/hypr/conf/binding.lua +++ b/dotfiles/hypr/conf/binding.lua @@ -7,6 +7,7 @@ hl.bind( hl.bind("CTRL + ALT + L", hl.dsp.exec_cmd(lockscreen)) -- launchers hl.bind("ALT + D", hl.dsp.exec_cmd(fileManager)) +hl.bind("ALT + D", hl.dsp.exec_cmd(fileManager2)) hl.bind("ALT + Q", hl.dsp.exec_cmd(terminal)) hl.bind("ALT + N", hl.dsp.exec_cmd("kitty -e nvim")) hl.bind("ALT + W", hl.dsp.exec_cmd(app_launcher)) diff --git a/dotfiles/hypr/conf/monitor.lua b/dotfiles/hypr/conf/monitor.lua index e7f8f3d..6366f35 100644 --- a/dotfiles/hypr/conf/monitor.lua +++ b/dotfiles/hypr/conf/monitor.lua @@ -1,13 +1,20 @@ hl.monitor({ output = monitorA, - mode = "1920x1080@120.00200", + mode = "preferred", position = "0x0", scale = "1", }) hl.monitor({ output = monitorB, - mode = "1920x1080@60", - position = "1920x0", + mode = "preferred", + position = "auto", + scale = "1", +}) + +hl.monitor({ + output = "", + mode = "preferred", + position = "auto", scale = "1", }) diff --git a/dotfiles/hypr/conf/startup.lua b/dotfiles/hypr/conf/startup.lua index 7bc7809..3898cb5 100644 --- a/dotfiles/hypr/conf/startup.lua +++ b/dotfiles/hypr/conf/startup.lua @@ -4,10 +4,11 @@ hl.on("hyprland.start", function() hl.exec_cmd("wl-paste --type image --watch cliphist store") hl.exec_cmd("systemctl --user start hyprpolkitagent") hl.exec_cmd("hyprctl setcursor Bibata-Modern-Ice 24") - hl.exec_cmd("noctalia-shell") + hl.exec_cmd("./~/nixos-config/dotfiles/hypr/unlockbridge.sh") + -- hl.exec_cmd("noctalia-shell") -- hl.exec_cmd("hyprpanel") -- hl.exec_cmd("hyprsunset") -- hl.exec_cmd("xsettingsd") -- hl.exec_cmd("nwg-look -a") - hl.exec_cmd("protonmail-bridge --noninteractive") + -- hl.exec_cmd("protonmail-bridge") end) diff --git a/dotfiles/hypr/conf/style.lua b/dotfiles/hypr/conf/style.lua index ed1786a..1220ce1 100644 --- a/dotfiles/hypr/conf/style.lua +++ b/dotfiles/hypr/conf/style.lua @@ -10,7 +10,7 @@ hl.config({ resize_on_border = true, hover_icon_on_border = true, allow_tearing = true, - layout = "dwindle", + layout = "master", snap = { enabled = true, }, @@ -20,8 +20,8 @@ hl.config({ rounding_power = 10, -- Change transparency of focused and unfocused windows - active_opacity = 1.0, - inactive_opacity = 1.0, + active_opacity = 0.9, + inactive_opacity = 0.9, shadow = { enabled = false, @@ -31,7 +31,7 @@ hl.config({ }, blur = { - enabled = false, + enabled = true, size = 3, passes = 1, vibrancy = 0.1696, @@ -47,9 +47,9 @@ hl.config({ preserve_split = true, }, master = { - new_status = "master", - orientation = "center", - mfact = "0.5", + new_status = "slave", + orientation = "left", + mfact = "0.7", }, scrolling = { fullscreen_on_one_column = true, diff --git a/dotfiles/hypr/conf/variables.lua b/dotfiles/hypr/conf/variables.lua index 8a78db6..e81fb47 100644 --- a/dotfiles/hypr/conf/variables.lua +++ b/dotfiles/hypr/conf/variables.lua @@ -1,5 +1,6 @@ terminal = "kitty" fileManager = "dolphin" +fileManager2 = "nautilus" menu = "wofi --show drun" home = "/home/afoucaultc/" lockscreen = "hyprlock" @@ -7,3 +8,4 @@ browser = "zen-beta" app_launcher = "~/.config/rofi/launchers/type-1/launcher.sh" monitorA = "eDP-1" monitorB = "HDMI-A-1" +monitorC = "DP-2" diff --git a/dotfiles/hypr/conf/windowrules.lua b/dotfiles/hypr/conf/windowrules.lua index 9e6ffa1..d13ddf8 100644 --- a/dotfiles/hypr/conf/windowrules.lua +++ b/dotfiles/hypr/conf/windowrules.lua @@ -5,3 +5,10 @@ hl.window_rule({ }, opacity = "0.9", }) +hl.window_rule({ + name = "opacity zathura", + match = { + class = "org.pwmt.zathura", + }, + opacity = 2, +}) diff --git a/dotfiles/hypr/hyprpaper.conf b/dotfiles/hypr/hyprpaper.conf index 9844be1..274be4d 100644 --- a/dotfiles/hypr/hyprpaper.conf +++ b/dotfiles/hypr/hyprpaper.conf @@ -1,11 +1,6 @@ wallpaper { -monitor = eDP-1 - path = /home/afoucaultc/Pictures/Wallpapers/wallpaper.jpg + monitor = + path = /home/afoucaultc/Pictures/Wallpapers/nix-wallpaper.png fit_mode = cover } -wallpaper { -monitor = HDMI-A-1 - path = /home/afoucaultc/Pictures/Wallpapers/wallpaper.jpg - fit_mode = cover -} splash = false diff --git a/dotfiles/hypr/unlockbridge.sh b/dotfiles/hypr/unlockbridge.sh new file mode 100755 index 0000000..15723c4 --- /dev/null +++ b/dotfiles/hypr/unlockbridge.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +protonmail-bridge --cli diff --git a/dotfiles/inkscape/dialogs-state-ex.ini b/dotfiles/inkscape/dialogs-state-ex.ini index d37f1dc..81dc38f 100644 --- a/dotfiles/inkscape/dialogs-state-ex.ini +++ b/dotfiles/inkscape/dialogs-state-ex.ini @@ -2,10 +2,10 @@ Count=1 [Window0Column0] -Notebook0Dialogs=ObjectProperties;FillStroke;Export;AlignDistribute;Text;Objects; +Notebook0Dialogs=ObjectProperties;FillStroke;Export;AlignDistribute;Text; Notebook0Height=921 -Notebook0ActiveTab=1 -ColumnWidth=540 +Notebook0ActiveTab=2 +ColumnWidth=633 NotebookCount=1 BeforeCanvas=false @@ -28,8 +28,10 @@ state6= dialogs6=FilterGallery; state7= dialogs7=FontCollections; -state8=[Windows]\nCount=1\n\n[Window0Column0]\nNotebook0Dialogs=Preferences;\nNotebookCount=1\n\n[Window0]\nColumnCount=1\nPosition=true\nx=0\ny=0\nwidth=1447\nheight=672\n -dialogs8=Preferences; -state9= -dialogs9=XMLEditor; -count=9 +state8=[Windows]\nCount=1\n\n[Window0Column0]\nNotebook0Dialogs=Objects;\nNotebookCount=1\n\n[Window0]\nColumnCount=1\nPosition=true\nx=0\ny=0\nwidth=360\nheight=520\n +dialogs8=Objects; +state9=[Windows]\nCount=1\n\n[Window0Column0]\nNotebook0Dialogs=Preferences;\nNotebookCount=1\n\n[Window0]\nColumnCount=1\nPosition=true\nx=0\ny=0\nwidth=1447\nheight=672\n +dialogs9=Preferences; +state10= +dialogs10=XMLEditor; +count=10 diff --git a/dotfiles/inkscape/extension-errors.log b/dotfiles/inkscape/extension-errors.log index 16dd96f..51a8772 100644 --- a/dotfiles/inkscape/extension-errors.log +++ b/dotfiles/inkscape/extension-errors.log @@ -3,16 +3,16 @@ L'extension « Optimized PNG » n'a pas été chargée, car une dépendance e emplacement: chemin chaîne: optipng -L'extension « Formula (typst) » n'a pas été chargée, car une dépendance est manquante. Dépendance: - type: executable - emplacement: chemin - chaîne: typst - L'extension « Export to PDF via Scribus » n'a pas été chargée, car une dépendance est manquante. Dépendance: type: executable emplacement: chemin chaîne: scribus +L'extension « Formula (typst) » n'a pas été chargée, car une dépendance est manquante. Dépendance: + type: executable + emplacement: chemin + chaîne: typst + L'extension « XFIG Input » n'a pas été chargée, car une dépendance est manquante. Dépendance: type: executable emplacement: chemin diff --git a/dotfiles/inkscape/preferences.xml b/dotfiles/inkscape/preferences.xml index df648ff..3ed87e1 100644 --- a/dotfiles/inkscape/preferences.xml +++ b/dotfiles/inkscape/preferences.xml @@ -643,6 +643,9 @@ + + style="text-orientation:auto;-inkscape-font-specification:'Sans, Normal';font-family:Sans;stroke-linejoin:bevel;stroke-width:0.62740157;font-size:8px;fill:#bb9af7"> l") + end, +}) diff --git a/dotfiles/nvim/lua/neoconf/lazy/conform.lua b/dotfiles/nvim/lua/neoconf/lazy/conform.lua deleted file mode 100644 index 28454ad..0000000 --- a/dotfiles/nvim/lua/neoconf/lazy/conform.lua +++ /dev/null @@ -1,44 +0,0 @@ -return { -- Autoformat - "stevearc/conform.nvim", - event = { "BufWritePre" }, - cmd = { "ConformInfo" }, - keys = { - { - "f", - function() - require("conform").format({ async = true, lsp_format = "fallback" }) - end, - mode = "", - desc = "[F]ormat buffer", - }, - }, - opts = { - notify_on_error = false, - format_on_save = function(bufnr) - -- Disable "format_on_save lsp_fallback" for languages that don't - -- have a well standardized coding style. You can add additional - -- languages here or re-enable it for the disabled ones. - local disable_filetypes = { c = true, cpp = true } - if disable_filetypes[vim.bo[bufnr].filetype] then - return nil - else - return { - timeout_ms = 500, - lsp_format = "fallback", - } - end - end, - formatters_by_ft = { - lua = { "stylua" }, - -- Conform can also run multiple formatters sequentially - python = { "isort", "black" }, - -- - -- You can use 'stop_after_first' to run the first available formatter from the list - -- javascript = { "prettierd", "prettier", stop_after_first = true }, - }, - format_on_save = { - timeout_ms = 2000, - lsp_fallback = true, - }, - }, -} diff --git a/dotfiles/nvim/lua/neoconf/lazy/csvview.lua b/dotfiles/nvim/lua/neoconf/lazy/csvview.lua deleted file mode 100644 index 359a225..0000000 --- a/dotfiles/nvim/lua/neoconf/lazy/csvview.lua +++ /dev/null @@ -1,24 +0,0 @@ -return { - { - "hat0uma/csvview.nvim", - ---@module "csvview" - ---@type CsvView.Options - opts = { - parser = { comments = { "#", "//" } }, - keymaps = { - -- Text objects for selecting fields - textobject_field_inner = { "if", mode = { "o", "x" } }, - textobject_field_outer = { "af", mode = { "o", "x" } }, - -- Excel-like navigation: - -- Use and to move horizontally between fields. - -- Use and to move vertically between rows and place the cursor at the end of the field. - -- Note: In terminals, you may need to enable CSI-u mode to use and . - jump_next_field_end = { "", mode = { "n", "v" } }, - jump_prev_field_end = { "", mode = { "n", "v" } }, - jump_next_row = { "", mode = { "n", "v" } }, - jump_prev_row = { "", mode = { "n", "v" } }, - }, - }, - cmd = { "CsvViewEnable", "CsvViewDisable", "CsvViewToggle" }, - }, -} diff --git a/dotfiles/nvim/lua/neoconf/lazy/lsp.lua b/dotfiles/nvim/lua/neoconf/lazy/lsp.lua new file mode 100644 index 0000000..daf62c5 --- /dev/null +++ b/dotfiles/nvim/lua/neoconf/lazy/lsp.lua @@ -0,0 +1,30 @@ +return { + "neovim/nvim-lspconfig", + config = function() + -- lua_ls avec tes settings perso + vim.lsp.config("lua_ls", { + settings = { + Lua = { + diagnostics = { globals = { "vim" } }, + workspace = { library = vim.api.nvim_get_runtime_file("", true) }, + }, + }, + }) + + -- active tous les serveurs ; leurs configs viennent des + -- fichiers lsp/*.lua fournis par nvim-lspconfig (chargé ici) + vim.lsp.enable({ + "lua_ls", + "texlab", + "marksman", + "pyright", + "bashls", + "clangd", + "cssls", + "jsonls", + "html", + "ts_ls", + "vimls", + }) + end, +} diff --git a/dotfiles/nvim/lua/neoconf/lazy/markdown-preview.lua b/dotfiles/nvim/lua/neoconf/lazy/markview.lua similarity index 78% rename from dotfiles/nvim/lua/neoconf/lazy/markdown-preview.lua rename to dotfiles/nvim/lua/neoconf/lazy/markview.lua index fc1289b..7b34301 100644 --- a/dotfiles/nvim/lua/neoconf/lazy/markdown-preview.lua +++ b/dotfiles/nvim/lua/neoconf/lazy/markview.lua @@ -2,10 +2,11 @@ return { "OXY2DEV/markview.nvim", lazy = false, - preview = { - icon_provider = "internal", - }, opts = { + preview = { + icon_provider = "internal", + }, + modes = { "n", "i" }, latex = { enable = true, diff --git a/dotfiles/nvim/lua/neoconf/lazy/mason.lua b/dotfiles/nvim/lua/neoconf/lazy/mason.lua index 54e30cb..2c07b19 100644 --- a/dotfiles/nvim/lua/neoconf/lazy/mason.lua +++ b/dotfiles/nvim/lua/neoconf/lazy/mason.lua @@ -1,34 +1,5 @@ return { - { - "mason-org/mason-lspconfig.nvim", - opts = { - ensure_installed = { - "clangd", - "texlab", - "lua_ls", - "vimls", - "marksman", - "pyright", - "bashls", - "cssls", - "jsonls", - "jdtls", - "ts_ls", - "html", - }, - }, - dependencies = { - { "mason-org/mason.nvim", opts = {} }, - "neovim/nvim-lspconfig", - }, - }, - { - "WhoIsSethDaniel/mason-tool-installer.nvim", - opts = { - ensure_installed = { - "black", - "isort", - }, - }, - }, + { "mason-org/mason.nvim", enabled = false }, + { "mason-org/mason-lspconfig.nvim", enabled = false }, + { "WhoIsSethDaniel/mason-tool-installer.nvim", enabled = false }, } diff --git a/dotfiles/nvim/lua/neoconf/lazy/plenary.lua b/dotfiles/nvim/lua/neoconf/lazy/plenary.lua deleted file mode 100644 index 85d7b39..0000000 --- a/dotfiles/nvim/lua/neoconf/lazy/plenary.lua +++ /dev/null @@ -1,5 +0,0 @@ -return { - { - "nvim-lua/plenary.nvim", - }, -} diff --git a/dotfiles/nvim/lua/neoconf/lazy/statusbar.lua b/dotfiles/nvim/lua/neoconf/lazy/statusbar.lua deleted file mode 100644 index 34dee16..0000000 --- a/dotfiles/nvim/lua/neoconf/lazy/statusbar.lua +++ /dev/null @@ -1,22 +0,0 @@ -return { - "nvim-lualine/lualine.nvim", - opts = { - options = { - section_separators = { left = "", right = "" }, - component_separators = { left = "", right = "" }, - }, - sections = { - lualine_a = { { - "mode", - fmt = function(str) - return str:upper() - end, - } }, - lualine_b = { "branch", "diff" }, - lualine_c = { "filename" }, - lualine_x = { "diagnostics" }, - lualine_y = { "filetype" }, - lualine_z = { "progress", "location" }, - }, - }, -} diff --git a/dotfiles/nvim/lua/neoconf/lazy/theme.lua b/dotfiles/nvim/lua/neoconf/lazy/theme.lua index 9eaae2b..fc9831a 100644 --- a/dotfiles/nvim/lua/neoconf/lazy/theme.lua +++ b/dotfiles/nvim/lua/neoconf/lazy/theme.lua @@ -1,8 +1,17 @@ return { + -- Configure le style de tokyonight { "folke/tokyonight.nvim", - lazy = false, - priority = 1000, - opts = {}, + opts = { + style = "night", -- "night" (dark), "storm", "moon", "day" + }, + }, + + -- Dit à LazyVim d'utiliser ce colorscheme + { + "LazyVim/LazyVim", + opts = { + colorscheme = "tokyonight-night", + }, }, } diff --git a/dotfiles/nvim/lua/neoconf/lazy/treesitter.lua b/dotfiles/nvim/lua/neoconf/lazy/treesitter.lua index 5cd566b..93ef313 100644 --- a/dotfiles/nvim/lua/neoconf/lazy/treesitter.lua +++ b/dotfiles/nvim/lua/neoconf/lazy/treesitter.lua @@ -1,39 +1,27 @@ return { - { -- Highlight, edit, and navigate code - "nvim-treesitter/nvim-treesitter", - build = ":TSUpdate", - opts = { - ensure_installed = { - "c++", - "matlab", - "regex", - "octave", - "yaml", - "python", - "latex", - "typst", - "zsh", - "markdown_inline", - "typst", - "comment", - "bash", - "c", - "html", - "lua", - "markdown", - "vim", - "vimdoc", - }, - auto_install = true, - highlight = { - enable = true, - additional_vim_regex_highlighting = false, - -- Some languages depend on vim's regex highlighting system (such as Ruby) for indent rules. - -- If you are experiencing weird indenting issues, add the language to - -- the list of additional_vim_regex_highlighting and disabled languages for indent. - additional_vim_regex_highlighting = { "ruby", "markdown" }, - }, - indent = { enable = true, disable = { "ruby, markdown" } }, - }, - }, + "nvim-treesitter/nvim-treesitter", + branch = "main", + build = ":TSUpdate", + config = function() + require("nvim-treesitter").setup({}) + require("nvim-treesitter").install({ + "cpp", + "matlab", + "regex", + "yaml", + "python", + "latex", + "typst", + "markdown_inline", + "comment", + "bash", + "c", + "html", + "lua", + "markdown", + "nix", + "vim", + "vimdoc", + }) + end, } diff --git a/dotfiles/nvim/lua/neoconf/lazy/tungsten.lua b/dotfiles/nvim/lua/neoconf/lazy/tungsten.lua deleted file mode 100644 index 9301f4e..0000000 --- a/dotfiles/nvim/lua/neoconf/lazy/tungsten.lua +++ /dev/null @@ -1,14 +0,0 @@ -return { - { - "B1gum/Tungsten", - dependencies = { - "nvim-lua/plenary.nvim", - "nvim-telescope/telescope.nvim", -- Optional - "folke/which-key.nvim", -- Optional - }, - build = "./scripts/install_python_deps.sh", -- This automates the packaging! - opts = { - backend = "python", - }, - }, -} diff --git a/dotfiles/nvim/lua/neoconf/lazy/vimtex.lua b/dotfiles/nvim/lua/neoconf/lazy/vimtex.lua index c236f9a..dad6ebb 100644 --- a/dotfiles/nvim/lua/neoconf/lazy/vimtex.lua +++ b/dotfiles/nvim/lua/neoconf/lazy/vimtex.lua @@ -10,6 +10,7 @@ return { vim.g.vimtex_format_enabled = 1 vim.g.vimtex_imaps_enabled = 0 vim.g.vimtex_complete_enabled = 0 + vim.g.vimtex_syntax_enabled = 0 vim.g.vimtex_compiler_latexmk = { aux_dir = vim.fn.expand("~/.aux-tex/"), } diff --git a/dotfiles/nvim/lua/neoconf/lazy_init.lua b/dotfiles/nvim/lua/neoconf/lazy_init.lua index 70ba28d..06ec4d0 100644 --- a/dotfiles/nvim/lua/neoconf/lazy_init.lua +++ b/dotfiles/nvim/lua/neoconf/lazy_init.lua @@ -1,6 +1,4 @@ -- (~/.config/nvim/lua/neoconf/lazy_init.lua) --- lazy is the package manager used for this nvim config --- local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not (vim.uv or vim.loop).fs_stat(lazypath) then vim.fn.system({ @@ -8,14 +6,20 @@ if not (vim.uv or vim.loop).fs_stat(lazypath) then "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", - "--branch=stable", -- latest stable release + "--branch=stable", lazypath, }) end - vim.opt.rtp:prepend(lazypath) +-- leaders AVANT lazy.setup (exigé par LazyVim) +vim.g.mapleader = " " +vim.g.maplocalleader = "," + require("lazy").setup({ - spec = "neoconf.lazy", + spec = { + { "LazyVim/LazyVim", import = "lazyvim.plugins" }, + { import = "neoconf.lazy" }, + }, change_detection = { notify = false }, }) diff --git a/dotfiles/nvim/lua/neoconf/lsp-config.lua b/dotfiles/nvim/lua/neoconf/lsp-config.lua index 0d0b677..9061272 100644 --- a/dotfiles/nvim/lua/neoconf/lsp-config.lua +++ b/dotfiles/nvim/lua/neoconf/lsp-config.lua @@ -1,15 +1,3 @@ -vim.lsp.config("lua_ls", { - settings = { - Lua = { - diagnostics = { globals = { "vim" } }, - workspace = { library = vim.api.nvim_get_runtime_file("", true) }, - }, - }, -}) - --- Enable servers (mason-lspconfig handles this automatically for installed ones) --- vim.lsp.enable("lua_ls") - -- diagnostic vim.diagnostic.config({ virtual_text = { diff --git a/dotfiles/nvim/lua/neoconf/plugins_settings.lua b/dotfiles/nvim/lua/neoconf/plugins_settings.lua index ee5dfb7..246beff 100644 --- a/dotfiles/nvim/lua/neoconf/plugins_settings.lua +++ b/dotfiles/nvim/lua/neoconf/plugins_settings.lua @@ -1,11 +1,4 @@ -- treesitter -vim.api.nvim_create_autocmd("FileType", { - pattern = { "" }, - callback = function() - vim.treesitter.start() - end, -}) - vim.wo[0][0].foldexpr = "v:lua.vim.treesitter.foldexpr()" vim.wo[0][0].foldmethod = "expr" diff --git a/dotfiles/nvim/lua/neoconf/remap.lua b/dotfiles/nvim/lua/neoconf/remap.lua index 2dd3919..e37463c 100644 --- a/dotfiles/nvim/lua/neoconf/remap.lua +++ b/dotfiles/nvim/lua/neoconf/remap.lua @@ -63,3 +63,13 @@ vim.api.nvim_create_user_command("OctaveRun", function() vim.cmd("write") vim.cmd('!octave -qf "%:p"') end, {}) + +-- set vimtex main to current file +local function vimtex_set_main() + vim.b.vimtex_main = vim.fn.expand("%:p") + vim.b.vimtex = nil + vim.fn["vimtex#init"]() + print("VimTeX main → " .. vim.b.vimtex_main) +end + +vim.keymap.set("n", "lm", vimtex_set_main, { desc = "VimTeX: set main to current file" }) diff --git a/dotfiles/nvim/lua/neoconf/settings.lua b/dotfiles/nvim/lua/neoconf/settings.lua index 63fe8e3..e9578b0 100644 --- a/dotfiles/nvim/lua/neoconf/settings.lua +++ b/dotfiles/nvim/lua/neoconf/settings.lua @@ -41,5 +41,6 @@ vim.o.confirm = true -- spell checking vim.opt.spell = true vim.opt.spelllang = "fr" --- theme -vim.cmd("colorscheme tokyonight-night") +-- wrap +vim.o.wrap = true +vim.o.linebreak = true diff --git a/flake.lock b/flake.lock index 79d4f1b..5987796 100644 --- a/flake.lock +++ b/flake.lock @@ -170,28 +170,6 @@ "type": "github" } }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "hyprland", - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, "gnome-shell": { "flake": false, "locked": { @@ -216,11 +194,11 @@ ] }, "locked": { - "lastModified": 1783222121, - "narHash": "sha256-E/ElL373TO8lQ2aMvYyzN+k4xkVaUGoRqoa8AtM71tI=", + "lastModified": 1783388784, + "narHash": "sha256-w+YU5vatysjLZIg1wOKSzo/RL9Z66eBQuIjVnBM/1Zg=", "owner": "nix-community", "repo": "home-manager", - "rev": "a1645f40777620c4bd2b6d854b290c2fc354a266", + "rev": "63d02d1c19f1c2b47a5bc7e55c620b6af7b218a6", "type": "github" }, "original": { @@ -304,11 +282,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1783198893, - "narHash": "sha256-UgdXpHgsg700hROak8RspFTfa/PDClxfyCEKs12nhxU=", + "lastModified": 1783354131, + "narHash": "sha256-u/55nD/fpx7RXpm+wGLs+JXN4/anmouGIh0oj6F8N4M=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "7a5214614b2f5bec4dbe1d0bddbc128c79cd2dfb", + "rev": "7046c0ff531661288ba5d672546144d6191d0f71", "type": "github" }, "original": { @@ -553,11 +531,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1782562157, - "narHash": "sha256-a7+T6QSeowynwZ1ZJJbP8T8ntAytvrui8kFGJmIZt2c=", + "lastModified": 1783370751, + "narHash": "sha256-E+3MIMvKuo9k+K+qLQ9YXzsBzkgHuyVLnsEbN2DFfuc=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "a9cf7546a938c737b079e738de73934a13de9784", + "rev": "662bd6e312d2c8b212e32cb377abaee190749320", "type": "github" }, "original": { @@ -568,11 +546,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1782467914, - "narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=", + "lastModified": 1783224372, + "narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", + "rev": "d407951447dcd00442e97087bf374aad70c04cea", "type": "github" }, "original": { @@ -639,18 +617,17 @@ "pre-commit-hooks": { "inputs": { "flake-compat": "flake-compat", - "gitignore": "gitignore", "nixpkgs": [ "hyprland", "nixpkgs" ] }, "locked": { - "lastModified": 1781733627, - "narHash": "sha256-U3yTuGBnmXvXoQI3qkpfEDsn9RovQPAjN7ndRco+3u0=", + "lastModified": 1783008725, + "narHash": "sha256-jGiy6+sxjNWXSjp25uoJuNfyH9zBK1PEDY0lVoL4ibQ=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "3bbec39bc90eadfa031e6f3b77272f3f60803e39", + "rev": "bca82caa46d5ec0f5d422c61fb1e30bc51313cbe", "type": "github" }, "original": { @@ -689,11 +666,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1783101802, - "narHash": "sha256-/Ti+wDco0f3C9s94RxyBKJyc0BklwYh0a/jFWKeHNYw=", + "lastModified": 1783358511, + "narHash": "sha256-/F85cBWvU8b2hpawuCog464065ZTJtdMgVPWwJ9yHjE=", "owner": "danth", "repo": "stylix", - "rev": "718c14e8ecba215a65ff955c187fadb9732ddd01", + "rev": "14814ef555d8148ab82eba5054e654cd9eae3a1f", "type": "github" }, "original": { @@ -824,11 +801,11 @@ ] }, "locked": { - "lastModified": 1782311043, - "narHash": "sha256-07zLc2M3/ax+JsjxGTft17/Joua41LHE9/9AC/F9zeU=", + "lastModified": 1782644412, + "narHash": "sha256-/iSa/bL1QQFLv+uJ9gI0N87J8gOeZXvca7EjoPGKE6w=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "882ad01e195ce201b07c618bbee44a0cad8b9e5a", + "rev": "c01c99fc278ec68c82e9865923088f043c7c1621", "type": "github" }, "original": { @@ -847,11 +824,11 @@ ] }, "locked": { - "lastModified": 1783190846, - "narHash": "sha256-UcdKHKcDxLxBon0HsOjDRRA7l1vVT28R83LkCIAlYYc=", + "lastModified": 1783371882, + "narHash": "sha256-Z0ESbxSeHR5p3CD1LLVKttX2vaPPnjNfZbqCJlQgcF8=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "0758bc86f7a55bbe002f0cede9e1a49e5a6e34d9", + "rev": "9357f05e60643b057038ff3f89c87d4a1d08cae1", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 3b7cdcb..789635c 100644 --- a/flake.nix +++ b/flake.nix @@ -18,15 +18,7 @@ inputs.nixpkgs.follows = "nixpkgs"; inputs.home-manager.follows = "home-manager"; }; - #noctalia = { - # url = "github:noctalia-dev/noctalia/legacy-v4"; - # inputs.nixpkgs.follows = "nixpkgs"; - #}; - #lavi = { - # url = "github:b0o/lavi"; - # inputs.nixpkgs.follows = "lavi"; - #}; - stylix = { + stylix = { url = "github:danth/stylix"; inputs.nixpkgs.follows = "nixpkgs"; }; diff --git a/home/afoucaultc/packages/btop.nix b/home/afoucaultc/packages/btop.nix index 7f264d3..49397b5 100644 --- a/home/afoucaultc/packages/btop.nix +++ b/home/afoucaultc/packages/btop.nix @@ -1,6 +1,6 @@ { pkgs, inputs, ... }: { - programs.btop = { - enable = true; - }; + programs.btop = { + enable = true; + }; } diff --git a/home/afoucaultc/packages/firefox.nix b/home/afoucaultc/packages/firefox.nix index c13664c..eb13e08 100644 --- a/home/afoucaultc/packages/firefox.nix +++ b/home/afoucaultc/packages/firefox.nix @@ -1,8 +1,8 @@ { pkgs, inputs, ... }: { - programs.firefox = { - enable = true; - profiles.default = { }; - }; - stylix.targets.firefox.profileNames = [ "default" ]; + programs.firefox = { + enable = true; + profiles.default = { }; + }; + stylix.targets.firefox.profileNames = [ "default" ]; } diff --git a/home/afoucaultc/packages/git.nix b/home/afoucaultc/packages/git.nix index d36637a..0fd54cd 100644 --- a/home/afoucaultc/packages/git.nix +++ b/home/afoucaultc/packages/git.nix @@ -1,10 +1,10 @@ { pkgs, inputs, ... }: { - programs.git = { - enable = true; - settings.user.name = "afoucaultc"; - settings.user.email = "antoine.fo.ca@proton.me"; - #userName = "afoucaultc"; - #userEmail = "antoine.fo.ca@proton.me"; - }; + programs.git = { + enable = true; + settings.user.name = "afoucaultc"; + settings.user.email = "antoine.fo.ca@proton.me"; + #userName = "afoucaultc"; + #userEmail = "antoine.fo.ca@proton.me"; + }; } diff --git a/home/afoucaultc/packages/neovim.nix b/home/afoucaultc/packages/neovim.nix index a6f8349..b3208e6 100644 --- a/home/afoucaultc/packages/neovim.nix +++ b/home/afoucaultc/packages/neovim.nix @@ -3,14 +3,39 @@ home.packages = with pkgs; [ neovim-unwrapped # outils dont lazy.nvim / les LSP ont besoin - ripgrep fd gcc gnumake nodejs unzip - lua-language-server stylua nil - (python3.withPackages (ps: with ps; [ pynvim ])) + ripgrep + fd + gcc + gnumake + nodejs + unzip + # formatters généraux + lua-language-server + stylua + nil + nixfmt-rfc-style # binaire "nixfmt" pour conform + # LSP serveurs (remplacent Mason) + marksman + pyright + # LSP que tu avais dans Mason — décommente selon besoin + clang-tools # clangd + bash-language-server # bashls + vscode-langservers-extracted # cssls, jsonls, html, eslint + typescript-language-server # ts_ls + vim-language-server # vimls + jdt-language-server # jdtls (Java) + # formatters / linters shell + python + shellcheck + shfmt + black + isort + # vimtex forward search + treesitter CLI + xdotool + tree-sitter + (python3.withPackages (ps: with ps; [ pynvim debugpy ])) ]; - home.sessionVariables.EDITOR = "nvim"; home.shellAliases = { vi = "nvim"; vim = "nvim"; }; - # ~/.config/nvim -> tes dotfiles, éditables en place xdg.configFile."nvim".source = config.lib.file.mkOutOfStoreSymlink diff --git a/home/afoucaultc/packages/other_apps.nix b/home/afoucaultc/packages/other_apps.nix index 7d24c3f..4ce847c 100644 --- a/home/afoucaultc/packages/other_apps.nix +++ b/home/afoucaultc/packages/other_apps.nix @@ -4,7 +4,7 @@ # --- Others hyfetch fastfetch - pkg-config + pkg-config # --- Bureautique --- libreoffice-fresh diff --git a/home/afoucaultc/packages/other_apps_light.nix b/home/afoucaultc/packages/other_apps_light.nix index 2361ee6..a1ebd74 100644 --- a/home/afoucaultc/packages/other_apps_light.nix +++ b/home/afoucaultc/packages/other_apps_light.nix @@ -1,54 +1,57 @@ { config, pkgs, ... }: { - home.packages = with pkgs; [ - # --- Infos système / divers --- - hyfetch # hyfetch - fastfetch # fastfetch - pkg-config + home.packages = with pkgs; [ + # --- Infos système / divers --- + hyfetch # hyfetch + fastfetch # fastfetch + pkg-config - # --- Bureautique --- - libreoffice-fresh # libreoffice-fresh - zotero # zotero (AUR) - pandoc # pandoc-cli + # --- Bureautique --- + libreoffice-fresh # libreoffice-fresh + zotero # zotero (AUR) + pandoc # pandoc-cli - # --- Communication / mail --- - # thunderbird # thunderbird - signal-desktop # signal-desktop - mattermost-desktop # mattermost-desktop - protonmail-bridge # protonmail-bridge (CLI/bridge) + # --- Communication / mail --- + # thunderbird # thunderbird + signal-desktop # signal-desktop + mattermost-desktop # mattermost-desktop + protonmail-bridge # protonmail-bridge (CLI/bridge) - # --- Multimédia (léger) --- - gimp # gimp - inkscape # inkscape - nomacs # nomacs (AUR) — visionneuse d'images légère - imagemagick # imagemagick - librsvg # librsvg + # --- Multimédia (léger) --- + gimp # gimp + inkscape # inkscape + nomacs # nomacs (AUR) — visionneuse d'images légère + imagemagick # imagemagick + librsvg # librsvg - # --- Maths / sciences --- - (octave.withPackages (ps: with ps; [ - image # octave-image - statistics # octave-statistics - symbolic # octave-symbolic - # dataframe # (octave-dataframe : indispo dans nixpkgs, à compiler via pkg si besoin) - ])) - gnuplot # gnuplot + # --- Maths / sciences --- + (octave.withPackages ( + ps: with ps; [ + image # octave-image + statistics # octave-statistics + symbolic # octave-symbolic + # dataframe # (octave-dataframe : indispo dans nixpkgs, à compiler via pkg si besoin) + ] + )) + gnuplot # gnuplot - # --- Fichiers / bureau --- - nautilus # nautilus (gestionnaire léger) - nwg-look # nwg-look - papirus-icon-theme # papirus-icon-theme - brightnessctl # brightnessctl - mako # mako (notifications légères, remplace noctalia) - cliphist # cliphist - grim slurp # captures (grimblast côté script si besoin) - mullvad-vpn # GUI Mullvad (le service est côté système) - ]; - programs.gpg.enable = true; + # --- Fichiers / bureau --- + nautilus # nautilus (gestionnaire léger) + nwg-look # nwg-look + papirus-icon-theme # papirus-icon-theme + brightnessctl # brightnessctl + mako # mako (notifications légères, remplace noctalia) + cliphist # cliphist + grim + slurp # captures (grimblast côté script si besoin) + mullvad-vpn # GUI Mullvad (le service est côté système) + ]; + programs.gpg.enable = true; - services.gpg-agent = { - enable = true; - pinentry.package = pkgs.pinentry-gnome3; - }; + services.gpg-agent = { + enable = true; + pinentry.package = pkgs.pinentry-curses; + }; - services.protonmail-bridge.enable = true; + services.protonmail-bridge.enable = true; } diff --git a/hosts/nixos-home/config/stylix.nix b/hosts/nixos-home/config/stylix.nix index 3187ba4..7eb89fc 100644 --- a/hosts/nixos-home/config/stylix.nix +++ b/hosts/nixos-home/config/stylix.nix @@ -2,8 +2,8 @@ { stylix = { enable = true; - polarity = "dark"; - base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml"; + targets.gtksourceview.enable = false; + base16Scheme = "${pkgs.base16-schemes}/share/themes/solarized-dark.yaml"; cursor = { package = pkgs.bibata-cursors; @@ -25,6 +25,6 @@ terminal = 12; }; }; - targets.gtksourceview.enable = false; + polarity = "dark"; }; } diff --git a/hosts/nixos-home/config/system_packages.nix b/hosts/nixos-home/config/system_packages.nix index 8379a59..a4d6072 100644 --- a/hosts/nixos-home/config/system_packages.nix +++ b/hosts/nixos-home/config/system_packages.nix @@ -18,7 +18,6 @@ pciutils usbutils inxi - gnupg ]; } diff --git a/hosts/nixos-laptop/config/stylix.nix b/hosts/nixos-laptop/config/stylix.nix index 7eb89fc..8c16d6d 100644 --- a/hosts/nixos-laptop/config/stylix.nix +++ b/hosts/nixos-laptop/config/stylix.nix @@ -3,7 +3,8 @@ stylix = { enable = true; targets.gtksourceview.enable = false; - base16Scheme = "${pkgs.base16-schemes}/share/themes/solarized-dark.yaml"; + base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml"; + polarity = "dark"; cursor = { package = pkgs.bibata-cursors; @@ -25,6 +26,5 @@ terminal = 12; }; }; - polarity = "dark"; }; }