catppuccin, khard, khal, vdirsyncer with Google, cleaning, etc.
This commit is contained in:
parent
b393ed134b
commit
72697b966b
5 changed files with 412 additions and 47 deletions
315
catppuccin.yml
Normal file
315
catppuccin.yml
Normal file
|
|
@ -0,0 +1,315 @@
|
|||
color_schemes:
|
||||
|
||||
latte: &latte
|
||||
|
||||
# Default colors
|
||||
primary:
|
||||
background: '#eff1f5' # base
|
||||
foreground: '#4c4f69' # text
|
||||
# Bright and dim foreground colors
|
||||
dim_foreground: '#4c4f69' # text
|
||||
bright_foreground: '#4c4f69' # text
|
||||
|
||||
# Cursor colors
|
||||
cursor:
|
||||
text: '#eff1f5' # base
|
||||
cursor: '#dc8a78' # rosewater
|
||||
vi_mode_cursor:
|
||||
text: '#eff1f5' # base
|
||||
cursor: '#7287fd' # lavender
|
||||
|
||||
# Search colors
|
||||
search:
|
||||
matches:
|
||||
foreground: '#eff1f5' # base
|
||||
background: '#6c6f85' # subtext0
|
||||
focused_match:
|
||||
foreground: '#eff1f5' # base
|
||||
background: '#40a02b' # green
|
||||
bar:
|
||||
foreground: '#eff1f5' # base
|
||||
background: '#6c6f85' # subtext0
|
||||
|
||||
# Keyboard regex hints
|
||||
hints:
|
||||
start:
|
||||
foreground: '#eff1f5' # base
|
||||
background: '#df8e1d' # yellow
|
||||
end:
|
||||
foreground: '#eff1f5' # base
|
||||
background: '#6c6f85' # subtext0
|
||||
|
||||
# Selection colors
|
||||
selection:
|
||||
text: '#eff1f5' # base
|
||||
background: '#dc8a78' # rosewater
|
||||
|
||||
# Normal colors
|
||||
normal:
|
||||
black: '#4C4F69' # text
|
||||
red: '#D20F39' # red
|
||||
green: '#40A02B' # green
|
||||
yellow: '#DF8E1D' # yellow
|
||||
blue: '#1E66F5' # blue
|
||||
magenta: '#EA76CB' # pink
|
||||
cyan: '#179299' # teal
|
||||
white: '#ACB0BE' # surface2
|
||||
|
||||
# Bright colors
|
||||
bright:
|
||||
black: '#4C4F69' # text
|
||||
red: '#D20F39' # red
|
||||
green: '#40A02B' # green
|
||||
yellow: '#DF8E1D' # yellow
|
||||
blue: '#1E66F5' # blue
|
||||
magenta: '#EA76CB' # pink
|
||||
cyan: '#179299' # teal
|
||||
white: '#ACB0BE' # surface2
|
||||
|
||||
# Dim colors
|
||||
dim:
|
||||
black: '#4C4F69' # text
|
||||
red: '#D20F39' # red
|
||||
green: '#40A02B' # green
|
||||
yellow: '#DF8E1D' # yellow
|
||||
blue: '#1E66F5' # blue
|
||||
magenta: '#EA76CB' # pink
|
||||
cyan: '#179299' # teal
|
||||
white: '#ACB0BE' # surface2
|
||||
|
||||
|
||||
|
||||
frappe: &frappe
|
||||
|
||||
# Default colors
|
||||
primary:
|
||||
background: '#303446' # base
|
||||
foreground: '#c6d0f5' # text
|
||||
# Bright and dim foreground colors
|
||||
dim_foreground: '#c6d0f5' # text
|
||||
bright_foreground: '#c6d0f5' # text
|
||||
|
||||
# Cursor colors
|
||||
cursor:
|
||||
text: '#303446' # base
|
||||
cursor: '#f2d5cf' # rosewater
|
||||
vi_mode_cursor:
|
||||
text: '#303446' # base
|
||||
cursor: '#babbf1' # lavender
|
||||
|
||||
# Search colors
|
||||
search:
|
||||
matches:
|
||||
foreground: '#303446' # base
|
||||
background: '#a5adce' # subtext0
|
||||
focused_match:
|
||||
foreground: '#303446' # base
|
||||
background: '#a6d189' # green
|
||||
bar:
|
||||
foreground: '#303446' # base
|
||||
background: '#a5adce' # subtext0
|
||||
|
||||
# Keyboard regex hints
|
||||
hints:
|
||||
start:
|
||||
foreground: '#303446' # base
|
||||
background: '#e5c890' # yellow
|
||||
end:
|
||||
foreground: '#303446' # base
|
||||
background: '#a5adce' # subtext0
|
||||
|
||||
# Selection colors
|
||||
selection:
|
||||
text: '#303446' # base
|
||||
background: '#f2d5cf' # rosewater
|
||||
|
||||
# Normal colors
|
||||
normal:
|
||||
black: '#51576d' # surface1
|
||||
red: '#e78284' # red
|
||||
green: '#a6d189' # green
|
||||
yellow: '#e5c890' # yellow
|
||||
blue: '#8caaee' # blue
|
||||
magenta: '#f4b8e4' # pink
|
||||
cyan: '#81c8be' # teal
|
||||
white: '#b5bfe2' # subtext1
|
||||
|
||||
# Bright colors
|
||||
bright:
|
||||
black: '#51576d' # surface1
|
||||
red: '#e78284' # red
|
||||
green: '#a6d189' # green
|
||||
yellow: '#e5c890' # yellow
|
||||
blue: '#8caaee' # blue
|
||||
magenta: '#f4b8e4' # pink
|
||||
cyan: '#81c8be' # teal
|
||||
white: '#b5bfe2' # subtext1
|
||||
|
||||
# Dim colors
|
||||
dim:
|
||||
black: '#51576d' # surface1
|
||||
red: '#e78284' # red
|
||||
green: '#a6d189' # green
|
||||
yellow: '#e5c890' # yellow
|
||||
blue: '#8caaee' # blue
|
||||
magenta: '#f4b8e4' # pink
|
||||
cyan: '#81c8be' # teal
|
||||
white: '#b5bfe2' # subtext1
|
||||
|
||||
|
||||
|
||||
macchiato: &macchiato
|
||||
|
||||
# Default colors
|
||||
primary:
|
||||
background: '#24273a' # base
|
||||
foreground: '#cad3f5' # text
|
||||
# Bright and dim foreground colors
|
||||
dim_foreground: '#cad3f5' # text
|
||||
bright_foreground: '#cad3f5' # text
|
||||
|
||||
# Cursor colors
|
||||
cursor:
|
||||
text: '#24273a' # base
|
||||
cursor: '#f4dbd6' # rosewater
|
||||
vi_mode_cursor:
|
||||
text: '#24273a' # base
|
||||
cursor: '#b7bdf8' # lavender
|
||||
|
||||
# Search colors
|
||||
search:
|
||||
matches:
|
||||
foreground: '#24273a' # base
|
||||
background: '#a5adcb' # subtext0
|
||||
focused_match:
|
||||
foreground: '#24273a' # base
|
||||
background: '#a6da95' # green
|
||||
bar:
|
||||
foreground: '#24273a' # base
|
||||
background: '#a5adcb' # subtext0
|
||||
|
||||
# Keyboard regex hints
|
||||
hints:
|
||||
start:
|
||||
foreground: '#24273a' # base
|
||||
background: '#eed49f' # yellow
|
||||
end:
|
||||
foreground: '#24273a' # base
|
||||
background: '#a5adcb' # subtext0
|
||||
|
||||
# Selection colors
|
||||
selection:
|
||||
text: '#24273a' # base
|
||||
background: '#f4dbd6' # rosewater
|
||||
|
||||
# Normal colors
|
||||
normal:
|
||||
black: '#494d64' # surface1
|
||||
red: '#ed8796' # red
|
||||
green: '#a6da95' # green
|
||||
yellow: '#eed49f' # yellow
|
||||
blue: '#8aadf4' # blue
|
||||
magenta: '#f5bde6' # pink
|
||||
cyan: '#8bd5ca' # teal
|
||||
white: '#b8c0e0' # subtext1
|
||||
|
||||
# Bright colors
|
||||
bright:
|
||||
black: '#494d64' # surface1
|
||||
red: '#ed8796' # red
|
||||
green: '#a6da95' # green
|
||||
yellow: '#eed49f' # yellow
|
||||
blue: '#8aadf4' # blue
|
||||
magenta: '#f5bde6' # pink
|
||||
cyan: '#8bd5ca' # teal
|
||||
white: '#b8c0e0' # subtext1
|
||||
|
||||
# Dim colors
|
||||
dim:
|
||||
black: '#494d64' # surface1
|
||||
red: '#ed8796' # red
|
||||
green: '#a6da95' # green
|
||||
yellow: '#eed49f' # yellow
|
||||
blue: '#8aadf4' # blue
|
||||
magenta: '#f5bde6' # pink
|
||||
cyan: '#8bd5ca' # teal
|
||||
white: '#b8c0e0' # subtext1
|
||||
|
||||
|
||||
|
||||
mocha: &mocha
|
||||
|
||||
# Default colors
|
||||
primary:
|
||||
background: '#1e1e2e' # base
|
||||
foreground: '#cdd6f4' # text
|
||||
# Bright and dim foreground colors
|
||||
dim_foreground: '#cdd6f4' # text
|
||||
bright_foreground: '#cdd6f4' # text
|
||||
|
||||
# Cursor colors
|
||||
cursor:
|
||||
text: '#1e1e2e' # base
|
||||
cursor: '#f5e0dc' # rosewater
|
||||
vi_mode_cursor:
|
||||
text: '#1e1e2e' # base
|
||||
cursor: '#b4befe' # lavender
|
||||
|
||||
# Search colors
|
||||
search:
|
||||
matches:
|
||||
foreground: '#1e1e2e' # base
|
||||
background: '#a6adc8' # subtext0
|
||||
focused_match:
|
||||
foreground: '#1e1e2e' # base
|
||||
background: '#a6e3a1' # green
|
||||
bar:
|
||||
foreground: '#1e1e2e' # base
|
||||
background: '#a6adc8' # subtext0
|
||||
|
||||
# Keyboard regex hints
|
||||
hints:
|
||||
start:
|
||||
foreground: '#1e1e2e' # base
|
||||
background: '#f9e2af' # yellow
|
||||
end:
|
||||
foreground: '#1e1e2e' # base
|
||||
background: '#a6adc8' # subtext0
|
||||
|
||||
# Selection colors
|
||||
selection:
|
||||
text: '#1e1e2e' # base
|
||||
background: '#f5e0dc' # rosewater
|
||||
|
||||
# Normal colors
|
||||
normal:
|
||||
black: '#45475a' # surface1
|
||||
red: '#f38ba8' # red
|
||||
green: '#a6e3a1' # green
|
||||
yellow: '#f9e2af' # yellow
|
||||
blue: '#89b4fa' # blue
|
||||
magenta: '#f5c2e7' # pink
|
||||
cyan: '#94e2d5' # teal
|
||||
white: '#bac2de' # subtext1
|
||||
|
||||
# Bright colors
|
||||
bright:
|
||||
black: '#45475a' # surface1
|
||||
red: '#f38ba8' # red
|
||||
green: '#a6e3a1' # green
|
||||
yellow: '#f9e2af' # yellow
|
||||
blue: '#89b4fa' # blue
|
||||
magenta: '#f5c2e7' # pink
|
||||
cyan: '#94e2d5' # teal
|
||||
white: '#bac2de' # subtext1
|
||||
|
||||
# Dim colors
|
||||
dim:
|
||||
black: '#45475a' # surface1
|
||||
red: '#f38ba8' # red
|
||||
green: '#a6e3a1' # green
|
||||
yellow: '#f9e2af' # yellow
|
||||
blue: '#89b4fa' # blue
|
||||
magenta: '#f5c2e7' # pink
|
||||
cyan: '#94e2d5' # teal
|
||||
white: '#bac2de' # subtext1
|
||||
16
home-cli.nix
16
home-cli.nix
|
|
@ -5,9 +5,9 @@ let
|
|||
in
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
ripgrep fd wget mosh w3m nnn urlview hexyl httpie timg sox du-dust duplicati bitwarden-cli gnupg gpg-tui rage sd eva glow restic spotify-tui spotifyd slides manix amfora weechat duf procs pandoc magic-wormhole qrcp pastel jq jo fx jc miller visidata sc-im bandwhich nixfmt shellcheck fontconfig cacert
|
||||
ripgrep fd wget mosh w3m nnn urlview hexyl httpie timg sox du-dust duplicati bitwarden-cli gnupg gpg-tui rage sd eva glow restic spotify-tui spotifyd slides manix amfora weechat duf procs pandoc magic-wormhole qrcp pastel jq jo fx jc miller visidata sc-im bandwhich nixfmt shellcheck fontconfig cacert vale
|
||||
nodejs deno yarn nodePackages.typescript-language-server nodePackages.stylelint nodePackages.js-beautify nodePackages.expo-cli
|
||||
ocaml dune_2 ocamlPackages.utop ocamlPackages.ocp-indent ocamlPackages.merlin
|
||||
# ocaml dune_2 ocamlPackages.utop ocamlPackages.ocp-indent ocamlPackages.merlin
|
||||
rustc go cmake # racket-minimal
|
||||
ghc cargo haskell-language-server hlint haskellPackages.hoogle
|
||||
ispell aspell aspellDicts.en aspellDicts.en-computers aspellDicts.en-science aspellDicts.fr aspellDicts.de aspellDicts.eo aspellDicts.es
|
||||
|
|
@ -104,7 +104,15 @@ in
|
|||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
defaultCommand = "fd --type file --color=always";
|
||||
defaultOptions = [ "--height 40%" "--border" "--ansi" ];
|
||||
defaultOptions = [
|
||||
"--height 40%"
|
||||
"--border"
|
||||
"--ansi"
|
||||
"--color bg+:#302D41,bg:#1E1E2E,spinner:#F8BD96,hl:#F28FAD"
|
||||
"--color=fg:#D9E0EE,header:#F28FAD,info:#DDB6F2,pointer:#F8BD96"
|
||||
"--color=marker:#F8BD96,fg+:#F2CDCD,prompt:#DDB6F2,hl+:#F28FAD"
|
||||
];
|
||||
|
||||
fileWidgetCommand = "fd --type file --color=always";
|
||||
fileWidgetOptions = [ "--min-height 30 --preview-window noborder --preview '(bat --style=numbers,changes --wrap never --color always {} || cat {} || tree -C {}) 2> /dev/null'" ];
|
||||
};
|
||||
|
|
@ -157,6 +165,8 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
programs.gh.enable = true;
|
||||
|
||||
programs.lazygit.enable = true;
|
||||
|
||||
programs.gitui = {
|
||||
|
|
|
|||
61
home-gui.nix
61
home-gui.nix
|
|
@ -30,36 +30,37 @@
|
|||
{ key = "B"; mods = "Alt"; chars = "\\x1bb"; }
|
||||
# - { key: B, mods: Alt, chars: "\x1bb" }
|
||||
];
|
||||
colors = { # Nord
|
||||
primary = {
|
||||
background = "0x2E3440";
|
||||
foreground = "0xD8DEE9";
|
||||
};
|
||||
cursor = {
|
||||
text = "0x2E3440";
|
||||
cursor = "0xD8DEE9";
|
||||
};
|
||||
normal = {
|
||||
black = "0x3B4252";
|
||||
red = "0xBF616A";
|
||||
green = "0xA3BE8C";
|
||||
yellow = "0xEBCB8B";
|
||||
blue = "0x81A1C1";
|
||||
magenta = "0xB48EAD";
|
||||
cyan = "0x88C0D0";
|
||||
white = "0xE5E9F0";
|
||||
};
|
||||
bright = {
|
||||
black = "0x4C566A";
|
||||
red = "0xBF616A";
|
||||
green = "0xA3BE8C";
|
||||
yellow = "0xEBCB8B";
|
||||
blue = "0x81A1C1";
|
||||
magenta = "0xB48EAD";
|
||||
cyan = "0x8FBCBB";
|
||||
white = "0xECEFF4";
|
||||
};
|
||||
};
|
||||
|
||||
# colors = { # Nord
|
||||
# primary = {
|
||||
# background = "0x2E3440";
|
||||
# foreground = "0xD8DEE9";
|
||||
# };
|
||||
# cursor = {
|
||||
# text = "0x2E3440";
|
||||
# cursor = "0xD8DEE9";
|
||||
# };
|
||||
# normal = {
|
||||
# black = "0x3B4252";
|
||||
# red = "0xBF616A";
|
||||
# green = "0xA3BE8C";
|
||||
# yellow = "0xEBCB8B";
|
||||
# blue = "0x81A1C1";
|
||||
# magenta = "0xB48EAD";
|
||||
# cyan = "0x88C0D0";
|
||||
# white = "0xE5E9F0";
|
||||
# };
|
||||
# bright = {
|
||||
# black = "0x4C566A";
|
||||
# red = "0xBF616A";
|
||||
# green = "0xA3BE8C";
|
||||
# yellow = "0xEBCB8B";
|
||||
# blue = "0x81A1C1";
|
||||
# magenta = "0xB48EAD";
|
||||
# cyan = "0x8FBCBB";
|
||||
# white = "0xECEFF4";
|
||||
# };
|
||||
# };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,23 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
secrets = import ./secrets.nix;
|
||||
in
|
||||
{
|
||||
home.packages = with pkgs; [ aerc vdirsyncer imapnotify ];
|
||||
home.packages = with pkgs; [ aerc vdirsyncer khal khard imapnotify ];
|
||||
|
||||
programs.mbsync.enable = true;
|
||||
|
||||
programs.msmtp.enable = true;
|
||||
|
||||
programs.neomutt = {
|
||||
enable = true;
|
||||
sidebar.enable = true;
|
||||
sort = "reverse-threads";
|
||||
};
|
||||
|
||||
programs.himalaya.enable = true;
|
||||
|
||||
programs.mu.enable = true;
|
||||
|
||||
accounts.email = {
|
||||
|
|
@ -70,12 +78,6 @@ source = maildir://~/Mail/FastMail
|
|||
from = "Dustin Swan <dustin@dustinswan.com>"
|
||||
outgoing = ${builtins.getEnv "HOME"}/.nix-profile/bin/msmtp --read-envelope-from
|
||||
'';
|
||||
# text = ''[FastMail]
|
||||
#source = imaps://dustinswan%40fastmail.com@mail.messagingengine.com:993
|
||||
#from = "Dustin Swan <dustin@dustinswan.com>"
|
||||
#outgoing = ${builtins.getEnv "HOME"}/.nix-profile/bin/msmtp --read-envelope-from
|
||||
#source-cred-cmd = "gpg -dq ${builtins.getEnv "HOME"}/.dustinswan@fastmail.com-password.gpg"
|
||||
#'';
|
||||
};
|
||||
|
||||
home.file.vdirsyncer = {
|
||||
|
|
@ -100,6 +102,7 @@ url = "https://carddav.messagingengine.com/"
|
|||
username = "dustinswan@fastmail.com"
|
||||
password.fetch = ["command", "~/dotfiles/bin/decrypt-password", "dustinswan@fastmail.com"]
|
||||
|
||||
|
||||
[pair fastmail_calendar]
|
||||
a = "fastmail_calendar_local"
|
||||
b = "fastmail_calendar_remote"
|
||||
|
|
@ -109,28 +112,59 @@ metadata = ["color", "displayname"]
|
|||
|
||||
[storage fastmail_calendar_local]
|
||||
type = "filesystem"
|
||||
path = "~/Calendars/"
|
||||
path = "~/Calendars/Fastmail"
|
||||
fileext = ".ics"
|
||||
|
||||
[storage fastmail_calendar_remote]
|
||||
type = "caldav"
|
||||
url = "https://caldav.messagingengine.com/"
|
||||
username = "dustinswan@fastmail.com"
|
||||
password.fetch = ["command", "~/dotfiles/bin/decrypt-password", "dustinswan@fastmail.com"]'';
|
||||
password.fetch = ["command", "~/dotfiles/bin/decrypt-password", "dustinswan@fastmail.com"]
|
||||
|
||||
|
||||
[pair google_calendar]
|
||||
a = "google_calendar_local"
|
||||
b = "google_calendar_remote"
|
||||
collections = null
|
||||
# conflict_resolution = "b wins"
|
||||
# metadata = ["color", "displayname"]
|
||||
|
||||
[storage google_calendar_local]
|
||||
type = "filesystem"
|
||||
path = "~/Calendars/Google"
|
||||
fileext = ".ics"
|
||||
|
||||
[storage google_calendar_remote]
|
||||
type = "http"
|
||||
url = "${secrets.google-calendar.our-stuff}"
|
||||
# type = "google_calendar"
|
||||
# token_file = "~/token_file"
|
||||
# client_id = "${secrets.google-vdirsyncer.id}"
|
||||
# client_secret = "${secrets.google-vdirsyncer.secret}"
|
||||
'';
|
||||
};
|
||||
|
||||
home.file.khard = {
|
||||
target = ".config/khard/config";
|
||||
target = ".config/khard/khard.conf";
|
||||
text = ''[addressbooks]
|
||||
[[contacts]]
|
||||
path = ~/Contacts/Default'';
|
||||
path = ~/Contacts/Default
|
||||
|
||||
[general]
|
||||
default_action = list'';
|
||||
};
|
||||
|
||||
home.file.khal = {
|
||||
target = ".config/khal/config";
|
||||
text = ''[calendars]
|
||||
[[Fastmail]]
|
||||
path = ~/Calendars/*
|
||||
path = ~/Calendars/Fastmail/*
|
||||
color = light green
|
||||
type = discover
|
||||
|
||||
[[Google]]
|
||||
path = ~/Calendars/Google
|
||||
color = light blue
|
||||
type = discover
|
||||
|
||||
[locale]
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
lvim.log.level = "warn"
|
||||
lvim.format_on_save = false
|
||||
lvim.leader = "space"
|
||||
lvim.colorscheme = "nord"
|
||||
lvim.colorscheme = "catppuccin"
|
||||
lvim.transparent_window = true
|
||||
-- vim.opt.cmdheight = 1
|
||||
vim.opt.conceallevel = 2 -- TODO: only for org files
|
||||
|
|
@ -18,6 +18,7 @@ table.insert(lvim.builtin.cmp.sources, { name = "orgmode" })
|
|||
|
||||
lvim.plugins = {
|
||||
{ "shaunsingh/nord.nvim" },
|
||||
{ "catppuccin/nvim" },
|
||||
-- { "rose-pine/neovim" },
|
||||
-- { "folke/tokyonight.nvim" },
|
||||
{ 'dhruvasagar/vim-table-mode' },
|
||||
|
|
@ -32,7 +33,6 @@ lvim.plugins = {
|
|||
{ "ray-x/lsp_signature.nvim", event = "BufRead", config = function() require "lsp_signature".setup() end },
|
||||
{ "lukas-reineke/indent-blankline.nvim", event = "BufRead" },
|
||||
{ "nvim-orgmode/orgmode", config = function()
|
||||
require('orgmode').setup_ts_grammar()
|
||||
-- vim.opt.conceallevel = 1
|
||||
|
||||
require('orgmode').setup {
|
||||
|
|
@ -102,6 +102,8 @@ lvim.plugins = {
|
|||
{ "azabiong/vim-highlighter" } -- f-<CR> to highlight
|
||||
}
|
||||
|
||||
require('orgmode').setup_ts_grammar()
|
||||
|
||||
lvim.builtin.which_key.mappings["t"] = {
|
||||
name = "Diagnostics",
|
||||
t = { "<cmd>TroubleToggle<cr>", "trouble" },
|
||||
|
|
@ -163,4 +165,7 @@ linters.setup {
|
|||
exe = "eslint",
|
||||
-- filetypes = { "javascriptreact", "javascript", "typescriptreact", "typescript", "vue", },
|
||||
},
|
||||
{
|
||||
exe = "vale",
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue