From 86f3f1b6d1037668b56455cc25378453d7e92779 Mon Sep 17 00:00:00 2001 From: Varris Date: Wed, 17 May 2023 20:46:17 +0200 Subject: [PATCH] update, switch to catppuccin macchiato color scheme --- configuration.nix | 43 ++-- flake.nix | 148 ++++++------ user/configs/cava/default.nix | 2 +- user/configs/fish/default.nix | 24 +- user/configs/kvantum/default.nix | 6 +- user/configs/mpd/default.nix | 2 +- user/configs/neovim/default.nix | 11 +- user/configs/neovim/init.lua | 237 +++++++++++--------- user/configs/rofi/catppuccin-macchiato.rasi | 111 +++++++++ user/configs/rofi/default.nix | 12 + user/configs/wayland/foot/default.nix | 46 ++-- user/configs/wayland/fuzzel/default.nix | 35 --- user/configs/wayland/hyprland/default.nix | 45 ++-- user/configs/wayland/mako/default.nix | 9 +- user/configs/wayland/waybar/default.nix | 101 +-------- user/configs/wayland/waybar/macchiato.css | 38 ++++ user/configs/wayland/waybar/style.css | 84 +++++++ user/configs/wayland/wob/default.nix | 9 +- user/configs/xdg-mime.nix | 21 +- user/home.nix | 40 +--- 20 files changed, 554 insertions(+), 470 deletions(-) create mode 100644 user/configs/rofi/catppuccin-macchiato.rasi create mode 100644 user/configs/rofi/default.nix delete mode 100755 user/configs/wayland/fuzzel/default.nix create mode 100644 user/configs/wayland/waybar/macchiato.css create mode 100644 user/configs/wayland/waybar/style.css diff --git a/configuration.nix b/configuration.nix index 22210f6..1173c34 100755 --- a/configuration.nix +++ b/configuration.nix @@ -14,7 +14,7 @@ kernelParams = [ "amdgpu.ppfeaturemask=0xffffffff" - "net.ifnames=0" + "net.ifnames=0" ]; loader = { @@ -51,11 +51,11 @@ wifi.powersave = false; }; - firewall.enable = false; + firewall.enable = false; extraHosts = '' 192.168.0.17 steam.deck - ''; + ''; }; @@ -81,13 +81,13 @@ chaotic.mesa-git.enable = true; # requires --impure for now - hardware.opengl = { - enable = true; - extraPackages = [ pkgs.libvdpau-va-gl ]; + hardware.opengl = { + enable = true; + extraPackages = [ pkgs.libvdpau-va-gl ]; - driSupport = true; - driSupport32Bit = true; - }; + driSupport = true; + driSupport32Bit = true; + }; hardware.steam-hardware.enable = true; programs.steam.enable = true; @@ -136,25 +136,8 @@ # List packages installed in system profile. To search, run: # $ nix search wget environment = { - systemPackages = [ - pkgs.bc - pkgs.distrobox - pkgs.fd - pkgs.file - pkgs.git - pkgs.htop - pkgs.links2 - pkgs.libsForQt5.dolphin - pkgs.libsForQt5.kio-extras - pkgs.lm_sensors - pkgs.nvtop-amd - pkgs.openrgb - pkgs.p7zip - pkgs.pciutils - pkgs.ripgrep - pkgs.unrar - pkgs.unzip - pkgs.usbutils + systemPackages = with pkgs; [ + bc distrobox fd file git htop links2 libsForQt5.dolphin libsForQt5.kio-extras lm_sensors nvtop-amd openrgb p7zip pciutils ripgrep unrar unzip usbutils ]; }; @@ -224,7 +207,7 @@ virtualisation = { podman.enable = true; - # virtualbox.host.enable = true; +# virtualbox.host.enable = true; }; xdg.portal = { @@ -264,7 +247,7 @@ ]; extra-trusted-public-keys = [ "nyx.chaotic.cx-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" - "chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" + "chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8=" ]; }; }; diff --git a/flake.nix b/flake.nix index f0b84fe..552df46 100755 --- a/flake.nix +++ b/flake.nix @@ -13,12 +13,10 @@ url = "github:Misterio77/nix-colors"; }; - # Fish Plugins bobthefish = { url = "github:oh-my-fish/theme-bobthefish"; flake = false; }; - # Fish Plugins End friendly-snippets = { url = "github:rafamadriz/friendly-snippets"; @@ -37,7 +35,6 @@ hyprland = { url = "github:hyprwm/hyprland"; - #url = "github:hyprwm/hyprland"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -74,68 +71,71 @@ chaotic-nyx.url = "github:chaotic-aur/nyx"; + #catppuccin theme repos + catppuccin-hyprland = { url = "github:catppuccin/hyprland"; flake = false; }; + }; outputs = { self, nixpkgs, home-manager, nix-colors, ... }@inputs: let - system = "x86_64-linux"; + system = "x86_64-linux"; - pkgs = import nixpkgs { - inherit system; - config = { - allowUnfree = true; - allowUnsupportedSystem = true; - }; - overlays = [ - self.overlays.default - inputs.chaotic-nyx.overlays.default - inputs.hyprland.overlays.default - inputs.hyprland-contrib.overlays.default - inputs.hyprpaper.overlays.default - inputs.hyprpicker.overlays.default - ]; + pkgs = import nixpkgs { + inherit system; + config = { + allowUnfree = true; + allowUnsupportedSystem = true; + }; + overlays = [ + self.overlays.default + inputs.chaotic-nyx.overlays.default + inputs.hyprland.overlays.default + inputs.hyprland-contrib.overlays.default + inputs.hyprpaper.overlays.default + inputs.hyprpicker.overlays.default + ]; + }; + in + { + overlays.default = final: prev: rec { + nerdfonts = prev.nerdfonts.override { + fonts = [ "JetBrainsMono" ]; }; - in - { - overlays.default = final: prev: rec { - nerdfonts = prev.nerdfonts.override { - fonts = [ "JetBrainsMono" ]; - }; - xwayland = prev.xwayland.overrideAttrs (old: { + xwayland = prev.xwayland.overrideAttrs (old: { version = "9999"; src = inputs.xorg-git; buildInputs = old.buildInputs ++ [ - prev.udev - prev.xorg.libpciaccess + prev.udev + prev.xorg.libpciaccess ]; - }); + }); - waybar_hyprland = prev.waybar.overrideAttrs (old: { + waybar_hyprland = prev.waybar.overrideAttrs (old: { version = "9999"; src = inputs.waybar; preConfigure = '' - sed -i 's/zext_workspace_handle_v1_activate(workspace_handle_);/const std::string command = "hyprctl dispatch workspace " + name_;\n\tsystem(command.c_str());/g' \ - src/modules/wlr/workspace_manager.cpp + sed -i 's/zext_workspace_handle_v1_activate(workspace_handle_);/const std::string command = "hyprctl dispatch workspace " + name_;\n\tsystem(command.c_str());/g' \ + src/modules/wlr/workspace_manager.cpp ''; mesonFlags = old.mesonFlags ++ [ "-Dexperimental=true" "-Dcava=disabled" ]; - }); + }); - steam = prev.steam.override { - extraPkgs = pkgs: [ - pkgs.gnome.zenity + steam = prev.steam.override { + extraPkgs = pkgs: [ + pkgs.gnome.zenity pkgs.xdg-user-dirs - ]; - extraLibraries = pkgs: [ - ]; - }; + ]; + extraLibraries = pkgs: [ + ]; + }; - openmw = prev.openmw.overrideAttrs (old: { + openmw = prev.openmw.overrideAttrs (old: { version = "9999"; src = inputs.openmw-git; @@ -143,38 +143,48 @@ patches = []; dontWrapQtApps = false; - }); - - ncmpcpp = prev.ncmpcpp.override { - visualizerSupport = true; - }; + }); + ncmpcpp = prev.ncmpcpp.override { + visualizerSupport = true; + }; + + catppuccin-kvantum-macchiato = prev.catppuccin-kvantum.override { + accent = "Blue"; + variant = "Macchiato"; + }; + + catppuccin-papirus-folders-macchiato = prev.catppuccin-papirus-folders.override { + accent = "blue"; + flavor = "macchiato"; }; - nixosConfigurations.terra = nixpkgs.lib.nixosSystem - { - inherit system; - inherit pkgs; - specialArgs = { inherit inputs; }; - modules = [ - { - # needed to get tools working that expect a nixpkgs channel to exist - nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; - nix.registry = { nixpkgs.flake = nixpkgs; }; - } - ./configuration.nix - home-manager.nixosModules.home-manager - { - home-manager = { - useUserPackages = true; - users.manuel = import ./user/home.nix; - extraSpecialArgs = { inherit inputs pkgs nix-colors; }; - }; - } - inputs.grub2-themes.nixosModules.default - inputs.chaotic-nyx.nixosModules.default - ]; - }; }; + + nixosConfigurations.terra = nixpkgs.lib.nixosSystem + { + inherit system; + inherit pkgs; + specialArgs = { inherit inputs; }; + modules = [ + { +# needed to get tools working that expect a nixpkgs channel to exist + nix.nixPath = [ "nixpkgs=${nixpkgs}" ]; + nix.registry = { nixpkgs.flake = nixpkgs; }; + } + ./configuration.nix + home-manager.nixosModules.home-manager + { + home-manager = { + useUserPackages = true; + users.manuel = import ./user/home.nix; + extraSpecialArgs = { inherit inputs pkgs nix-colors; }; + }; + } + inputs.grub2-themes.nixosModules.default + inputs.chaotic-nyx.nixosModules.default + ]; + }; + }; } diff --git a/user/configs/cava/default.nix b/user/configs/cava/default.nix index a341ef3..68d29d6 100644 --- a/user/configs/cava/default.nix +++ b/user/configs/cava/default.nix @@ -4,7 +4,7 @@ xdg.configFile."cava/config".text = lib.generators.toINI { } { general = { - bar_width = "2"; + bar_width = "3"; }; }; } diff --git a/user/configs/fish/default.nix b/user/configs/fish/default.nix index 5baac53..0f21681 100755 --- a/user/configs/fish/default.nix +++ b/user/configs/fish/default.nix @@ -9,25 +9,25 @@ enable = true; plugins = [ - { - name = "bobthefish"; - src = inputs.bobthefish; - } ]; interactiveShellInit = '' ${pkgs.any-nix-shell}/bin/any-nix-shell fish --info-right | source - - set -g theme_color_scheme gruvbox - set -g theme_nerd_fonts yes - set -g theme_display_git_default_branch yes - set -g theme_git_default_branches master main - - ''; + ''; functions = { fish_greeting = ""; + fish_prompt = '' + set_color -b blue + set_color black + printf " %s " (prompt_pwd) + set_color -b normal + set_color blue + printf " " + set_color normal + ''; + ec = '' pushd . &> /dev/null cd "${config.home.homeDirectory}/.dotfiles" @@ -52,7 +52,7 @@ }; shellAliases = { nf = "${pkgs.pfetch}/bin/pfetch"; - e = "${pkgs.neovim}/bin/nvim"; + e = "nvim"; }; }; } diff --git a/user/configs/kvantum/default.nix b/user/configs/kvantum/default.nix index 51adb2f..80aeb68 100644 --- a/user/configs/kvantum/default.nix +++ b/user/configs/kvantum/default.nix @@ -13,8 +13,8 @@ platformTheme = "gtk"; }; - xdg.configFile."Kvantum/kvantum.kvconfig".text = "theme=gruvbox-kvantum"; - xdg.configFile."Kvantum/gruvbox-kvantum/gruvbox-kvantum.kvconfig".source = inputs.gruvbox-kvantum + "/gruvbox-kvantum/gruvbox-kvantum.kvconfig"; - xdg.configFile."Kvantum/gruvbox-kvantum/gruvbox-kvantum.svg".source = inputs.gruvbox-kvantum + "/gruvbox-kvantum/gruvbox-kvantum.svg"; + xdg.configFile."Kvantum/kvantum.kvconfig".text = "theme=catppuccin"; + xdg.configFile."Kvantum/catppuccin/catppuccin.kvconfig".source = pkgs.catppuccin-kvantum-macchiato + "/share/Kvantum/Catppuccin-Macchiato-Blue/Catppuccin-Macchiato-Blue.kvconfig"; + xdg.configFile."Kvantum/catppuccin/catppuccin.svg".source = pkgs.catppuccin-kvantum-macchiato + "/share/Kvantum/Catppuccin-Macchiato-Blue/Catppuccin-Macchiato-Blue.svg"; } diff --git a/user/configs/mpd/default.nix b/user/configs/mpd/default.nix index a99c213..78b8757 100755 --- a/user/configs/mpd/default.nix +++ b/user/configs/mpd/default.nix @@ -57,7 +57,7 @@ visualizer_output_name = "my_fifo"; visualizer_in_stereo = false; visualizer_type = "spectrum"; - visualizer_look = "+|"; + visualizer_look = "+│"; mouse_support = false; diff --git a/user/configs/neovim/default.nix b/user/configs/neovim/default.nix index cce5f21..1e1d9ff 100644 --- a/user/configs/neovim/default.nix +++ b/user/configs/neovim/default.nix @@ -4,8 +4,7 @@ enable = true; plugins = with pkgs.vimPlugins; [ - gruvbox-nvim - nvim-web-devicons + catppuccin-nvim lualine-nvim bufferline-nvim nvim-colorizer-lua @@ -19,6 +18,8 @@ telescope-nvim telescope-fzf-native-nvim + nvim-lspconfig + nvim-cmp lspkind-nvim cmp-cmdline @@ -28,6 +29,12 @@ ]; extraLuaConfig = builtins.readFile ./init.lua; + + extraPackages = with pkgs; [ + rnix-lsp + lua-language-server + clang-tools + ]; }; } diff --git a/user/configs/neovim/init.lua b/user/configs/neovim/init.lua index dbf4d48..ab4ae7f 100644 --- a/user/configs/neovim/init.lua +++ b/user/configs/neovim/init.lua @@ -2,8 +2,8 @@ vim.g.mapleader = "," -- 4 space tabs vim.o.expandtab = true -vim.o.shiftwidth = 4 -vim.o.tabstop = 4 +vim.o.shiftwidth = 2 +vim.o.tabstop = 2 vim.o.smartindent = true vim.o.clipboard = "unnamedplus" @@ -16,20 +16,23 @@ vim.o.timeoutlen = 100 vim.wo.number = true vim.wo.relativenumber = true -require("gruvbox").setup() -vim.cmd("colorscheme gruvbox") +require("catppuccin").setup({ + flavour = "macchiato" +}) +vim.cmd.colorscheme "catppuccin" require("lualine").setup({ - options = { - theme = "gruvbox" - } + options = { + theme = "catppuccin" + } }) require("bufferline").setup({ - options = { - show_tab_indicators = true, - separator_style = { "", "" }, - }, + highlights = require("catppuccin.groups.integrations.bufferline").get(), + options = { + show_tab_indicators = true, + separator_style = { "", "" }, + }, }) require("colorizer").setup() @@ -37,115 +40,131 @@ require("nvim-autopairs").setup() require("Comment").setup() require("neo-tree").setup({ - default_component_configs = { - icon = { - folder_empty = "󰜌", - folder_empty_open = "󰜌", - }, - git_status = { - symbols = { - renamed = "󰁕", - unstaged = "󰄱", - }, - }, + default_component_configs = { + icon = { + folder_empty = "󰜌", + folder_empty_open = "󰜌", }, - document_symbols = { - kinds = { - File = { icon = "󰈙", hl = "Tag" }, - Namespace = { icon = "󰌗", hl = "Include" }, - Package = { icon = "󰏖", hl = "Label" }, - Class = { icon = "󰌗", hl = "Include" }, - Property = { icon = "󰆧", hl = "@property" }, - Enum = { icon = "󰒻", hl = "@number" }, - Function = { icon = "󰊕", hl = "Function" }, - String = { icon = "󰀬", hl = "String" }, - Number = { icon = "󰎠", hl = "Number" }, - Array = { icon = "󰅪", hl = "Type" }, - Object = { icon = "󰅩", hl = "Type" }, - Key = { icon = "󰌋", hl = "" }, - Struct = { icon = "󰌗", hl = "Type" }, - Operator = { icon = "󰆕", hl = "Operator" }, - TypeParameter = { icon = "󰊄", hl = "Type" }, - StaticMethod = { icon = '󰠄 ', hl = 'Function' }, - } + git_status = { + symbols = { + renamed = "󰁕", + unstaged = "󰄱", + }, }, + }, + document_symbols = { + kinds = { + File = { icon = "󰈙", hl = "Tag" }, + Namespace = { icon = "󰌗", hl = "Include" }, + Package = { icon = "󰏖", hl = "Label" }, + Class = { icon = "󰌗", hl = "Include" }, + Property = { icon = "󰆧", hl = "@property" }, + Enum = { icon = "󰒻", hl = "@number" }, + Function = { icon = "󰊕", hl = "Function" }, + String = { icon = "󰀬", hl = "String" }, + Number = { icon = "󰎠", hl = "Number" }, + Array = { icon = "󰅪", hl = "Type" }, + Object = { icon = "󰅩", hl = "Type" }, + Key = { icon = "󰌋", hl = "" }, + Struct = { icon = "󰌗", hl = "Type" }, + Operator = { icon = "󰆕", hl = "Operator" }, + TypeParameter = { icon = "󰊄", hl = "Type" }, + StaticMethod = { icon = '󰠄 ', hl = 'Function' }, + } + }, }) vim.keymap.set("n", "", "NeoTreeFocusToggle") require("nvim-treesitter.configs").setup({ - highlight = { enable = true, }, + highlight = { enable = true, }, }) require("which-key").setup() -local builtin = require("telescope.builtin") -vim.keymap.set('n', 'ff', builtin.find_files, { desc = "Find Files" }) -vim.keymap.set('n', 'fg', builtin.live_grep, { desc = "Live Grep" }) -vim.keymap.set('n', 'fb', builtin.buffers, { desc = "List Buffers" }) -vim.keymap.set('n', 'fh', builtin.help_tags, { desc = "Help Tags" }) -vim.keymap.set('n', 'fc', builtin.git_files, { desc = "Find Files (Git)" }) +local ts_builtin = require("telescope.builtin") +vim.keymap.set('n', 'ff', ts_builtin.find_files, { desc = "Find Files" }) +vim.keymap.set('n', 'fg', ts_builtin.live_grep, { desc = "Live Grep" }) +vim.keymap.set('n', 'fb', ts_builtin.buffers, { desc = "List Buffers" }) +vim.keymap.set('n', 'fh', ts_builtin.help_tags, { desc = "Help Tags" }) +vim.keymap.set('n', 'fc', ts_builtin.git_files, { desc = "Find Files (Git)" }) require("telescope").load_extension("fzf") +local lspconfig = require("lspconfig") +lspconfig.rnix.setup {} +lspconfig.lua_ls.setup { + settings = { + Lua = { + diagnostics = { + globals = {"vim"}, + }, + telemetry = { + enable = false, + }, + }, + }, +} +lspconfig.clangd.setup {} + local cmp = require("cmp") local lspkind = require("lspkind") cmp.setup({ - preselect = cmp.PreselectMode.None, - formatting = { - format = lspkind.cmp_format ({ - mode = "symbol", - maxwidth = 50, - ellipsis_char = "...", + preselect = cmp.PreselectMode.None, + formatting = { + format = lspkind.cmp_format ({ + mode = "symbol", + maxwidth = 50, + ellipsis_char = "...", - symbol_map = { - Text = "󰉿", - Method = "󰆧", - Function = "󰊕", - Constructor = "", - Field = "", - Variable = "󰀫", - Class = "", - Interface = "", - Module = "", - Property = "", - Unit = "", - Value = "󰎠", - Enum = "", - Keyword = "󰌋", - Snippet = "", - Color = "󰏘", - File = "󰈙", - Reference = "󰈇", - Folder = "󰉋", - EnumMember = "", - Constant = "󰏿", - Struct = "", - Event = "", - Operator = "󰆕", - TypeParameter = "" - }, + symbol_map = { + Text = "󰉿", + Method = "󰆧", + Function = "󰊕", + Constructor = "", + Field = "", + Variable = "󰀫", + Class = "", + Interface = "", + Module = "", + Property = "", + Unit = "", + Value = "󰎠", + Enum = "", + Keyword = "󰌋", + Snippet = "", + Color = "󰏘", + File = "󰈙", + Reference = "󰈇", + Folder = "󰉋", + EnumMember = "", + Constant = "󰏿", + Struct = "", + Event = "", + Operator = "󰆕", + TypeParameter = "" + }, - }), - }, - - window = { - completion = cmp.config.window.bordered(), - documentation = cmp.config.window.bordered(), - }, - - sources = cmp.config.sources ({ - { name = "buffer" }, - { name = "path" }, - { name = "nvim_lsp" }, }), + }, - mapping = cmp.mapping.preset.insert({ - [''] = cmp.mapping.scroll_docs(-4), - [''] = cmp.mapping.scroll_docs(4), - [''] = cmp.mapping.complete(), - [''] = cmp.mapping.abort(), - [''] = cmp.mapping.confirm({ select = false }), - }), + window = { + completion = cmp.config.window.bordered(), + documentation = cmp.config.window.bordered(), + }, + + sources = cmp.config.sources ({ + { name = "buffer" }, + { name = "path" }, + { name = "nvim_lsp" }, + }), + + mapping = cmp.mapping.preset.insert({ + [''] = cmp.mapping.scroll_docs(-4), + [''] = cmp.mapping.scroll_docs(4), + [''] = cmp.mapping.complete(), + [''] = cmp.mapping.abort(), + [''] = cmp.mapping.confirm({ select = false }), + }), }) local cmp_autopairs = require('nvim-autopairs.completion.cmp') @@ -155,17 +174,17 @@ cmp_autopairs.on_confirm_done() ) cmp.setup.cmdline(":", { - mapping = cmp.mapping.preset.cmdline(), - sources = cmp.config.sources({ - { name = "path" }, - { name = "cmdline" }, - }) + mapping = cmp.mapping.preset.cmdline(), + sources = cmp.config.sources({ + { name = "path" }, + { name = "cmdline" }, + }) }) cmp.setup.cmdline("/", { - mapping = cmp.mapping.preset.cmdline(), - sources = cmp.config.sources({ - { name = "buffer" }, - }) + mapping = cmp.mapping.preset.cmdline(), + sources = cmp.config.sources({ + { name = "buffer" }, + }) }) diff --git a/user/configs/rofi/catppuccin-macchiato.rasi b/user/configs/rofi/catppuccin-macchiato.rasi new file mode 100644 index 0000000..5c5898c --- /dev/null +++ b/user/configs/rofi/catppuccin-macchiato.rasi @@ -0,0 +1,111 @@ +* { + bg-col: #24273a; + bg-col-light: #24273a; + border-col: #24273a; + selected-col: #24273a; + blue: #8aadf4; + fg-col: #cad3f5; + fg-col2: #ed8796; + grey: #6e738d; + + width: 600; + font: "JetBrainsMono Nerd Font 10"; +} + +element-text, element-icon , mode-switcher { + background-color: inherit; + text-color: inherit; +} + +window { + height: 360px; + border: 3px; + border-color: @border-col; + background-color: @bg-col; +} + +mainbox { + background-color: @bg-col; +} + +inputbar { + children: [prompt,entry]; + background-color: @bg-col; + border-radius: 5px; + padding: 2px; +} + +prompt { + background-color: @blue; + padding: 6px; + text-color: @bg-col; + border-radius: 3px; + margin: 20px 0px 0px 20px; +} + +textbox-prompt-colon { + expand: false; + str: ":"; +} + +entry { + padding: 6px; + margin: 20px 0px 0px 10px; + text-color: @fg-col; + background-color: @bg-col; +} + +listview { + border: 0px 0px 0px; + padding: 6px 0px 0px; + margin: 10px 0px 0px 20px; + columns: 2; + lines: 5; + background-color: @bg-col; +} + +element { + padding: 5px; + background-color: @bg-col; + text-color: @fg-col ; +} + +element-icon { + size: 25px; +} + +element selected { + background-color: @selected-col ; + text-color: @fg-col2 ; +} + +mode-switcher { + spacing: 0; + } + +button { + padding: 10px; + background-color: @bg-col-light; + text-color: @grey; + vertical-align: 0.5; + horizontal-align: 0.5; +} + +button selected { + background-color: @bg-col; + text-color: @blue; +} + +message { + background-color: @bg-col-light; + margin: 2px; + padding: 2px; + border-radius: 5px; +} + +textbox { + padding: 6px; + margin: 20px 0px 0px 20px; + text-color: @blue; + background-color: @bg-col-light; +} diff --git a/user/configs/rofi/default.nix b/user/configs/rofi/default.nix new file mode 100644 index 0000000..081d52d --- /dev/null +++ b/user/configs/rofi/default.nix @@ -0,0 +1,12 @@ +{ config, pkgs, ... }: +{ + programs.rofi = { + enable = true; + package = pkgs.rofi-wayland; + terminal = "${pkgs.foot}/bin/foot"; + extraConfig = { + modi = "drun,run,window"; + }; + theme = ./catppuccin-macchiato.rasi; + }; +} diff --git a/user/configs/wayland/foot/default.nix b/user/configs/wayland/foot/default.nix index 62efa6a..f3b59d0 100755 --- a/user/configs/wayland/foot/default.nix +++ b/user/configs/wayland/foot/default.nix @@ -1,44 +1,36 @@ { config, pkgs, inputs, ... }: -let - colors = config.colorScheme.colors; -in { - programs.foot = { enable = true; settings = { main = { font = "JetBrainsMono Nerd Font:pixelsize=12"; - box-drawings-uses-font-glyphs = "yes"; pad = "16x16 center"; horizontal-letter-offset = "0"; vertical-letter-offset = "0"; }; colors = { - alpha = "0.70"; - background = "${colors.base00}"; - foreground = "${colors.base06}"; - regular0 = "${colors.base01}"; - regular1 = "${colors.base08}"; - regular2 = "${colors.base0B}"; - regular3 = "${colors.base0A}"; - regular4 = "${colors.base0D}"; - regular5 = "${colors.base0E}"; - regular6 = "${colors.base0C}"; - regular7 = "${colors.base05}"; - bright0 = "${colors.base02}"; - bright1 = "${colors.base07}"; - bright2 = "${colors.base0B}"; - bright3 = "${colors.base0A}"; - bright4 = "${colors.base0C}"; - bright5 = "${colors.base0E}"; - bright6 = "${colors.base0F}"; - bright7 = "${colors.base06}"; + alpha = "0.90"; - selection-foreground = "000000"; - selection-background = "FFFACD"; - urls = "0087BD"; + foreground = "cad3f5"; # Text + background = "24273a"; # Base + regular0 = "494d64"; # Surface 1 + regular1 = "ed8796"; # red + regular2 = "a6da95"; # green + regular3 = "eed49f"; # yellow + regular4 = "8aadf4"; # blue + regular5 = "f5bde6"; # pink + regular6 = "8bd5ca"; # teal + regular7 = "b8c0e0"; # Subtext 1 + bright0 = "5b6078"; # Surface 2 + bright1 = "ed8796"; # red + bright2 = "a6da95"; # green + bright3 = "eed49f"; # yellow + bright4 = "8aadf4"; # blue + bright5 = "f5bde6"; # pink + bright6 = "8bd5ca"; # teal + bright7 = "a5adcb"; # Subtext 0 }; }; }; diff --git a/user/configs/wayland/fuzzel/default.nix b/user/configs/wayland/fuzzel/default.nix deleted file mode 100755 index 0a1d25d..0000000 --- a/user/configs/wayland/fuzzel/default.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ config, pkgs, lib, ... }: -let - colors = config.colorScheme.colors; -in -{ - xdg.configFile."fuzzel/fuzzel.ini".text = lib.generators.toINIWithGlobalSection { } { - globalSection = { - font = "JetBrainsMono Nerd Font:size=8"; - layer = "overlay"; - terminal = "${pkgs.foot}/bin/foot -e"; - image-size-ratio = "0"; - - width = "80"; - horizontal-pad = "20"; - line-height = "12"; - }; - sections = { - border = { - width = 2; - radius = 0; - }; - - colors = { - background = "${colors.base00}F2"; - text = "${colors.base06}FF"; - selection-text = "${colors.base06}FF"; - selection = "${colors.base01}FF"; - border = "${colors.base0F}FF"; - match = "${colors.base0F}FF"; - selection-match = "${colors.base0F}FF"; - }; - }; - }; -} - diff --git a/user/configs/wayland/hyprland/default.nix b/user/configs/wayland/hyprland/default.nix index 049392c..cbd77dc 100644 --- a/user/configs/wayland/hyprland/default.nix +++ b/user/configs/wayland/hyprland/default.nix @@ -1,6 +1,5 @@ { config, pkgs, lib, inputs, ... }: let - colors = config.colorScheme.colors; wobsock = "/tmp/wob-vol.fifo"; modKey = "SUPER"; @@ -8,8 +7,7 @@ let leftMonitor = "HDMI-A-1"; rightMonitor = "DP-1"; - wallpaper = "/mnt/hdd/Wallpapers/florest-stair2.jpg"; - + wallpaper = "/mnt/hdd/Wallpapers/flat-landscape-minimalism-trees-sunset-river-artwork-22750-.jpeg"; wob-voldaemon = pkgs.writeShellScriptBin "wob-volumeindicator.sh" '' if pgrep "wob"; then @@ -25,21 +23,6 @@ let echo "wob: started" ''; - passmenu = pkgs.writeShellScriptBin "passmenu.sh" '' - shopt -s nullglob globstar - - prefix=''${PASSWORD_STORE_DIR-~/.password-store} - password_files=( "$prefix"/**/*.gpg ) - password_files=( "''${password_files[@]#"$prefix"/}" ) - password_files=( "''${password_files[@]%.gpg}" ) - - password=$(printf '%s\n' "''${password_files[@]}" | ${pkgs.fuzzel}/bin/fuzzel -d -p "pass: " "$@") - - [[ -n $password ]] || exit - - pass show -c "$password" 2>/dev/null - ''; - xwaylandSetPrimary = pkgs.writeShellScriptBin "xwayland-setprimary.sh" '' while true; do DSP=$(${pkgs.xorg.xrandr}/bin/xrandr | awk '/2560x1440/ {print $1}' | head -n 1) @@ -51,7 +34,7 @@ let ''; killprocess = pkgs.writeShellScriptBin "killprocess.sh" '' - ps -x -o pid=,comm= | column -t -o " " | ${pkgs.fuzzel}/bin/fuzzel -d -p "kill process: " | awk '{print $1}' | uniq | xargs -r kill -9 + ps -x -o pid=,comm= | column -t -o " " | ${pkgs.rofi}/bin/rofi -dmenu -p "kill process: " | awk '{print $1}' | uniq | xargs -r kill -9 ''; in @@ -61,14 +44,14 @@ in ../waybar ../foot ../wob - ../fuzzel ../mako ]; wayland.windowManager.hyprland = { enable = true; - - extraConfig = '' + extraConfig = lib.concatStrings [ + (builtins.readFile (inputs.catppuccin-hyprland + "/themes/macchiato.conf")) + '' monitor=${leftMonitor}, 1920x1080@60, 0x0, 1 monitor=${rightMonitor}, 2560x1440@144, 1920x0, 1 @@ -92,9 +75,8 @@ in general { gaps_in = 16 border_size = 4 - - col.active_border = rgba(${colors.base0F}FF) - col.inactive_border = rgba(${colors.base00}B3) + col.active_border = 0xff$surface2Alpha 0xff$surface0alpha 45deg + col.inactive_border = 0xff$baseAlpha } dwindle { @@ -121,10 +103,9 @@ in blur_new_optimizations = on drop_shadow = yes - shadow_range = 12 + shadow_range = 8 shadow_render_power = 1 - shadow_offset = 5 5 - col.shadow = rgba(${colors.base00}99) + col.shadow = $base } animations { @@ -177,7 +158,7 @@ in bind = ${modKey}, F, fullscreen bind = ${modKey} SHIFT, Q, killactive - bind = ${modKey}, d, exec, ${pkgs.fuzzel}/bin/fuzzel + bind = ${modKey}, d, exec, ${pkgs.rofi}/bin/rofi -show drun -show-icons bind = ${modKey}, q, exec, ${pkgs.firefox}/bin/firefox @@ -189,7 +170,6 @@ in bind = CTRL, Space, exec, ${pkgs.mako}/bin/makoctl dismiss bind = CTRL, grave, exec, ${pkgs.mako}/bin/makoctl restore - bind = ${modKey} SHIFT, p, exec, ${passmenu}/bin/passmenu.sh bind = ${modKey} SHIFT, o, exec, ${killprocess}/bin/killprocess.sh bind = MOD5, F9, exec, ${pkgs.mpc-cli}/bin/mpc stop @@ -209,9 +189,10 @@ in windowrulev2 = fullscreen, class:^(hl2_linux)$ windowrulev2 = float, class:^(org.kde.dolphin)$ - ''; + '' + ]; }; - home.packages = [ pkgs.wl-clipboard pkgs.wl-clipboard-x11 pkgs.hyprpicker pkgs.hyprpaper ]; + home.packages = [ pkgs.wl-clipboard pkgs.wl-clipboard-x11 pkgs.hyprpicker pkgs.hyprpaper pkgs.hyprprop ]; } diff --git a/user/configs/wayland/mako/default.nix b/user/configs/wayland/mako/default.nix index 026498a..150a304 100755 --- a/user/configs/wayland/mako/default.nix +++ b/user/configs/wayland/mako/default.nix @@ -1,7 +1,4 @@ { config, pkgs, ... }: -let - colors = config.colorScheme.colors; -in { services.mako = { enable = true; @@ -11,8 +8,10 @@ in width = 440; height = 320; - backgroundColor = "#${colors.base00}B3"; - borderColor = "#${colors.base01}"; + backgroundColor = "#24273aB3"; + borderColor = "#8aadf4"; + textColor = "#cad3f5"; + progressColor = "over #363a4f" ; borderRadius = 10; borderSize = 2; diff --git a/user/configs/wayland/waybar/default.nix b/user/configs/wayland/waybar/default.nix index 05e1903..294677f 100755 --- a/user/configs/wayland/waybar/default.nix +++ b/user/configs/wayland/waybar/default.nix @@ -38,14 +38,14 @@ in position = "top"; height = 32; - modules-left = [ "custom/blank" "hyprland/window" ]; - modules-center = [ "wlr/workspaces" "custom/blank" ]; + modules-left = [ "wlr/workspaces" "custom/blank" "hyprland/window" ]; + # modules-center = [ "wlr/workspaces" "custom/blank" ]; modules-right = [ "custom/ds-battery" "wireplumber" + "custom/blank" "mpd" "tray" - "custom/blank" "clock" "custom/blank" ]; @@ -60,12 +60,6 @@ in on-click = "activate"; on-scroll-up = "hyprctl dispatch workspace e+1"; on-scroll-down = "hyprctl dispatch workspace e-1"; - - format = "{icon}"; - format-icons = { - active = ""; - default = ""; - }; }; "hyprland/window" = { @@ -111,90 +105,11 @@ in }]; - style = '' - @define-color foreground #${colors.base06}; - @define-color background rgba(${backgroundColorRGB},${backgroundAlpha}); - @define-color box-bg #${colors.base01}; - @define-color workspace-bg #${colors.base00}; - - * { - font-family: ${font}; - font-size: ${fontSize}; - } - - window#waybar { - background: @background; - color: @foreground; - } - - #wireplumber, - #mpd, - #custom-waybar-mpris, - #custom-ds-battery, - #window, - #keyboard-state, - #tray, - #clock { - background: @box-bg; - padding: 0px 10px 0px 10px; - margin: 5px 10px 5px 0px; - border-radius: 10px; - } - - #wireplumber { - margin: 5px 4px 5px 0px; - border-radius: 10px 0px 0px 10px; - } - - #mpd { - border-radius: 0px 10px 10px 0px; - } - - #tray, #clock { - margin: 5px 0px 5px 0px; - } - - window#waybar.empty #window { - background: @background; - } - - #workspaces { - margin: 5px 0px 5px 0px; - padding-left: 10px; - } - - #workspaces button { - color: @foreground; - background: @box-bg; - padding: 0px 5px; - } - - #workspaces button:last-child { - background: @box-bg; - border-radius: 0px 10px 10px 0px; - } - - #workspaces button:first-child { - background: @box-bg; - border-radius: 10px 0px 0px 10px; - } - - #workspaces button:only-child { - background: @box-bg; - border-radius: 10px 10px 10px 10px; - } - - #workspaces button.active { - color: @foreground; - background: @box-bg; - font-weight: bold; - } - - #workspaces button.unfocused { - color: @foreground; - background: @box-bg; - } - ''; + style = lib.concatStrings [ + (builtins.readFile ./macchiato.css) + "\n" + (builtins.readFile ./style.css) + ]; }; } diff --git a/user/configs/wayland/waybar/macchiato.css b/user/configs/wayland/waybar/macchiato.css new file mode 100644 index 0000000..e0623d2 --- /dev/null +++ b/user/configs/wayland/waybar/macchiato.css @@ -0,0 +1,38 @@ +/* +* +* Catppuccin Macchiato palette +* Maintainer: rubyowo +* +*/ + +/* @define-color base #24273a; */ +@define-color base rgba(36,39,58,0.7); +@define-color mantle #1e2030; +@define-color crust #181926; + +@define-color text #cad3f5; +@define-color subtext0 #a5adcb; +@define-color subtext1 #b8c0e0; + +@define-color surface0 #363a4f; +@define-color surface1 #494d64; +@define-color surface2 #5b6078; + +@define-color overlay0 #6e738d; +@define-color overlay1 #8087a2; +@define-color overlay2 #939ab7; + +@define-color blue #8aadf4; +@define-color lavender #b7bdf8; +@define-color sapphire #7dc4e4; +@define-color sky #91d7e3; +@define-color teal #8bd5ca; +@define-color green #a6da95; +@define-color yellow #eed49f; +@define-color peach #f5a97f; +@define-color maroon #ee99a0; +@define-color red #ed8796; +@define-color mauve #c6a0f6; +@define-color pink #f5bde6; +@define-color flamingo #f0c6c6; +@define-color rosewater #f4dbd6; diff --git a/user/configs/wayland/waybar/style.css b/user/configs/wayland/waybar/style.css new file mode 100644 index 0000000..1fd8db9 --- /dev/null +++ b/user/configs/wayland/waybar/style.css @@ -0,0 +1,84 @@ +* { + font-family: "JetBrainsMono Nerd Font"; + font-size: 12; +} + +window#waybar { + background: @base; + color: @text; +} + +#wireplumber, +#mpd, +#custom-waybar-mpris, +#custom-ds-battery, +#window, +#keyboard-state, +#tray, +#clock, +#custom-swaync { + background: @surface1; + padding: 0px 10px 0px 10px; + margin: 5px 10px 5px 0px; + border-radius: 10px; +} + +#window { + margin: 5px 10px 5px 10px; +} + +#wireplumber { + margin: 5px 0px 5px 0px; + border-radius: 10px 0px 0px 10px; +} + +#mpd { + border-radius: 0px 10px 10px 0px; +} + +#tray { + margin: 5px 10px 5px 0px; +} + +#clock { + margin: 5px 10px 5px 0; +} + +#workspaces { + margin: 5px 0px 5px 0px; + padding-left: 10px; +} + +#workspaces button { + color: @text; + background: @surface1; + padding: 0px 5px; + border-radius: 0; +} + +#workspaces button:last-child { + background: @surface1; + border-radius: 0px 10px 10px 0px; +} + +#workspaces button:first-child { + background: @surface1; + border-radius: 10px 0px 0px 10px; +} + +#workspaces button:only-child { + background: @surface1; + border-radius: 10px 10px 10px 10px; +} + +#workspaces button.active { + color: @mantle; + background: @blue; + font-weight: bold; +} + +#workspaces button.unfocused { + color: @text; + background: @surface1; +} + diff --git a/user/configs/wayland/wob/default.nix b/user/configs/wayland/wob/default.nix index 035903d..02534f4 100755 --- a/user/configs/wayland/wob/default.nix +++ b/user/configs/wayland/wob/default.nix @@ -1,17 +1,14 @@ { config, pkgs, lib, ... }: -let - colors = config.colorScheme.colors; -in { xdg.configFile."wob/wob.ini".text = lib.generators.toINIWithGlobalSection { } { globalSection = { height = "40"; border_size = "2"; - border_color = "${colors.base0F}FF"; + border_color = "5A5F78FF"; - background_color = "${colors.base00}FF"; - bar_color = "${colors.base0F}FF"; + background_color = "24273AFF"; + bar_color = "8AADF4FF"; }; sections = { }; diff --git a/user/configs/xdg-mime.nix b/user/configs/xdg-mime.nix index b08c93c..c52d86a 100644 --- a/user/configs/xdg-mime.nix +++ b/user/configs/xdg-mime.nix @@ -3,22 +3,13 @@ xdg.mimeApps = { enable = true; - - associations.added = { - "text/html" = "firefox.desktop"; - "x-scheme-handler/http" = "firefox.desktop"; - "x-scheme-handler/https" = "firefox.desktop"; - "x-scheme-handler/about" = "firefox.desktop"; - "x-scheme-handler/unknown" = "firefox.desktop"; - }; - - defaultApplications = { - "text/html" = "firefox.desktop"; - "x-scheme-handler/http" = "firefox.desktop"; - "x-scheme-handler/https" = "firefox.desktop"; - "x-scheme-handler/about" = "firefox.desktop"; - "x-scheme-handler/unknown" = "firefox.desktop"; + "inode/directory" = "org.kde.dolphin.desktop"; + "text/plain" = "nvim.desktop"; + + "image/jpeg" = "sxiv.desktop"; + "image/png" = "sxiv.desktop"; + "image/svg" = "sxiv.desktop"; }; }; } diff --git a/user/home.nix b/user/home.nix index 6cb112e..a91e5b9 100755 --- a/user/home.nix +++ b/user/home.nix @@ -1,13 +1,10 @@ { config, pkgs, inputs, nix-colors, ... }: -let -colors = config.colorScheme.colors; -in { imports = [ - nix-colors.homeManagerModule ./configs/beets ./configs/cava ./configs/wayland/hyprland + ./configs/rofi ./configs/fish ./configs/mpd ./configs/mpv @@ -74,8 +71,6 @@ in WLR_NO_HARDWARE_CURSORS = "1"; }; - colorScheme = nix-colors.colorSchemes.gruvbox-dark-medium; - fonts.fontconfig.enable = true; programs.keychain = { @@ -103,8 +98,13 @@ in gtk = { enable = true; theme = { - package = pkgs.gruvbox-dark-gtk; - name = "gruvbox-dark"; + package = pkgs.catppuccin-gtk.override { + accents = [ "blue" ]; + size = "standard"; + tweaks = []; + variant = "macchiato"; + }; + name = "Catppuccin-Macchiato-Standard-Blue-Dark"; }; font = { @@ -113,8 +113,8 @@ in }; iconTheme = { - package = pkgs.gruvbox-dark-icons-gtk; - name = "oomox-gruvbox-dark"; + package = pkgs.catppuccin-papirus-folders-macchiato; + name = "Papirus"; }; cursorTheme = { @@ -145,26 +145,6 @@ in enable = true; enableFishIntegration = true; }; - - zellij = { - enable = true; - settings = { - theme = "gruvbox-dark"; - themes.gruvbox-dark = { - fg = "#${colors.base05}"; - bg = "#${colors.base00}"; - black = "#${colors.base01}"; - red = "#${colors.base08}"; - green = "#${colors.base0B}"; - yellow = "#${colors.base0A}"; - blue = "#${colors.base0D}"; - magenta = "#${colors.base0E}"; - cyan = "#${colors.base0C}"; - white = "#${colors.base07}"; - orange = "#${colors.base0F}"; - }; - }; - }; }; services.gnome-keyring.enable = true;