Compare commits
8 Commits
fc548af96a
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e87b0ddd24 | ||
|
|
18cfc610e1 | ||
|
|
7277d5b080 | ||
|
|
ed00a90dda | ||
|
|
97b58f141a | ||
|
|
d388d2192a | ||
|
|
41d47f6152 | ||
|
|
df6c1c9402 |
@@ -12,20 +12,21 @@
|
||||
;; Fonts
|
||||
(setq doom-font (font-spec :family "Iosevka Nerd Font" :size 18))
|
||||
(setq doom-symbol-font (font-spec :family "Iosevka Nerd Font" :size 18))
|
||||
(setq doom-emoji-font (font-spec :family "Noto Color Emoji" :size 18))
|
||||
|
||||
;; Themeing
|
||||
;; (use-package base16-theme
|
||||
;; :init (add-to-list 'custom-theme-load-path "~/.config/doom/themes")
|
||||
;; :ensure t
|
||||
;; :config
|
||||
;; (load-theme 'base16-samfelag t))
|
||||
(after! doom-themes
|
||||
(load-theme 'doom-nano-dark t))
|
||||
|
||||
(use-package! doom-nano-modeline
|
||||
(use-package base16-theme
|
||||
:init (add-to-list 'custom-theme-load-path "~/.config/doom/themes")
|
||||
:ensure t
|
||||
:config
|
||||
(doom-nano-modeline-mode 1)
|
||||
(global-hide-mode-line-mode 1))
|
||||
(load-theme 'base16-samfelag t))
|
||||
;; (after! doom-themes
|
||||
;; (load-theme 'doom-nano-dark t))
|
||||
|
||||
;; (use-package! doom-nano-modeline
|
||||
;; :config
|
||||
;; (doom-nano-modeline-mode 1)
|
||||
;; (global-hide-mode-line-mode 1))
|
||||
|
||||
;; Here are some additional functions/macros that could help you configure Doom:
|
||||
;;
|
||||
@@ -48,6 +49,18 @@
|
||||
|
||||
(setq-default tab-width 4)
|
||||
|
||||
;; -----------------------------------------------------------------------------
|
||||
;; Emojify
|
||||
;; -----------------------------------------------------------------------------
|
||||
(use-package! emojify
|
||||
:config
|
||||
(when (member "Noto Color Emoji" (font-family-list))
|
||||
(set-fontset-font
|
||||
t 'emoji (font-spec :family "Noto Color Emoji") nil 'prepend))
|
||||
(setq emojify-display-style 'image)
|
||||
(setq emojify-emoji-styles '(unicode)))
|
||||
|
||||
|
||||
;; -----------------------------------------------------------------------------
|
||||
;; Projectile
|
||||
;; -----------------------------------------------------------------------------
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
doom ; what makes DOOM look the way it does
|
||||
doom-dashboard ; a nifty splash screen for Emacs
|
||||
;; doom-quit ; DOOM quit-message prompts when you quit Emacs
|
||||
;;(emoji +unicode) ; 🙂
|
||||
(emoji +unicode) ; 🙂
|
||||
;; fill-column ; a `fill-column' indicator
|
||||
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
|
||||
;;hydra
|
||||
|
||||
@@ -1,700 +0,0 @@
|
||||
;;; doom-nano-dark-theme.el --- Dark theme for Doom Emacs based on N Λ N O -*- lexical-binding: t; -*-
|
||||
|
||||
;; Copyright (C) 2023 Ronan Arraes Jardim Chagas
|
||||
;;
|
||||
;; This package is the implementation of N Λ N O theme by Nicolas P. Rougier
|
||||
;; <Nicolas.Rougier@inria.fr> using doom-themes framework.
|
||||
;;
|
||||
;; Author : Ronan Arraes Jardim Chagas
|
||||
;; Created : February 2023
|
||||
;; Keywords : mode-line, header-line
|
||||
;; Package-Requires : ((emacs "28") (doom-themes "2"))
|
||||
;; URL : https://github.com/ronisbr/doom-nano-themes/
|
||||
;; Version : 0.2.3
|
||||
;;
|
||||
;;; Usage:
|
||||
;; 1. Copy this file to `~/.doom.d/themes/' or `~/.config/doom/themes/`.
|
||||
;; 2. Load the theme using `(setq doom-theme 'doom-nano-dark)'.
|
||||
;;
|
||||
;;; License:
|
||||
;; Permission is hereby granted, free of charge, to any person obtaining
|
||||
;; a copy of this software and associated documentation files (the
|
||||
;; "Software"), to deal in the Software without restriction, including
|
||||
;; without limitation the rights to use, copy, modify, merge, publish,
|
||||
;; distribute, sublicense, and/or sell copies of the Software, and to
|
||||
;; permit persons to whom the Software is furnished to do so, subject to
|
||||
;; the following conditions:
|
||||
;;
|
||||
;; The above copyright notice and this permission notice shall be
|
||||
;; included in all copies or substantial portions of the Software.
|
||||
;;
|
||||
;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
;; EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
;; MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
;; NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
|
||||
;; FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
|
||||
;; THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
;;
|
||||
;;; Commentary:
|
||||
;; This package provides a dark theme for Doom Emacs based on N Λ N O.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(defgroup doom-nano-dark-theme nil
|
||||
"Options for the `doom-nano-dark' theme."
|
||||
:group 'doom-themes)
|
||||
|
||||
(defcustom doom-nano-dark-theme-highlight-tab-whitespaces nil
|
||||
"If non-nil, the tab whitespaces will be highlighted."
|
||||
:group 'doom-nano-dark-theme
|
||||
:type 'boolean)
|
||||
|
||||
(def-doom-theme doom-nano-dark
|
||||
"A dark theme for Doom Emacs based on N Λ N O."
|
||||
|
||||
(;; Colors defined by N Λ N O theme. Some colors for the 256 and 16 modes were
|
||||
;; obtained from the Doom Nord theme.
|
||||
(nano-foreground '("#ECEFF4" "#ECECEC" "white"))
|
||||
(nano-background '("#2E3440" "#2E2E2E" "black"))
|
||||
(nano-highlight '("#3B4252" "#262626" "brightblack"))
|
||||
(nano-subtle '("#434C5E" "#3F3F3F" "brightblack"))
|
||||
(nano-faded '("#677691" "#5699AF" "cyan"))
|
||||
(nano-salient '("#81A1C1" "#51AFEF" "brightblue"))
|
||||
(nano-strong '("#FFFFFF" "#FFFFFF" "brightwhite"))
|
||||
(nano-popout '("#D08770" "#DD8844" "brightred"))
|
||||
(nano-critical '("#EBCB8B" "#ECBE7B" "yellow"))
|
||||
|
||||
;; Required colors for a Doom theme.
|
||||
(bg nano-background)
|
||||
(fg nano-foreground)
|
||||
|
||||
(bg-alt nano-highlight)
|
||||
(fg-alt nano-foreground)
|
||||
|
||||
(base0 '("#191C25" "black" "black" ))
|
||||
(base1 '("#242832" "#1E1E1E" "brightblack" ))
|
||||
(base2 '("#2C333F" "#2E2E2E" "brightblack" ))
|
||||
(base3 '("#373E4C" "#262626" "brightblack" ))
|
||||
(base4 '("#434C5E" "#3F3F3F" "brightblack" ))
|
||||
(base5 '("#4C566A" "#525252" "brightblack" ))
|
||||
(base6 '("#9099AB" "#6B6B6B" "brightblack" ))
|
||||
(base7 '("#D8DEE9" "#979797" "brightblack" ))
|
||||
(base8 '("#F0F4FC" "#DFDFDF" "white" ))
|
||||
|
||||
(bright-blue '("#BBDEFB" "#BBDEFB" "brightblue"))
|
||||
(bright-cyan '("#B2EBF2" "#B2EBF2" "brightcyan"))
|
||||
(bright-green '("#C8E6C9" "#C8E6C9" "brightgreen"))
|
||||
(bright-magenta '("#E1BEE7" "#E1BEE7" "brightmagenta"))
|
||||
(bright-red '("#FFCDD2" "#FFCDD2" "brightred"))
|
||||
(bright-white nano-background)
|
||||
(bright-yellow '("#FFF9C4" "#FFF9C4" "brightyellow"))
|
||||
|
||||
(blue '("#42A5F5" "#42A5F5" "blue"))
|
||||
(cyan '("#26C6DA" "#26C6DA" "cyan"))
|
||||
(dark-blue '("#A0BCF8" "#A0BCF8" "blue"))
|
||||
(dark-cyan '("#005478" "#005478" "cyan"))
|
||||
(green '("#66BB6A" "#66BB6A" "green"))
|
||||
(grey base4)
|
||||
(magenta '("#AB47BC" "#AB47BC" "magenta"))
|
||||
(orange '("#DA8548" "#DD8844" "brightred"))
|
||||
(red '("#EF5350" "#EF5350" "red"))
|
||||
(teal '("#4DB5BD" "#44B9B1" "brightgreen"))
|
||||
(violet '("#B751B6" "#B751B6" "brightmagenta"))
|
||||
(white nano-subtle)
|
||||
(yellow '("#FFEE58" "#FFEE58" "yellow"))
|
||||
|
||||
(highlight nano-highlight)
|
||||
(vertical-bar nano-background)
|
||||
(selection nano-subtle)
|
||||
(builtin nano-salient)
|
||||
(comments nano-faded)
|
||||
(doc-comments nano-faded)
|
||||
(constants nano-salient)
|
||||
(functions nano-strong)
|
||||
(keywords nano-salient)
|
||||
(methods nano-strong)
|
||||
(operators nano-salient)
|
||||
(type nano-salient)
|
||||
(strings nano-faded)
|
||||
(variables nano-salient)
|
||||
(numbers nano-salient)
|
||||
(region nano-subtle)
|
||||
(error nano-critical)
|
||||
(warning nano-popout)
|
||||
(success nano-salient)
|
||||
(vc-modified nano-popout)
|
||||
(vc-added nano-salient)
|
||||
(vc-deleted nano-faded))
|
||||
|
||||
(;; Overwrite faces set by Doom theme framework.
|
||||
|
||||
;; === Base =================================================================
|
||||
|
||||
(cursor :foreground bg :background fg)
|
||||
(mouse :foreground fg :background bg)
|
||||
|
||||
;; === General ==============================================================
|
||||
|
||||
(buffer-menu-buffer :foreground nano-strong :weight 'bold)
|
||||
(completions-annotations :foreground nano-faded)
|
||||
(completions-common-part :foreground nano-strong :weight 'bold)
|
||||
(completions-first-difference :foreground fg)
|
||||
(fill-column-indicator :foreground nano-subtle)
|
||||
(help-argument-name :foreground nano-faded)
|
||||
(isearch :foreground nano-strong :weight 'bold)
|
||||
(isearch-fail :foreground nano-faded)
|
||||
(lazy-highlight :background nano-subtle)
|
||||
(minibuffer-prompt :foreground nano-strong :weight 'bold)
|
||||
(nobreak-hyphen :foreground nano-popout)
|
||||
(nobreak-space :foreground nano-popout)
|
||||
(read-multiple-choice-face :foreground nano-strong :weight 'bold)
|
||||
(secondary-selection :background nano-subtle)
|
||||
(show-paren-match :foreground nano-strong :weight 'bold)
|
||||
(show-paren-mismatch :foreground nano-critical)
|
||||
(tabulated-list-fake-header :foreground nano-strong :weight 'bold)
|
||||
(tool-bar :foreground bg :background nano-faded)
|
||||
(tooltip :background nano-subtle)
|
||||
(trailing-whitespace :background nano-subtle)
|
||||
|
||||
(whitespace-tab :background
|
||||
(if doom-nano-dark-theme-highlight-tab-whitespaces
|
||||
nano-subtle
|
||||
bg))
|
||||
|
||||
;; === Ace window ===========================================================
|
||||
|
||||
(aw-leading-char-face :foreground nano-popout)
|
||||
(aw-background-face :foreground nano-faded :background bg)
|
||||
|
||||
;; === ANSI colors ==========================================================
|
||||
|
||||
(ansi-color-black :foreground fg)
|
||||
(ansi-color-bold :foreground nano-strong :weight 'bold)
|
||||
(ansi-color-bright-black :foreground nano-strong :weight 'bold)
|
||||
(ansi-color-faint :foreground nano-faded)
|
||||
(ansi-color-fast-blink :foreground nano-faded)
|
||||
(ansi-color-slow-blink :foreground nano-faded)
|
||||
(ansi-color-inverse :foreground bg :background fg)
|
||||
(ansi-color-italic :foreground fg :slant 'italic)
|
||||
(ansi-color-underline :foreground nano-faded)
|
||||
(ansi-color-blue :foreground blue)
|
||||
(ansi-color-bright-blue :foreground bright-blue)
|
||||
(ansi-color-cyan :foreground cyan)
|
||||
(ansi-color-bright-cyan :foreground bright-cyan)
|
||||
(ansi-color-green :foreground green)
|
||||
(ansi-color-bright-green :foreground bright-green)
|
||||
(ansi-color-magenta :foreground magenta)
|
||||
(ansi-color-bright-magenta :foreground bright-magenta)
|
||||
(ansi-color-red :foreground red)
|
||||
(ansi-color-bright-red :foreground bright-red)
|
||||
(ansi-color-white :foreground white)
|
||||
(ansi-color-bright-white :foreground bright-white)
|
||||
(ansi-color-yellow :foreground yellow)
|
||||
(ansi-color-bright-yellow :foreground bright-yellow)
|
||||
|
||||
;; === Buttons ==============================================================
|
||||
|
||||
(button :foreground nano-faded :background nano-highlight :box nil)
|
||||
((custom-button &override) :foreground nano-faded :background nano-highlight :box nil)
|
||||
((custom-button-unraised &override) :foreground nano-faded :background nano-highlight :box nil)
|
||||
((custom-button-mouse &override) :foreground fg :background nano-subtle :box nil)
|
||||
((custom-button-pressed &override) :foreground bg :background fg :box nil)
|
||||
|
||||
;; === Custom edit ==========================================================
|
||||
|
||||
(custom-changed :foreground nano-salient)
|
||||
(custom-comment :foreground nano-faded)
|
||||
(custom-comment-tag :foreground nano-faded)
|
||||
(custom-face-tag :foreground nano-strong :weight 'bold)
|
||||
(custom-group-subtitle :foreground nano-strong :weight 'bold)
|
||||
(custom-group-tag :foreground nano-strong :weight 'bold)
|
||||
(custom-group-tag-1 :foreground nano-strong :weight 'bold)
|
||||
(custom-invalid :foreground nano-popout)
|
||||
(custom-link :foreground nano-salient)
|
||||
(custom-modified :foreground nano-salient)
|
||||
(custom-state :foreground nano-salient)
|
||||
(custom-variable-obsolete :foreground nano-faded)
|
||||
(custom-variable-tag :foreground nano-strong :weight 'bold)
|
||||
(custom-visibility :foreground nano-salient)
|
||||
(widget-button :foreground nano-strong :weight 'bold)
|
||||
(widget-field :background base2)
|
||||
(widget-single-line-field :background base2)
|
||||
|
||||
;; === Company tooltip ======================================================
|
||||
|
||||
(company-scrollbar-bg :foreground bg :background nano-faded)
|
||||
(company-scrollbar-fg :foreground bg :background fg)
|
||||
(company-tooltip :background nano-subtle)
|
||||
(company-tooltip-annotation :foreground fg)
|
||||
(company-tooltip-annotation-selection :background nano-salient)
|
||||
(company-tooltip-common :foreground nano-strong :weight 'bold)
|
||||
(company-tooltip-common-selection :foreground bg :background nano-salient :weight 'normal)
|
||||
(company-tooltip-mouse :foreground bg :background nano-faded)
|
||||
(company-tooltip-scrollbar-thumb :foreground bg :background fg)
|
||||
(company-tooltip-scrollbar-track :foreground bg :foreground nano-faded)
|
||||
(company-tooltip-selection :foreground bg :background nano-salient)
|
||||
|
||||
;; === Diff =================================================================
|
||||
|
||||
(diff-header :foreground nano-faded)
|
||||
(diff-file :foreground nano-strong :weight 'bold)
|
||||
(diff-context :foreground fg)
|
||||
(diff-removed :foreground nano-faded)
|
||||
(diff-changed :foreground nano-popout)
|
||||
(diff-added :foreground nano-salient)
|
||||
(diff-refine-added :foreground nano-salient :weight 'bold)
|
||||
(diff-refine-changed :foreground nano-popout)
|
||||
(diff-refine-removed :foreground nano-faded :strike-through t)
|
||||
|
||||
;; === Doom NANO modeline ===================================================
|
||||
|
||||
(doom-nano-modeline-evil-emacs-state-face :foreground bg :background nano-faded)
|
||||
(doom-nano-modeline-evil-insert-state-face :foreground bg :background nano-popout)
|
||||
(doom-nano-modeline-evil-motion-state-face :foreground bg :background nano-faded)
|
||||
(doom-nano-modeline-evil-normal-state-face :foreground bg :background nano-faded)
|
||||
(doom-nano-modeline-evil-operator-state-face :foreground bg :background nano-faded)
|
||||
(doom-nano-modeline-evil-replace-state-face :foreground bg :background nano-critical)
|
||||
(doom-nano-modeline-evil-visual-state-face :foreground bg :background nano-salient)
|
||||
(doom-nano-modeline-inactive-face :foreground nano-faded :background nano-highlight)
|
||||
|
||||
;; === Evil mode ============================================================
|
||||
|
||||
(evil-snipe-first-match-face :background nano-highlight :weight 'bold)
|
||||
(evil-snipe-matches-face :background nano-subtle)
|
||||
|
||||
;; === Flycheck =============================================================
|
||||
|
||||
(flycheck-posframe-background-face :background nano-subtle)
|
||||
|
||||
;; === Font lock ============================================================
|
||||
|
||||
(font-lock-variable-name-face :foreground nano-salient :weight 'bold)
|
||||
(font-lock-function-name-face :foreground nano-strong :weight 'bold)
|
||||
|
||||
;; === Info =================================================================
|
||||
|
||||
(Info-quoted :foreground nano-faded)
|
||||
(info-header-node :foreground fg)
|
||||
(info-index-match :foreground nano-salient)
|
||||
(info-menu-header :foreground nano-strong :weight 'bold)
|
||||
(info-menu-star :foreground fg)
|
||||
(info-node :foreground nano-strong :weight 'bold)
|
||||
(info-title-1 :foreground nano-strong :weight 'bold)
|
||||
(info-title-2 :foreground nano-strong :weight 'bold)
|
||||
(info-title-3 :foreground nano-strong :weight 'bold)
|
||||
(info-title-4 :foreground nano-strong :weight 'bold)
|
||||
|
||||
;; === Helpful ==============================================================
|
||||
|
||||
(helpful-heading :foreground nano-strong :weight 'bold)
|
||||
|
||||
;; === Highlight indent guides ==============================================
|
||||
|
||||
(highlight-indent-guides-f)
|
||||
|
||||
;; === Hydra ================================================================
|
||||
|
||||
(hydra-face-red :foreground nano-popout :weight 'bold)
|
||||
|
||||
;; === Line numbers =========================================================
|
||||
|
||||
(line-number :foreground nano-faded)
|
||||
(line-number-current-line :foreground fg)
|
||||
(line-number-major-tick :foreground nano-faded)
|
||||
(line-number-minor-tick :foreground nano-faded)
|
||||
|
||||
;; === LSP ==================================================================
|
||||
|
||||
(lsp-face-highlight-textual :background base1)
|
||||
|
||||
;; === Markdown =============================================================
|
||||
|
||||
(markdown-blockquote-face :foreground fg)
|
||||
(markdown-bold-face :foreground nano-strong :weight 'bold)
|
||||
(markdown-code-face :foreground fg)
|
||||
(markdown-comment-face :foreground nano-faded)
|
||||
(markdown-footnote-marker-face :foreground fg)
|
||||
(markdown-footnote-text-face :foreground fg)
|
||||
(markdown-gfm-checkbox-face :foreground fg)
|
||||
(markdown-header-delimiter-face :foreground nano-faded)
|
||||
(markdown-header-face :foreground nano-strong :weight 'bold)
|
||||
(markdown-header-face-1 :foreground nano-strong :weight 'bold)
|
||||
(markdown-header-face-2 :foreground nano-strong :weight 'bold)
|
||||
(markdown-header-face-3 :foreground nano-strong :weight 'bold)
|
||||
(markdown-header-face-4 :foreground nano-strong :weight 'bold)
|
||||
(markdown-header-face-5 :foreground nano-strong :weight 'bold)
|
||||
(markdown-header-face-6 :foreground nano-strong :weight 'bold)
|
||||
(markdown-header-rule-face :foreground fg)
|
||||
(markdown-highlight-face :foreground fg)
|
||||
(markdown-hr-face :foreground fg)
|
||||
(markdown-html-attr-name-face :foreground fg)
|
||||
(markdown-html-attr-value-face :foreground fg)
|
||||
(markdown-html-entity-face :foreground fg)
|
||||
(markdown-html-tag-delimiter-face :foreground fg)
|
||||
(markdown-html-tag-name-face :foreground fg)
|
||||
(markdown-inline-code-face :foreground nano-popout)
|
||||
(markdown-italic-face :foreground nano-faded :slant 'italic)
|
||||
(markdown-language-info-face :foreground fg)
|
||||
(markdown-language-keyword-face :foreground fg)
|
||||
(markdown-line-break-face :foreground fg)
|
||||
(markdown-link-face :foreground nano-salient)
|
||||
(markdown-link-title-face :foreground fg)
|
||||
(markdown-list-face :foreground nano-faded)
|
||||
(markdown-markup-face :foreground nano-faded)
|
||||
(markdown-math-face :foreground fg)
|
||||
(markdown-metadata-key-face :foreground nano-faded)
|
||||
(markdown-metadata-value-face :foreground nano-faded)
|
||||
(markdown-missing-link-face :foreground fg)
|
||||
(markdown-plain-url-face :foreground fg)
|
||||
(markdown-pre-face :foreground nano-popout)
|
||||
(markdown-reference-face :foreground nano-salient)
|
||||
(markdown-strike-through-face :foreground nano-faded)
|
||||
(markdown-table-face :foreground fg)
|
||||
(markdown-url-face :foreground nano-salient)
|
||||
|
||||
;; === Magit ================================================================
|
||||
|
||||
(magit-bisect-bad :foreground fg)
|
||||
(magit-bisect-good :foreground fg)
|
||||
(magit-bisect-skip :foreground fg)
|
||||
(magit-blame-date :foreground fg)
|
||||
(magit-blame-dimmed :foreground fg)
|
||||
(magit-blame-hash :foreground nano-faded)
|
||||
(magit-blame-heading :background nano-subtle :weight 'bold)
|
||||
(magit-blame-highlight :background highlight)
|
||||
(magit-blame-margin :foreground fg)
|
||||
(magit-blame-name :foreground fg)
|
||||
(magit-blame-summary :foreground fg)
|
||||
(magit-branch-current :foreground nano-salient :weight 'bold)
|
||||
(magit-branch-local :foreground nano-salient)
|
||||
(magit-branch-remote :foreground nano-salient)
|
||||
(magit-branch-remote-head :foreground nano-salient)
|
||||
(magit-branch-upstream :foreground nano-salient)
|
||||
(magit-cherry-equivalent :foreground fg)
|
||||
(magit-cherry-unmatched :foreground fg)
|
||||
(magit-diff-added :foreground nano-salient :weight 'bold)
|
||||
(magit-diff-added-highlight :foreground nano-salient :weight 'bold)
|
||||
(magit-diff-base :foreground fg)
|
||||
(magit-diff-base-highlight :background highlight)
|
||||
(magit-diff-conflict-heading :background nano-subtle :weight 'bold)
|
||||
(magit-diff-context :foreground nano-faded)
|
||||
(magit-diff-context-highlight :foreground nano-faded)
|
||||
(magit-diff-file-heading :foreground nano-strong :weight 'bold)
|
||||
(magit-diff-file-heading-highlight :background highlight :weight 'bold)
|
||||
(magit-diff-file-heading-selection :foreground fg)
|
||||
(magit-diff-hunk-heading :background nano-subtle)
|
||||
(magit-diff-hunk-heading-highlight :foreground fg)
|
||||
(magit-diff-hunk-heading-selection :foreground fg)
|
||||
(magit-diff-hunk-region :foreground fg)
|
||||
(magit-diff-lines-boundary :foreground fg)
|
||||
(magit-diff-lines-heading :background nano-subtle :weight 'bold)
|
||||
(magit-diff-our :foreground fg)
|
||||
(magit-diff-our-highlight :background highlight)
|
||||
(magit-diff-removed :foreground nano-popout :weight 'bold)
|
||||
(magit-diff-removed-highlight :foreground nano-popout :weight 'bold)
|
||||
(magit-diff-revision-summary :foreground nano-popout)
|
||||
(magit-diff-revision-summary-highlight :foreground fg)
|
||||
(magit-diff-their :foreground fg)
|
||||
(magit-diff-their-highlight :background highlight)
|
||||
(magit-diff-whitespace-warning :background nano-subtle)
|
||||
(magit-diffstat-added :foreground fg)
|
||||
(magit-diffstat-removed :foreground fg)
|
||||
(magit-dimmed :foreground nano-faded)
|
||||
(magit-filename :foreground fg)
|
||||
(magit-hash :foreground nano-faded)
|
||||
(magit-head :foreground fg)
|
||||
(magit-header-line :foreground fg)
|
||||
(magit-header-line-key :foreground fg)
|
||||
(magit-header-line-log-select :foreground fg)
|
||||
(magit-keyword :foreground nano-salient)
|
||||
(magit-keyword-squash :foreground nano-salient)
|
||||
(magit-log-author :foreground fg)
|
||||
(magit-log-date :foreground fg)
|
||||
(magit-log-graph :foreground fg)
|
||||
(magit-mode-line-process :foreground fg)
|
||||
(magit-mode-line-process-error :foreground nano-critical)
|
||||
(magit-process-ng :foreground fg)
|
||||
(magit-process-ok :foreground fg)
|
||||
(magit-reflog-amend :foreground fg)
|
||||
(magit-reflog-checkout :foreground fg)
|
||||
(magit-reflog-cherry-pick :foreground fg)
|
||||
(magit-reflog-commit :foreground fg)
|
||||
(magit-reflog-merge :foreground fg)
|
||||
(magit-reflog-other :foreground fg)
|
||||
(magit-reflog-rebase :foreground fg)
|
||||
(magit-reflog-remote :foreground fg)
|
||||
(magit-reflog-reset :foreground fg)
|
||||
(magit-refname :foreground fg)
|
||||
(magit-refname-pullreq :foreground fg)
|
||||
(magit-refname-stash :foreground fg)
|
||||
(magit-refname-wip :foreground fg)
|
||||
(magit-section-heading :foreground nano-salient :weight 'bold)
|
||||
(magit-section-heading-selection :foreground fg)
|
||||
(magit-section-highlight :background highlight)
|
||||
(magit-section-secondary-heading :foreground fg)
|
||||
(magit-sequence-done :foreground fg)
|
||||
(magit-sequence-drop :foreground fg)
|
||||
(magit-sequence-exec :foreground fg)
|
||||
(magit-sequence-head :foreground fg)
|
||||
(magit-sequence-onto :foreground fg)
|
||||
(magit-sequence-part :foreground fg)
|
||||
(magit-sequence-pick :foreground fg)
|
||||
(magit-sequence-stop :foreground fg)
|
||||
(magit-signature-bad :foreground fg)
|
||||
(magit-signature-error :foreground fg)
|
||||
(magit-signature-expired :foreground fg)
|
||||
(magit-signature-expired-key :foreground fg)
|
||||
(magit-signature-good :foreground fg)
|
||||
(magit-signature-revoked :foreground fg)
|
||||
(magit-signature-untrusted :foreground fg)
|
||||
(magit-tag :foreground nano-strong)
|
||||
|
||||
;; === Marginalia ===========================================================
|
||||
|
||||
(marginalia-archive :foreground nano-faded)
|
||||
(marginalia-char :foreground nano-faded)
|
||||
(marginalia-date :foreground nano-faded)
|
||||
(marginalia-documentation :foreground nano-faded)
|
||||
(marginalia-file-name :foreground nano-faded)
|
||||
(marginalia-file-owner :foreground nano-faded)
|
||||
(marginalia-file-priv-dir :foreground nano-faded)
|
||||
(marginalia-file-priv-exec :foreground nano-faded)
|
||||
(marginalia-file-priv-link :foreground nano-faded)
|
||||
(marginalia-file-priv-no :foreground nano-faded)
|
||||
(marginalia-file-priv-other :foreground nano-faded)
|
||||
(marginalia-file-priv-rare :foreground nano-faded)
|
||||
(marginalia-file-priv-read :foreground nano-faded)
|
||||
(marginalia-file-priv-write :foreground nano-faded)
|
||||
(marginalia-function :foreground nano-faded)
|
||||
(marginalia-installed :foreground nano-faded)
|
||||
(marginalia-key :foreground nano-faded)
|
||||
(marginalia-lighter :foreground nano-faded)
|
||||
(marginalia-list :foreground nano-faded)
|
||||
(marginalia-mode :foreground nano-faded)
|
||||
(marginalia-modified :foreground nano-faded)
|
||||
(marginalia-null :foreground nano-faded)
|
||||
(marginalia-number :foreground nano-faded)
|
||||
(marginalia-off :foreground nano-faded)
|
||||
(marginalia-on :foreground nano-faded)
|
||||
(marginalia-size :foreground nano-faded)
|
||||
(marginalia-string :foreground nano-faded)
|
||||
(marginalia-symbol :foreground nano-faded)
|
||||
(marginalia-true :foreground nano-faded)
|
||||
(marginalia-type :foreground nano-faded)
|
||||
(marginalia-value :foreground nano-faded)
|
||||
(marginalia-version :foreground nano-faded)
|
||||
|
||||
;; === Message ==============================================================
|
||||
|
||||
(message-cited-text :foreground nano-faded)
|
||||
(message-cited-text-1 :foreground nano-faded)
|
||||
(message-cited-text-2 :foreground nano-faded)
|
||||
(message-cited-text-3 :foreground nano-faded)
|
||||
(message-cited-text-4 :foreground nano-faded)
|
||||
(message-header-cc :foreground fg)
|
||||
(message-header-name :foreground nano-strong :weight 'bold)
|
||||
(message-header-newsgroups :foreground fg)
|
||||
(message-header-other :foreground fg)
|
||||
(message-header-subject :foreground nano-salient)
|
||||
(message-header-to :foreground nano-salient)
|
||||
(message-header-xheader :foreground fg)
|
||||
(message-mml :foreground nano-popout)
|
||||
(message-separator :foreground nano-faded)
|
||||
|
||||
;; === Modeline =============================================================
|
||||
|
||||
(mode-line :foreground fg :background nano-subtle)
|
||||
(mode-line-inactive :foreground nano-strong :background nano-highlight)
|
||||
(mode-line-emphasis :foreground nano-strong :weight 'bold)
|
||||
|
||||
;; === Packages =============================================================
|
||||
|
||||
(package-description :foreground fg)
|
||||
(package-help-section-name :foreground fg)
|
||||
(package-name :foreground nano-salient)
|
||||
(package-status-avail-obso :foreground nano-faded)
|
||||
(package-status-available :foreground fg)
|
||||
(package-status-built-in :foreground nano-salient)
|
||||
(package-status-dependency :foreground nano-salient)
|
||||
(package-status-disabled :foreground nano-faded)
|
||||
(package-status-external :foreground fg)
|
||||
(package-status-held :foreground fg)
|
||||
(package-status-incompat :foreground nano-faded)
|
||||
(package-status-installed :foreground nano-salient)
|
||||
(package-status-new :foreground fg)
|
||||
(package-status-unsigned :foreground fg)
|
||||
|
||||
;; === Orderless ============================================================
|
||||
|
||||
(orderless-match-face-0 :foreground nano-salient :weight 'bold)
|
||||
(orderless-match-face-1 :foreground nano-strong :weight 'bold)
|
||||
(orderless-match-face-2 :foreground nano-strong :weight 'bold)
|
||||
(orderless-match-face-3 :foreground nano-strong :weight 'bold)
|
||||
|
||||
;; === Org mode =============================================================
|
||||
|
||||
(org-archived :foreground nano-faded)
|
||||
(org-block :background highlight)
|
||||
(org-block-begin-line :background nano-subtle :foreground nano-faded)
|
||||
(org-block-end-line :background nano-subtle :foreground nano-faded)
|
||||
(org-checkbox :foreground nano-faded)
|
||||
(org-checkbox-statistics-done :foreground nano-faded)
|
||||
(org-checkbox-statistics-todo :foreground nano-faded)
|
||||
(org-clock-overlay :foreground nano-faded)
|
||||
(org-code :foreground nano-salient)
|
||||
(org-column :foreground nano-faded)
|
||||
(org-column-title :foreground nano-faded)
|
||||
(org-date :foreground nano-faded)
|
||||
(org-date-selected :foreground nano-popout)
|
||||
(org-default :foreground nano-faded)
|
||||
(org-document-info :foreground nano-faded)
|
||||
(org-document-info-keyword :foreground nano-faded)
|
||||
(org-document-title :foreground nano-faded)
|
||||
(org-done :foreground nano-faded)
|
||||
(org-drawer :foreground nano-faded)
|
||||
(org-ellipsis :foreground nano-faded)
|
||||
(org-footnote :foreground nano-faded)
|
||||
(org-formula :foreground nano-faded)
|
||||
(org-headline-done :foreground nano-faded)
|
||||
(org-latex-and-related :foreground nano-faded)
|
||||
(org-level-1 :foreground nano-strong :weight 'bold)
|
||||
(org-level-2 :foreground nano-strong :weight 'bold)
|
||||
(org-level-3 :foreground nano-strong :weight 'bold)
|
||||
(org-level-4 :foreground nano-strong :weight 'bold)
|
||||
(org-level-5 :foreground nano-strong :weight 'bold)
|
||||
(org-level-6 :foreground nano-strong :weight 'bold)
|
||||
(org-level-7 :foreground nano-strong :weight 'bold)
|
||||
(org-level-8 :foreground nano-strong :weight 'bold)
|
||||
(org-link :foreground nano-salient)
|
||||
(org-list-dt :foreground nano-faded)
|
||||
(org-macro :foreground nano-faded)
|
||||
(org-meta-line :foreground nano-faded)
|
||||
(org-mode-line-clock :foreground nano-faded)
|
||||
(org-mode-line-clock-overrun :foreground nano-faded)
|
||||
(org-priority :foreground nano-faded)
|
||||
(org-property-value :foreground nano-faded)
|
||||
(org-quote :foreground nano-faded)
|
||||
(org-scheduled :foreground nano-faded)
|
||||
(org-scheduled-previously :foreground nano-faded)
|
||||
(org-scheduled-today :foreground nano-faded)
|
||||
(org-sexp-date :foreground nano-faded)
|
||||
(org-special-keyword :foreground nano-faded)
|
||||
(org-table :foreground nano-faded)
|
||||
(org-tag :foreground nano-popout)
|
||||
(org-tag-group :foreground nano-faded)
|
||||
(org-target :foreground nano-faded)
|
||||
(org-time-grid :foreground nano-faded)
|
||||
(org-todo :foreground nano-salient)
|
||||
(org-upcoming-deadline :foreground nano-popout)
|
||||
(org-verbatim :foreground nano-popout)
|
||||
(org-verse :foreground nano-faded)
|
||||
(org-warning :foreground nano-popout)
|
||||
|
||||
;; === Org-agenda ===========================================================
|
||||
|
||||
(org-agenda-calendar-event :foreground fg)
|
||||
(org-agenda-calendar-sexp :foreground nano-salient)
|
||||
(org-agenda-clocking :foreground nano-faded)
|
||||
(org-agenda-column-dateline :foreground nano-faded)
|
||||
(org-agenda-current-time :foreground nano-salient :weight 'bold)
|
||||
(org-agenda-date :foreground nano-strong :weight 'bold)
|
||||
(org-agenda-date-today :foreground nano-salient :weight 'bold)
|
||||
(org-agenda-date-weekend :foreground nano-faded)
|
||||
(org-agenda-diary :foreground nano-faded)
|
||||
(org-agenda-dimmed-todo-face :foreground nano-faded)
|
||||
(org-agenda-done :foreground nano-faded)
|
||||
(org-agenda-filter-category :foreground nano-faded)
|
||||
(org-agenda-filter-effort :foreground nano-faded)
|
||||
(org-agenda-filter-regexp :foreground nano-faded)
|
||||
(org-agenda-filter-tags :foreground nano-faded)
|
||||
(org-agenda-property-face :foreground nano-faded)
|
||||
(org-agenda-restriction-lock :foreground nano-faded)
|
||||
(org-agenda-structure :foreground nano-strong :weight 'bold)
|
||||
|
||||
;; === Popup ================================================================
|
||||
|
||||
(popup-face :foreground highlight)
|
||||
(popup-isearch-match :foreground nano-popout)
|
||||
(popup-menu-face :foreground nano-subtle)
|
||||
(popup-menu-mouse-face :foreground bg :background nano-faded)
|
||||
(popup-menu-selection-face :foreground bg :background nano-salient)
|
||||
(popup-menu-summary-face :foreground nano-faded)
|
||||
(popup-scroll-bar-background-face :foreground nano-subtle)
|
||||
(popup-scroll-bar-foreground-face :foreground nano-subtle)
|
||||
(popup-summary-face :foreground nano-faded)
|
||||
(popup-tip-face :foreground bg :background nano-popout)
|
||||
|
||||
;; === Semantics ============================================================
|
||||
|
||||
(match :foreground nano-popout)
|
||||
(shadow :foreground nano-faded)
|
||||
|
||||
;; === smerge ===============================================================
|
||||
|
||||
(smerge-lower :background bg)
|
||||
(smerge-markers :background nano-subtle :weight 'bold :distant-foreground 'unspecified)
|
||||
(smerge-refined-added :foreground nano-salient :weight 'bold)
|
||||
(smerge-refined-changed :foreground nano-popout)
|
||||
(smerge-refined-removed :foreground nano-faded :strike-through t)
|
||||
(smerge-upper :background bg)
|
||||
|
||||
;; === Structural ===========================================================
|
||||
|
||||
(bold :foreground nano-strong :weight 'bold)
|
||||
(bold-italic :foreground nano-strong :weight 'bold)
|
||||
(fixed-pitch :foreground fg)
|
||||
(fixed-pitch-serif :foreground fg)
|
||||
(fringe :foreground nano-faded)
|
||||
(hl-line :background highlight)
|
||||
(italic :foreground nano-faded :slant 'italic)
|
||||
(link :foreground nano-salient)
|
||||
(region :background nano-subtle :distant-foreground 'unspecified)
|
||||
|
||||
;; === Terminal =============================================================
|
||||
|
||||
(term-bold :foreground nano-strong :weight 'bold)
|
||||
(term-color-black :foreground fg)
|
||||
(term-color-blue :foreground blue :background bright-blue)
|
||||
(term-color-cyan :foreground cyan :background bright-cyan)
|
||||
(term-color-green :foreground green :background bright-green)
|
||||
(term-color-magenta :foreground magenta :background bright-magenta)
|
||||
(term-color-red :foreground red :background bright-red)
|
||||
(term-color-yellow :foreground yellow :background bright-yellow)
|
||||
|
||||
;; === Transient ============================================================
|
||||
|
||||
;; Set only faces that influence Magit.
|
||||
(transient-value :foreground fg)
|
||||
|
||||
;; === Vertico ==============================================================
|
||||
|
||||
(vertico-current :background nano-subtle :weight 'bold)
|
||||
(vertico-group-separator :foreground nano-faded)
|
||||
(vertico-group-title :foreground nano-faded)
|
||||
(vertico-multiline :foreground nano-faded)
|
||||
|
||||
;;; === Vterm ===============================================================
|
||||
|
||||
(vterm-color-black :foreground fg :background fg)
|
||||
(vterm-color-blue :foreground blue :background bright-blue)
|
||||
(vterm-color-cyan :foreground cyan :background bright-cyan)
|
||||
(vterm-color-green :foreground green :background bright-green)
|
||||
(vterm-color-magenta :foreground magenta :background bright-magenta)
|
||||
(vterm-color-red :foreground red :background bright-red)
|
||||
(vterm-color-yellow :foreground yellow :background bright-yellow)
|
||||
(vterm-color-white :foreground white :background white)
|
||||
|
||||
;; === Workspaces ===========================================================
|
||||
|
||||
(+workspace-tab-selected-face :foreground nano-salient :weight 'bold)
|
||||
|
||||
;; === Which key ============================================================
|
||||
|
||||
(which-key-command-description-face :foreground fg)
|
||||
(which-key-key-face :foreground nano-strong :weight 'bold)
|
||||
(which-key-key-group-description-face :foreground nano-salient)))
|
||||
|
||||
(provide 'doom-nano-dark-theme)
|
||||
|
||||
;;; doom-nano-dark-theme.el ends here
|
||||
27
config/grapheio/scripts/screenshot.sh
Executable file
27
config/grapheio/scripts/screenshot.sh
Executable file
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
# Dependencies:
|
||||
# - slurp
|
||||
# - grim
|
||||
|
||||
ACTION=$1
|
||||
|
||||
DATESTAMP=$(date +"%Y%m%d%H%M%S")
|
||||
OUT_DIR="${HOME}/screenshots"
|
||||
OUT_FILE="capture-${ACTION}-${DATESTAMP}.png"
|
||||
|
||||
case $ACTION in
|
||||
region)
|
||||
[[ ! -d "${OUT_DIR}" ]] && mkdir $OUT_DIR
|
||||
slurp | grim -t png -g - "${OUT_DIR}/${OUT_FILE}"
|
||||
;;
|
||||
screen)
|
||||
[[ ! -d "${OUT_DIR}" ]] && mkdir $OUT_DIR
|
||||
grim -t png "${OUT_DIR}/${OUT_FILE}"
|
||||
;;
|
||||
*)
|
||||
echo "Unknown action"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
147
config/rofi/menus/cliphist/cliphist.rasi
Executable file
147
config/rofi/menus/cliphist/cliphist.rasi
Executable file
@@ -0,0 +1,147 @@
|
||||
/**
|
||||
*
|
||||
* Author : Marc Sastre, based on Aditya Shakya (adi1090x, Github : @adi1090x)
|
||||
*
|
||||
**/
|
||||
|
||||
@import "~/.config/rofi/theme.rasi"
|
||||
|
||||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
show-icons: false;
|
||||
}
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
/* properties for window widget */
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
width: 800px;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
/* properties for all widgets */
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 2px solid;
|
||||
border-radius: 15px;
|
||||
border-color: @background-alt;
|
||||
cursor: "default";
|
||||
background-color: @background;
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 15px;
|
||||
margin: 0px;
|
||||
padding: 30px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
children: [ "inputbar", "listview" ];
|
||||
}
|
||||
message {
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 10px;
|
||||
border: 0px solid;
|
||||
border-radius: 10px;
|
||||
border-color: @selected;
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
}
|
||||
textbox {
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
placeholder-color: @foreground;
|
||||
blink: true;
|
||||
markup: true;
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
inputbar {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
padding: 15px;
|
||||
border-radius: 10px;
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
children: [ "textbox-prompt-colon", "entry" ];
|
||||
}
|
||||
textbox-prompt-colon {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
str: "";
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
entry {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
cursor: text;
|
||||
}
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 1;
|
||||
lines: 5;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
scrollbar: false;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 5px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: "default";
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
spacing: 0px;
|
||||
margin: 0px;
|
||||
padding: 12px;
|
||||
border: 0px solid;
|
||||
border-radius: 100%;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: pointer;
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: var(selected);
|
||||
text-color: var(background);
|
||||
}
|
||||
element active {
|
||||
background-color: var(active);
|
||||
text-color: var(background);
|
||||
}
|
||||
element selected.active {
|
||||
background-color: var(selected);
|
||||
text-color: var(background);
|
||||
}
|
||||
12
config/rofi/menus/cliphist/cliphist.sh
Executable file
12
config/rofi/menus/cliphist/cliphist.sh
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# For debugging/development purposes
|
||||
# PREFIX=projects/samfelag/config/
|
||||
|
||||
# Rofi command to pipe into, can add any options here
|
||||
dir="$HOME/$PREFIX.config/rofi/menus/cliphist/"
|
||||
theme='cliphist'
|
||||
|
||||
rofi_command="rofi -dmenu -i -theme ${dir}/${theme}.rasi"
|
||||
|
||||
cliphist list | $rofi_command | cliphist decode | wl-copy
|
||||
1723
config/zsh/.p10k.zsh
1723
config/zsh/.p10k.zsh
File diff suppressed because it is too large
Load Diff
502
flake.lock
generated
502
flake.lock
generated
@@ -23,6 +23,39 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"aquamarine": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1747864449,
|
||||
"narHash": "sha256-PIjVAWghZhr3L0EFM2UObhX84UQxIACbON0IC0zzSKA=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "389372c5f4dc1ac0e7645ed29a35fd6d71672ef5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@@ -58,6 +91,44 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"pre-commit-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -86,20 +157,69 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1733050161,
|
||||
"narHash": "sha256-lYnT+EYE47f5yY3KS/Kd4pJ6CO9fhCqumkYYkQ3TK20=",
|
||||
"lastModified": 1747556831,
|
||||
"narHash": "sha256-Qb84nbYFFk0DzFeqVoHltS2RodAYY5/HZQKE8WnBDsc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "62d536255879be574ebfe9b87c4ac194febf47c5",
|
||||
"rev": "d0bbd221482c2713cccb80220f3c9d16a6e20a33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "release-24.11",
|
||||
"ref": "release-25.05",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hy3": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1747077256,
|
||||
"narHash": "sha256-ryaXKevnISRiJb93QIAv7tGc6ZJqSkwETKm4oGh8HWI=",
|
||||
"owner": "outfoxxed",
|
||||
"repo": "hy3",
|
||||
"rev": "567dc9dd20e15d95a56a81c516a70dba30bc2c9c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "outfoxxed",
|
||||
"repo": "hy3",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprcursor": {
|
||||
"inputs": {
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745948457,
|
||||
"narHash": "sha256-lzTV10FJTCGNtMdgW5YAhCAqezeAzKOd/97HbQK8GTU=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "ac903e80b33ba6a88df83d02232483d99f327573",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprcursor-rose-pine": {
|
||||
"inputs": {
|
||||
"hyprlang": "hyprlang",
|
||||
@@ -120,6 +240,187 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprgraphics": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745015490,
|
||||
"narHash": "sha256-apEJ9zoSzmslhJ2vOKFcXTMZLUFYzh1ghfB6Rbw3Low=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "60754910946b4e2dc1377b967b7156cb989c5873",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland": {
|
||||
"inputs": {
|
||||
"aquamarine": "aquamarine",
|
||||
"hyprcursor": "hyprcursor",
|
||||
"hyprgraphics": "hyprgraphics",
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
"hyprland-qtutils": "hyprland-qtutils",
|
||||
"hyprlang": "hyprlang_2",
|
||||
"hyprutils": "hyprutils",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"systems": "systems_4",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1748036495,
|
||||
"narHash": "sha256-kYyrhoxu8pZ/YHd2Yy2VNaRGeqydOh1OTayvknhweGg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "81cd526f923f4a9074bbfef59b4c7e9f3350c349",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-plugins": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland-plugins",
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland-plugins",
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1748089895,
|
||||
"narHash": "sha256-XS2inFEyCsA91E2yRUlylHN7DUBwbLpqX1og4JDSXoE=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"rev": "c04dee3d0cd92423a2b970614ec4b423cf5a3f9c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-protocols": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1743714874,
|
||||
"narHash": "sha256-yt8F7NhMFCFHUHy/lNjH/pjZyIDFNk52Q4tivQ31WFo=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "3a5c2bda1c1a4e55cc1330c782547695a93f05b2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-qt-support": {
|
||||
"inputs": {
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprland-qtutils",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"hyprland-qtutils",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"hyprland-qtutils",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1737634706,
|
||||
"narHash": "sha256-nGCibkfsXz7ARx5R+SnisRtMq21IQIhazp6viBU8I/A=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qt-support",
|
||||
"rev": "8810df502cdee755993cb803eba7b23f189db795",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qt-support",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-qtutils": {
|
||||
"inputs": {
|
||||
"hyprland-qt-support": "hyprland-qt-support",
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprland-qtutils",
|
||||
"hyprlang",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745951494,
|
||||
"narHash": "sha256-2dModE32doiyQMmd6EDAQeZnz+5LOs6KXyE0qX76WIg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qtutils",
|
||||
"rev": "4be1d324faf8d6e82c2be9f8510d299984dfdd2e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qtutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprlang": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -142,6 +443,85 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprlang_2": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1747484975,
|
||||
"narHash": "sha256-+LAQ81HBwG0lwshHlWe0kfWg4KcChIPpnwtnwqmnoEU=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "163c83b3db48a17c113729c220a60b94596c9291",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprutils": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1746635225,
|
||||
"narHash": "sha256-W9G9bb0zRYDBRseHbVez0J8qVpD5QbizX67H/vsudhM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "674ea57373f08b7609ce93baff131117a0dfe70d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprwayland-scanner": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1747584298,
|
||||
"narHash": "sha256-PH9qZqWLHvSBQiUnA0NzAyQA3tu2no2z8kz0ZeHWj4w=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "e511882b9c2e1d7a75d45d8fddd2160daeafcbc3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-colors": {
|
||||
"inputs": {
|
||||
"base16-schemes": "base16-schemes",
|
||||
@@ -226,21 +606,37 @@
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1732981179,
|
||||
"narHash": "sha256-F7thesZPvAMSwjRu0K8uFshTk3ZZSNAsXTIFvXBT+34=",
|
||||
"owner": "nixos",
|
||||
"lastModified": 1747744144,
|
||||
"narHash": "sha256-W7lqHp0qZiENCDwUZ5EX/lNhxjMdNapFnbErcbnP11Q=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "62c435d93bf046a5396f3016472e8f7c8e2aed65",
|
||||
"rev": "2795c506fe8fb7b03c36ccb51f75b6df0ab2553f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-24.11",
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1747953325,
|
||||
"narHash": "sha256-y2ZtlIlNTuVJUZCqzZAhIw5rrKP4DOSklev6c8PyCkQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "55d1f923c480dadce40f5231feb472e81b0bab48",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-25.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1727348695,
|
||||
"narHash": "sha256-J+PeFKSDV+pHL7ukkfpVzCOO7mBSrrpJ3svwBFABbhI=",
|
||||
@@ -271,14 +667,40 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1747372754,
|
||||
"narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"agenix": "agenix",
|
||||
"emacs-overlay": "emacs-overlay",
|
||||
"home-manager": "home-manager_2",
|
||||
"hy3": "hy3",
|
||||
"hyprcursor-rose-pine": "hyprcursor-rose-pine",
|
||||
"hyprland": "hyprland",
|
||||
"hyprland-plugins": "hyprland-plugins",
|
||||
"nix-colors": "nix-colors",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nur": "nur",
|
||||
"zen-browser": "zen-browser"
|
||||
}
|
||||
@@ -328,6 +750,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
@@ -346,9 +783,50 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xdph": {
|
||||
"inputs": {
|
||||
"hyprland-protocols": [
|
||||
"hyprland",
|
||||
"hyprland-protocols"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745871725,
|
||||
"narHash": "sha256-M24SNc2flblWGXFkGQfqSlEOzAGZnMc9QG3GH4K/KbE=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "76bbf1a6b1378e4ab5230bad00ad04bc287c969e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zen-browser": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739222645,
|
||||
|
||||
13
flake.nix
13
flake.nix
@@ -4,10 +4,10 @@
|
||||
inputs = {
|
||||
|
||||
# - Nixpkgs ----------------------------------
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
|
||||
|
||||
# - Home Manager -----------------------------
|
||||
home-manager.url = "github:nix-community/home-manager/release-24.11";
|
||||
home-manager.url = "github:nix-community/home-manager/release-25.05";
|
||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
# - Agenix -----------------------------------
|
||||
@@ -26,6 +26,15 @@
|
||||
nix-colors.url = "github:misterio77/nix-colors";
|
||||
|
||||
# - Hyprland ---------------------------------
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
hyprland-plugins = {
|
||||
url = "github:hyprwm/hyprland-plugins";
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
};
|
||||
hy3 = {
|
||||
url = "github:outfoxxed/hy3";
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
};
|
||||
hyprcursor-rose-pine.url = "github:ndom91/rose-pine-hyprcursor";
|
||||
|
||||
# - More stuff -------------------------------
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
with lib;
|
||||
let
|
||||
nix-colors-lib = inputs.nix-colors.lib-contrib { inherit pkgs; };
|
||||
wallpaper = ../../data/wallpapers/wallhaven/muntanya.png;
|
||||
wallpaper = ../../data/wallpapers/globus.jpg;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
@@ -69,6 +69,11 @@ in
|
||||
system.kanata.enable = true;
|
||||
system.devices.voyager.enable = true;
|
||||
|
||||
system.input = {
|
||||
japanese.enable = true;
|
||||
greek.enable = true;
|
||||
};
|
||||
|
||||
# - Desktop ----------------------------------
|
||||
desktop = {
|
||||
inherit wallpaper;
|
||||
@@ -76,8 +81,8 @@ in
|
||||
# Use Γραφείο (custom) desktop environment
|
||||
grapheio.enable = true;
|
||||
|
||||
# Add greek keyboard layout
|
||||
wm.hyprland.kb_layout = "es,gr";
|
||||
# # Add greek keyboard layout -- currently commented as fcitx5 adds greek support
|
||||
# wm.hyprland.kb_layout = "es,gr";
|
||||
};
|
||||
|
||||
# - Editors and development ------------------
|
||||
@@ -91,8 +96,9 @@ in
|
||||
dev.docker.users = ["marc"];
|
||||
|
||||
# - Other apps -------------------------------
|
||||
app.anki.enable = true;
|
||||
app.spotify.enable = true;
|
||||
app.skype.enable = true;
|
||||
# app.skype.enable = true;
|
||||
app.nextcloud.enable = true;
|
||||
app.yazi.enable = true;
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ in
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
iosevka
|
||||
(nerdfonts.override { fonts = [ "Iosevka" ]; })
|
||||
pkgs.nerd-fonts.iosevka
|
||||
];
|
||||
|
||||
hm.xdg.configFile."alacritty/alacritty.toml".source = ../../config/alacritty/alacritty.toml;
|
||||
|
||||
15
modules/app/anki.nix
Normal file
15
modules/app/anki.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.samfelag.modules.app.anki;
|
||||
in
|
||||
{
|
||||
options.samfelag.modules.app.anki = {
|
||||
enable = lib.mkEnableOption "anki";
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
hm.home.packages = with pkgs; [
|
||||
anki
|
||||
];
|
||||
};
|
||||
}
|
||||
44
modules/app/ghostty.nix
Normal file
44
modules/app/ghostty.nix
Normal file
@@ -0,0 +1,44 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.samfelag.modules.app.ghostty;
|
||||
i3Cfg = config.samfelag.modules.desktop.wm.i3;
|
||||
hyprCfg = config.samfelag.modules.desktop.wm.hyprland;
|
||||
in
|
||||
{
|
||||
options.samfelag.modules.app.ghostty = {
|
||||
enable = lib.mkEnableOption "ghostty";
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
hm.home.packages = with pkgs; [
|
||||
ghostty
|
||||
];
|
||||
|
||||
fonts.fontconfig.enable = true;
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
iosevka
|
||||
pkgs.nerd-fonts.iosevka
|
||||
];
|
||||
|
||||
hm.xdg.configFile."ghostty/config".text = ''
|
||||
background = "${config.colorScheme.palette.base00}"
|
||||
foreground = "${config.colorScheme.palette.base05}"
|
||||
|
||||
font-family = "Iosevka Nerd Font"
|
||||
background-opacity = 0.85
|
||||
background-blur = true
|
||||
'';
|
||||
|
||||
samfelag.modules.desktop.wm.i3.extraKeybindings = lib.mkIf i3Cfg.enable {
|
||||
"${i3Cfg.mod}+Return" = "exec ${pkgs.ghostty}/bin/ghostty";
|
||||
# "${i3Cfg.mod}+Shift+Return" = "exec ${pkgs.ghostty}/bin/ghostty -t floating-term";
|
||||
};
|
||||
|
||||
samfelag.modules.desktop.wm.hyprland.extraKeybindings = lib.mkIf hyprCfg.enable [
|
||||
"${hyprCfg.mod}, Return, exec, ${pkgs.ghostty}/bin/ghostty"
|
||||
"${hyprCfg.mod} SHIFT, Return, exec, [float] ${pkgs.ghostty}/bin/ghostty"
|
||||
];
|
||||
|
||||
};
|
||||
}
|
||||
@@ -26,7 +26,7 @@ in
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
iosevka
|
||||
(nerdfonts.override { fonts = [ "Iosevka" ]; })
|
||||
pkgs.nerd-fonts.iosevka
|
||||
];
|
||||
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
# - Locale -------------------------------------
|
||||
|
||||
time.timeZone = "Europe/Madrid";
|
||||
i18n.defaultLocale = "ca_ES.utf8";
|
||||
i18n.defaultLocale = "ca_ES.UTF-8";
|
||||
console.keyMap = "es";
|
||||
services.xserver.xkb = {
|
||||
layout = "es";
|
||||
|
||||
@@ -113,11 +113,15 @@ in
|
||||
rofi.enable = true;
|
||||
# Notification center
|
||||
swaync.enable = true;
|
||||
# Clipboard manager (history)
|
||||
cliphist.enable = true;
|
||||
# Take screenshots
|
||||
screenshot.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
app = {
|
||||
alacritty.enable = true;
|
||||
ghostty.enable = true;
|
||||
zen-browser.enable = true;
|
||||
};
|
||||
|
||||
|
||||
36
modules/desktop/tools/cliphist.nix
Normal file
36
modules/desktop/tools/cliphist.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.samfelag.modules.desktop.tools.cliphist;
|
||||
hyprCfg = config.samfelag.modules.desktop.wm.hyprland;
|
||||
rofiCfg = config.samfelag.modules.desktop.tools.rofi;
|
||||
in
|
||||
{
|
||||
options.samfelag.modules.desktop.tools.cliphist = {
|
||||
enable = mkEnableOption "Clipboard history";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
# - Clipboard manager ------------------------
|
||||
hm.services.cliphist = {
|
||||
enable = true;
|
||||
extraOptions = [
|
||||
"-max-dedupe-search"
|
||||
"10"
|
||||
"-max-items"
|
||||
"500"
|
||||
];
|
||||
};
|
||||
|
||||
# - Hyprland keybindings ---------------------
|
||||
hm.wayland.windowManager.hyprland.settings = lib.mkIf (hyprCfg.enable && rofiCfg.enable) {
|
||||
bind = [
|
||||
# Clipboard manager
|
||||
"${hyprCfg.mod}, v, exec, $HOME/.config/rofi/menus/cliphist/cliphist.sh"
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
@@ -12,9 +12,9 @@ in
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
# environment.systemPackages = with pkgs; [
|
||||
# hypridle
|
||||
# ];
|
||||
environment.systemPackages = with pkgs; [
|
||||
hypridle
|
||||
];
|
||||
|
||||
hm.programs.hyprlock = {
|
||||
enable = true;
|
||||
@@ -107,9 +107,9 @@ in
|
||||
};
|
||||
|
||||
# - Execute on startup -----------------------
|
||||
# hm.wayland.windowManager.hyprland.settings.exec-once = [
|
||||
# "hypridle"
|
||||
# ];
|
||||
hm.wayland.windowManager.hyprland.settings.exec-once = [
|
||||
"hypridle"
|
||||
];
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
31
modules/desktop/tools/screenshot.nix
Normal file
31
modules/desktop/tools/screenshot.nix
Normal file
@@ -0,0 +1,31 @@
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.samfelag.modules.desktop.tools.screenshot;
|
||||
hyprCfg = config.samfelag.modules.desktop.wm.hyprland;
|
||||
in
|
||||
{
|
||||
options.samfelag.modules.desktop.tools.screenshot = {
|
||||
enable = mkEnableOption "Screenshot utilities";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
# - Screenshot utilities ---------------------
|
||||
environment.systemPackages = [
|
||||
pkgs.slurp # to select the region
|
||||
pkgs.grim # actual screenshot program
|
||||
];
|
||||
|
||||
# - Hyprland keybindings ---------------------
|
||||
hm.wayland.windowManager.hyprland.settings = lib.mkIf hyprCfg.enable {
|
||||
bind = [
|
||||
# Screenshots
|
||||
"${hyprCfg.mod}, s, exec, $HOME/.config/grapheio/scripts/screenshot.sh region"
|
||||
"${hyprCfg.mod}, SHIFT s, exec, $HOME/.config/grapheio/scripts/screenshot.sh screen"
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
@@ -24,13 +24,13 @@ in {
|
||||
|
||||
hm.wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package = pkgs.hyprland;
|
||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
|
||||
xwayland.enable = true;
|
||||
systemd.enable = true;
|
||||
|
||||
plugins = [
|
||||
pkgs.hyprlandPlugins.hy3
|
||||
inputs.hy3.packages.${pkgs.stdenv.hostPlatform.system}.hy3
|
||||
];
|
||||
|
||||
settings = {
|
||||
@@ -109,8 +109,8 @@ in {
|
||||
"${cfg.mod} SHIFT, 5, movetoworkspace, 5"
|
||||
"${cfg.mod} SHIFT, 0, movetoworkspace, 6"
|
||||
|
||||
# - Keyboard ---------------------------
|
||||
"${cfg.mod}, Escape, exec, hyprctl switchxkblayout current next"
|
||||
# # - Keyboard ---------------------------
|
||||
# "${cfg.mod}, Escape, exec, hyprctl switchxkblayout current next"
|
||||
|
||||
] ++ cfg.extraKeybindings;
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ in {
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
iosevka
|
||||
(nerdfonts.override { fonts = [ "Iosevka" ]; })
|
||||
pkgs.nerd-fonts.iosevka
|
||||
];
|
||||
|
||||
services.xserver = {
|
||||
|
||||
@@ -19,6 +19,11 @@ in
|
||||
userName = cfg.userName;
|
||||
userEmail = cfg.userEmail;
|
||||
|
||||
ignores = [
|
||||
".direnv"
|
||||
".project"
|
||||
];
|
||||
|
||||
extraConfig = {
|
||||
init.defaultBranch = "main";
|
||||
};
|
||||
|
||||
@@ -53,6 +53,7 @@ in {
|
||||
fonts.packages = with pkgs; [
|
||||
iosevka
|
||||
emacs-all-the-icons-fonts
|
||||
noto-fonts-color-emoji
|
||||
];
|
||||
|
||||
env.PATH = [ "$HOME/.config/emacs/bin" ];
|
||||
@@ -63,34 +64,34 @@ in {
|
||||
"doom/custom.el".source = ../../config/doom/custom.el;
|
||||
"doom/init.el".source = ../../config/doom/init.el;
|
||||
"doom/packages.el".source = ../../config/doom/packages.el;
|
||||
"doom/themes".source = ../../config/doom/themes;
|
||||
# "doom/themes".source = ../../config/doom/themes;
|
||||
|
||||
# # Themeing
|
||||
# "doom/themes/base16-samfelag-theme.el".text = ''
|
||||
# (require 'base16-theme)
|
||||
# (defvar base16-samfelag-theme-colors
|
||||
# '(:base00 "#${config.colorScheme.palette.base00}"
|
||||
# :base01 "#${config.colorScheme.palette.base01}"
|
||||
# :base02 "#${config.colorScheme.palette.base02}"
|
||||
# :base03 "#${config.colorScheme.palette.base03}"
|
||||
# :base04 "#${config.colorScheme.palette.base04}"
|
||||
# :base05 "#${config.colorScheme.palette.base05}"
|
||||
# :base06 "#${config.colorScheme.palette.base06}"
|
||||
# :base07 "#${config.colorScheme.palette.base07}"
|
||||
# :base08 "#${config.colorScheme.palette.base08}"
|
||||
# :base09 "#${config.colorScheme.palette.base09}"
|
||||
# :base0A "#${config.colorScheme.palette.base0A}"
|
||||
# :base0B "#${config.colorScheme.palette.base0B}"
|
||||
# :base0C "#${config.colorScheme.palette.base0C}"
|
||||
# :base0D "#${config.colorScheme.palette.base0D}"
|
||||
# :base0E "#${config.colorScheme.palette.base0E}"
|
||||
# :base0F "#${config.colorScheme.palette.base0F}")
|
||||
# "All colors for Base16 Samfelag are defined here.")
|
||||
# (deftheme base16-samfelag)
|
||||
# (base16-theme-define 'base16-samfelag base16-samfelag-theme-colors)
|
||||
# (provide-theme 'base16-samfelag)
|
||||
# (provide 'base16-samfelag-theme)
|
||||
# '';
|
||||
# Themeing
|
||||
"doom/themes/base16-samfelag-theme.el".text = ''
|
||||
(require 'base16-theme)
|
||||
(defvar base16-samfelag-theme-colors
|
||||
'(:base00 "#${config.colorScheme.palette.base00}"
|
||||
:base01 "#${config.colorScheme.palette.base01}"
|
||||
:base02 "#${config.colorScheme.palette.base02}"
|
||||
:base03 "#${config.colorScheme.palette.base03}"
|
||||
:base04 "#${config.colorScheme.palette.base04}"
|
||||
:base05 "#${config.colorScheme.palette.base05}"
|
||||
:base06 "#${config.colorScheme.palette.base06}"
|
||||
:base07 "#${config.colorScheme.palette.base07}"
|
||||
:base08 "#${config.colorScheme.palette.base08}"
|
||||
:base09 "#${config.colorScheme.palette.base09}"
|
||||
:base0A "#${config.colorScheme.palette.base0A}"
|
||||
:base0B "#${config.colorScheme.palette.base0B}"
|
||||
:base0C "#${config.colorScheme.palette.base0C}"
|
||||
:base0D "#${config.colorScheme.palette.base0D}"
|
||||
:base0E "#${config.colorScheme.palette.base0E}"
|
||||
:base0F "#${config.colorScheme.palette.base0F}")
|
||||
"All colors for Base16 Samfelag are defined here.")
|
||||
(deftheme base16-samfelag)
|
||||
(base16-theme-define 'base16-samfelag base16-samfelag-theme-colors)
|
||||
(provide-theme 'base16-samfelag)
|
||||
(provide 'base16-samfelag-theme)
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
|
||||
25
modules/shell/starship.nix
Normal file
25
modules/shell/starship.nix
Normal file
@@ -0,0 +1,25 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.samfelag.modules.shell.starship;
|
||||
in
|
||||
{
|
||||
options.samfelag.modules.shell.starship = {
|
||||
enable = lib.mkEnableOption "A prompt for any shell";
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
hm.programs.starship = {
|
||||
enable = true;
|
||||
settings = {
|
||||
add_newline = false;
|
||||
|
||||
# Prompt on the right
|
||||
right_format = "$time";
|
||||
time.disabled = false;
|
||||
|
||||
# Status: Show error code of failed commands
|
||||
status.disabled = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -11,7 +11,6 @@ in
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
zsh
|
||||
zsh-powerlevel10k
|
||||
];
|
||||
|
||||
programs.zsh.enable = true;
|
||||
@@ -23,7 +22,8 @@ in
|
||||
enableCompletion = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
initExtra = ''
|
||||
initContent = let
|
||||
zshConfig = lib.mkOrder 1000 ''
|
||||
# Source generic (bash) configuration
|
||||
if [ -d $HOME/.config/shell/sh ]; then
|
||||
for rc in $HOME/.config/shell/sh/*.sh; do
|
||||
@@ -38,12 +38,10 @@ in
|
||||
done
|
||||
fi
|
||||
'';
|
||||
|
||||
initExtraBeforeCompInit = ''
|
||||
# p10k instant prompt
|
||||
P10K_INSTANT_PROMPT="$XDG_CACHE_HOME/p10k-instant-prompt-''${(%):-%n}.zsh"
|
||||
[[ ! -r "$P10K_INSTANT_PROMPT" ]] || source "$P10K_INSTANT_PROMPT"
|
||||
'';
|
||||
in
|
||||
lib.mkMerge [
|
||||
zshConfig
|
||||
];
|
||||
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
@@ -54,11 +52,6 @@ in
|
||||
};
|
||||
|
||||
plugins = [
|
||||
{
|
||||
file = "powerlevel10k.zsh-theme";
|
||||
name = "powerlevel10k";
|
||||
src = "${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k";
|
||||
}
|
||||
{
|
||||
name = "zsh-nix-shell";
|
||||
file = "nix-shell.plugin.zsh";
|
||||
@@ -69,10 +62,14 @@ in
|
||||
sha256 = "0za4aiwwrlawnia4f29msk822rj9bgcygw6a8a6iikiwzjjz0g91";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "vi-mode";
|
||||
src = pkgs.zsh-vi-mode;
|
||||
file = "share/zsh-vi-mode/zsh-vi-mode.plugin.zsh";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
hm.xdg.configFile."zsh/.p10k.zsh".source = ../../config/zsh/.p10k.zsh;
|
||||
|
||||
samfelag.modules.shell.starship.enable = true;
|
||||
};
|
||||
}
|
||||
|
||||
39
modules/system/input/greek.nix
Normal file
39
modules/system/input/greek.nix
Normal file
@@ -0,0 +1,39 @@
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.samfelag.modules.system.input.greek;
|
||||
hyprCfg = config.samfelag.modules.desktop.wm.hyprland;
|
||||
in
|
||||
{
|
||||
options.samfelag.modules.system.input.greek = {
|
||||
enable = mkEnableOption "Enable greek input";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
i18n.inputMethod = {
|
||||
type = "fcitx5";
|
||||
enable = true;
|
||||
fcitx5.addons = with pkgs; [
|
||||
fcitx5-gtk
|
||||
fcitx5-nord
|
||||
];
|
||||
};
|
||||
|
||||
environment.variables = {
|
||||
GTK_IM_MODULE = "fcitx";
|
||||
QT_IM_MODULE = "fcitx";
|
||||
XMODIFIERS = "@im=fcitx";
|
||||
};
|
||||
|
||||
hm.wayland.windowManager.hyprland.settings = lib.mkIf hyprCfg.enable {
|
||||
windowrule = "pseudo, class:fcitx";
|
||||
exec-once = [
|
||||
"fcitx -d -r"
|
||||
"fcitx-remote -r"
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
46
modules/system/input/japanese.nix
Normal file
46
modules/system/input/japanese.nix
Normal file
@@ -0,0 +1,46 @@
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.samfelag.modules.system.input.japanese;
|
||||
hyprCfg = config.samfelag.modules.desktop.wm.hyprland;
|
||||
in
|
||||
{
|
||||
options.samfelag.modules.system.input.japanese = {
|
||||
enable = mkEnableOption "Enable japanese input";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
i18n.inputMethod = {
|
||||
type = "fcitx5";
|
||||
enable = true;
|
||||
fcitx5.addons = with pkgs; [
|
||||
fcitx5-mozc-ut
|
||||
fcitx5-gtk
|
||||
fcitx5-nord
|
||||
];
|
||||
};
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
ipafont
|
||||
kochi-substitute
|
||||
noto-fonts-cjk-sans
|
||||
];
|
||||
|
||||
environment.variables = {
|
||||
GTK_IM_MODULE = "fcitx";
|
||||
QT_IM_MODULE = "fcitx";
|
||||
XMODIFIERS = "@im=fcitx";
|
||||
};
|
||||
|
||||
hm.wayland.windowManager.hyprland.settings = lib.mkIf hyprCfg.enable {
|
||||
windowrule = "pseudo, class:fcitx";
|
||||
exec-once = [
|
||||
"fcitx -d -r"
|
||||
"fcitx-remote -r"
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user