diff options
author | Mikhail Kirillov <w96k@runbox.com> | 2024-12-12 16:57:35 +0400 |
---|---|---|
committer | Mikhail Kirillov <w96k@runbox.com> | 2024-12-12 16:57:35 +0400 |
commit | 9bc0481748255f32091a0cf95b65947fa3aafa54 (patch) | |
tree | ffb8deb9cef82ee595953e66d4bec4a00fa6024d | |
parent | f30e1cd3c795ada69723131d541c8e45210ffdce (diff) |
Update config
-rw-r--r-- | X/.Xdefaults | 4 | ||||
-rw-r--r-- | X/.Xmodmap | 248 | ||||
-rw-r--r-- | emacs/.emacs.d/nil | 517 | ||||
-rw-r--r-- | gnupg/.gnupg/sshcontrol | 1 | ||||
-rw-r--r-- | guix/.dotfiles/.bash_profile | 4 | ||||
-rw-r--r-- | guix/.dotfiles/.bashrc | 14 | ||||
-rw-r--r-- | guix/.dotfiles/home-configuration.scm | 92 | ||||
-rw-r--r-- | guix/config-desktop.scm | 294 | ||||
l--------- | ssh/.ssh/id_ed25519 | 1 | ||||
l--------- | ssh/.ssh/id_ed25519.pub | 1 | ||||
-rw-r--r-- | vim/.vimrc | 76 | ||||
-rw-r--r-- | vm/virbr0.xml | 10 |
12 files changed, 583 insertions, 679 deletions
diff --git a/X/.Xdefaults b/X/.Xdefaults index f36204b..078c027 100644 --- a/X/.Xdefaults +++ b/X/.Xdefaults @@ -46,12 +46,8 @@ xterm*termName: xterm-256color !xterm*loginShell: true xterm*locale: true xterm*vt100.locale: true -! xterm*font: x:-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1 -! xterm*font: x:-misc-fixed-bold-r-normal--15-*-75-75-c-90-iso10646-1 xterm*font: x:-adobe-courier-bold-r-normal--14-*-75-75-m-90-iso10646-1 xterm*boldMode: false -! xterm*font: x:-adobe-courier-medium-r-normal--14-140-75-75-m-90-iso8859-1 -! xterm*boldFont: x:-adobe-courier-medium-r-bold--14-140-75-75-m-90-iso8859-1 xterm*vt100.allowBoldFonts: True xterm*renderFont: True xterm.vt100.eightBitInput: False diff --git a/X/.Xmodmap b/X/.Xmodmap new file mode 100644 index 0000000..c1650a8 --- /dev/null +++ b/X/.Xmodmap @@ -0,0 +1,248 @@ +keycode 8 = +keycode 9 = Escape NoSymbol Escape +keycode 10 = 1 exclam 1 exclam +keycode 11 = 2 at 2 quotedbl +keycode 12 = 3 numbersign 3 numerosign +keycode 13 = 4 dollar 4 semicolon +keycode 14 = 5 percent 5 percent +keycode 15 = 6 asciicircum 6 colon +keycode 16 = 7 ampersand 7 question +keycode 17 = 8 asterisk 8 asterisk U20BD +keycode 18 = 9 parenleft 9 parenleft +keycode 19 = 0 parenright 0 parenright +keycode 20 = minus underscore minus underscore +keycode 21 = equal plus equal plus +keycode 22 = BackSpace BackSpace BackSpace BackSpace +keycode 23 = Tab ISO_Left_Tab Tab ISO_Left_Tab +keycode 24 = q Q Cyrillic_shorti Cyrillic_SHORTI +keycode 25 = w W Cyrillic_tse Cyrillic_TSE +keycode 26 = e E Cyrillic_u Cyrillic_U +keycode 27 = r R Cyrillic_ka Cyrillic_KA +keycode 28 = t T Cyrillic_ie Cyrillic_IE +keycode 29 = y Y Cyrillic_en Cyrillic_EN +keycode 30 = u U Cyrillic_ghe Cyrillic_GHE +keycode 31 = i I Cyrillic_sha Cyrillic_SHA +keycode 32 = o O Cyrillic_shcha Cyrillic_SHCHA +keycode 33 = p P Cyrillic_ze Cyrillic_ZE +keycode 34 = bracketleft braceleft Cyrillic_ha Cyrillic_HA +keycode 35 = bracketright braceright Cyrillic_hardsign Cyrillic_HARDSIGN +keycode 36 = Return NoSymbol Return +keycode 37 = Escape +keycode 38 = a A Cyrillic_ef Cyrillic_EF +keycode 39 = s S Cyrillic_yeru Cyrillic_YERU +keycode 40 = d D Cyrillic_ve Cyrillic_VE +keycode 41 = f F Cyrillic_a Cyrillic_A +keycode 42 = g G Cyrillic_pe Cyrillic_PE +keycode 43 = h H Cyrillic_er Cyrillic_ER +keycode 44 = j J Cyrillic_o Cyrillic_O +keycode 45 = k K Cyrillic_el Cyrillic_EL +keycode 46 = l L Cyrillic_de Cyrillic_DE +keycode 47 = semicolon colon Cyrillic_zhe Cyrillic_ZHE +keycode 48 = apostrophe quotedbl Cyrillic_e Cyrillic_E +keycode 49 = grave asciitilde Cyrillic_io Cyrillic_IO +keycode 50 = Shift_L ISO_Prev_Group Shift_L ISO_Prev_Group +keycode 51 = backslash bar backslash slash +keycode 52 = z Z Cyrillic_ya Cyrillic_YA +keycode 53 = x X Cyrillic_che Cyrillic_CHE +keycode 54 = c C Cyrillic_es Cyrillic_ES +keycode 55 = v V Cyrillic_em Cyrillic_EM +keycode 56 = b B Cyrillic_i Cyrillic_I +keycode 57 = n N Cyrillic_te Cyrillic_TE +keycode 58 = m M Cyrillic_softsign Cyrillic_SOFTSIGN +keycode 59 = comma less Cyrillic_be Cyrillic_BE +keycode 60 = period greater Cyrillic_yu Cyrillic_YU +keycode 61 = slash question period comma +keycode 62 = Shift_R ISO_Next_Group Shift_R ISO_Next_Group +keycode 63 = KP_Multiply KP_Multiply KP_Multiply KP_Multiply KP_Multiply KP_Multiply XF86ClearGrab KP_Multiply KP_Multiply XF86ClearGrab +keycode 64 = Alt_L Meta_L Alt_L Meta_L +keycode 65 = space NoSymbol space +keycode 66 = Control_L Control_L Control_L Control_L +keycode 67 = F1 F1 F1 F1 F1 F1 XF86Switch_VT_1 F1 F1 XF86Switch_VT_1 +keycode 68 = F2 F2 F2 F2 F2 F2 XF86Switch_VT_2 F2 F2 XF86Switch_VT_2 +keycode 69 = F3 F3 F3 F3 F3 F3 XF86Switch_VT_3 F3 F3 XF86Switch_VT_3 +keycode 70 = F4 F4 F4 F4 F4 F4 XF86Switch_VT_4 F4 F4 XF86Switch_VT_4 +keycode 71 = F5 F5 F5 F5 F5 F5 XF86Switch_VT_5 F5 F5 XF86Switch_VT_5 +keycode 72 = F6 F6 F6 F6 F6 F6 XF86Switch_VT_6 F6 F6 XF86Switch_VT_6 +keycode 73 = F7 F7 F7 F7 F7 F7 XF86Switch_VT_7 F7 F7 XF86Switch_VT_7 +keycode 74 = F8 F8 F8 F8 F8 F8 XF86Switch_VT_8 F8 F8 XF86Switch_VT_8 +keycode 75 = F9 F9 F9 F9 F9 F9 XF86Switch_VT_9 F9 F9 XF86Switch_VT_9 +keycode 76 = F10 F10 F10 F10 F10 F10 XF86Switch_VT_10 F10 F10 XF86Switch_VT_10 +keycode 77 = Num_Lock NoSymbol Num_Lock +keycode 78 = Scroll_Lock NoSymbol Scroll_Lock +keycode 79 = KP_Home KP_7 KP_Home KP_7 +keycode 80 = KP_Up KP_8 KP_Up KP_8 +keycode 81 = KP_Prior KP_9 KP_Prior KP_9 +keycode 82 = KP_Subtract KP_Subtract KP_Subtract KP_Subtract KP_Subtract KP_Subtract XF86Prev_VMode KP_Subtract KP_Subtract XF86Prev_VMode +keycode 83 = KP_Left KP_4 KP_Left KP_4 +keycode 84 = KP_Begin KP_5 KP_Begin KP_5 +keycode 85 = KP_Right KP_6 KP_Right KP_6 +keycode 86 = KP_Add KP_Add KP_Add KP_Add KP_Add KP_Add XF86Next_VMode KP_Add KP_Add XF86Next_VMode +keycode 87 = KP_End KP_1 KP_End KP_1 +keycode 88 = KP_Down KP_2 KP_Down KP_2 +keycode 89 = KP_Next KP_3 KP_Next KP_3 +keycode 90 = KP_Insert KP_0 KP_Insert KP_0 +keycode 91 = KP_Delete KP_Decimal KP_Delete KP_Separator +keycode 92 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift +keycode 93 = +keycode 94 = less greater slash bar bar brokenbar +keycode 95 = F11 F11 F11 F11 F11 F11 XF86Switch_VT_11 F11 F11 XF86Switch_VT_11 +keycode 96 = F12 F12 F12 F12 F12 F12 XF86Switch_VT_12 F12 F12 XF86Switch_VT_12 +keycode 97 = +keycode 98 = Katakana NoSymbol Katakana +keycode 99 = Hiragana NoSymbol Hiragana +keycode 100 = Henkan_Mode NoSymbol Henkan_Mode +keycode 101 = Hiragana_Katakana NoSymbol Hiragana_Katakana +keycode 102 = Muhenkan NoSymbol Muhenkan +keycode 103 = +keycode 104 = KP_Enter NoSymbol KP_Enter +keycode 105 = Control_R NoSymbol Control_R +keycode 106 = KP_Divide KP_Divide KP_Divide KP_Divide KP_Divide KP_Divide XF86Ungrab KP_Divide KP_Divide XF86Ungrab +keycode 107 = Print Sys_Req Print Sys_Req +keycode 108 = Alt_R Meta_R Alt_R Meta_R +keycode 109 = Linefeed NoSymbol Linefeed +keycode 110 = Home NoSymbol Home +keycode 111 = Up NoSymbol Up +keycode 112 = Prior NoSymbol Prior +keycode 113 = Left NoSymbol Left +keycode 114 = Right NoSymbol Right +keycode 115 = End NoSymbol End +keycode 116 = Down NoSymbol Down +keycode 117 = Next NoSymbol Next +keycode 118 = Insert NoSymbol Insert +keycode 119 = Delete NoSymbol Delete +keycode 120 = +keycode 121 = XF86AudioMute NoSymbol XF86AudioMute +keycode 122 = XF86AudioLowerVolume NoSymbol XF86AudioLowerVolume +keycode 123 = XF86AudioRaiseVolume NoSymbol XF86AudioRaiseVolume +keycode 124 = XF86PowerOff NoSymbol XF86PowerOff +keycode 125 = KP_Equal NoSymbol KP_Equal +keycode 126 = plusminus NoSymbol plusminus +keycode 127 = Pause Break Pause Break +keycode 128 = XF86LaunchA NoSymbol XF86LaunchA +keycode 129 = KP_Decimal KP_Decimal KP_Decimal KP_Decimal +keycode 130 = Hangul NoSymbol Hangul +keycode 131 = Hangul_Hanja NoSymbol Hangul_Hanja +keycode 132 = +keycode 133 = Super_L NoSymbol Super_L +keycode 134 = Super_R NoSymbol Super_R +keycode 135 = Menu NoSymbol Menu +keycode 136 = Cancel NoSymbol Cancel +keycode 137 = Redo NoSymbol Redo +keycode 138 = SunProps NoSymbol SunProps +keycode 139 = Undo NoSymbol Undo +keycode 140 = SunFront NoSymbol SunFront +keycode 141 = XF86Copy NoSymbol XF86Copy +keycode 142 = XF86Open NoSymbol XF86Open +keycode 143 = XF86Paste NoSymbol XF86Paste +keycode 144 = Find NoSymbol Find +keycode 145 = XF86Cut NoSymbol XF86Cut +keycode 146 = Help NoSymbol Help +keycode 147 = XF86MenuKB NoSymbol XF86MenuKB +keycode 148 = XF86Calculator NoSymbol XF86Calculator +keycode 149 = +keycode 150 = XF86Sleep NoSymbol XF86Sleep +keycode 151 = XF86WakeUp NoSymbol XF86WakeUp +keycode 152 = XF86Explorer NoSymbol XF86Explorer +keycode 153 = XF86Send NoSymbol XF86Send +keycode 154 = +keycode 155 = XF86Xfer NoSymbol XF86Xfer +keycode 156 = XF86Launch1 NoSymbol XF86Launch1 +keycode 157 = XF86Launch2 NoSymbol XF86Launch2 +keycode 158 = XF86WWW NoSymbol XF86WWW +keycode 159 = XF86DOS NoSymbol XF86DOS +keycode 160 = XF86ScreenSaver NoSymbol XF86ScreenSaver +keycode 161 = XF86RotateWindows NoSymbol XF86RotateWindows +keycode 162 = XF86TaskPane NoSymbol XF86TaskPane +keycode 163 = XF86Mail NoSymbol XF86Mail +keycode 164 = XF86Favorites NoSymbol XF86Favorites +keycode 165 = XF86MyComputer NoSymbol XF86MyComputer +keycode 166 = XF86Back NoSymbol XF86Back +keycode 167 = XF86Forward NoSymbol XF86Forward +keycode 168 = +keycode 169 = XF86Eject NoSymbol XF86Eject +keycode 170 = XF86Eject NoSymbol XF86Eject +keycode 171 = XF86AudioNext NoSymbol XF86AudioNext +keycode 172 = XF86AudioPlay XF86AudioPause XF86AudioPlay XF86AudioPause +keycode 173 = XF86AudioPrev NoSymbol XF86AudioPrev +keycode 174 = XF86AudioStop XF86Eject XF86AudioStop XF86Eject +keycode 175 = XF86AudioRecord NoSymbol XF86AudioRecord +keycode 176 = XF86AudioRewind NoSymbol XF86AudioRewind +keycode 177 = XF86Phone NoSymbol XF86Phone +keycode 178 = +keycode 179 = XF86Tools NoSymbol XF86Tools +keycode 180 = XF86HomePage NoSymbol XF86HomePage +keycode 181 = XF86Reload NoSymbol XF86Reload +keycode 182 = XF86Close NoSymbol XF86Close +keycode 183 = +keycode 184 = +keycode 185 = XF86ScrollUp NoSymbol XF86ScrollUp +keycode 186 = XF86ScrollDown NoSymbol XF86ScrollDown +keycode 187 = parenleft NoSymbol parenleft +keycode 188 = parenright NoSymbol parenright +keycode 189 = XF86New NoSymbol XF86New +keycode 190 = Redo NoSymbol Redo +keycode 191 = XF86Tools NoSymbol XF86Tools +keycode 192 = XF86Launch5 NoSymbol XF86Launch5 +keycode 193 = XF86Launch6 NoSymbol XF86Launch6 +keycode 194 = XF86Launch7 NoSymbol XF86Launch7 +keycode 195 = XF86Launch8 NoSymbol XF86Launch8 +keycode 196 = XF86Launch9 NoSymbol XF86Launch9 +keycode 197 = +keycode 198 = XF86AudioMicMute NoSymbol XF86AudioMicMute +keycode 199 = XF86TouchpadToggle NoSymbol XF86TouchpadToggle +keycode 200 = XF86TouchpadOn NoSymbol XF86TouchpadOn +keycode 201 = XF86TouchpadOff NoSymbol XF86TouchpadOff +keycode 202 = +keycode 203 = ISO_Level5_Shift NoSymbol ISO_Level5_Shift +keycode 204 = NoSymbol Alt_L NoSymbol Alt_L +keycode 205 = NoSymbol Meta_L NoSymbol Meta_L +keycode 206 = NoSymbol Super_L NoSymbol Super_L +keycode 207 = NoSymbol Hyper_L NoSymbol Hyper_L +keycode 208 = XF86AudioPlay NoSymbol XF86AudioPlay +keycode 209 = XF86AudioPause NoSymbol XF86AudioPause +keycode 210 = XF86Launch3 NoSymbol XF86Launch3 +keycode 211 = XF86Launch4 NoSymbol XF86Launch4 +keycode 212 = XF86LaunchB NoSymbol XF86LaunchB +keycode 213 = XF86Suspend NoSymbol XF86Suspend +keycode 214 = XF86Close NoSymbol XF86Close +keycode 215 = XF86AudioPlay NoSymbol XF86AudioPlay +keycode 216 = XF86AudioForward NoSymbol XF86AudioForward +keycode 217 = +keycode 218 = Print NoSymbol Print +keycode 219 = +keycode 220 = XF86WebCam NoSymbol XF86WebCam +keycode 221 = XF86AudioPreset NoSymbol XF86AudioPreset +keycode 222 = +keycode 223 = XF86Mail NoSymbol XF86Mail +keycode 224 = XF86Messenger NoSymbol XF86Messenger +keycode 225 = XF86Search NoSymbol XF86Search +keycode 226 = XF86Go NoSymbol XF86Go +keycode 227 = XF86Finance NoSymbol XF86Finance +keycode 228 = XF86Game NoSymbol XF86Game +keycode 229 = XF86Shop NoSymbol XF86Shop +keycode 230 = +keycode 231 = Cancel NoSymbol Cancel +keycode 232 = XF86MonBrightnessDown NoSymbol XF86MonBrightnessDown +keycode 233 = XF86MonBrightnessUp NoSymbol XF86MonBrightnessUp +keycode 234 = XF86AudioMedia NoSymbol XF86AudioMedia +keycode 235 = XF86Display NoSymbol XF86Display +keycode 236 = XF86KbdLightOnOff NoSymbol XF86KbdLightOnOff +keycode 237 = XF86KbdBrightnessDown NoSymbol XF86KbdBrightnessDown +keycode 238 = XF86KbdBrightnessUp NoSymbol XF86KbdBrightnessUp +keycode 239 = XF86Send NoSymbol XF86Send +keycode 240 = XF86Reply NoSymbol XF86Reply +keycode 241 = XF86MailForward NoSymbol XF86MailForward +keycode 242 = XF86Save NoSymbol XF86Save +keycode 243 = XF86Documents NoSymbol XF86Documents +keycode 244 = XF86Battery NoSymbol XF86Battery +keycode 245 = XF86Bluetooth NoSymbol XF86Bluetooth +keycode 246 = XF86WLAN NoSymbol XF86WLAN +keycode 247 = XF86UWB NoSymbol XF86UWB +keycode 248 = +keycode 249 = XF86Next_VMode NoSymbol XF86Next_VMode +keycode 250 = XF86Prev_VMode NoSymbol XF86Prev_VMode +keycode 251 = XF86MonBrightnessCycle NoSymbol XF86MonBrightnessCycle +keycode 252 = XF86BrightnessAuto NoSymbol XF86BrightnessAuto +keycode 253 = XF86DisplayOff NoSymbol XF86DisplayOff +keycode 254 = XF86WWAN NoSymbol XF86WWAN +keycode 255 = XF86RFKill NoSymbol XF86RFKill diff --git a/emacs/.emacs.d/nil b/emacs/.emacs.d/nil index 08c3961..f7932eb 100644 --- a/emacs/.emacs.d/nil +++ b/emacs/.emacs.d/nil @@ -1,255 +1,18 @@ (require 'package) (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") - ("melpa" . "http://melpa.org/packages/"))) + ("melpa" . "http://melpa.org/packages/"))) (when (< emacs-major-version 27) (package-initialize)) (require 'gnutls) -(progn - (package-refresh-contents) - (package-install 'avy) - (package-install 'php-mode) - (package-install 'phps-mode) - ;; (package-install 'anzu) - (package-install 'anaconda-mode) - (package-install 'auctex) - ;; (package-install 'rmsbolt) - ;; (package-install 'beginend) - ;; (package-install 'composer) - (package-install 'cinspect) - (package-install 'debian-el) - (package-install 'dpkg-dev-el) - (package-install 'edebug-inline-result) - ;;(package-install 'haskell-mode) - ;;(package-install 'idris-mode) - (package-install 'magit) - (package-install 'git-timemachine) - (package-install 'git-dwim) - (package-install 'gitpatch) - (package-install 'goto-chg) - (package-install 'debbugs) - ;;(package-install 'deft) - ;; (package-install 'direnv) - (package-install 'dumb-jump) - (package-install 'docker) - (package-install 'docker-cli) - (package-install 'docker-tramp) - (package-install 'docker-compose-mode) - (package-install 'org-sql) - ;;(package-install 'eglot) - ;; (package-install 'eglot-java) - ;; (package-install 'mastodon) - ;; (package-install 'exec-path-from-shell) - (package-install 'expand-region) - ;; (package-install 'flymake-php) - (package-install 'flycheck) - (package-install 'flycheck-phpstan) - (package-install 'phpactor) - ;;(package-install 'robe) - (package-install 'geiser) - (package-install 'geiser-guile) - (package-install 'guix) - ;; (package-install 'git-gutter) - ;; (package-install 'gnuplot) - ;;(package-install 'swiper) - ;;(package-install 'sqlite3) - (package-install 'org-roam) - ;; (package-install 'org-roam-ui) - ;; (package-install 'org-download) - ;; (package-install 'org-babel-eval-in-repl) - ;;(package-install 'ob-php) - ;; (package-install 'on-screen) - ;;(package-install 'nix-mode) - (package-install 'pdf-tools) - ;;(package-install 'phpactor) - ;; (package-install 'company-quickhelp) - ;;(package-install 'ac-php) - (package-install 'php-mode) - (package-install 'php-quickhelp) - (package-install 'phan) - ;;(package-install 'php-cs-fixer) - ;; (package-install 'company-php) - ;;(package-install 'php-eldoc) - ;;(package-install 'phps-mode) - (package-install 'realgud) - ;; (package-install 'realgud-xdebug) - ;; (package-install 'kiwix) - ;;(package-install 'sml-mode) - (package-install 'sly) - (package-install 'simple-httpd) - (package-install 'sudo-edit) - ;;(package-install 'treemacs) - (package-install 'undo-tree) - ;; (package-install 'yasnippet) - ;; (package-install 'yasnippet-snippets) - ;; (package-install 'vimrc-mode) - ;; (package-install 'flymake-phpcs) - ;; (package-install 'flymake-phpstan) - ;; (package-install 'no-littering) - (package-install 'web-mode) - ;; (package-install 'which-key) - ;; (package-install 'reverse-im) - (package-install 'imenu-list) - ;; (package-install 'isearch-mb) - (package-install 'visual-fill-column) - ;; (package-install 'browse-kill-ring) - (package-install 'corfu) - ;; (package-install 'inf-ruby) - (package-install 'yaml-mode) - ;; (package-install 'geben) - (package-install 'link-hint) - (package-install 'whole-line-or-region) - (package-install 'quickrun) - ;; (package-install 'psysh) - ;; (package-install 'restclient) - ) - -(when (eq window-system 'pgtk) - (pgtk-use-im-context t)) - -(when (fboundp 'native-compile-async) - (setq comp-async-compilation t - package-native-compile t - - native-comp-speed 2 - native-comp-async-jobs-number 1 - comp-num-cpus 2 - ;; JIT Compilation - native-comp-deferred-compilation t - ;; AOT Compilation - package-native-compile t - comp-async-report-warnings-errors nil)) - -;; (native-compile-async "~/.emacs.d/elpa/" 'recursively) -(native-compile-async "~/.guix-profile/share/emacs/site-lisp" 'recursively) - -;; block until native compilation has finished - (while (or comp-files-queue - (> (comp-async-runnings) 0)) - -;; Disable guix autoloading and x resources loading -(setq site-run-file nil) - (require 'exwm) (require 'exwm-config) (exwm-config-example) -;; Change mode-line-modes to show only major mode -(defvar mode-line-major-mode - (let ((recursive-edit-help-echo "Recursive edit, type C-M-c to get out")) - (list (propertize "%[" 'help-echo recursive-edit-help-echo) - `(:propertize ("" mode-name) - help-echo "Major mode\n\ - mouse-1: Display major mode menu\n\ - mouse-2: Show help for major mode\n\ - mouse-3: Toggle minor modes" - mouse-face mode-line-highlight - local-map ,mode-line-major-mode-keymap) - '("" mode-line-process) - (propertize "%n" 'help-echo "mouse-2: Remove narrowing from buffer" - 'mouse-face 'mode-line-highlight - 'local-map (make-mode-line-mouse-map - 'mouse-2 #'mode-line-widen)) - (propertize "%]" 'help-echo recursive-edit-help-echo) - " ")) - "Mode line construct for displaying major and minor modes.") - -(put 'mode-line-major-mode 'risky-local-variable t) - -;; Change mode-line-format -(setq-default mode-line-format - '("%e" - mode-line-front-space - mode-line-mule-info - - mode-line-client - mode-line-modified - mode-line-remote - mode-line-frame-identification - ;; long-path - mode-line-buffer-identification - mode-line-misc-info - " " - mode-line-major-mode - " " - vc-mode - " " - - mode-line-position - mode-line-end-spaces - )) - -;; Do not resize the frame at this early stage. -(setq frame-inhibit-implied-resize t) -(setq use-dialog-box nil) - -;;; Disable some gui -(scroll-bar-mode -1) -(tool-bar-mode -1) -(menu-bar-mode -1) -;;(tooltip-mode -1) - -;;; Changing emacs default setting through customize -(custom-set-variables - '(fill-column 72) - '(git-gutter:added-sign " ") - '(git-gutter:deleted-sign " ") - '(git-gutter:modified-sign " ") - '(git-gutter:unchanged-sign " ") - '(lsp-headerline-breadcrumb-enable nil) - '(scroll-bar-mode 'nil) - '(scroll-bar-adjust-thumb-portion nil) - '(tool-bar-position 'bottom) - '(tool-bar-style 'both-horiz)) - -(custom-set-faces - '(default ((t (:height 140 :family "Jetbrains Mono" :embolden t)))) - '(region ((t (:background "gray85")))) - '(mode-line ((t (:background "grey70" :foreground "grey10")))) - '(mode-line-inactive ((t (:inherit mode-line :background "grey90" :foreground "grey20" :box (:line-width (-2 . -2) :color "grey85") :weight light)))) - '(mode-line-buffer-id ((t (:weight bold)))) - '(mode-line-emphasis ((t (:weight bold)))) - '(lsp-modeline-code-actions-face ((t :inherit mode-line :height 100))) - '(tool-bar ((t (:background "grey80" :foreground "grey10")))) - '(fill-column-indicator ((t (:foreground "grey95")))) - '(hl-line ((t (:background "gray95")))) - '(fringe ((t (:background "grey87")))) - '(header-line ((t (:inherit mode-line :background "grey90")))) - '(vertical-border ((t (:foreground "grey90")))) - '(window-divider ((t (:foreground "gray90"))))) - -(set-fringe-style (cons 7 7)) - -(defun switch-gui () - "Disable/enable menu-bar and tool-bar." - (interactive) - (if menu-bar-mode - (progn - (menu-bar-mode -1) - (tool-bar-mode -1) - (scroll-bar-mode -1)) - (progn - (menu-bar-mode 1) - (tool-bar-mode 1) - (scroll-bar-mode 1)))) - -(defun switch-scroll-bar () - "Disable/enable scroll-bar." - (interactive) - (if scroll-bar-mode - (scroll-bar-mode -1) - (scroll-bar-mode))) - -(define-key global-map (kbd "<f5>") 'switch-gui) -(define-key global-map (kbd "<f8>") 'switch-scroll-bar) - -(provide 'early-init) - ;;; early-init.el ends here - -;;(add-hook 'prog-mode-hook 'flymake-mode) +(add-hook 'prog-mode-hook 'flymake-mode) (require 'psalm) @@ -268,12 +31,12 @@ "Start the phan daemon" (interactive) (let* ((default-directory (php-project-get-root-dir)) - (phan-executable (or flycheck-phanclient--phan-executable - (if (file-exists-p "vendor/bin/phan") - (concat default-directory "vendor/bin/phan") - (executable-find "phan")))) - (cmd (list phan-executable "--daemonize-tcp-port" "4846" "--quick"))) - (apply #'start-process "PhanDaemon" "*phan daemon*" cmd))) + (phan-executable (or flycheck-phanclient--phan-executable + (if (file-exists-p "vendor/bin/phan") + (concat default-directory "vendor/bin/phan") + (executable-find "phan")))) + (cmd (list phan-executable "--daemonize-tcp-port" "4846" "--quick"))) + (apply #'start-process "PhanDaemon" "*phan daemon*" cmd))) (flycheck-define-checker php-phanclient "Phan" @@ -288,43 +51,6 @@ (add-hook 'prog-mode-hook 'flycheck-mode)) -(when (package-loaded? "treemacs") - (progn - (setq treemacs-width 50 - treemacs-show-cursor t - treemacs-position 'right - treemacs-indentation 1 - treemacs-tag-follow-mode t - treemacs-fringe-indicator-mode nil) - - (define-key global-map - (kbd "C-x C-d") 'treemacs))) - -(when (package-loaded? "isearch-mb") - (progn - (isearch-mb-mode t) - (global-set-key (kbd "C-s") 'isearch-forward-regexp) - (global-set-key (kbd "C-r") 'isearch-backward-regexp))) - -(when (package-loaded? "browse-kill-ring") - (define-key global-map (kbd "C-M-y") 'browse-kill-ring)) - -(setq path-to-ctags "~/.guix-profile/bin/ctags") - -(defun tags-create (dir-name) - "Create tags file." - (interactive "DDirectory: ") - (shell-command - (format "%s -f TAGS -e -R %s" path-to-ctags - (directory-file-name dir-name)))) - -(defun tags-create-python (dir-name) - "Create tags with python interpreter" - (interactive "DDirectory: ") - (shell-command - (format "%s -f TAGS -e -R --fields=+l --languages=python --python-kinds=-iv $(python -c \"import os, sys; print(' '.join('{}'.format(d) for d in sys.path if os.path.isdir(d)))\") %s" path-to-ctags - (directory-file-name dir-name)))) - (when (package-loaded? "realgud") (load "~/.emacs.d/site-lisp/realgud-xdebug/realgud-xdebug.el")) @@ -334,16 +60,16 @@ (when (package-loaded? "corfu") (progn (setq corfu-preview-current 'nil - corfu-popupinfo-delay t) + corfu-popupinfo-delay t) (corfu-mode 1) (corfu-popupinfo-mode 1) (defun show-default-completion-buffer () - (interactive) - (corfu-quit) - (corfu-mode -1) - (completion-at-point) - (corfu-mode 1) - (corfu-popupinfo-mode 1)) + (interactive) + (corfu-quit) + (corfu-mode -1) + (completion-at-point) + (corfu-mode 1) + (corfu-popupinfo-mode 1)) (define-key corfu-map (kbd "M-TAB") 'show-default-completion-buffer) (define-key corfu-map (kbd "TAB") 'show-default-completion-buffer) (define-key corfu-map (kbd "C-M-i") 'show-default-completion-buffer) @@ -351,22 +77,17 @@ (add-hook 'prog-mode-hook 'corfu-mode) (defun corfu-send-shell (&rest _) - "Send completion candidate when inside comint/eshell." - (cond - ((and (derived-mode-p 'eshell-mode) (fboundp 'eshell-send-input)) - (eshell-send-input)) - ((and (derived-mode-p 'comint-mode) (fboundp 'comint-send-input)) - (comint-send-input)))) + "Send completion candidate when inside comint/eshell." + (cond + ((and (derived-mode-p 'eshell-mode) (fboundp 'eshell-send-input)) + (eshell-send-input)) + ((and (derived-mode-p 'comint-mode) (fboundp 'comint-send-input)) + (comint-send-input)))) (advice-add #'corfu-insert :after #'corfu-send-shell) (add-hook 'eshell-mode-hook 'corfu-mode))) -(setq completion-styles '(basic partial-completion substring flex emacs22) - completion-ignore-case t - read-buffer-completion-ignore-case t - read-file-name-completion-ignore-case t) - (setq aggressive-completion-delay 0.5) (aggressive-completion-mode t) @@ -376,9 +97,9 @@ (kbd "C-c n s") 'deft) (setq deft-recursive t - deft-use-filter-string-for-filename t - deft-default-extension "org md" - deft-directory "~/projects/at-w96k/content/digarden") + deft-use-filter-string-for-filename t + deft-default-extension "org md" + deft-directory "~/projects/at-w96k/content/digarden") (when (package-loaded? "yasnippet") (progn @@ -404,29 +125,23 @@ ;; (setq phps-mode-async-process t) ;; (setq phps-mode-async-process-using-async-el t) -(desktop-save-mode 1) - -(global-anzu-mode t) - (load "swiper-autoloads") (global-set-key (kbd "C-s") 'swiper) (setq swiper-include-line-number-in-search t - swiper-use-visual-line t - swiper-stay-on-quit t) + swiper-use-visual-line t + swiper-stay-on-quit t) (load "which-key-autoloads") (which-key-setup-side-window-right) (which-key-mode) (setq which-key-side-window-max-width 0.5 - which-key-show-remaining-keys t - which-key-max-display-columns 50 - which-key-max-description-length 35 - which-key-sort-order 'which-key-local-then-key-order - which-key-idle-delay 0.25) - -(add-hook 'prog-mode-hook 'rmsbolt-mode) + which-key-show-remaining-keys t + which-key-max-display-columns 50 + which-key-max-description-length 35 + which-key-sort-order 'which-key-local-then-key-order + which-key-idle-delay 0.25) ;; (when (package-loaded? "quickrun") ;; (define-key global-map (kbd "C-c C-c") 'quickrun)) @@ -434,11 +149,9 @@ (load "sly-autoloads") (setq sly-lisp-implementations - '((clisp ("clisp")) - (cmucl ("cmucl" "-quiet")) - (sbcl ("/opt/sbcl/bin/sbcl") :coding-system utf-8-unix))) - -(load "erlang-autoloads") + '((clisp ("clisp")) + (cmucl ("cmucl" "-quiet")) + (sbcl ("/opt/sbcl/bin/sbcl") :coding-system utf-8-unix))) (when (package-loaded? "inf-ruby") (add-hook 'ruby-mode-hook 'inf-ruby-minor-mode)) @@ -473,86 +186,65 @@ ;; (defun init-php-mode () ;; (eglot-ensure)) -(with-eval-after-load 'php-mode - - ;; (add-hook 'php-mode-hook #'init-php-mode) - ) - -(when (package-loaded? "php-mode") - (progn - (add-hook 'php-mode-hook 'php-enable-symfony2-coding-style) - (setq lsp-intelephense-php-version "8.1.16") - (defvar phpactor-executable "~/.bin/phpactor") - (custom-set-variables '(lsp-phpactor-path "~/usr/local/bin/phpactor")) - - (add-hook 'php-mode-hook - '(lambda () - ;; (require 'yasnippet) - ;; (require 'yasnippet-snippets) +(use-package php-mode + :bind ("C-c h" . 'php-quickhelp-at-point) + :config - (set-fill-column 120) + (setq php-manual-path + "~/projects/php-manual/" + php-quickhelp-dir "~/projects/php-manual/" + php-quickhelp--dest "~/projects/php-manual/php_manual_en.json")) - ;; (make-local-variable 'eldoc-documentation-function) - ;; (setq eldoc-documentation-function - ;; 'phpactor-hover) - ;; (yas-minor-mode t) - (define-key php-mode-map (kbd "C-c h") 'php-quickhelp-at-point))) - (setq php-manual-path - "~/php/php-manual/" - php-quickhelp-dir "~/php/php-manual/" - php-quickhelp--dest "~/.emacs.d/php-manual/php_manual_en.json") +;; (add-hook 'php-mode-hook +;; '(lambda () +;; ;; (auto-complete-mode t) +;; ;; (require 'ac-php) +;; (require 'php-quickhelp) +;; (require 'company) +;; (company-mode t) +;; (require 'company-php) +;; (require 'company-quickhelp) - ;; (add-hook 'php-mode-hook - ;; '(lambda () - ;; ;; (auto-complete-mode t) +;; (require 'yasnippet) +;; (require 'yasnippet-snippets) - ;; ;; (require 'ac-php) - ;; (require 'php-quickhelp) - ;; (require 'company) - ;; (company-mode t) - ;; (require 'company-php) - ;; (require 'company-quickhelp) +;; (set (make-local-variable 'company-backends) +;; '((company-ac-php-backend company-dabbrev-code) +;; php-quickhelp-company-php +;; company-capf company-files)) - ;; (require 'yasnippet) - ;; (require 'yasnippet-snippets) +;; (company-quickhelp-mode t) - ;; (set (make-local-variable 'company-backends) - ;; '((company-ac-php-backend company-dabbrev-code) - ;; php-quickhelp-company-php - ;; company-capf company-files)) +;; (define-key php-mode-map (kbd "C-M-i") 'company-complete) +;; (define-key company-mode-map (kbd "M-TAB") 'company-complete) - ;; (company-quickhelp-mode t) +;; ;; (setq ac-sources '(ac-source-php php-quickhelp-company-php)) +;; ;; (setq eldoc-documentation-function +;; ;; 'php-quickhelp-eldoc-func) - ;; (define-key php-mode-map (kbd "C-M-i") 'company-complete) - ;; (define-key company-mode-map (kbd "M-TAB") 'company-complete) +;; (yas-minor-mode t) - ;; ;; (setq ac-sources '(ac-source-php php-quickhelp-company-php)) - ;; ;; (setq eldoc-documentation-function - ;; ;; 'php-quickhelp-eldoc-func) +;; ;; (define-key php-mode-map (kbd "C-M-i") 'auto-complete) +;; ;; (define-key ac-mode-map (kbd "M-TAB") 'auto-complete) - ;; (yas-minor-mode t) +;; (define-key php-mode-map (kbd "C-c H") +;; 'php-local-manual-search) - ;; ;; (define-key php-mode-map (kbd "C-M-i") 'auto-complete) - ;; ;; (define-key ac-mode-map (kbd "M-TAB") 'auto-complete) +;; (define-key php-mode-map (kbd "C-c h") 'php-quickhelp-at-point) +;; (define-key company-mode-map (kbd "C-c h") 'php-quickhelp-at-point) - ;; (define-key php-mode-map (kbd "C-c H") - ;; 'php-local-manual-search) +;; ;; (define-key php-mode-map (kbd "C-c t") 'ac-php-show-tip) - ;; (define-key php-mode-map (kbd "C-c h") 'php-quickhelp-at-point) - ;; (define-key company-mode-map (kbd "C-c h") 'php-quickhelp-at-point) +;; ;; Jump to definition (optional) +;; (define-key php-mode-map +;; (kbd "M-.") 'ac-php-find-symbol-at-point) - ;; ;; (define-key php-mode-map (kbd "C-c t") 'ac-php-show-tip) - - ;; ;; Jump to definition (optional) - ;; (define-key php-mode-map - ;; (kbd "M-.") 'ac-php-find-symbol-at-point) - - ;; ;; Return back (optional) - ;; (define-key php-mode-map - ;; (kbd "M-,") 'ac-php-location-stack-back))) - )) +;; ;; Return back (optional) +;; (define-key php-mode-map +;; (kbd "M-,") 'ac-php-location-stack-back))) +)) (setq phpactor-executable "~/.bin/phpactor") (custom-set-variables '(lsp-phpactor-path "~/.bin/phpactor")) @@ -602,24 +294,24 @@ ;; (setq lsp-sqls-workspace-config-path nil) (setq lsp-sqls-connections - '(((driver . "mysql") (dataSourceName . "dbuser:mangoworms@tcp(localhost:3306)/profile24")))) + '(((driver . "mysql") (dataSourceName . "dbuser:mangoworms@tcp(localhost:3306)/profile24")))) (when (package-loaded? "org-sql") (setq org-sql-files "~/projects/profile24/org")) (add-hook 'sql-interactive-mode-hook - (lambda () - (sql-connect "profile24") - (toggle-truncate-lines t))) + (lambda () + (sql-connect "profile24") + (toggle-truncate-lines t))) (setq sql-connection-alist '((profile24 - (sql-product 'mysql) - (sql-server "localhost") - (sql-user "dbuser") - (sql-password "123456") - (sql-database "testdb") - (sql-port 3306)))) + (sql-product 'mysql) + (sql-server "localhost") + (sql-user "dbuser") + (sql-password "123456") + (sql-database "testdb") + (sql-port 3306)))) (load "org-ref-autoloads") @@ -627,23 +319,16 @@ ;; see org-ref for use of these variables (setq org-ref-bibliography-notes "~/Documents/bibliography/notes.org" - org-ref-default-bibliography '("~/Documents/Bibliography/references.bib") - org-ref-pdf-directory "~/Documents/bibliography/bibtex-pdfs/") - -(when (package-loaded? "mastodon") - (setq mastodon-active-user "w96k" - mastodon-instance-url "https://fosstodon.org/")) + org-ref-default-bibliography '("~/Documents/Bibliography/references.bib") + org-ref-pdf-directory "~/Documents/bibliography/bibtex-pdfs/") -(global-hl-line-mode 1) - -(add-to-list 'special-display-buffer-names "*Buffer List*") -(setq Buffer-menu-files-only t) +(global-hl-line-mode t) (setq exec-path-from-shell-variables - '("PATH" "MANPATH")) + '("PATH" "MANPATH")) (when (and (memq window-system '(mac ns x)) - (not (eq system-type 'berkeley-unix))) + (not (eq system-type 'berkeley-unix))) (exec-path-from-shell-initialize)) (define-key global-map (kbd "C-q C-q") 'previous-buffer) @@ -655,25 +340,23 @@ (setq browse-url-browser-function #'eww-browse-url) (add-hook 'eww-mode-hook - (lambda () - (set-fill-column 80) - (display-fill-column-indicator-mode) - (visual-fill-column-mode))) + (lambda () + (set-fill-column 80) + (display-fill-column-indicator-mode) + (visual-fill-column-mode))) (add-to-list 'tramp-remote-path 'tramp-own-remote-path) (load "debian-el-autoloads") (load "dpkg-dev-el-autoloads") -(package-loaded? "nix") - (when (package-loaded? "direnv") (direnv-mode)) (defun zoom-in () (interactive) (let ((x (+ (face-attribute 'default :height) - 10))) + 10))) (set-face-attribute 'default nil :height x) (set-face-attribute 'mode-line nil :height x) (set-face-attribute 'mode-line-inactive nil :height x) @@ -682,7 +365,7 @@ (defun zoom-out () (interactive) (let ((x (- (face-attribute 'default :height) - 10))) + 10))) (set-face-attribute 'default nil :height x) (set-face-attribute 'mode-line nil :height x) (set-face-attribute 'mode-line-inactive nil :height x) @@ -699,8 +382,8 @@ "Fullscreen." (interactive) (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 - ;; if first parameter is '1', can't toggle fullscreen status - '(1 "_NET_WM_STATE_FULLSCREEN" 0))) + ;; if first parameter is '1', can't toggle fullscreen status + '(1 "_NET_WM_STATE_FULLSCREEN" 0))) ;; Better support for files with long lines (setq-default bidi-paragraph-direction 'left-to-right) diff --git a/gnupg/.gnupg/sshcontrol b/gnupg/.gnupg/sshcontrol new file mode 100644 index 0000000..ddf1fc6 --- /dev/null +++ b/gnupg/.gnupg/sshcontrol @@ -0,0 +1 @@ +B8BE4725CF11FBBA5F1858F2EE0F39A662B6A370 diff --git a/guix/.dotfiles/.bash_profile b/guix/.dotfiles/.bash_profile index 9972fda..88fe011 100644 --- a/guix/.dotfiles/.bash_profile +++ b/guix/.dotfiles/.bash_profile @@ -10,7 +10,7 @@ export EMACSLOADPATH=$EMACSLOADPATH:$HOME/.emacs.d/elpa export GTAGSLIBPATH=$GTAGSLIBPATH:$HOME/.guix-home/profile/include # export https_proxy=https://localhost:9250 -export http_proxy=https://localhost:9250 +# export http_proxy=https://localhost:9250 export SOCKS_SERVER=localhost:9050 # Set up the system, user profile, and related variables. @@ -20,3 +20,5 @@ if [ -f ~/.profile ]; then source ~/.profile; fi # Honor per-interactive-shell startup file if [ -f ~/.bashrc ]; then source ~/.bashrc; fi + +gpg-connect-agent updatestartuptty /bye diff --git a/guix/.dotfiles/.bashrc b/guix/.dotfiles/.bashrc index a9f31f0..a9123a4 100644 --- a/guix/.dotfiles/.bashrc +++ b/guix/.dotfiles/.bashrc @@ -1,13 +1,9 @@ export GUIX_PACKAGE_PATH=$HOME/.guix-packages export GUIX_EXTRA_PROFILES=$HOME/.guix-extra-profiles -draw_line() -{ - local COLUMNS="$COLUMNS" - while ((COLUMNS-- > 0)); do - printf '\u2500' - done -} - -export PS1="\e[37m$(draw_line)\e[32m\u\e[0m@\e[36m\h \e[1m\e[30m\w\${GUIX_ENVIRONMENT:+ [env]} \n\033[31m>>>\033[0m " +export PS1="\e[32m\u\e[0m@\e[36m\h \e[1m\e[30m\w\${GUIX_ENVIRONMENT:+ [env]}\e[0m\e[30m\e(B\e[m \n" +unset SSH_AGENT_PID +if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then +export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)" +fi diff --git a/guix/.dotfiles/home-configuration.scm b/guix/.dotfiles/home-configuration.scm index 16526cf..368cc74 100644 --- a/guix/.dotfiles/home-configuration.scm +++ b/guix/.dotfiles/home-configuration.scm @@ -32,10 +32,10 @@ "python" "python-wrapper" "php" - "xdebug-php-8.1" - "composer" - "openjdk" - "maven" + ;; "xdebug-php-8.1" + ;; "composer" + ;; "openjdk" +;; "maven" "sqls" "go" "ruby" @@ -45,14 +45,14 @@ "python-jedi" ;; Looks a bit deprecated "python-debugpy" "ruby-solargraph" - "zig-zls" - "rust-analyzer" - "racket" +;; "zig-zls" +;; "rust-analyzer" +;; "racket" "gcc-toolchain" "clang-toolchain" "gdb" "valgrind" - "frama-c" +;; "frama-c" "kcachegrind" "dwarves" "xterm" @@ -62,6 +62,8 @@ "sed" ;;"darktable" "global" + "emacs-vterm" + "emacs-vimrc-mode" "emacs-eldoc" "emacs-eldoc-box" "emacs-edbi" @@ -69,6 +71,7 @@ "emacs-dape" "emacs-dumb-jump" "emacs-goto-chg" + "emacs-go-mode" "emacs-repology" "emacs-syslog-mode" "emacs-ggtags" @@ -125,10 +128,12 @@ "emacs-rmsbolt" "git" ;; "wkz-emacs" + "vim-full" "emacs-no-x-toolkit" "emacs-gptel" "emacs-nix-mode" "lm-sensors" + "hddtemp" "htop" "make" "emacs-simple-httpd" @@ -153,6 +158,7 @@ "x11-ssh-askpass" "pinentry" "pinentry-emacs" + "pinentry-gtk2" ;;"texlive" "fetchmail" "gnupg" @@ -168,29 +174,33 @@ "font-alias" "font-gnu-unifont" - "proxychains-ng" +;; "proxychains-ng" "ungoogled-chromium" "torbrowser" "icecat" + "icedove" "librewolf" "nyxt" "netsurf" "ublock-origin-icecat" "ublock-origin-chromium" "noscript-icecat" - "browserpass-native" "keepassxc-browser-icecat" "keepassxc" + "cryptsetup" "restic" + "borg" + "borgmatic" + "vorta" "btrbk" "emacs-helm-pass" "emacs-pass" "password-store" - "musescore" + ;; "musescore" "schismtracker" "workrave" "flatpak" @@ -207,6 +217,8 @@ "yt-dlp" "emacs-ytdl" + "virt-manager" + ;; "wkz-php" ;; "wkz-python" ;; "wkz-ruby" @@ -232,7 +244,14 @@ )) ;; (service home-x11-display-service-type) - (service home-gpg-agent-service-type) + ;; (service home-gpg-agent-service-type) + (service home-gpg-agent-service-type + (home-gpg-agent-configuration + (pinentry-program + (file-append pinentry-emacs "/bin/pinentry-emacs")) + (extra-content "enable-ssh-support") + (ssh-support? #t))) + ;; (service home-unclutter-service-type ;; (home-unclutter-configuration @@ -244,7 +263,7 @@ (service home-startx-command-service-type (xorg-configuration (keyboard-layout (keyboard-layout "us,ru" - #:options '("grp:shifts_toggle" "ctrl:nocaps"))))) + #:options '("grp:shifts_toggle" "ctrl:nocaps" "ctrl:escape"))))) (service home-dotfiles-service-type (home-dotfiles-configuration @@ -255,7 +274,8 @@ "/home/w96k/projects/dotfiles/emacs" "/home/w96k/projects/dotfiles/cvs" "/home/w96k/projects/dotfiles/guix" - "/home/w96k/projects/dotfiles/ssh" + "/home/w96k/projects/dotfiles/vim" + ;; "/home/w96k/projects/dotfiles/ssh" )))) ;; (service home-ssh-agent-service-type @@ -269,29 +289,29 @@ `(("gdb/gdbinit" ,%default-gdbinit) ("nano/nanorc" ,%default-nanorc))) - (simple-service 'nonguix-service - home-channels-service-type - (list - (channel - (name 'nonguix) - (url "https://gitlab.com/nonguix/nonguix") - (introduction - (make-channel-introduction - "897c1a470da759236cc11798f4e0a5f7d4d59fbc" - (openpgp-fingerprint - "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5")))))) + ;; (simple-service 'nonguix-service + ;; home-channels-service-type + ;; (list + ;; (channel + ;; (name 'nonguix) + ;; (url "https://gitlab.com/nonguix/nonguix") + ;; (introduction + ;; (make-channel-introduction + ;; "897c1a470da759236cc11798f4e0a5f7d4d59fbc" + ;; (openpgp-fingerprint + ;; "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5")))))) - (simple-service 'phps-service - home-channels-service-type - (list - (channel - (name 'guix-phps) - (url "https://github.com/Nazar65/guix-phps-channel") - (introduction - (make-channel-introduction - "4e547cbb9391b5fe1b2a9fbc5efa4d5bec2d646f" - (openpgp-fingerprint - "4441 0743 6E32 EE9F F20A 753F B510 AA5B 74EA F294")))))) + ;; (simple-service 'phps-service + ;; home-channels-service-type + ;; (list + ;; (channel + ;; (name 'guix-phps) + ;; (url "https://github.com/Nazar65/guix-phps-channel") + ;; (introduction + ;; (make-channel-introduction + ;; "4e547cbb9391b5fe1b2a9fbc5efa4d5bec2d646f" + ;; (openpgp-fingerprint + ;; "4441 0743 6E32 EE9F F20A 753F B510 AA5B 74EA F294")))))) )))) wkz-home diff --git a/guix/config-desktop.scm b/guix/config-desktop.scm index 698df47..f68b048 100644 --- a/guix/config-desktop.scm +++ b/guix/config-desktop.scm @@ -1,96 +1,151 @@ +;; This is an operating system configuration template +;; for a "desktop" setup with GNOME and Xfce where the +;; root partition is encrypted with LUKS, and a swap file. + (use-modules (gnu) (guix transformations) (gnu home) + (gnu system privilege) (guix gexp) - (nongnu packages linux) - (nongnu system linux-initrd) (gnu home services shells)) -(use-service-modules guix cups desktop networking ssh xorg docker nix admin vnc lightdm syncthing virtualization databases linux web backup telephony file-sharing) -(use-package-modules gnome xdisorg vnc databases) +(use-service-modules guix cups desktop networking ssh xorg docker nix admin vnc lightdm syncthing virtualization databases linux web backup telephony file-sharing spice security-token) +(use-package-modules gnome xdisorg vnc databases virtualization firmware security-token) (load "/home/w96k/projects/dotfiles/guix/.dotfiles/home-configuration.scm") -(define wkz-transform - ;; The package transformation procedure. - (options->transformation - '((tune . "skylake")))) - (operating-system - (locale "en_US.utf8") - (timezone "Asia/Tbilisi") - (kernel linux) - (kernel-arguments '("video=HDMI-A-1:1920x1080@240")) - (initrd microcode-initrd) - (firmware (list linux-firmware)) - (keyboard-layout (keyboard-layout "us,ru" - #:options '("grp:shifts_toggle" "ctrl:nocaps"))) - (host-name "wkz-guix") - - ;; The list of user accounts ('root' is implicit). - (users (cons* (user-account - (name "w96k") - (comment "W96K") - (group "users") - (home-directory "/home/w96k") - (supplementary-groups '("wheel" "netdev" "audio" "video" "kvm" "httpd"))) + (host-name "wkz") + (timezone "Asia/Tbilisi") + (locale "en_US.utf8") + (kernel-arguments '("quiet" "intel_iommu=on" "amd_iommu=on" "iommu=on" "video=HDMI-1:1920x1080@240")) + (initrd-modules (append '("raid1" "br_netfilter" "vfio_iommu_type1" "vfio_pci" "vfio") %base-initrd-modules)) + + ;; Choose US English keyboard layout. The "altgr-intl" + ;; variant provides dead keys for accented characters. + (keyboard-layout (keyboard-layout "us,ru" + #:options '("grp:shifts_toggle" "ctrl:nocaps" "ctrl:escape"))) + + ;; Use the UEFI variant of GRUB with the EFI System + ;; Partition mounted on /boot/efi. + (bootloader (bootloader-configuration + (bootloader grub-efi-bootloader) + (targets '("/boot/efi")) + (keyboard-layout keyboard-layout))) + + ;; Specify a mapped device for the encrypted root partition. + ;; The UUID is that returned by 'cryptsetup luksUUID'. + + (mapped-devices + (list + (mapped-device + (source (list "/dev/sda1" "/dev/sdc1")) + ;; (source (list (uuid "ed5b96c3-fa7f-6de7-259d-6eb8e73a631e") (uuid "daeb6a6e-290d-7792-e7b6-edf45cef2076"))) + (target "/dev/md0") + (type raid-device-mapping)) + + (mapped-device + ;; (source "/dev/md0") + (source (uuid "4e2ee2d8-735d-49bd-8b3d-cd9102170a1f")) + (target "home") + (type luks-device-mapping)) + + (mapped-device + (source (uuid "03db8d78-051b-4a11-a7e5-b62ae0f530d4")) + (target "guix_old") + (type luks-device-mapping)) + ) + ) + + (file-systems (append + (list + (file-system + (device "/dev/mapper/home") + (mount-point "/home") + (type "ext4") + (dependencies mapped-devices)) + + (file-system + (device "/dev/mapper/guix_old") + (mount-point "/home/storage") + (type "btrfs") + (dependencies mapped-devices)) + + (file-system + (device (file-system-label "root")) + (mount-point "/") + (type "ext4")) + + (file-system + (device (uuid "17C5-3E35" 'fat)) + (mount-point "/boot/efi") + (type "vfat"))) + %base-file-systems)) + + ;; Specify a swap file for the system, which resides on the + ;; root file system. + (swap-devices (list (swap-space + (target "/swapfile")))) + + (groups + (append + (list + (user-group (name "storage"))) %base-groups)) + + (users (append (list + (user-account + (name "w96k") + (group "users") + (home-directory "/home/w96k") + (supplementary-groups '("wheel" "netdev" "audio" "video" "kvm" "httpd" "libvirt" "postgres" "transmission" "nitrokey"))) + + (user-account + (name "torrent") + (group "users") + (supplementary-groups '("wheel" "transmission")) + (home-directory "/home/torrent")) + + (user-account + (name "storage") + (group "users") + (supplementary-groups '("wheel" "transmission")) + (home-directory "/home/storage")) + ) %base-user-accounts)) - ;; (packages %base-packages) - (packages + (packages (append (map specification->package - '( - "font-gnu-freefont" "font-gnu-unifont" - )) + '("font-gnu-freefont" "font-gnu-unifont" "nix" "virt-manager" "bridge-utils" "xmodmap" "gvfs" "ovmf-x86-64" "efibootmgr" + "cryptsetup" "mdadm")) %base-packages)) - ;; Below is the list of system services. To search for available - ;; services, run 'guix system search KEYWORD' in a terminal. - (services - (append (list - (service guix-home-service-type `(("w96k" ,wkz-home))) - (service block-facebook-hosts-service-type) - - (service zram-device-service-type - (zram-device-configuration - (compression-algorithm 'zlib) - (priority 100))) - - (service tor-service-type - (tor-configuration - (config-file (plain-file "tor-config" - "HTTPTunnelPort 127.0.0.1:9250")))) - (service openssh-service-type) - - (service transmission-daemon-service-type) - - ;; (service containerd-service-type) - ;; (service docker-service-type) - ;; (service restic-backup-service-type) - - ;; (service hurd-vm-service-type - ;; (hurd-vm-configuration - ;; (disk-size (* 5000 (expt 2 20))) ;5G - ;; (memory-size 1024))) - - ;; (service nix-service-type) - - ;; (service xvnc-service-type (xvnc-configuration - ;; (display-number 10) - ;; (localhost? #f) - ;; (geometry "1280x800"))) - - ;; (service syncthing-service-type - ;; (syncthing-configuration - ;; (user "w96k"))) - - ;; (service postgresql-service-type - ;; (postgresql-configuration - ;; (postgresql postgresql-15))) - - (service dhcp-client-service-type) + (services + (append (list + (service guix-home-service-type `(("w96k" ,wkz-home))) + (service gpm-service-type) + + (service tor-service-type) + (service openssh-service-type) + + (service transmission-daemon-service-type) + + (service libvirt-service-type + (libvirt-configuration + (unix-sock-group "libvirt") + (tls-port "16555"))) + + (service virtlog-service-type) + + (service postgresql-service-type + (postgresql-configuration + (postgresql postgresql-15))) + + (service dhcp-client-service-type) + + (extra-special-file "/usr/share/OVMF/OVMF_VARS.fd" + (file-append ovmf "/share/firmware/ovmf_x64.bin")) (service httpd-service-type (httpd-configuration @@ -114,16 +169,20 @@ (socket "/var/run/php-fpm.sock") (socket-group "httpd"))) - ;; (service screen-locker-service-type - ;; (screen-locker-configuration - ;; (name "xlock") - ;; (program (file-append xlockmore "/bin/xlock")))) - ) + (service pcscd-service-type) + (udev-rules-service 'nitrokey libnitrokey #:groups '("nitrokey")) + + (service screen-locker-service-type + (screen-locker-configuration + (name "xlock") + (program (file-append xlockmore "/bin/xlock")))) + + (extra-special-file "/etc/qemu/host.conf" "allow br0\n") + (service spice-vdagent-service-type)) (modify-services %desktop-services (delete screen-locker-service-type) (delete modem-manager-service-type) - ;; (delete udisks-service-type) (delete upower-service-type) (delete network-manager-service-type) (delete wpa-supplicant-service-type) @@ -134,64 +193,15 @@ (delete ntp-service-type) - (guix-service-type config => (guix-configuration - (inherit config) - ;; Rely on btrfs compression. - (log-compression 'none) - (extra-options '("--max-jobs=10")) - (substitute-urls - (list - "https://4zwzi66wwdaalbhgnix55ea3ab4pvvw66ll2ow53kjub6se4q2bclcyd.onion" - "https://substitutes.nonguix.org")) - (http-proxy "http://localhost:9250") - (authorized-keys - (append (list (plain-file "non-guix.pub" - " -(public-key - (ecc - (curve Ed25519) - (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#) - ) - ) -")) - %default-authorized-guix-keys)))) + ;; (guix-service-type config => (guix-configuration + ;; (inherit config) + ;; (extra-options '("--max-jobs=10")) + ;; ;; (http-proxy "http://localhost:9250") + ;; )) - (delete gdm-service-type)))) - - (mapped-devices (list (mapped-device - (source (uuid - "03db8d78-051b-4a11-a7e5-b62ae0f530d4")) - (target "cryptroot") - (type luks-device-mapping)))) - - ;; The list of file systems that get "mounted". The unique - ;; file system identifiers there ("UUIDs") can be obtained - ;; by running 'blkid' in a terminal. - (file-systems (cons* (file-system - (mount-point "/") - (device "/dev/mapper/cryptroot") - (type "btrfs") - (options "compress=zlib:9,autodefrag") - (dependencies mapped-devices)) - (file-system - (mount-point "/home/w96k/") - (device "/dev/mapper/cryptroot") - (type "btrfs") - (options "compress=zlib:7,autodefrag,subvol=/home/w96k/") - (dependencies mapped-devices)) - (file-system - (mount-point "/home/w96k/Snapshots/") - (device "/dev/mapper/cryptroot") - (type "btrfs") - (options "compress=zlib:9,autodefrag,subvol=/home/w96k/Snapshots") - (dependencies mapped-devices)) - (file-system - (mount-point "/boot/efi") - (device (uuid "6ECD-551F" - 'fat32)) - (type "vfat")) %base-file-systems)) - - (bootloader (bootloader-configuration - (bootloader grub-efi-bootloader) - (targets (list "/boot/efi")) - (keyboard-layout keyboard-layout)))) + (delete gdm-service-type)) + + )) + + ;; Allow resolution of '.local' host names with mDNS. + (name-service-switch %mdns-host-lookup-nss)) diff --git a/ssh/.ssh/id_ed25519 b/ssh/.ssh/id_ed25519 new file mode 120000 index 0000000..7e22885 --- /dev/null +++ b/ssh/.ssh/id_ed25519 @@ -0,0 +1 @@ +/media/w96k/TailsData/Persistent/ssh/id_ed25519
\ No newline at end of file diff --git a/ssh/.ssh/id_ed25519.pub b/ssh/.ssh/id_ed25519.pub new file mode 120000 index 0000000..a38df5c --- /dev/null +++ b/ssh/.ssh/id_ed25519.pub @@ -0,0 +1 @@ +/media/w96k/TailsData/Persistent/ssh/id_ed25519.pub
\ No newline at end of file @@ -1,73 +1,9 @@ -" Initialization -filetype plugin on -syntax enable -set autoindent - -call plug#begin(has('nvim') ? stdpath('data') . '/plugged' : '~/.vim/plugged') -Plug 'tpope/vim-fugitive' -Plug 'tpope/vim-surround' -Plug 'tpope/vim-dadbod' -Plug 'qbbr/vim-symfony' -Plug 'vim-syntastic/syntastic' -call plug#end() - -" Backups -set directory=~/.vim/backups/ - -" Undo history -set undofile -set undodir=~/.vim/undo/ - -" Display maximum char width line -set colorcolumn=80 +syntax on -" Syntax checker -set statusline+=%#warningmsg# -set statusline+=%{SyntasticStatuslineFlag()} -set statusline+=%* +packadd vimcomplete -let g:syntastic_always_populate_loc_list = 1 -let g:syntastic_auto_loc_list = 1 -let g:syntastic_check_on_open = 1 -let g:syntastic_check_on_wq = 0 - -" Better command completion -set wildmenu -set wildmode=list:longest,full - -" Emacs keys in insert mode -imap <C-p> <Up> -imap <C-n> <Down> -imap <C-b> <Left> -imap <C-f> <Right> -imap <C-a> <C-o>:call <SID>home()<CR> -imap <C-e> <End> -imap <C-d> <Del> -imap <C-h> <BS> -imap <C-k> <C-r>=<SID>kill()<CR> - -function! s:home() - let start_column = col('.') - normal! ^ - if col('.') == start_column - normal! 0 - endif - return '' -endfunction - -function! s:kill() - let [text_before, text_after] = s:split_line() - if len(text_after) == 0 - normal! J - else - call setline(line('.'), text_before) - endif - return '' -endfunction +filetype plugin on +set omnifunc=syntaxcomplete#Complete -function! s:split_line() - let line_text = getline(line('.')) - let text_after = line_text[col('.')-1 :] - let text_before = (col('.') > 1) ? line_text[: col('.')-2] : '' - return [text_before, text_after] -endfunction +" For built in omnifunc +autocmd FileType sql setlocal omnifunc=vim_dadbod_completion#omni diff --git a/vm/virbr0.xml b/vm/virbr0.xml new file mode 100644 index 0000000..89adfd9 --- /dev/null +++ b/vm/virbr0.xml @@ -0,0 +1,10 @@ +<network> + <name>virbr0</name> + <bridge name="virbr0" /> + <forward mode="route"/> + <ip address="192.168.2.0" netmask="255.255.255.0"> + <dhcp> + <range start="192.168.2.1" end="192.168.2.254"/> + </dhcp> + </ip> +</network> |