From c014c6cd6edd182fedc8740bf5946bcce32e3541 Mon Sep 17 00:00:00 2001 From: SindreKjelsrud Date: Sat, 30 Nov 2024 21:58:32 +0100 Subject: [PATCH] :sparkles: Add mac-dotfiles Signed-off-by: SindreKjelsrud --- .stow-local-ignore | 1 + mac/.config/iterm2/AppSupport/SavedState/lock | 0 .../SavedState/restorable-state.sqlite | Bin 0 -> 12288 bytes .../SavedState/restorable-state.sqlite-shm | Bin 0 -> 32768 bytes .../SavedState/restorable-state.sqlite-wal | 0 .../iterm2/AppSupport/iTermServer-3.5.5 | Bin 0 -> 197840 bytes .../AppSupport/iterm2-daemon-1.socket.lock | 0 ...23598fc0b493084923a37703d9cd0aa36948eeeee0 | Bin 0 -> 30704 bytes ...7d868ceb0fb467dfd23631d63232b235913bfc1d60 | Bin 0 -> 20728 bytes mac/.config/iterm2/AppSupport/version.txt | 1 + mac/.config/neofetch/config.conf | 71 +++++++++++ mac/.config/nvim/.neoconf.json | 20 +++ mac/.config/nvim/.stylua.toml | 7 ++ mac/.config/nvim/init.lua | 19 +++ mac/.config/nvim/lazy-lock.json | 63 ++++++++++ mac/.config/nvim/lua/community.lua | 10 ++ mac/.config/nvim/lua/lazy_setup.lua | 32 +++++ mac/.config/nvim/lua/plugins/astrocore.lua | 72 +++++++++++ mac/.config/nvim/lua/plugins/astrolsp.lua | 105 ++++++++++++++++ mac/.config/nvim/lua/plugins/astroui.lua | 39 ++++++ mac/.config/nvim/lua/plugins/catppuccin.lua | 17 +++ mac/.config/nvim/lua/plugins/mason.lua | 39 ++++++ mac/.config/nvim/lua/plugins/none-ls.lua | 24 ++++ mac/.config/nvim/lua/plugins/treesitter.lua | 15 +++ mac/.config/nvim/lua/plugins/user.lua | 85 +++++++++++++ mac/.config/nvim/lua/polish.lua | 18 +++ mac/.config/nvim/neovim.yml | 6 + mac/.config/nvim/selene.toml | 8 ++ mac/.stow-local-ignore | 29 +++++ mac/.zshrc | 115 ++++++++++++++++++ .../Contents/Info.plist | 8 ++ .../Contents/QuickLook/Thumbnail.png | Bin 0 -> 18342 bytes .../Contents/document.wflow | 102 ++++++++++++++++ mac/setup.sh | 23 ++++ 34 files changed, 929 insertions(+) create mode 100644 mac/.config/iterm2/AppSupport/SavedState/lock create mode 100644 mac/.config/iterm2/AppSupport/SavedState/restorable-state.sqlite create mode 100644 mac/.config/iterm2/AppSupport/SavedState/restorable-state.sqlite-shm create mode 100644 mac/.config/iterm2/AppSupport/SavedState/restorable-state.sqlite-wal create mode 100644 mac/.config/iterm2/AppSupport/iTermServer-3.5.5 create mode 100644 mac/.config/iterm2/AppSupport/iterm2-daemon-1.socket.lock create mode 100644 mac/.config/iterm2/AppSupport/parsers/455d04ad227a8acb2c71b923598fc0b493084923a37703d9cd0aa36948eeeee0 create mode 100644 mac/.config/iterm2/AppSupport/parsers/73aa6138edf938dbc34e1e7d868ceb0fb467dfd23631d63232b235913bfc1d60 create mode 100644 mac/.config/iterm2/AppSupport/version.txt create mode 100644 mac/.config/neofetch/config.conf create mode 100644 mac/.config/nvim/.neoconf.json create mode 100644 mac/.config/nvim/.stylua.toml create mode 100644 mac/.config/nvim/init.lua create mode 100644 mac/.config/nvim/lazy-lock.json create mode 100644 mac/.config/nvim/lua/community.lua create mode 100644 mac/.config/nvim/lua/lazy_setup.lua create mode 100644 mac/.config/nvim/lua/plugins/astrocore.lua create mode 100644 mac/.config/nvim/lua/plugins/astrolsp.lua create mode 100644 mac/.config/nvim/lua/plugins/astroui.lua create mode 100644 mac/.config/nvim/lua/plugins/catppuccin.lua create mode 100644 mac/.config/nvim/lua/plugins/mason.lua create mode 100644 mac/.config/nvim/lua/plugins/none-ls.lua create mode 100644 mac/.config/nvim/lua/plugins/treesitter.lua create mode 100644 mac/.config/nvim/lua/plugins/user.lua create mode 100644 mac/.config/nvim/lua/polish.lua create mode 100644 mac/.config/nvim/neovim.yml create mode 100644 mac/.config/nvim/selene.toml create mode 100644 mac/.stow-local-ignore create mode 100644 mac/.zshrc create mode 100644 mac/setDesktopWallpaper.workflow/Contents/Info.plist create mode 100644 mac/setDesktopWallpaper.workflow/Contents/QuickLook/Thumbnail.png create mode 100644 mac/setDesktopWallpaper.workflow/Contents/document.wflow create mode 100644 mac/setup.sh diff --git a/.stow-local-ignore b/.stow-local-ignore index b89f90b..ad5d23e 100644 --- a/.stow-local-ignore +++ b/.stow-local-ignore @@ -1,3 +1,4 @@ .git bspwm +mac README.md diff --git a/mac/.config/iterm2/AppSupport/SavedState/lock b/mac/.config/iterm2/AppSupport/SavedState/lock new file mode 100644 index 0000000..e69de29 diff --git a/mac/.config/iterm2/AppSupport/SavedState/restorable-state.sqlite b/mac/.config/iterm2/AppSupport/SavedState/restorable-state.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..7e736831e5ec1f2a1750dc0035ff9c08b804f8a4 GIT binary patch literal 12288 zcmeI#K}*9h6u|Mc6NQ1yOWA4iE`kH`;$56tK^Ozw4&EfCnFMPpB|<%V@k9CPOx%V; z@B?i81FwDUOH%Ud=}qs()*G4E&5QPOrVdn^stXaN)F4DB#A+OdWM}md?#WvIUpi2y z?rT3()84u2eTEAI0R#|0009ILKmY**5I_KdjT5*@cl$?KqOB`U`>Gq`{NqnPsY}zj zy3a?mTy7`V`Gc%irFIf$$noOsuub;*S(bcEy)G&fOEJ>r2D8!SIA1P!Ht*t1>&4X} z-m2<0By_TY?i(%}|L(|Vd009ILKmY**5I_I{1Q0*~ jfh`v3#G8=5N&RZ0$HgUfn3~v~Q z`STs%m6vIX6nXSg8V_^r=P^31Zr6IbuMhLbVlz8WcE@IYueRlv`{TSw)aE1Y;%hzT z`R?`&ad*5Wst_PRfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72>iQ1be#|a-4rO&pqn4}YXZ5$(7QJg z3<3lQ5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ PfB*pk1PBly@M{837V|04 literal 0 HcmV?d00001 diff --git a/mac/.config/iterm2/AppSupport/SavedState/restorable-state.sqlite-wal b/mac/.config/iterm2/AppSupport/SavedState/restorable-state.sqlite-wal new file mode 100644 index 0000000..e69de29 diff --git a/mac/.config/iterm2/AppSupport/iTermServer-3.5.5 b/mac/.config/iterm2/AppSupport/iTermServer-3.5.5 new file mode 100644 index 0000000000000000000000000000000000000000..3031950a6e174a68939867aae7aa33cbc7d9670d GIT binary patch literal 197840 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 literal 0 HcmV?d00001 diff --git a/mac/.config/iterm2/AppSupport/version.txt b/mac/.config/iterm2/AppSupport/version.txt new file mode 100644 index 0000000..1947319 --- /dev/null +++ b/mac/.config/iterm2/AppSupport/version.txt @@ -0,0 +1 @@ +3.5.5 \ No newline at end of file diff --git a/mac/.config/neofetch/config.conf b/mac/.config/neofetch/config.conf new file mode 100644 index 0000000..78e8bf5 --- /dev/null +++ b/mac/.config/neofetch/config.conf @@ -0,0 +1,71 @@ +# Neofetch Configuration +# A simplified and clean setup for displaying system information. + +print_info() { + info title # Print the system title + info underline # Underline the title + + info "OS" distro # Show OS distribution + info "Uptime" uptime # Show system uptime + info "Shell" shell # Show the current shell + info "DE" de # Show Desktop Environment + info "WM" wm # Show Window Manager + info "Terminal" term # Show terminal used + info "Terminal Font" term_font # Show terminal font + info cols # Show terminal column count +} + +# Configuration to remove extra details and keep it clean + +# Title FQDN (Fully Qualified Domain Name) +title_fqdn="off" + +# Kernel shorthand +kernel_shorthand="on" + +# Distro info shorthand +distro_shorthand="off" +os_arch="on" # Show architecture (x86_64) + +# Uptime shorthand (show short version) +uptime_shorthand="on" + +# Package Managers +package_managers="on" # Show package manager details + +# Shell version info +shell_version="on" # Show shell version + +# CPU display +cpu_brand="on" # Display CPU brand +cpu_speed="on" # Show CPU speed +cpu_cores="logical" # Show logical cores + +# GPU display +gpu_brand="on" # Display GPU brand +gpu_type="all" # Show all GPUs (dedicated + integrated) + +# Disk info +disk_show=('/') # Show disk info for root partition +disk_percent="on" # Show disk usage percentage + +# Ascii Logo / Image Display +image_backend="ascii" # Use ASCII art for logo +image_source="auto" # Automatically choose image source + +# Color Settings +colors=(distro) # Use distro colors for text +bold="on" # Enable bold text +underline_enabled="on" # Enable underlining for text + +# Info separator +separator=":" # Use ':' as separator for info + +# Image options (Disable unnecessary options for simplicity) +image_loop="off" +gap=3 + +# ASCII and image display options simplified for cleaner output +ascii_distro="auto" # Auto select ASCII distro logo +ascii_colors=(distro) # Use distro colors for ASCII logo +ascii_bold="on" # Bold the ASCII logo diff --git a/mac/.config/nvim/.neoconf.json b/mac/.config/nvim/.neoconf.json new file mode 100644 index 0000000..2d7a81f --- /dev/null +++ b/mac/.config/nvim/.neoconf.json @@ -0,0 +1,20 @@ +{ + "neodev": { + "library": { + "enabled": true, + "plugins": true + } + }, + "neoconf": { + "plugins": { + "lua_ls": { + "enabled": true + } + } + }, + "lspconfig": { + "lua_ls": { + "Lua.format.enable": false + } + } +} diff --git a/mac/.config/nvim/.stylua.toml b/mac/.config/nvim/.stylua.toml new file mode 100644 index 0000000..bfcffff --- /dev/null +++ b/mac/.config/nvim/.stylua.toml @@ -0,0 +1,7 @@ +column_width = 120 +line_endings = "Unix" +indent_type = "Spaces" +indent_width = 2 +quote_style = "AutoPreferDouble" +call_parentheses = "None" +collapse_simple_statement = "Always" diff --git a/mac/.config/nvim/init.lua b/mac/.config/nvim/init.lua new file mode 100644 index 0000000..c6497f4 --- /dev/null +++ b/mac/.config/nvim/init.lua @@ -0,0 +1,19 @@ +-- This file simply bootstraps the installation of Lazy.nvim and then calls other files for execution +-- This file doesn't necessarily need to be touched, BE CAUTIOUS editing this file and proceed at your own risk. +local lazypath = vim.env.LAZY or vim.fn.stdpath "data" .. "/lazy/lazy.nvim" +if not (vim.env.LAZY or (vim.uv or vim.loop).fs_stat(lazypath)) then + -- 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(lazypath) + +-- validate that lazy is available +if not pcall(require, "lazy") then + -- stylua: ignore + vim.api.nvim_echo({ { ("Unable to load lazy from: %s\n"):format(lazypath), "ErrorMsg" }, { "Press any key to exit...", "MoreMsg" } }, true, {}) + vim.fn.getchar() + vim.cmd.quit() +end + +require "lazy_setup" +require "polish" \ No newline at end of file diff --git a/mac/.config/nvim/lazy-lock.json b/mac/.config/nvim/lazy-lock.json new file mode 100644 index 0000000..75bc43a --- /dev/null +++ b/mac/.config/nvim/lazy-lock.json @@ -0,0 +1,63 @@ +{ + "AstroNvim": { "branch": "main", "commit": "c82ef216d0776b19cd7229fb916c4b30fbe3484c" }, + "Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" }, + "LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" }, + "aerial.nvim": { "branch": "master", "commit": "9c29a1a66eb31384888e413e510ba72496e06770" }, + "alpha-nvim": { "branch": "main", "commit": "bf3c8bb8c02ed3d9644cc5bbc48e2bdc39349cd7" }, + "astrocommunity": { "branch": "main", "commit": "bb7988ac0efe0c17936c350c6da19051765f0e71" }, + "astrocore": { "branch": "main", "commit": "0fcaac66d115948605c14eaf45a41d3923eaafeb" }, + "astrolsp": { "branch": "main", "commit": "2f6b0a4059775a1dac011d2944dd41fd4a8fe7a8" }, + "astrotheme": { "branch": "main", "commit": "b1405cc96823d5f6cdd5a2f7ebeb137183220840" }, + "astroui": { "branch": "main", "commit": "58c4130bd15c28827eab19dcc20fb9483bf5cad8" }, + "better-escape.nvim": { "branch": "master", "commit": "199dcc2643dec5d8dbdab4ec672cf405224dcb3b" }, + "catppuccin": { "branch": "main", "commit": "faf15ab0201b564b6368ffa47b56feefc92ce3f4" }, + "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, + "cmp-dap": { "branch": "master", "commit": "ea92773e84c0ad3288c3bc5e452ac91559669087" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, + "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, + "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, + "dressing.nvim": { "branch": "master", "commit": "43b8f74e0b1e3f41e51f640f8efa3bcd401cea0d" }, + "friendly-snippets": { "branch": "main", "commit": "de8fce94985873666bd9712ea3e49ee17aadb1ed" }, + "gitsigns.nvim": { "branch": "main", "commit": "0b04035bb7b3c83e999b9676e2fb46fd0aa9f910" }, + "guess-indent.nvim": { "branch": "main", "commit": "6cd61f7a600bb756e558627cd2e740302c58e32d" }, + "heirline.nvim": { "branch": "master", "commit": "cc359b628266cb9a84b2d71c883f2b99e16473a0" }, + "indent-blankline.nvim": { "branch": "master", "commit": "04e44b09ee3ff189c69ab082edac1ef7ae2e256c" }, + "lazy.nvim": { "branch": "main", "commit": "7967abe55752aa90532e6bb4bd4663fe27a264cb" }, + "lazydev.nvim": { "branch": "main", "commit": "f59bd14a852ca43db38e3662395354cb2a9b13e0" }, + "lspkind.nvim": { "branch": "master", "commit": "a700f1436d4a938b1a1a93c9962dc796afbaef4d" }, + "luvit-meta": { "branch": "main", "commit": "57d464c4acb5c2e66bd4145060f5dc9e96a7bbb7" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "4d0e5b49363cac187326998b96aa6a2884e0e89b" }, + "mason-null-ls.nvim": { "branch": "main", "commit": "2b8433f76598397fcc97318d410e0c4f7a4bea6a" }, + "mason-nvim-dap.nvim": { "branch": "main", "commit": "8b9363d83b5d779813cdd2819b8308651cec2a09" }, + "mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" }, + "mini.bufremove": { "branch": "main", "commit": "1ee294a97e091d3cf967974df622c0d887890dc2" }, + "neo-tree.nvim": { "branch": "main", "commit": "a77af2e764c5ed4038d27d1c463fa49cd4794e07" }, + "neoconf.nvim": { "branch": "main", "commit": "fb03e7ab64f17464e58a3bd7b98a515e4859204c" }, + "none-ls.nvim": { "branch": "main", "commit": "dcc8cd4efdcb29275681a3c95786a816330dbca6" }, + "nui.nvim": { "branch": "main", "commit": "a0fd35fcbb4cb479366f1dc5f20145fd718a3733" }, + "nvim-autopairs": { "branch": "master", "commit": "ee297f215e95a60b01fde33275cc3c820eddeebe" }, + "nvim-cmp": { "branch": "main", "commit": "f17d9b4394027ff4442b298398dfcaab97e40c4f" }, + "nvim-colorizer.lua": { "branch": "master", "commit": "f134063618a65cad4d7415fddbd96ff7e0c5b4ae" }, + "nvim-dap": { "branch": "master", "commit": "8517126e9323e346f6a99b3b594c5a940b914dcd" }, + "nvim-dap-ui": { "branch": "master", "commit": "ffa89839f97bad360e78428d5c740fdad9a0ff02" }, + "nvim-lspconfig": { "branch": "master", "commit": "d01864641c6e43c681c3e9f6cf4745c75fdd9dcc" }, + "nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" }, + "nvim-notify": { "branch": "master", "commit": "fbef5d32be8466dd76544a257d3f3dce20082a07" }, + "nvim-treesitter": { "branch": "master", "commit": "c91122d2012682301df68307cfc049a57c3fd286" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "3e450cd85243da99dc23ebbf14f9c70e9a0c26a4" }, + "nvim-ts-autotag": { "branch": "main", "commit": "e239a560f338be31337e7abc3ee42515daf23f5e" }, + "nvim-ts-context-commentstring": { "branch": "main", "commit": "9c74db656c3d0b1c4392fc89a016b1910539e7c0" }, + "nvim-ufo": { "branch": "main", "commit": "a5390706f510d39951dd581f6d2a972741b3fa26" }, + "nvim-web-devicons": { "branch": "master", "commit": "19d257cf889f79f4022163c3fbb5e08639077bd8" }, + "nvim-window-picker": { "branch": "main", "commit": "41cfaa428577c53552200a404ae9b3a0b5719706" }, + "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, + "promise-async": { "branch": "main", "commit": "38a4575da9497326badd3995e768b4ccf0bb153e" }, + "resession.nvim": { "branch": "master", "commit": "cc819b0489938d03e4f3532a583354f0287c015b" }, + "smart-splits.nvim": { "branch": "master", "commit": "00fba7a0e912a8d82da91a3b6b11d641fa500bd8" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "cf48d4dfce44e0b9a2e19a008d6ec6ea6f01a83b" }, + "telescope.nvim": { "branch": "master", "commit": "85922dde3767e01d42a08e750a773effbffaea3e" }, + "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, + "toggleterm.nvim": { "branch": "main", "commit": "022ff5594acccc8d90d2e46dc43994f7722ebdf7" }, + "vim-illuminate": { "branch": "master", "commit": "5eeb7951fc630682c322e88a9bbdae5c224ff0aa" }, + "which-key.nvim": { "branch": "main", "commit": "fb070344402cfc662299d9914f5546d840a22126" } +} diff --git a/mac/.config/nvim/lua/community.lua b/mac/.config/nvim/lua/community.lua new file mode 100644 index 0000000..c079a74 --- /dev/null +++ b/mac/.config/nvim/lua/community.lua @@ -0,0 +1,10 @@ +-- AstroCommunity: import any community modules here +-- We import this file in `lazy_setup.lua` before the `plugins/` folder. +-- This guarantees that the specs are processed before any user plugins. + +---@type LazySpec +return { + "AstroNvim/astrocommunity", + { import = "astrocommunity.pack.lua" }, + -- import/override with your plugins folder +} diff --git a/mac/.config/nvim/lua/lazy_setup.lua b/mac/.config/nvim/lua/lazy_setup.lua new file mode 100644 index 0000000..939d7b7 --- /dev/null +++ b/mac/.config/nvim/lua/lazy_setup.lua @@ -0,0 +1,32 @@ +require("lazy").setup({ + { + "AstroNvim/AstroNvim", + version = "^4", -- Remove version tracking to elect for nighly AstroNvim + import = "astronvim.plugins", + opts = { -- AstroNvim options must be set here with the `import` key + mapleader = " ", -- This ensures the leader key must be configured before Lazy is set up + maplocalleader = ",", -- This ensures the localleader key must be configured before Lazy is set up + icons_enabled = true, -- Set to false to disable icons (if no Nerd Font is available) + pin_plugins = nil, -- Default will pin plugins when tracking `version` of AstroNvim, set to true/false to override + update_notifications = true, -- Enable/disable notification about running `:Lazy update` twice to update pinned plugins + }, + }, + { import = "community" }, + { import = "plugins" }, +} --[[@as LazySpec]], { + -- Configure any other `lazy.nvim` configuration options here + install = { colorscheme = { "astrotheme", "habamax" } }, + ui = { backdrop = 100 }, + performance = { + rtp = { + -- disable some rtp plugins, add more to your liking + disabled_plugins = { + "gzip", + "netrwPlugin", + "tarPlugin", + "tohtml", + "zipPlugin", + }, + }, + }, +} --[[@as LazyConfig]]) diff --git a/mac/.config/nvim/lua/plugins/astrocore.lua b/mac/.config/nvim/lua/plugins/astrocore.lua new file mode 100644 index 0000000..d6d99ea --- /dev/null +++ b/mac/.config/nvim/lua/plugins/astrocore.lua @@ -0,0 +1,72 @@ +#if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE + +-- AstroCore provides a central place to modify mappings, vim options, autocommands, and more! +-- Configuration documentation can be found with `:h astrocore` +-- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`) +-- as this provides autocomplete and documentation while editing + +---@type LazySpec +return { + "AstroNvim/astrocore", + ---@type AstroCoreOpts + opts = { + -- Configure core features of AstroNvim + features = { + large_buf = { size = 1024 * 256, lines = 10000 }, -- set global limits for large files for disabling features like treesitter + autopairs = true, -- enable autopairs at start + cmp = true, -- enable completion at start + diagnostics_mode = 3, -- diagnostic mode on start (0 = off, 1 = no signs/virtual text, 2 = no virtual text, 3 = on) + highlighturl = true, -- highlight URLs at start + notifications = false, -- enable notifications at start + }, + -- Diagnostics configuration (for vim.diagnostics.config({...})) when diagnostics are on + diagnostics = { + virtual_text = true, + underline = true, + }, + -- vim options can be configured here + options = { + opt = { -- vim.opt. + relativenumber = true, -- sets vim.opt.relativenumber + number = true, -- sets vim.opt.number + spell = false, -- sets vim.opt.spell + signcolumn = "yes", -- sets vim.opt.signcolumn to yes + wrap = true, -- sets vim.opt.wrap + }, + g = { -- vim.g. + -- configure global vim variables (vim.g) + -- NOTE: `mapleader` and `maplocalleader` must be set in the AstroNvim opts or before `lazy.setup` + -- This can be found in the `lua/lazy_setup.lua` file + }, + }, + -- Mappings can be configured through AstroCore as well. + -- NOTE: keycodes follow the casing in the vimdocs. For example, `` must be capitalized + mappings = { + -- first key is the mode + n = { + -- second key is the lefthand side of the map + + -- navigate buffer tabs + ["]b"] = { function() require("astrocore.buffer").nav(vim.v.count1) end, desc = "Next buffer" }, + ["[b"] = { function() require("astrocore.buffer").nav(-vim.v.count1) end, desc = "Previous buffer" }, + + -- mappings seen under group name "Buffer" + ["bd"] = { + function() + require("astroui.status.heirline").buffer_picker( + function(bufnr) require("astrocore.buffer").close(bufnr) end + ) + end, + desc = "Close buffer from tabline", + }, + + -- tables with just a `desc` key will be registered with which-key if it's installed + -- this is useful for naming menus + -- ["b"] = { desc = "Buffers" }, + + -- setting a mapping to false will disable it + -- [""] = false, + }, + }, + }, +} diff --git a/mac/.config/nvim/lua/plugins/astrolsp.lua b/mac/.config/nvim/lua/plugins/astrolsp.lua new file mode 100644 index 0000000..720b9d3 --- /dev/null +++ b/mac/.config/nvim/lua/plugins/astrolsp.lua @@ -0,0 +1,105 @@ +if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE + +-- AstroLSP allows you to customize the features in AstroNvim's LSP configuration engine +-- Configuration documentation can be found with `:h astrolsp` +-- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`) +-- as this provides autocomplete and documentation while editing + +---@type LazySpec +return { + "AstroNvim/astrolsp", + ---@type AstroLSPOpts + opts = { + -- Configuration table of features provided by AstroLSP + features = { + codelens = true, -- enable/disable codelens refresh on start + inlay_hints = false, -- enable/disable inlay hints on start + semantic_tokens = true, -- enable/disable semantic token highlighting + }, + -- customize lsp formatting options + formatting = { + -- control auto formatting on save + format_on_save = { + enabled = true, -- enable or disable format on save globally + allow_filetypes = { -- enable format on save for specified filetypes only + -- "go", + }, + ignore_filetypes = { -- disable format on save for specified filetypes + -- "python", + }, + }, + disabled = { -- disable formatting capabilities for the listed language servers + -- disable lua_ls formatting capability if you want to use StyLua to format your lua code + -- "lua_ls", + }, + timeout_ms = 1000, -- default format timeout + -- filter = function(client) -- fully override the default formatting function + -- return true + -- end + }, + -- enable servers that you already have installed without mason + servers = { + -- "pyright" + }, + -- customize language server configuration options passed to `lspconfig` + ---@diagnostic disable: missing-fields + config = { + -- clangd = { capabilities = { offsetEncoding = "utf-8" } }, + }, + -- customize how language servers are attached + handlers = { + -- a function without a key is simply the default handler, functions take two parameters, the server name and the configured options table for that server + -- function(server, opts) require("lspconfig")[server].setup(opts) end + + -- the key is the server that is being setup with `lspconfig` + -- rust_analyzer = false, -- setting a handler to false will disable the set up of that language server + -- pyright = function(_, opts) require("lspconfig").pyright.setup(opts) end -- or a custom handler function can be passed + }, + -- Configure buffer local auto commands to add when attaching a language server + autocmds = { + -- first key is the `augroup` to add the auto commands to (:h augroup) + lsp_codelens_refresh = { + -- Optional condition to create/delete auto command group + -- can either be a string of a client capability or a function of `fun(client, bufnr): boolean` + -- condition will be resolved for each client on each execution and if it ever fails for all clients, + -- the auto commands will be deleted for that buffer + cond = "textDocument/codeLens", + -- cond = function(client, bufnr) return client.name == "lua_ls" end, + -- list of auto commands to set + { + -- events to trigger + event = { "InsertLeave", "BufEnter" }, + -- the rest of the autocmd options (:h nvim_create_autocmd) + desc = "Refresh codelens (buffer)", + callback = function(args) + if require("astrolsp").config.features.codelens then vim.lsp.codelens.refresh { bufnr = args.buf } end + end, + }, + }, + }, + -- mappings to be set up on attaching of a language server + mappings = { + n = { + -- a `cond` key can provided as the string of a server capability to be required to attach, or a function with `client` and `bufnr` parameters from the `on_attach` that returns a boolean + gD = { + function() vim.lsp.buf.declaration() end, + desc = "Declaration of current symbol", + cond = "textDocument/declaration", + }, + ["uY"] = { + function() require("astrolsp.toggles").buffer_semantic_tokens() end, + desc = "Toggle LSP semantic highlight (buffer)", + cond = function(client) + return client.supports_method "textDocument/semanticTokens/full" and vim.lsp.semantic_tokens ~= nil + end, + }, + }, + }, + -- A custom `on_attach` function to be run after the default `on_attach` function + -- takes two parameters `client` and `bufnr` (`:h lspconfig-setup`) + on_attach = function(client, bufnr) + -- this would disable semanticTokensProvider for all clients + -- client.server_capabilities.semanticTokensProvider = nil + end, + }, +} diff --git a/mac/.config/nvim/lua/plugins/astroui.lua b/mac/.config/nvim/lua/plugins/astroui.lua new file mode 100644 index 0000000..6489271 --- /dev/null +++ b/mac/.config/nvim/lua/plugins/astroui.lua @@ -0,0 +1,39 @@ +if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE + +-- AstroUI provides the basis for configuring the AstroNvim User Interface +-- Configuration documentation can be found with `:h astroui` +-- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`) +-- as this provides autocomplete and documentation while editing + +---@type LazySpec +return { + "AstroNvim/astroui", + ---@type AstroUIOpts + opts = { + -- change colorscheme + colorscheme = "catppuccin", + -- AstroUI allows you to easily modify highlight groups easily for any and all colorschemes + highlights = { + init = { -- this table overrides highlights in all themes + -- Normal = { bg = "#000000" }, + }, + astrodark = { -- a table of overrides/changes when applying the astrotheme theme + -- Normal = { bg = "#000000" }, + }, + }, + -- Icons can be configured throughout the interface + icons = { + -- configure the loading of the lsp in the status line + LSPLoading1 = "⠋", + LSPLoading2 = "⠙", + LSPLoading3 = "⠹", + LSPLoading4 = "⠸", + LSPLoading5 = "⠼", + LSPLoading6 = "⠴", + LSPLoading7 = "⠦", + LSPLoading8 = "⠧", + LSPLoading9 = "⠇", + LSPLoading10 = "⠏", + }, + }, +} diff --git a/mac/.config/nvim/lua/plugins/catppuccin.lua b/mac/.config/nvim/lua/plugins/catppuccin.lua new file mode 100644 index 0000000..c657679 --- /dev/null +++ b/mac/.config/nvim/lua/plugins/catppuccin.lua @@ -0,0 +1,17 @@ +return { + -- Define the plugin using lazy.nvim format + "catppuccin/nvim", + name = "catppuccin", + config = function() + -- Plugin setup according to catppuccin documentation + require("catppuccin").setup({ + flavour = "macchiato", -- Options: "latte", "frappe", "macchiato", "mocha" + background = { + light = "latte", + dark = "macchiato", + }, + }) + -- Set the colorscheme + vim.cmd("colorscheme catppuccin") + end, + } \ No newline at end of file diff --git a/mac/.config/nvim/lua/plugins/mason.lua b/mac/.config/nvim/lua/plugins/mason.lua new file mode 100644 index 0000000..3429661 --- /dev/null +++ b/mac/.config/nvim/lua/plugins/mason.lua @@ -0,0 +1,39 @@ +if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE + +-- Customize Mason plugins + +---@type LazySpec +return { + -- use mason-lspconfig to configure LSP installations + { + "williamboman/mason-lspconfig.nvim", + -- overrides `require("mason-lspconfig").setup(...)` + opts = { + ensure_installed = { + "lua_ls", + -- add more arguments for adding more language servers + }, + }, + }, + -- use mason-null-ls to configure Formatters/Linter installation for null-ls sources + { + "jay-babu/mason-null-ls.nvim", + -- overrides `require("mason-null-ls").setup(...)` + opts = { + ensure_installed = { + "stylua", + -- add more arguments for adding more null-ls sources + }, + }, + }, + { + "jay-babu/mason-nvim-dap.nvim", + -- overrides `require("mason-nvim-dap").setup(...)` + opts = { + ensure_installed = { + "python", + -- add more arguments for adding more debuggers + }, + }, + }, +} diff --git a/mac/.config/nvim/lua/plugins/none-ls.lua b/mac/.config/nvim/lua/plugins/none-ls.lua new file mode 100644 index 0000000..2b0ed18 --- /dev/null +++ b/mac/.config/nvim/lua/plugins/none-ls.lua @@ -0,0 +1,24 @@ +if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE + +-- Customize None-ls sources + +---@type LazySpec +return { + "nvimtools/none-ls.nvim", + opts = function(_, opts) + -- opts variable is the default configuration table for the setup function call + -- local null_ls = require "null-ls" + + -- Check supported formatters and linters + -- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/formatting + -- https://github.com/nvimtools/none-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics + + -- Only insert new sources, do not replace the existing ones + -- (If you wish to replace, use `opts.sources = {}` instead of the `list_insert_unique` function) + opts.sources = require("astrocore").list_insert_unique(opts.sources, { + -- Set a formatter + -- null_ls.builtins.formatting.stylua, + -- null_ls.builtins.formatting.prettier, + }) + end, +} diff --git a/mac/.config/nvim/lua/plugins/treesitter.lua b/mac/.config/nvim/lua/plugins/treesitter.lua new file mode 100644 index 0000000..94436aa --- /dev/null +++ b/mac/.config/nvim/lua/plugins/treesitter.lua @@ -0,0 +1,15 @@ +if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE + +-- Customize Treesitter + +---@type LazySpec +return { + "nvim-treesitter/nvim-treesitter", + opts = { + ensure_installed = { + "lua", + "vim", + -- add more arguments for adding more treesitter parsers + }, + }, +} diff --git a/mac/.config/nvim/lua/plugins/user.lua b/mac/.config/nvim/lua/plugins/user.lua new file mode 100644 index 0000000..121089e --- /dev/null +++ b/mac/.config/nvim/lua/plugins/user.lua @@ -0,0 +1,85 @@ +if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE + +-- You can also add or configure plugins by creating files in this `plugins/` folder +-- Here are some examples: + +---@type LazySpec +return { + + -- == Examples of Adding Plugins == + + "andweeb/presence.nvim", + { + "ray-x/lsp_signature.nvim", + event = "BufRead", + config = function() require("lsp_signature").setup() end, + }, + + -- == Examples of Overriding Plugins == + + -- customize alpha options + { + "goolord/alpha-nvim", + opts = function(_, opts) + -- customize the dashboard header + opts.section.header.val = { + " █████ ███████ ████████ ██████ ██████", + "██ ██ ██ ██ ██ ██ ██ ██", + "███████ ███████ ██ ██████ ██ ██", + "██ ██ ██ ██ ██ ██ ██ ██", + "██ ██ ███████ ██ ██ ██ ██████", + " ", + " ███  ██ ██  ██ ██ ███  ███", + " ████  ██ ██  ██ ██ ████  ████", + " ██ ██  ██ ██  ██ ██ ██ ████ ██", + " ██  ██ ██  ██  ██  ██ ██  ██  ██", + " ██   ████   ████   ██ ██      ██", + } + return opts + end, + }, + + -- You can disable default plugins as follows: + { "max397574/better-escape.nvim", enabled = false }, + + -- You can also easily customize additional setup of plugins that is outside of the plugin's setup call + { + "L3MON4D3/LuaSnip", + config = function(plugin, opts) + require "astronvim.plugins.configs.luasnip"(plugin, opts) -- include the default astronvim config that calls the setup call + -- add more custom luasnip configuration such as filetype extend or custom snippets + local luasnip = require "luasnip" + luasnip.filetype_extend("javascript", { "javascriptreact" }) + end, + }, + + { + "windwp/nvim-autopairs", + config = function(plugin, opts) + require "astronvim.plugins.configs.nvim-autopairs"(plugin, opts) -- include the default astronvim config that calls the setup call + -- add more custom autopairs configuration such as custom rules + local npairs = require "nvim-autopairs" + local Rule = require "nvim-autopairs.rule" + local cond = require "nvim-autopairs.conds" + npairs.add_rules( + { + Rule("$", "$", { "tex", "latex" }) + -- don't add a pair if the next character is % + :with_pair(cond.not_after_regex "%%") + -- don't add a pair if the previous character is xxx + :with_pair( + cond.not_before_regex("xxx", 3) + ) + -- don't move right when repeat character + :with_move(cond.none()) + -- don't delete if the next character is xx + :with_del(cond.not_after_regex "xx") + -- disable adding a newline when you press + :with_cr(cond.none()), + }, + -- disable for .vim files, but it work for another filetypes + Rule("a", "a", "-vim") + ) + end, + }, +} diff --git a/mac/.config/nvim/lua/polish.lua b/mac/.config/nvim/lua/polish.lua new file mode 100644 index 0000000..14c38cd --- /dev/null +++ b/mac/.config/nvim/lua/polish.lua @@ -0,0 +1,18 @@ +if true then return end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE + +-- This will run last in the setup process and is a good place to configure +-- things like custom filetypes. This just pure lua so anything that doesn't +-- fit in the normal config locations above can go here + +-- Set up custom filetypes +vim.filetype.add { + extension = { + foo = "fooscript", + }, + filename = { + ["Foofile"] = "fooscript", + }, + pattern = { + ["~/%.config/foo/.*"] = "fooscript", + }, +} diff --git a/mac/.config/nvim/neovim.yml b/mac/.config/nvim/neovim.yml new file mode 100644 index 0000000..b9235ab --- /dev/null +++ b/mac/.config/nvim/neovim.yml @@ -0,0 +1,6 @@ +--- +base: lua51 + +globals: + vim: + any: true diff --git a/mac/.config/nvim/selene.toml b/mac/.config/nvim/selene.toml new file mode 100644 index 0000000..e7005c3 --- /dev/null +++ b/mac/.config/nvim/selene.toml @@ -0,0 +1,8 @@ +std = "neovim" + +[rules] +global_usage = "allow" +if_same_then_else = "allow" +incorrect_standard_library_use = "allow" +mixed_table = "allow" +multiple_statements = "allow" diff --git a/mac/.stow-local-ignore b/mac/.stow-local-ignore new file mode 100644 index 0000000..99ba490 --- /dev/null +++ b/mac/.stow-local-ignore @@ -0,0 +1,29 @@ +setup.sh +wallpaper.png +setDesktopWallpaper.workflow + +# Comments and blank lines are allowed. + +RCS +.+,v + +CVS +\.\#.+ # CVS conflict files / emacs lock files +\.cvsignore + +\.svn +_darcs +\.hg + +\.git +\.gitignore +\.gitmodules + +.+~ # emacs backup files +\#.*\# # emacs autosave files + +^/README.* +^/LICENSE.* +^/COPYING + +.DS_Store diff --git a/mac/.zshrc b/mac/.zshrc new file mode 100644 index 0000000..d83a3e0 --- /dev/null +++ b/mac/.zshrc @@ -0,0 +1,115 @@ +# If you come from bash you might have to change your $PATH. +# export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH + +# Path to your Oh My Zsh installation. +export ZSH="$HOME/.oh-my-zsh" + +# Set name of the theme to load --- if set to "random", it will +# load a random theme each time Oh My Zsh is loaded, in which case, +# to know which specific one was loaded, run: echo $RANDOM_THEME +# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes +ZSH_THEME="robbyrussell" + +# Set list of themes to pick from when loading at random +# Setting this variable when ZSH_THEME=random will cause zsh to load +# a theme from this variable instead of looking in $ZSH/themes/ +# If set to an empty array, this variable will have no effect. +# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) + +# Uncomment the following line to use case-sensitive completion. +# CASE_SENSITIVE="true" + +# Uncomment the following line to use hyphen-insensitive completion. +# Case-sensitive completion must be off. _ and - will be interchangeable. +# HYPHEN_INSENSITIVE="true" + +# Uncomment one of the following lines to change the auto-update behavior +# zstyle ':omz:update' mode disabled # disable automatic updates +# zstyle ':omz:update' mode auto # update automatically without asking +# zstyle ':omz:update' mode reminder # just remind me to update when it's time + +# Uncomment the following line to change how often to auto-update (in days). +# zstyle ':omz:update' frequency 13 + +# Uncomment the following line if pasting URLs and other text is messed up. +# DISABLE_MAGIC_FUNCTIONS="true" + +# Uncomment the following line to disable colors in ls. +# DISABLE_LS_COLORS="true" + +# Uncomment the following line to disable auto-setting terminal title. +# DISABLE_AUTO_TITLE="true" + +# Uncomment the following line to enable command auto-correction. +# ENABLE_CORRECTION="true" + +# Uncomment the following line to display red dots whilst waiting for completion. +# You can also set it to another string to have that shown instead of the default red dots. +# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f" +# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765) +# COMPLETION_WAITING_DOTS="true" + +# Uncomment the following line if you want to disable marking untracked files +# under VCS as dirty. This makes repository status check for large repositories +# much, much faster. +# DISABLE_UNTRACKED_FILES_DIRTY="true" + +# Uncomment the following line if you want to change the command execution time +# stamp shown in the history command output. +# You can set one of the optional three formats: +# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" +# or set a custom format using the strftime function format specifications, +# see 'man strftime' for details. +# HIST_STAMPS="mm/dd/yyyy" + +# Would you like to use another custom folder than $ZSH/custom? +# ZSH_CUSTOM=/path/to/new-custom-folder + +# Which plugins would you like to load? +# Standard plugins can be found in $ZSH/plugins/ +# Custom plugins may be added to $ZSH_CUSTOM/plugins/ +# Example format: plugins=(rails git textmate ruby lighthouse) +# Add wisely, as too many plugins slow down shell startup. +plugins=(git) + +source $ZSH/oh-my-zsh.sh + +# User configuration + +# export MANPATH="/usr/local/man:$MANPATH" + +# You may need to manually set your language environment +# export LANG=en_US.UTF-8 + +# Preferred editor for local and remote sessions +# if [[ -n $SSH_CONNECTION ]]; then +# export EDITOR='vim' +# else +# export EDITOR='nvim' +# fi + +# Compilation flags +# export ARCHFLAGS="-arch $(uname -m)" + +# Set personal aliases, overriding those provided by Oh My Zsh libs, +# plugins, and themes. Aliases can be placed here, though Oh My Zsh +# users are encouraged to define aliases within a top-level file in +# the $ZSH_CUSTOM folder, with .zsh extension. Examples: +# - $ZSH_CUSTOM/aliases.zsh +# - $ZSH_CUSTOM/macos.zsh +# For a full list of active aliases, run `alias`. +# +# Example aliases +# alias zshconfig="mate ~/.zshrc" +# alias ohmyzsh="mate ~/.oh-my-zsh" +PROMPT="🦥%n@%m% ${PROMPT}" +neofetch + +wallpaper () { automator -i "${1}" ~/mac/setDesktopWallpaper.workflow } + +# nvm +export NVM_DIR="$HOME/.nvm" + [ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh" # This loads nvm + [ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion +export PATH="/opt/homebrew/opt/mysql-client@8.4/bin:$PATH" +export PATH="/opt/homebrew/opt/dotnet@8/bin:$PATH" diff --git a/mac/setDesktopWallpaper.workflow/Contents/Info.plist b/mac/setDesktopWallpaper.workflow/Contents/Info.plist new file mode 100644 index 0000000..16870b5 --- /dev/null +++ b/mac/setDesktopWallpaper.workflow/Contents/Info.plist @@ -0,0 +1,8 @@ + + + + + CFBundleName + setDesktopWallpaper + + diff --git a/mac/setDesktopWallpaper.workflow/Contents/QuickLook/Thumbnail.png b/mac/setDesktopWallpaper.workflow/Contents/QuickLook/Thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..ab9536a0d7b554edb67d9a1301110a1d62e7fb9e GIT binary patch literal 18342 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 Y + + + + AMApplicationBuild + 523 + AMApplicationVersion + 2.10 + AMDocumentVersion + 2 + actions + + + action + + AMAccepts + + Container + List + Optional + + Types + + com.apple.cocoa.path + + + AMActionVersion + 1.0.2 + AMApplication + + Finder + + AMParameterProperties + + AMProvides + + Container + List + Types + + com.apple.cocoa.path + + + ActionBundlePath + /System/Library/Automator/Set Desktop Picture.action + ActionName + Set the Desktop Picture + ActionParameters + + BundleIdentifier + com.apple.Automator.SetDesktopPicture + CFBundleVersion + 1.0.2 + CanShowSelectedItemsWhenRun + + CanShowWhenRun + + Category + + AMCategoryFilesAndFolders + + Class Name + Set_Desktop_Picture + InputUUID + A12EFB24-6667-4945-97E7-08581FB71473 + Keywords + + Set + Image + Photo + Display + + OutputUUID + E94419CA-C3CC-4F86-8FA8-7F0657281C55 + UUID + 732537C1-B76D-4486-BF8D-EC32B93A8368 + UnlocalizedApplications + + Finder + + arguments + + conversionLabel + 0 + isViewVisible + 1 + location + 207.000000:68.000000 + + isViewVisible + 1 + + + connectors + + workflowMetaData + + workflowTypeIdentifier + com.apple.Automator.workflow + + + diff --git a/mac/setup.sh b/mac/setup.sh new file mode 100644 index 0000000..0e6217a --- /dev/null +++ b/mac/setup.sh @@ -0,0 +1,23 @@ +# Open terminal and run following command to install brew +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + +# Useful tools +brew install rectangle topgrade stow betterdisplay alt-tab + +# General programs +brew install firefox google-chrome spotify vscodium neofetch + +# Developer tools +brew install git neovim podman podman-desktop docker-compose iterm2 virtualbox + +# oh-my-zsh +sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" +git clone https://github.com/zsh-users/zsh-autosuggestions && mv zsh-autosuggestions .oh-my-zsh/plugins/ +source .oh-my-zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh + +# dotfiles +git clone https://github.com/SindreKjelsrud/dotfiles.git +cp -r dotfiles/mac . +cd mac && stow . --adopt && cd +cp dotfiles/.github/wallpaper/evangelion_unit-01.png mac/ +wallpaper mac/evangelion_unit-01.png