diff --git a/dotfiles/nvim.lazy/.gitignore b/dotfiles/nvim.lazy/.gitignore new file mode 100644 index 0000000..cc5457a --- /dev/null +++ b/dotfiles/nvim.lazy/.gitignore @@ -0,0 +1,8 @@ +tt.* +.tests +doc/tags +debug +.repro +foo.* +*.log +data diff --git a/dotfiles/nvim.lazy/.neoconf.json b/dotfiles/nvim.lazy/.neoconf.json new file mode 100644 index 0000000..7c48087 --- /dev/null +++ b/dotfiles/nvim.lazy/.neoconf.json @@ -0,0 +1,15 @@ +{ + "neodev": { + "library": { + "enabled": true, + "plugins": true + } + }, + "neoconf": { + "plugins": { + "lua_ls": { + "enabled": true + } + } + } +} diff --git a/dotfiles/nvim.lazy/LICENSE b/dotfiles/nvim.lazy/LICENSE new file mode 100644 index 0000000..261eeb9 --- /dev/null +++ b/dotfiles/nvim.lazy/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/dotfiles/nvim.lazy/README.md b/dotfiles/nvim.lazy/README.md new file mode 100644 index 0000000..185280b --- /dev/null +++ b/dotfiles/nvim.lazy/README.md @@ -0,0 +1,4 @@ +# 💤 LazyVim + +A starter template for [LazyVim](https://github.com/LazyVim/LazyVim). +Refer to the [documentation](https://lazyvim.github.io/installation) to get started. diff --git a/dotfiles/nvim.lazy/init.lua b/dotfiles/nvim.lazy/init.lua new file mode 100644 index 0000000..2514f9e --- /dev/null +++ b/dotfiles/nvim.lazy/init.lua @@ -0,0 +1,2 @@ +-- bootstrap lazy.nvim, LazyVim and your plugins +require("config.lazy") diff --git a/dotfiles/nvim.lazy/lua/config/autocmds.lua b/dotfiles/nvim.lazy/lua/config/autocmds.lua new file mode 100644 index 0000000..27e9e06 --- /dev/null +++ b/dotfiles/nvim.lazy/lua/config/autocmds.lua @@ -0,0 +1,3 @@ +-- Autocmds are automatically loaded on the VeryLazy event +-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua +-- Add any additional autocmds here diff --git a/dotfiles/nvim.lazy/lua/config/keymaps.lua b/dotfiles/nvim.lazy/lua/config/keymaps.lua new file mode 100644 index 0000000..7238ea3 --- /dev/null +++ b/dotfiles/nvim.lazy/lua/config/keymaps.lua @@ -0,0 +1,43 @@ +-- Keymaps are automatically loaded on the VeryLazy event +-- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua +-- Add any additional keymaps here +local map = vim.keymap.set +map({ "i", "x", "n", "s" }, "", function() + require("harpoon"):list():select(1) +end, { desc = "Harpoon file 1" }) + +map({ "i", "x", "n", "s" }, "", function() + require("harpoon"):list():select(2) +end, { desc = "Harpoon file 2" }) + +map({ "i", "x", "n", "s" }, "", function() + require("harpoon"):list():select(3) +end, { desc = "Harpoon file 3" }) + +map({ "i", "x", "n", "s" }, "", function() + require("harpoon"):list():select(4) +end, { desc = "Harpoon file 4" }) + +map({ "i", "x", "n", "s" }, "", function() + require("harpoon"):list():select(5) +end, { desc = "Harpoon file 5" }) + +map({ "i", "x", "n", "s" }, "", function() + require("harpoon"):list():select(6) +end, { desc = "Harpoon file 6" }) + +map({ "i", "x", "n", "s" }, "", function() + require("harpoon"):list():select(7) +end, { desc = "Harpoon file 7" }) + +map({ "i", "x", "n", "s" }, "", function() + require("harpoon"):list():select(8) +end, { desc = "Harpoon file 8" }) + +-- Move Lines +map("n", "", "m .+1==", { desc = "Move Down" }) +map("n", "", "m .-2==", { desc = "Move Up" }) +map("i", "", "m .+1==gi", { desc = "Move Down" }) +map("i", "", "m .-2==gi", { desc = "Move Up" }) +map("v", "", ":m '>+1gv=gv", { desc = "Move Down" }) +map("v", "", ":m '<-2gv=gv", { desc = "Move Up" }) diff --git a/dotfiles/nvim.lazy/lua/config/lazy.lua b/dotfiles/nvim.lazy/lua/config/lazy.lua new file mode 100644 index 0000000..f38fd71 --- /dev/null +++ b/dotfiles/nvim.lazy/lua/config/lazy.lua @@ -0,0 +1,46 @@ +local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +if not vim.loop.fs_stat(lazypath) then + -- bootstrap lazy.nvim + -- stylua: ignore + vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath }) +end +vim.opt.rtp:prepend(vim.env.LAZY or lazypath) +vim.env.SHELL = "/bin/sh" +require("lazy").setup({ + spec = { + -- add LazyVim and import its plugins + { "LazyVim/LazyVim", import = "lazyvim.plugins" }, + -- import any extras modules here + -- { import = "lazyvim.plugins.extras.lang.typescript" }, + -- { import = "lazyvim.plugins.extras.lang.json" }, + -- { import = "lazyvim.plugins.extras.ui.mini-animate" }, + -- import/override with your plugins + { import = "plugins" }, + }, + defaults = { + -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup. + -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default. + lazy = false, + -- It's recommended to leave version=false for now, since a lot the plugin that support versioning, + -- have outdated releases, which may break your Neovim install. + version = false, -- always use the latest git commit + -- version = "*", -- try installing the latest stable version for plugins that support semver + }, + install = { colorscheme = { "tokyonight", "habamax" } }, + checker = { enabled = false }, -- automatically check for plugin updates + performance = { + rtp = { + -- disable some rtp plugins + disabled_plugins = { + "gzip", + -- "matchit", + -- "matchparen", + -- "netrwPlugin", + "tarPlugin", + "tohtml", + "tutor", + "zipPlugin", + }, + }, + }, +}) diff --git a/dotfiles/nvim.lazy/lua/config/options.lua b/dotfiles/nvim.lazy/lua/config/options.lua new file mode 100644 index 0000000..8b3303d --- /dev/null +++ b/dotfiles/nvim.lazy/lua/config/options.lua @@ -0,0 +1,10 @@ +-- Options are automatically loaded before lazy.nvim startup +-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua +-- Add any additional options here +local opt = vim.opt +opt.scrolloff = 9 +opt.wrap = true +opt.clipboard = "unnamedplus" +opt.list = false +opt.relativenumber = true +opt.cursorline = false diff --git a/dotfiles/nvim.lazy/lua/plugins/disabled.lua b/dotfiles/nvim.lazy/lua/plugins/disabled.lua new file mode 100644 index 0000000..5a95b93 --- /dev/null +++ b/dotfiles/nvim.lazy/lua/plugins/disabled.lua @@ -0,0 +1,5 @@ +return { + { "akinsho/bufferline.nvim", enabled = false }, + { "lukas-reineke/indent-blankline.nvim", enabled = false }, + { "echasnovski/mini.indentscope", enabled = false }, +} diff --git a/dotfiles/nvim.lazy/lua/plugins/mrflos.lua b/dotfiles/nvim.lazy/lua/plugins/mrflos.lua new file mode 100644 index 0000000..f8f34fd --- /dev/null +++ b/dotfiles/nvim.lazy/lua/plugins/mrflos.lua @@ -0,0 +1,140 @@ +function ColorMyPencils(color) + color = color or "rose-pine" + vim.cmd.colorscheme(color) + + vim.api.nvim_set_hl(0, "Normal", { bg = "none" }) + vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" }) +end + +return { + -- theme Rosé Pine + { + "rose-pine/neovim", + name = "rose-pine", + config = function() + require("rose-pine").setup({ + disable_background = true, + styles = { + italic = false, + }, + }) + + vim.cmd("colorscheme rose-pine") + + ColorMyPencils() + end, + }, + + -- Configure LazyVim to load theme + { + "LazyVim/LazyVim", + opts = { + colorscheme = "rose-pine", + }, + }, + + { + "nvim-treesitter/nvim-treesitter", + opts = { + ensure_installed = { + "bash", + "css", + "dockerfile", + "go", + "html", + "javascript", + "json", + "lua", + "make", + "markdown", + "markdown_inline", + "nix", + "php", + "python", + "query", + "regex", + "rust", + "toml", + "tsx", + "typescript", + "twig", + "vim", + "vue", + "yaml", + }, + }, + }, + -- Neotree plugin + { + "nvim-neo-tree/neo-tree.nvim", + opts = { + close_if_last_window = true, + event_handlers = { + { + event = "file_opened", + handler = function() + vim.cmd([[Neotree close]]) + end, + }, + }, + filesystem = { + filtered_items = { + visible = true, + }, + }, + window = { + position = "current", + }, + }, + }, + { + "neovim/nvim-lspconfig", + opts = { + intelephense = { + environment = { + includePaths = { + "/home/mrflos/Developpements/yeswiki", + }, + }, + }, + }, + }, + { + "folke/noice.nvim", + event = "VeryLazy", + opts = { + cmdline = { + view = "cmdline", + }, + presets = { + bottom_search = true, + command_palette = false, + }, + }, + }, + { + "nvim-telescope/telescope.nvim", + opts = { + defaults = { + layout_strategy = "bottom_pane", + layout_config = { + prompt_position = "top", + preview_cutoff = 5, -- Preview should always show (unless previewer = false) + width = function(_, max_columns, _) + return math.min(max_columns, 120) + end, + height = function(_, _, max_lines) + return math.min(max_lines, 15) + end, + }, + sorting_strategy = "ascending", + border = true, + borderchars = { + prompt = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" }, + results = { "─", "│", "─", "│", "├", "╮", "╯", "╰" }, + preview = { "─", "│", "─", "│", "╭", "┤", "╯", "╰" }, + }, + }, + }, + }, +} diff --git a/dotfiles/nvim.lazy/stylua.toml b/dotfiles/nvim.lazy/stylua.toml new file mode 100644 index 0000000..5d6c50d --- /dev/null +++ b/dotfiles/nvim.lazy/stylua.toml @@ -0,0 +1,3 @@ +indent_type = "Spaces" +indent_width = 2 +column_width = 120 \ No newline at end of file diff --git a/home-manager/mrflos-cli.nix b/home-manager/mrflos-cli.nix new file mode 100644 index 0000000..e2fb2c0 --- /dev/null +++ b/home-manager/mrflos-cli.nix @@ -0,0 +1,290 @@ +{ pkgs, ... }: + +{ + home.username = "mrflos"; + home.homeDirectory = "/home/mrflos"; + home.stateVersion = "24.05"; # Please read the comment before changing. + home.packages = with pkgs; [ + ansible + atuin + bat + black + btop + cargo + catnip + cmatrix + coreutils + curl + dnsutils + emacs-nox + fd + findutils + fish + fzf + gcc + gnugrep + gnumake + gnupg + go + imagemagick + jq + git + glances + htop + lazygit + lsd + magic-wormhole + lua51Packages.lua + lua51Packages.luarocks + lua-language-server + mc + micro + mosh + mpd + mpv + neofetch + neovim + nil + nixd + nixfmt-rfc-style + nodejs_20 + pandoc + pass + pciutils + php83 + php83Packages.composer + php83Packages.php-cs-fixer + phpactor + pinentry + python312 + python312Packages.pip + python312Packages.python-lsp-server + ripgrep + slides + starship + symfony-cli + tailwindcss-language-server + tmux + tree + unzip + usbutils + wget + whois + wirelesstools + yarn + yazi + yt-dlp + zellij + zoxide + zola + zsh-autosuggestions + + # fonts + (pkgs.nerdfonts.override { fonts = [ "Iosevka" ]; }) + ]; + + home.file = { + "./.config/kitty/" = { + source = ../dotfiles/kitty; + recursive = true; + }; + + "./.config/nvim/" = { + source = ../dotfiles/nvim; + recursive = true; + }; + + "./.config/lazygit/" = { + source = ../dotfiles/lazygit; + recursive = true; + }; + + "./.config/tmux/" = { + source = ../dotfiles/tmux; + recursive = true; + }; + }; + home.sessionVariables = { + EDITOR = "nvim"; + }; + home.sessionPath = [ + "$HOME/.local/bin" + "$HOME/go/bin" + ]; + accounts.email.accounts = { + "mrflos@chmok.net" = { + realName = "Florian Schmitt"; + userName = "mrflos@chmok.net"; + address = "mrflos@chmok.net"; + + primary = true; + thunderbird = { + enable = true; + }; + imap = { + host = "mail.infomaniak.com"; + port = 993; + }; + + smtp = { + host = "mail.infomaniak.com"; + port = 465; + }; + }; + "mrflos@yeswiki.pro" = { + realName = "Florian Schmitt - Yeswiki.pro"; + userName = "mrflos@yeswiki.pro"; + address = "mrflos@yeswiki.pro"; + + thunderbird = { + enable = true; + }; + imap = { + host = "mail.infomaniak.com"; + port = 993; + }; + + smtp = { + host = "mail.infomaniak.com"; + port = 465; + }; + }; + "mrflos@mrflos.pw" = { + realName = "Florian Schmitt"; + userName = "mrflos"; + address = "mrflos@mrflos.pw"; + + primary = false; + thunderbird = { + enable = true; + }; + imap = { + host = "mrflos.pw"; + port = 993; + #tls.enable = true; + #tls.useStartTls = true; + }; + + smtp = { + host = "mrflos.pw"; + port = 587; + #tls.useStartTls = true; + }; + }; + "contact@yeswiki.pro" = { + realName = "YesWiki.pro"; + userName = "contact@yeswiki.pro"; + address = "contact@yeswiki.pro"; + + primary = false; + thunderbird = { + enable = true; + }; + imap = { + host = "mail.infomaniak.com"; + port = 993; + }; + + smtp = { + host = "mail.infomaniak.com"; + port = 465; + }; + }; + "contact@yeswiki.net" = { + realName = "YesWiki.net"; + userName = "contact@yeswiki.net"; + address = "contact@yeswiki.net"; + + primary = false; + thunderbird = { + enable = true; + }; + imap = { + host = "mail.infomaniak.com"; + port = 993; + }; + + smtp = { + host = "mail.infomaniak.com"; + port = 465; + }; + }; + }; + + programs = { + direnv = { + enable = true; + enableZshIntegration = true; + nix-direnv.enable = true; + }; + + git = { + enable = true; + userName = "Florian Schmitt"; + userEmail = "mrflos@gmail.com"; + aliases = { + fa = "fetch --all --tags --prune --recurse-submodules --force"; + }; + extraConfig = { + pull.rebase = true; + init.defaultBranch = "main"; + core.editor = "nvim"; + core.fileMode = false; + }; + }; + + neovim = { + defaultEditor = true; + viAlias = true; + vimAlias = true; + }; + + starship = { + enable = true; + settings = with builtins; fromTOML (readFile ../dotfiles/starship/starship.toml); + }; + + zsh = { + enable = true; + autosuggestion.enable = true; + enableCompletion = true; + shellAliases = { + #tmux = "tmux -f ~/.config/tmux/tmux.conf attach || tmux -f ~/.config/tmux/tmux.conf new"; + bunx = "bun --bun x"; + g = "lazygit"; + kdenix = "nix run github:pjones/plasma-manager --extra-experimental-features nix-command --extra-experimental-features flakes > /home/mrflos/Developpements/nixos-config/modules/home-plasma.nix"; + icat = "kitty +kitten icat"; + nixedit = "vi /etc/nixos"; + nixupdate = "sudo nix-channel --update && sudo nixos-rebuild switch"; + nixclean = "sudo nix-env --delete-generations old --profile /nix/var/nix/profiles/system && sudo /nix/var/nix/profiles/system/bin/switch-to-configuration switch && sudo nix-store --gc"; + socks = "ssh -N -f -C -D 9090 mrflos@yunohost.yeswiki.net -p 6742"; + yeswiki-updater = "cd /home/mrflos/Developpements/yeswiki-installer/ && sudo php yeswiki-updater.php"; + vi = "nvim"; + vim = "nvim"; + }; + initExtra = '' + export BUN_INSTALL="$HOME/.bun" + export PHP_CS_FIXER_IGNORE_ENV=1 + export PATH="$HOME/.local/bin:$BUN_INSTALL/bin:$PATH" + eval "$(atuin init zsh)" + eval "$(zoxide init zsh)" + ''; + oh-my-zsh = { + enable = true; + extraConfig = '' + zstyle :omz:plugins:ssh-agent helper ksshaskpass + zstyle :omz:plugins:ssh-agent agent-forwarding yes + zstyle :omz:plugins:ssh-agent lazy yes + ''; + plugins = [ + "git" + "ssh-agent" + ]; + # theme = "robbyrussell"; + }; + }; + }; + + services.ssh-agent.enable = true; + programs.home-manager.enable = true; +} diff --git a/machines/ace/home.nix b/machines/ace/home.nix index 41ae710..0083829 100644 --- a/machines/ace/home.nix +++ b/machines/ace/home.nix @@ -139,7 +139,6 @@ EDITOR = "nvim"; }; home.sessionPath = [ - "$HOME/Code/nixos-config/scripts" "$HOME/.local/bin" "$HOME/go/bin" ]; diff --git a/modules/home-config.nix b/modules/home-config.nix index 0d3296b..c97dfd2 100644 --- a/modules/home-config.nix +++ b/modules/home-config.nix @@ -120,7 +120,6 @@ in #LD_LIBRARY_PATH = "${pkgs.stdenv.cc.cc.lib}/lib"; }; home.sessionPath = [ - "$HOME/Code/nixos-config/scripts" "$HOME/.local/bin" "$HOME/go/bin" ]; diff --git a/scripts/fetch-all-local-git-repo.sh b/scripts/fetch-all-local-git-repo.sh deleted file mode 100755 index f0f7840..0000000 --- a/scripts/fetch-all-local-git-repo.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash -# inspired from https://madalinaeleonorag.medium.com/git-fetch-pull-for-all-repos-once-82a0abff828b - -cd ~/Code/ -for i in */.git; do ( -echo 📂 ${i/\/.git/}; cd $i/..; -echo 🔄 Fetching; -git fetch --all; -echo 🔽 Pulling; -git pull; -echo ————————————————————————); -done -cd ~/Code/