Index: ADME
===================================================================
--- README	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,51 +1,0 @@
--*- mode: org -*-
-
-* Dotfiles
-Here you can find my dotfiles for various of unix programs.
-
-** GUIX
-   I use guixsd as my primary linux distro. It's GNU (totally libre),
-   extensible by GNU/Guile & based on nix package manager.
-
-   [[config.scm][My config]]
-
-** Emacs
-   [[emacs.png]]
-
-*** My setup
-| Emacs version | 27                                        |
-| Font          | Fira Mono                                 |
-| Theme         | Default (I used Tomorrow Eightees before) |
-
-
-| use-package           | Package management                        |
-| vc [built-in]         | Version Control                           |
-| org-mode [built-in]   | Mode for writing documents & more         |
-| flymake [built-in]    | Spot code errors on the fly               |
-| treemacs              | Fancy file manager in sidebar like in IDE |
-| project.el [built-in] | Project Management                        |
-| electric [build-in]   | Paren pairing                             |
-| all-the-icons         | Icons for dired and treemacs              |
-| telega                | Telegram frontend                         |
-| git-gutter            | Showing git status of lines               |
-| avy                   | Moving faster                             |
-| mwim                  | Change default movement a bit             |
-| fill-column-indicator | Show vertical bar at 70 symbols           |
-| web-mode              | Editing templates                         |
-| direnv                | Get project environment                   |
-| guix                  | Guix frontend                             |
-| pdf-tools             | Reading pdf files                         |
-
-And many more! I left comments in my config, so you can get idea what
-packages do.
-
-** Install
-
-   You need GNU Stow & Git installed
-
-#+BEGIN_SRC bash
-git clone <this_repo>
-cd <this_repo>
-
-stow <dir> -t ~
-#+END_SRC
Index: X/.Xdefaults
===================================================================
--- X/.Xdefaults	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ X/.Xdefaults	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -48,5 +48,5 @@
 xterm*vt100.locale: true
 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*boldFont: x:-adobe-courier-medium-r-bold--14-140-75-75-m-90-iso8859-1
 xterm*vt100.allowBoldFonts: True
 xterm*renderFont: True
Index: X/.xinitrc
===================================================================
--- X/.xinitrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ X/.xinitrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,1 @@
+exec ratpoison
Index: cvs/.gitconfig
===================================================================
--- cvs/.gitconfig	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ cvs/.gitconfig	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,5 +1,5 @@
 [user]
 	name = Mikhail Kirillov
-	email = w96k@riseup.net
+	email = w96k@runbox.com
 [gpg]
 	program = gpg2
@@ -10,6 +10,6 @@
 [sendemail]
 	smtpEncryption = tls
-	smtpServer = smtp.riseup.net
-	smtpUser = w96k@riseup.net
+	smtpServer = mail.runbox.com
+	smtpUser = w96k@runbox.com
 	smtpServerPort = 587
 [init]
Index: cvs/.hgrc
===================================================================
--- cvs/.hgrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ cvs/.hgrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,5 +1,5 @@
 # example user config (see 'hg help config' for more info)
 [ui]
-username = Mikhail Kirillov <w96k@riseup.net>
+username = Mikhail Kirillov <w96k@runbox.com>
 
 # We recommend enabling tweakdefaults to get slight improvements to
Index: emacs/.emacs.d/.emacs-config.org
===================================================================
--- emacs/.emacs.d/.emacs-config.org	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ emacs/.emacs.d/.emacs-config.org	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -217,26 +217,4 @@
 #+end_src
 
-* Инициализация
-Следующие блоки кода выводят в файл early-init.el
-** Компиляция
-JIT компиляция elisp кода в машинный
-#+begin_src elisp :tangle nil
-  (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))
-#+end_src
-
 *** Ручная компиляция
 #+begin_src elisp :tangle nil :results nil
@@ -438,5 +416,5 @@
 приходилось танглить вручную.
 #+BEGIN_SRC emacs-lisp :tangle init.el
-  (setq config-dotfiles-path "~/projects/dotfiles/emacs/.emacs.d/"
+  (setq config-dotfiles-path "/home/w96k/projects/dotfiles/emacs/.emacs.d/"
 	config-path "~/.emacs.d/"
 	config-name ".emacs-config.org")
@@ -1196,5 +1174,5 @@
   (setq org-todo-keywords
 	(quote ((sequence "TODO(t)"
-			  "MIGRATE(m)" "|"
+			  "MIGRATE(m)"
 			  "IN PROGRESS(p)" 
 			  "DONE(d)")
@@ -1310,4 +1288,10 @@
 	  mastodon-instance-url "https://fosstodon.org/"))
 #+end_src
+
+** LLM
+#+begin_src emacs-lisp
+
+#+end_src
+
 
 * Наука
Index: emacs/.emacs.d/nil
===================================================================
--- emacs/.emacs.d/nil	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ emacs/.emacs.d/nil	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,708 @@
+(require 'package)
+
+(setq package-archives '(("gnu" . "http://elpa.gnu.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)
+
+(require 'psalm)
+
+(define-prefix-command 'flymake-map)
+(global-set-key (kbd "C-q") 'flymake-map)
+(define-key flymake-map (kbd "n") 'flymake-goto-next-error)
+(define-key flymake-map (kbd "p") 'flymake-goto-prev-error)
+(define-key flymake-map (kbd "l") 'flymake-show-diagnostics-buffer)
+(define-key flymake-map (kbd "e") 'flymake-show-diagnostic)
+
+;; (require 'psalm)
+
+(when (package-loaded? "flycheck")
+
+  (defun flycheck-phanclient-start-daemon ()
+    "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)))
+
+  (flycheck-define-checker php-phanclient
+    "Phan"
+    :command ("phan_client" "-l" source-original "-f" source)
+    :error-patterns
+    ((warning line-start (or "Parse" "Fatal" "syntax" "Phan") " error" (any ":" ",") " " (message) " in " (file-name) " on line " line line-end))
+    :modes (php-mode php+-mode))
+
+  (add-to-list 'flycheck-checkers 'php-phanclient)
+
+  (flycheck-add-next-checker 'php '(warning . php-phanclient))
+
+  (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"))
+
+(when (package-loaded? "geben")
+  (setq geben-dbgp-default-port 9003))
+
+(when (package-loaded? "corfu")
+  (progn
+    (setq corfu-preview-current 'nil
+	  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))
+    (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)      
+    (corfu-mode -1)
+    (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))))
+
+    (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)
+
+(load "deft-autoloads")
+
+(define-key global-map
+  (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")
+
+(when (package-loaded? "yasnippet")
+  (progn
+    (add-hook 'prog-mode-hook #'yas-minor-mode)))
+
+(defun my-php-mode-setup ()
+  "My PHP-mode hook."
+  (require 'flycheck-phpstan)
+  (flycheck-mode t))
+
+(add-hook 'php-mode-hook 'my-php-mode-setup)
+
+;; (add-hook 'php-mode-hook 'flymake-php-load)
+ ;; (add-hook 'php-mode-hook 'flymake-phpstan-turn-on)
+
+  ;; (require 'flycheck-phpstan)
+
+
+;;(add-to-list 'auto-mode-alist '("\\.\\(php\\|phtml\\)\\'" . phps-mode))
+
+;; (phps-mode-flycheck-setup)
+
+;; (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)
+
+(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)
+
+;; (when (package-loaded? "quickrun")
+;;   (define-key global-map (kbd "C-c C-c") 'quickrun))
+
+(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")
+
+(when (package-loaded? "inf-ruby")
+  (add-hook 'ruby-mode-hook 'inf-ruby-minor-mode))
+
+(when (package-loaded? "inf-ruby")
+  (add-hook 'ruby-mode-hook 'robe-mode))
+
+(when (package-loaded? "anaconda-mode")
+  (progn
+    (add-hook 'python-mode-hook 'anaconda-mode)
+    (add-hook 'python-mode-hook 'anaconda-eldoc-mode)))
+
+;; (when (load "flymake" t)
+;;   (defun flymake-pylint-init ()
+;;     (let* ((temp-file (flymake-init-create-temp-buffer-copy
+;; 		       'flymake-create-temp-inplace))
+;; 	   (local-file (file-relative-name
+;; 			temp-file
+;; 			(file-name-directory buffer-file-name))))
+;;       (list "epylint" (list local-file))))
+
+;;   (add-to-list 'flymake-allowed-file-name-masks
+;; 	       '("\\.py\\'" flymake-pylint-init)))
+
+;; (add-hook 'python-mode-hook 'flymake-mode)
+
+(add-hook 'sml-mode-hook 'sml-mode)
+
+;; (add-to-list 'load-path "~/.emacs.d/site-lisp/realgud-xdebug/")
+;; (require 'realgud-xdebug)
+
+;; (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)
+
+		 (set-fill-column 120)
+
+		 ;; (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)
+
+    ;; 		   (require 'yasnippet)
+    ;; 		   (require 'yasnippet-snippets)
+
+    ;; 		   (set (make-local-variable 'company-backends)
+    ;; 			'((company-ac-php-backend company-dabbrev-code)
+    ;; 			  php-quickhelp-company-php
+    ;; 			  company-capf company-files))
+
+    ;; 		   (company-quickhelp-mode t)
+
+    ;; 		   (define-key php-mode-map (kbd "C-M-i") 'company-complete)
+    ;; 		   (define-key company-mode-map (kbd "M-TAB") 'company-complete)
+
+    ;; 		   ;; (setq ac-sources '(ac-source-php php-quickhelp-company-php))
+    ;; 		   ;; (setq eldoc-documentation-function
+    ;; 		   ;;       'php-quickhelp-eldoc-func)
+
+    ;; 		   (yas-minor-mode t)
+
+    ;; 		   ;; (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-local-manual-search)
+
+    ;; 		   (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 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)))
+    ))
+
+(setq phpactor-executable "~/.bin/phpactor")
+(custom-set-variables '(lsp-phpactor-path "~/.bin/phpactor"))
+
+(use-package phpactor :ensure t)
+(use-package company-phpactor :ensure t)
+
+
+
+;; (with-eval-after-load 'php-mode
+;;   (define-key php-mode-map (kbd "M-.") #'phpactor-goto-definition)
+;;   (define-key php-mode-map (kbd "M-?") #'phpactor-find-references))
+
+(require 'transient)
+(define-transient-command php-menu ()
+  "Php"
+  [["Class"
+    ("cc" "Copy" phpactor-copy-class)
+    ("cn" "New" phpactor-create-new-class)
+    ("cr" "Move" phpactor-move-class)
+    ("ci" "Inflect" phpactor-inflect-class)
+    ("n"  "Namespace" phpactor-fix-namespace)]
+   ["Properties"
+    ("a"  "Accessor" phpactor-generate-accessors)
+    ("pc" "Constructor" phpactor-complete-constructor)
+    ("pm" "Add missing props" phpactor-complete-properties)
+    ("r" "Rename var locally" phpactor-rename-variable-local)
+    ("R" "Rename var in file" phpactor-rename-variable-file)]
+  ["Extract"
+    ("ec" "constant" phpactor-extract-constant)
+    ("ee" "expression" phpactor-extract-expression)
+    ("em"  "method" phpactor-extract-method)]
+  ["Methods"
+    ("i" "Implement Contracts" phpactor-implement-contracts)
+    ("m"  "Generate method" phpactor-generate-method)]
+  ["Navigate"
+    ("x" "List refs" phpactor-list-references)
+    ("X" "Replace refs" phpactor-replace-references)
+    ("."  "Goto def" phpactor-goto-definition)]
+  ["Phpactor"
+    ("s" "Status" phpactor-status)
+    ("u" "Install" phpactor-install-or-update)]])
+
+;; Empty for now (was using emacsql)
+(setq lsp-sqls-server "~/go/bin/sqls")
+
+;; (setq lsp-sqls-workspace-config-path nil)
+
+(setq lsp-sqls-connections
+      '(((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)))
+
+(setq sql-connection-alist
+    '((profile24
+       (sql-product 'mysql)
+       (sql-server "localhost")
+       (sql-user "dbuser")
+       (sql-password "123456")
+       (sql-database "testdb")
+       (sql-port 3306))))
+
+(load "org-ref-autoloads")
+
+(setq reftex-default-bibliography '("~/Documents/bibliography/references.bib"))
+
+;; 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/"))
+
+(global-hl-line-mode 1)
+
+(add-to-list 'special-display-buffer-names "*Buffer List*")
+(setq Buffer-menu-files-only t)
+
+(setq exec-path-from-shell-variables
+      '("PATH" "MANPATH"))
+
+(when (and (memq window-system '(mac ns x))
+	   (not (eq system-type 'berkeley-unix)))
+  (exec-path-from-shell-initialize))
+
+(define-key global-map (kbd "C-q C-q") 'previous-buffer)
+(define-key global-map (kbd "C-S-q C-S-q") 'next-buffer)
+
+(define-key global-map (kbd "C-h") 'delete-backward-char)
+(define-key global-map (kbd "C-c h") 'help-command)
+
+(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)))
+
+(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)))
+    (set-face-attribute 'default nil :height x)
+    (set-face-attribute 'mode-line nil :height x)
+    (set-face-attribute 'mode-line-inactive nil :height x)
+    (set-face-attribute 'mode-line-position-face nil :height x)))
+
+(defun zoom-out ()
+  (interactive)
+  (let ((x (- (face-attribute 'default :height)
+	      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)
+    (set-face-attribute 'mode-line-position-face nil :height x)))
+
+(define-key global-map (kbd "C-=") 'zoom-in)
+(define-key global-map (kbd "C-+") 'zoom-out)
+
+(add-to-list 'default-frame-alist '(fullscreen . maximized))
+
+(toggle-frame-fullscreen)
+
+(defun fullscreen ()
+"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)))
+
+;; Better support for files with long lines
+(setq-default bidi-paragraph-direction 'left-to-right)
+(setq-default bidi-inhibit-bpa t)
+(global-so-long-mode 1)
Index: upg/.gnupg/crls.d/DIR.txt
===================================================================
--- gnupg/.gnupg/crls.d/DIR.txt	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,1 +1,0 @@
-v:1:
Index: upg/.gnupg/gpg-agent.conf
===================================================================
--- gnupg/.gnupg/gpg-agent.conf	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,1 +1,0 @@
-pinentry-program /home/w96k/.guix-profile/bin/pinentry
Index: ix/.config/cagebreak/config
===================================================================
--- guix/.config/cagebreak/config	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,88 +1,0 @@
-######################
-# General settings an key bindings
-######################
-
-exec xterm
-
-workspaces 6
-background 0.25 0.21 0.2
-
-escape C-t
-
-bind s hsplit
-bind S vsplit
-bind Q only
-bind D quit
-bind Tab focus
-bind A-Tab focusprev
-bind n next
-bind p prev
-bind w exec firefox
-bind R setmode resize
-bind N nextscreen
-bind P prevscreen
-bind a time
-bind C-n movetonextscreen
-bind H exchangeleft
-bind J exchangedown
-bind K exchangeup
-bind L exchangeright
-bind h focusleft
-bind j focusdown
-bind k focusup
-bind l focusright
-bind t exec xterm
-bind C-k close
-definekey resize h resizeleft
-definekey resize l resizeright
-definekey resize j resizedown
-definekey resize k resizeup
-definekey resize Escape setmode top
-
-######################
-#Workspaces
-######################
-definekey top A-1 workspace 1
-definekey top A-2 workspace 2
-definekey top A-3 workspace 3
-definekey top A-4 workspace 4
-definekey top A-5 workspace 5
-definekey top A-6 workspace 6
-
-definekey top C-1 movetoworkspace 1
-definekey top C-2 movetoworkspace 2
-definekey top C-3 movetoworkspace 3
-definekey top C-4 movetoworkspace 4
-definekey top C-5 movetoworkspace 5
-definekey top C-6 movetoworkspace 6
-
-definekey top XF86_Switch_VT_1 switchvt 1
-definekey top XF86_Switch_VT_2 switchvt 2
-definekey top XF86_Switch_VT_3 switchvt 3
-definekey top XF86_Switch_VT_4 switchvt 4
-definekey top XF86_Switch_VT_5 switchvt 5
-definekey top XF86_Switch_VT_6 switchvt 6
-
-######################
-#Bind Function keys
-######################
-definekey top XF86AudioMute exec pactl set-sink-mute 0 toggle
-definekey top XF86AudioLowerVolume exec pactl set-sink-mute 0 off&&amixer set Master 1%-
-definekey top XF86AudioRaiseVolume exec pactl set-sink-mute 0 off&&amixer set Master 1%+
-definekey top XF86MonBrightnessDown exec xbacklight -dec 1
-definekey top XF86MonBrightnessUp exec xbacklight -inc 1
-
-######################
-#Output configuration
-######################
-#output eDP-1 pos 0 0 res 1366x768 rate 60
-#output eDP-1 disable
-#output eDP-1 enable
-
-#####################
-#Input configuration
-#####################
-
-#input 1234:0:Device_Ident click_method clickfinger
-#input type:pointer scroll_method two_finger
-#input * calibration_matrix 1 2 3 4 5 6
Index: guix/.config/gtk-3.0/gtk.css
===================================================================
--- guix/.config/gtk-3.0/gtk.css	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ guix/.config/gtk-3.0/gtk.css	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,169 +1,1 @@
-undershoot.top,
-undershoot.right,
-undershoot.bottom,
-undershoot.left {
-    background-image: none;
-}
-
-* {
-    transition: 0;
-}
-
-scrollbar {
-    -GtkScrollbar-has-backward-stepper: true;
-    -GtkScrollbar-has-forward-stepper: true;
-}
-
-scrollbar.vertical {
-    padding: 0.1em 0;
-    margin: 0;
-    opacity: 1;
-}
-
-scrollbar.vertical slider {
-    border-radius: 0;
-    margin: 0;
-    padding: 0;
-    border-radius: 0.2em;
-    transition: 0;
-    background-color: #bbb;
-}
-
-scrollbar.vertical slider:hover {
-    background-color: #aaa;
-}
-
-menubar {
-    font-size: 10pt;
-    background: #eee;
-}
-
-menubar menuitem:first-child {
-    border-left: 0;
-}
-
-menubar menuitem {
-    border-left: 1px solid #ddd;
-    padding: 0.35em 0.35em 0.15em 0.35em;
-}
-
-menubar > menuitem:hover {
-    background: #ddd;
-    color: #000;
-
-}
-
-scrollbar, scrollbar trough {
-    background-color: #fafafa;
-    padding: 0;
-    margin: 0;
-}
-
-manubar tab {
-    padding: 0;
-}
-
-toolbar {
-    background: #fafafa;
-    padding: 0;
-    margin-top: 0.15em;
-}
-
-toolbar button {
-    border-radius: 0;
-    transition: 0;
-    padding: 0.1em;
-    font-size: 10pt
-}
-
-@binding-set gtk-emacs-text-entry
-{
-  bind "<ctrl>b" { "move-cursor" (logical-positions, -1, 0) };
-  bind "<shift><ctrl>b" { "move-cursor" (logical-positions, -1, 1) };
-  bind "<ctrl>f" { "move-cursor" (logical-positions, 1, 0) };
-  bind "<shift><ctrl>f" { "move-cursor" (logical-positions, 1, 1) };
-
-  bind "<alt>b" { "move-cursor" (words, -1, 0) };
-  bind "<shift><alt>b" { "move-cursor" (words, -1, 1) };
-  bind "<alt>f" { "move-cursor" (words, 1, 0) };
-  bind "<shift><alt>f" { "move-cursor" (words, 1, 1) };
-
-  bind "<ctrl>a" { "move-cursor" (paragraph-ends, -1, 0) };
-  bind "<shift><ctrl>a" { "move-cursor" (paragraph-ends, -1, 1) };
-  bind "<ctrl>e" { "move-cursor" (paragraph-ends, 1, 0) };
-  bind "<shift><ctrl>e" { "move-cursor" (paragraph-ends, 1, 1) };
-
-  bind "<ctrl>w" { "cut-clipboard" () };
-  bind "<ctrl>y" { "paste-clipboard" () };
-
-  bind "<ctrl>d" { "delete-from-cursor" (chars, 1) };
-  bind "<alt>d" { "delete-from-cursor" (word-ends, 1) };
-  bind "<ctrl>k" { "delete-from-cursor" (paragraph-ends, 1) };
-  bind "<alt>backslash" { "delete-from-cursor" (whitespace, 1) };
-
-  bind "<alt>space" { "delete-from-cursor" (whitespace, 1)
-                      "insert-at-cursor" (" ") };
-  bind "<alt>KP_Space" { "delete-from-cursor" (whitespace, 1)
-                         "insert-at-cursor" (" ")  };
-  /*
-   * Some non-Emacs keybindings people are attached to
-   */
-  bind "<ctrl>u" { "move-cursor" (paragraph-ends, -1, 0)
-                   "delete-from-cursor" (paragraph-ends, 1) };
-
-  bind "<ctrl>h" { "delete-from-cursor" (chars, -1) };
-  bind "<ctrl>w" { "delete-from-cursor" (word-ends, -1) };
-}
-
-/*
- * Bindings for GtkTextView
- */
-@binding-set gtk-emacs-text-view
-{
-  bind "<ctrl>p" { "move-cursor" (display-lines, -1, 0) };
-  bind "<shift><ctrl>p" { "move-cursor" (display-lines, -1, 1) };
-  bind "<ctrl>n" { "move-cursor" (display-lines, 1, 0) };
-  bind "<shift><ctrl>n" { "move-cursor" (display-lines, 1, 1) };
-
-  bind "<ctrl>space" { "set-anchor" () };
-  bind "<ctrl>KP_Space" { "set-anchor" () };
-}
-
-/*
- * Bindings for GtkTreeView
- */
-@binding-set gtk-emacs-tree-view
-{
-  bind "<ctrl>s" { "start-interactive-search" () };
-  bind "<ctrl>f" { "move-cursor" (logical-positions, 1) };
-  bind "<ctrl>b" { "move-cursor" (logical-positions, -1) };
-}
-
-/*
- * Bindings for menus
- */
-@binding-set gtk-emacs-menu
-{
-  bind "<ctrl>n" { "move-current" (next) };
-  bind "<ctrl>p" { "move-current" (prev) };
-  bind "<ctrl>f" { "move-current" (child) };
-  bind "<ctrl>b" { "move-current" (parent) };
-}
-
-GtkEntry {
-  -gtk-key-bindings: gtk-emacs-text-entry;
-}
-
-GtkTextView {
-  -gtk-key-bindings: gtk-emacs-text-entry, gtk-emacs-text-view;
-}
-
-GtkTreeView {
-  -gtk-key-bindings: gtk-emacs-tree-view;
-}
-
-GtkMenuShell {
-  -gtk-key-bindings: gtk-emacs-menu;
-}
-
-class "GtkMenuShell" binding "gtk-emacs-menu"
+/gnu/store/nhb78g142d0affc3w3b92r86gmm9939z-home-dotfiles--config-gtk-3-0-gtk-css
Index: guix/.config/gtk-3.0/settings.ini
===================================================================
--- guix/.config/gtk-3.0/settings.ini	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ guix/.config/gtk-3.0/settings.ini	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,16 +1,1 @@
-[Settings]
-gtk-key-theme-name = Emacs
-gtk-primary-button-warps-slider = false
-# Ignore since we do that in font-config and .Xdefaults
-gtk-xft-antialias=1
-gtk-xft-hinting=1
-gtk-xft-hintstyle=hintslight
-gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
-gtk-icon-sizes = "panel-menu=12,12:panel=12,12:gtk-menu=12,12:gtk-large-toolbar=12,12:gtk-small-toolbar=12,12:gtk-button=12,12"
-gtk-decoration-layout=menu:closes
-# gtk-font-name=FreeFont Sans 14
-# gtk-primary-button-warps-slider=false
-gtk-menu-popup-delay = 0
-#gtk-menu-images = 0
-# gtk-button-images = 0
-gtk-toolbar-icon-size=GTK_ICON_SIZE_SMALL_TOOLBAR
+/gnu/store/y5zs7640jnmm12sc88x88a4k8884isfp-home-dotfiles--config-gtk-3-0-settings-ini
Index: ix/.config/guix/channels.scm
===================================================================
--- guix/.config/guix/channels.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,4 +1,0 @@
-(list (channel
-        (name 'guix)
-        (url "https://git.savannah.gnu.org/git/guix.git")
-        (branch "version-1.4.0")))
Index: ix/.config/i3blocks/config
===================================================================
--- guix/.config/i3blocks/config	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,29 +1,0 @@
-# Optimized for 1280x800 resolution
-# on thinkpad x200t
-
-[cpu]
-command=$SCRIPT_DIR/cpu_usage
-interval=10
-separator=false
-
-
-[temperature]
-command=$SCRIPT_DIR/temp
-interval=10
-
-[memory]
-command=$SCRIPT_DIR/memory
-interval=2
-
-[disk]
-command=$SCRIPT_DIR/disk
-ALERT_LOW=5
-interval=60
-
-[volume]
-command=$SCRIPT_DIR/volume
-interval=1
-
-[time]
-command=date '+%d.%m.%Y %H:%M:%S'
-interval=1
Index: ix/.config/i3blocks/cpu_usage
===================================================================
--- guix/.config/i3blocks/cpu_usage	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,62 +1,0 @@
-#!/usr/bin/env perl
-#
-# Copyright 2014 Pierre Mavro <deimos@deimos.fr>
-# Copyright 2014 Vivien Didelot <vivien@didelot.org>
-# Copyright 2014 Andreas Guldstrand <andreas.guldstrand@gmail.com>
-#
-# Licensed under the terms of the GNU GPL v3, or any later version.
-
-use strict;
-use warnings;
-use utf8;
-use Getopt::Long;
-
-# default values
-my $t_warn = $ENV{T_WARN} // 50;
-my $t_crit = $ENV{T_CRIT} // 80;
-my $cpu_usage = -1;
-my $decimals = $ENV{DECIMALS} // 2;
-my $label = $ENV{LABEL} // "CPU: ";
-
-sub help {
-    print "Usage: cpu_usage [-w <warning>] [-c <critical>] [-d <decimals>]\n";
-    print "-w <percent>: warning threshold to become yellow\n";
-    print "-c <percent>: critical threshold to become red\n";
-    print "-d <decimals>:  Use <decimals> decimals for percentage (default is $decimals) \n";
-    exit 0;
-}
-
-GetOptions("help|h" => \&help,
-	   "w=i"    => \$t_warn,
-	   "c=i"    => \$t_crit,
-	   "d=i"    => \$decimals,
-);
-
-# Get CPU usage
-$ENV{LC_ALL}="en_US"; # if mpstat is not run under en_US locale, things may break, so make sure it is
-open (MPSTAT, 'mpstat 1 1 |') or die;
-while (<MPSTAT>) {
-    if (/^.*\s+(\d+\.\d+)[\s\x00]?$/) {
-	$cpu_usage = 100 - $1; # 100% - %idle
-	last;
-    }
-}
-close(MPSTAT);
-
-$cpu_usage eq -1 and die 'Can\'t find CPU information';
-
-# Print short_text, full_text
-print "${label}";
-printf "%.${decimals}f%%\n", $cpu_usage;
-print "${label}";
-printf "%.${decimals}f%%\n", $cpu_usage;
-
-# Print color, if needed
-if ($cpu_usage >= $t_crit) {
-    print "#FF0000\n";
-    exit 33;
-} elsif ($cpu_usage >= $t_warn) {
-    print "#FFFC00\n";
-}
-
-exit 0;
Index: ix/.config/i3blocks/disk
===================================================================
--- guix/.config/i3blocks/disk	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,48 +1,0 @@
-#!/bin/sh
-# Copyright (C) 2014 Julien Bonjean <julien@bonjean.info>
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-DIR="${DIR:-$BLOCK_INSTANCE}"
-DIR="${DIR:-$HOME}"
-ALERT_LOW="${ALERT_LOW:-$1}"
-ALERT_LOW="${ALERT_LOW:-10}" # color will turn red under this value (default: 10%)
-
-LOCAL_FLAG="-l"
-if [ "$1" = "-n" ] || [ "$2" = "-n" ]; then
-    LOCAL_FLAG=""
-fi
-
-df -h -P $LOCAL_FLAG "$DIR" | awk -v label="$LABEL" -v alert_low=$ALERT_LOW '
-/\/.*/ {
-	# full text
-	print label $4
-
-	# short text
-	print "HDD: " $3 "/" $2
-
-	use=$5
-
-	# no need to continue parsing
-	exit 0
-}
-
-END {
-	gsub(/%$/,"",use)
-	if (100 - use < alert_low) {
-		# color
-		print "#FF0000"
-	}
-}
-'
Index: ix/.config/i3blocks/memory
===================================================================
--- guix/.config/i3blocks/memory	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,66 +1,0 @@
-#!/bin/sh
-# Copyright (C) 2014 Julien Bonjean <julien@bonjean.info>
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-TYPE="${BLOCK_INSTANCE:-mem}"
-
-awk -v type=$TYPE '
-/^MemTotal:/ {
-	mem_total=$2
-}
-/^MemFree:/ {
-	mem_free=$2
-}
-/^Buffers:/ {
-	mem_free+=$2
-}
-/^Cached:/ {
-	mem_free+=$2
-}
-/^SwapTotal:/ {
-	swap_total=$2
-}
-/^SwapFree:/ {
-	swap_free=$2
-}
-END {
-	if (type == "swap") {
-		free=swap_free/1024
-		used=(swap_total-swap_free)/1024
-		total=swap_total/1024
-	} else {
-		free=mem_free/1024
-		used=(mem_total-mem_free)/1024
-		total=mem_total/1024
-	}
-
-	pct=0
-	if (total > 0) {
-		pct=used/total*100
-	}
-
-	# full text
-	printf("%s%.1i/%.1iMiB\n", "RAM: ", used, total)
-
-	# color
-	if (pct > 90) {
-		print("#FF0000")
-	} else if (pct > 80) {
-		print("#FFAE00")
-	} else if (pct > 70) {
-		print("#FFF600")
-	}
-}
-' /proc/meminfo
Index: ix/.config/i3blocks/temp
===================================================================
--- guix/.config/i3blocks/temp	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,69 +1,0 @@
-#!/usr/bin/env perl
-# Copyright 2014 Pierre Mavro <deimos@deimos.fr>
-# Copyright 2014 Vivien Didelot <vivien@didelot.org>
-# Copyright 2014 Andreas Guldstrand <andreas.guldstrand@gmail.com>
-# Copyright 2014 Benjamin Chretien <chretien at lirmm dot fr>
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict;
-use warnings;
-use utf8;
-use Getopt::Long;
-
-binmode(STDOUT, ":utf8");
-
-# default values
-my $t_warn = $ENV{T_WARN} || 70;
-my $t_crit = $ENV{T_CRIT} || 90;
-my $chip = $ENV{SENSOR_CHIP} || "";
-my $temperature = -9999;
-
-sub help {
-    print "Usage: temperature [-w <warning>] [-c <critical>] [--chip <chip>]\n";
-    print "-w <percent>: warning threshold to become yellow\n";
-    print "-c <percent>: critical threshold to become red\n";
-    print "--chip <chip>: sensor chip\n";
-    exit 0;
-}
-
-GetOptions("help|h" => \&help,
-	   "w=i"    => \$t_warn,
-	   "c=i"    => \$t_crit,
-	   "chip=s" => \$chip);
-
-# Get chip temperature
-open (SENSORS, "sensors -u $chip |") or die;
-while (<SENSORS>) {
-    if (/^\s+temp1_input:\s+[\+]*([\-]*\d+\.\d)/) {
-	$temperature = $1;
-	last;
-    }
-}
-close(SENSORS);
-
-$temperature eq -9999 and die 'Cannot find temperature';
-
-# Print short_text, full_text
-print "$temperature°C\n" x2;
-
-# Print color, if needed
-if ($temperature >= $t_crit) {
-    print "#FF0000\n";
-    exit 33;
-} elsif ($temperature >= $t_warn) {
-    print "#FFFC00\n";
-}
-
-exit 0;
Index: ix/.config/i3blocks/volume
===================================================================
--- guix/.config/i3blocks/volume	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,83 +1,0 @@
-#!/usr/bin/env bash
-# Copyright (C) 2014 Julien Bonjean <julien@bonjean.info>
-# Copyright (C) 2014 Alexander Keller <github@nycroth.com>
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-#------------------------------------------------------------------------
-
-# The second parameter overrides the mixer selection
-# For PulseAudio users, eventually use "pulse"
-# For Jack/Jack2 users, use "jackplug"
-# For ALSA users, you may use "default" for your primary card
-# or you may use hw:# where # is the number of the card desired
-if [[ -z "$MIXER" ]] ; then
-    MIXER="default"
-    if command -v pulseaudio >/dev/null 2>&1 && pulseaudio --check ; then
-	# pulseaudio is running, but not all installations use "pulse"
-	if amixer -D pulse info >/dev/null 2>&1 ; then
-	    MIXER="pulse"
-	fi
-    fi
-    [ -n "$(lsmod | grep jack)" ] && MIXER="jackplug"
-    MIXER="${2:-$MIXER}"
-fi
-
-# The instance option sets the control to report and configure
-# This defaults to the first control of your selected mixer
-# For a list of the available, use `amixer -D $Your_Mixer scontrols`
-if [[ -z "$SCONTROL" ]] ; then
-    SCONTROL="${BLOCK_INSTANCE:-$(amixer -D $MIXER scontrols |
-		      sed -n "s/Simple mixer control '\([^']*\)',0/\1/p" |
-		      head -n1
-		    )}"
-fi
-
-# The first parameter sets the step to change the volume by (and units to display)
-# This may be in in % or dB (eg. 5% or 3dB)
-if [[ -z "$STEP" ]] ; then
-    STEP="${1:-5%}"
-fi
-
-#------------------------------------------------------------------------
-
-capability() { # Return "Capture" if the device is a capture device
-  amixer -D $MIXER get $SCONTROL |
-    sed -n "s/  Capabilities:.*cvolume.*/Capture/p"
-}
-
-volume() {
-  amixer -D $MIXER get $SCONTROL $(capability)
-}
-
-format() {
-
-  perl_filter='if (/.*\[(\d+%)\] (\[(-?\d+.\d+dB)\] )?\[(on|off)\]/)'
-  perl_filter+='{CORE::say $4 eq "off" ? "MUTE" : "'
-  # If dB was selected, print that instead
-  perl_filter+=$([[ $STEP = *dB ]] && echo '$3' || echo '$1')
-  perl_filter+='"; exit}'
-  output=$(perl -ne "$perl_filter")
-  echo "VOL: $output"
-}
-
-#------------------------------------------------------------------------
-
-case $BLOCK_BUTTON in
-  3) amixer -q -D $MIXER sset $SCONTROL $(capability) toggle ;;  # right click, mute/unmute
-  4) amixer -q -D $MIXER sset $SCONTROL $(capability) ${STEP}+ unmute ;; # scroll up, increase
-  5) amixer -q -D $MIXER sset $SCONTROL $(capability) ${STEP}- unmute ;; # scroll down, decrease
-esac
-
-volume | format
Index: ix/.config/mpv/mpv.conf
===================================================================
--- guix/.config/mpv/mpv.conf	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,1 +1,0 @@
-ytdl-format=bestvideo[height<=?720][fps<=?30]+bestaudio/best
Index: guix/.config/nixpkgs/config.nix
===================================================================
--- guix/.config/nixpkgs/config.nix	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ guix/.config/nixpkgs/config.nix	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,3 +1,1 @@
-{
-  allowUnfree = true;
-}
+/gnu/store/n7qm12fzblg61qblw7ylgfwwmxq14f4w-home-dotfiles--config-nixpkgs-config-nix
Index: ix/.config/nyxt/init.lisp
===================================================================
--- guix/.config/nyxt/init.lisp	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,12 +1,0 @@
-;; -*- mode: common-lisp -*-
-
-;; (define-configuration buffer
-;;     ((default-modes
-;; 	 (append '(emacs-mode
-;; 		   noscript-mode
-;; 		   nowebgl-mode
-;; 		   ;;web-mode
-;; 		   ;;web-buffer
-;; 		   ;;base-mode
-;; 		   force-https-mode)
-;; 		 %slot-default))))
Index: ix/.config/rofi/config.rasi
===================================================================
--- guix/.config/rofi/config.rasi	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,144 +1,0 @@
-configuration {
-	modi: "window,run,ssh,keys,combi,drun";
-	width: 25;
-	lines: 5;
-	columns: 1;
-	font: "mono 12";
-	bw: 1;
-	location: 2;
-	padding: 0;
-	yoffset: 0;
-	xoffset: 0;
-	fixed-num-lines: false;
-	show-icons: false;
-/*	terminal: "rofi-sensible-terminal";*/
-	ssh-client: "ssh";
-	ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";
-	run-command: "{cmd}";
-	run-list-command: "";
-	run-shell-command: "{terminal} -e {cmd}";
-/*	window-command: "wmctrl -i -R {window}";*/
-/*	window-match-fields: "all";*/
-/*	icon-theme: ;*/
-/*	drun-match-fields: "name,generic,exec,categories";*/
-/*	drun-show-actions: false;*/
-/*	drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";*/
-/*	disable-history: false;*/
-/*	ignored-prefixes: "";*/
-/*	sort: false;*/
-/*	sorting-method: ;*/
-/*	case-sensitive: false;*/
-	cycle: true;
-//*	eh: 1;*/
-/*	auto-select: false;*/
-/*	parse-hosts: false;*/
-/*	parse-known-hosts: true;*/
-/*	combi-modi: "window,run";*/
-/*	matching: "normal";*/
-/*	tokenize: true;*/
-/*	m: "-5";*/
-	line-margin: 0;
-	line-padding: 0;
-/*	filter: ;*/
-	separator-style: "none";
-	hide-scrollbar: true;
-	fullscreen: false;
-/*	fake-transparency: true; */
-/*	dpi: -1;*/
-/*	threads: 0;*/
-/*	scrollbar-width: 8;*/
-/*	scroll-method: 0;*/
-/*	fake-background: "screenshot";*/
-	window-format: "{w}    {c}   {t}";
-	click-to-exit: true;
-/*	show-match: true;*/
-/*	theme: ;*/
-/*	color-normal: ;*/
-/*	color-urgent: ;*/
-/*	color-active: ;*/
-/*	color-window: ;*/
-/*	max-history-size: 25;*/
-/*	combi-hide-mode-prefix: false;*/
-/*	matching-negate-char: '-' /* unsupported */;*/
-/*	cache-dir: ;*/
-/*	pid: "/run/user/1000/rofi.pid";*/
-/*	display-window: ;*/
-/*	display-windowcd: ;*/
-/*	display-run: ;*/
-/*	display-ssh: ;*/
-/*	display-drun: ;*/
-/*	display-combi: ;*/
-/*	display-keys: ;*/
-	kb-primary-paste: "Control+V,Shift+Insert,Control+y";
-/*	kb-secondary-paste: "Control+v,Insert";*/
-/*	kb-clear-line: "Control+w";*/
-/*	kb-move-front: "Control+a";*/
-/*	kb-move-end: "Control+e";*/
-/*	kb-move-word-back: "Alt+b,Control+Left";*/
-/*	kb-move-word-forward: "Alt+f,Control+Right";*/
-/*	kb-move-char-back: "Left,Control+b";*/
-/*	kb-move-char-forward: "Right,Control+f";*/
-/*	kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
-/*	kb-remove-word-forward: "Control+Alt+d";*/
-/*	kb-remove-char-forward: "Delete,Control+d";*/
-/*	kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/
-/*	kb-remove-to-eol: "Control+k";*/
-/*	kb-remove-to-sol: "Control+u";*/
-/*	kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
-/*	kb-accept-custom: "Control+Return";*/
-/*	kb-accept-alt: "Shift+Return";*/
-/*	kb-delete-entry: "Shift+Delete";*/
-/*	kb-mode-next: "Shift+Right,Control+Tab";*/
-/*	kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
-/*	kb-row-left: "Control+Page_Up";*/
-/*	kb-row-right: "Control+Page_Down";*/
-/*	kb-row-up: "Up,Control+p,ISO_Left_Tab";*/
-/*	kb-row-down: "Down,Control+n";*/
-/*	kb-row-tab: "Tab";*/
-/*	kb-page-prev: "Page_Up";*/
-/*	kb-page-next: "Page_Down";*/
-/*	kb-row-first: "Home,KP_Home";*/
-/*	kb-row-last: "End,KP_End";*/
-/*	kb-row-select: "Control+space";*/
-/*	kb-screenshot: "Alt+S";*/
-/*	kb-ellipsize: "Alt+period";*/
-/*	kb-toggle-case-sensitivity: "grave,dead_grave";*/
-/*	kb-toggle-sort: "Alt+grave";*/
-/*	kb-cancel: "Escape,Control+g,Control+bracketleft";*/
-/*	kb-custom-1: "Alt+1";*/
-/*	kb-custom-2: "Alt+2";*/
-/*	kb-custom-3: "Alt+3";*/
-/*	kb-custom-4: "Alt+4";*/
-/*	kb-custom-5: "Alt+5";*/
-/*	kb-custom-6: "Alt+6";*/
-/*	kb-custom-7: "Alt+7";*/
-/*	kb-custom-8: "Alt+8";*/
-/*	kb-custom-9: "Alt+9";*/
-/*	kb-custom-10: "Alt+0";*/
-/*	kb-custom-11: "Alt+exclam";*/
-/*	kb-custom-12: "Alt+at";*/
-/*	kb-custom-13: "Alt+numbersign";*/
-/*	kb-custom-14: "Alt+dollar";*/
-/*	kb-custom-15: "Alt+percent";*/
-/*	kb-custom-16: "Alt+dead_circumflex";*/
-/*	kb-custom-17: "Alt+ampersand";*/
-/*	kb-custom-18: "Alt+asterisk";*/
-/*	kb-custom-19: "Alt+parenleft";*/
-/*	kb-select-1: "Super+1";*/
-/*	kb-select-2: "Super+2";*/
-/*	kb-select-3: "Super+3";*/
-/*	kb-select-4: "Super+4";*/
-/*	kb-select-5: "Super+5";*/
-/*	kb-select-6: "Super+6";*/
-/*	kb-select-7: "Super+7";*/
-/*	kb-select-8: "Super+8";*/
-/*	kb-select-9: "Super+9";*/
-/*	kb-select-10: "Super+0";*/
-/*	ml-row-left: "ScrollLeft";*/
-/*	ml-row-right: "ScrollRight";*/
-/*	ml-row-up: "ScrollUp";*/
-/*	ml-row-down: "ScrollDown";*/
-/*	me-select-entry: "MousePrimary";*/
-/*	me-accept-entry: "MouseDPrimary";*/
-/*	me-accept-custom: "Control+MouseDPrimary";*/
-}
Index: ix/.config/shepherd/init.scm
===================================================================
--- guix/.config/shepherd/init.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,5 +1,0 @@
-(load "services.scm")
-
-(register-services emacs)
-(action 'shepherd 'daemonize) ; send shepherd into background
-(for-each start (list emacs ssh-agent redshift))
Index: ix/.config/shepherd/services.scm
===================================================================
--- guix/.config/shepherd/services.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,25 +1,0 @@
-(define emacs
-  (make <service>
-    #:provides '(emacs)
-    #:requires '()
-    #:start (make-system-constructor "emacs --daemon")
-    #:stop (make-system-destructor
-            "emacsclient --eval \"(kill-emacs)\"")))
-
-(define ssh-agent
-  (make <service>
-    #:provides '(ssh-agent)
-    #:requires '()
-    #:start (make-system-constructor "eval $(ssh-agent)")))
-
-(define redshift
-  (make <service>
-    #:provides '(redshift)
-    #:requires '()
-    #:start (make-system-constructor "redshift -l 45:37")
-    #:stop (make-system-destructor
-            "pkill -f redshift")))
-
-(register-services emacs)
-(register-services redshift)
-
Index: ix/.config/sway/config
===================================================================
--- guix/.config/sway/config	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,284 +1,0 @@
-# Default config for sway
-#
-# Copy this to ~/.config/sway/config and edit it to your liking.
-#
-# Read `man 5 sway` for a complete reference.
-
-### Variables
-#
-# Logo key. Use Mod1 for Alt.
-set $mod Mod4
-# Home row direction keys, like vim
-set $left h
-set $down j
-set $up k
-set $right l
-
-set $term wterm
-
-bindsym $mod+d exec --no-startup-id "rofi -show drun -run-shell-command '{terminal} -e \\" {cmd}; read -n 1 -s\\"'"
-bindsym $mod+w exec --no-startup-id "rofi -show window -run-shell-command '{terminal} -e \\" {cmd}; read -n 1 -s\\"'"
-
-exec dbus-daemon --session --address=unix:path=$XDG_RUNTIME_DIR/bus
-exec mako
-
-# exec swayidle -w \
-#          timeout 300 'swaylock -f -c 000000' \
-#          timeout 600 'swaymsg "output * dpms off"' \
-#               resume 'swaymsg "output * dpms on"' \
-#          before-sleep 'swaylock -f -c 000000'
-
-### Key bindings
-#
-# Basics:
-#
-    # Start a terminal
-    bindsym $mod+Return exec $term
-    bindsym $mod+c exec $term
-    
-
-    # Kill focused window
-    bindsym $mod+q kill
-
-
-    # Drag floating windows by holding down $mod and left mouse button.
-    # Resize them with right mouse button + $mod.
-    # Despite the name, also works for non-floating windows.
-    # Change normal to inverse to use left mouse button for resizing and right
-    # mouse button for dragging.
-    floating_modifier $mod normal
-
-    # Reload the configuration file
-    bindsym $mod+Shift+c reload
-
-    # Exit sway (logs you out of your Wayland session)
-    bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
-#
-# Moving around:
-#
-    # Move your focus around
-    bindsym $mod+$left focus left
-    bindsym $mod+$down focus down
-    bindsym $mod+$up focus up
-    bindsym $mod+$right focus right
-    # Or use $mod+[up|down|left|right]
-    bindsym $mod+Left focus left
-    bindsym $mod+Down focus down
-    bindsym $mod+Up focus up
-    bindsym $mod+Right focus right
-
-    # Move the focused window with the same, but add Shift
-    bindsym $mod+Shift+$left move left
-    bindsym $mod+Shift+$down move down
-    bindsym $mod+Shift+$up move up
-    bindsym $mod+Shift+$right move right
-    # Ditto, with arrow keys
-    bindsym $mod+Shift+Left move left
-    bindsym $mod+Shift+Down move down
-    bindsym $mod+Shift+Up move up
-    bindsym $mod+Shift+Right move right
-#
-# Workspaces:
-#
-    # Switch to workspace
-    bindsym $mod+1 workspace 1
-    bindsym $mod+2 workspace 2
-    bindsym $mod+3 workspace 3
-    bindsym $mod+4 workspace 4
-    bindsym $mod+5 workspace 5
-    bindsym $mod+6 workspace 6
-    bindsym $mod+7 workspace 7
-    bindsym $mod+8 workspace 8
-    bindsym $mod+9 workspace 9
-    bindsym $mod+0 workspace 10
-    # Move focused container to workspace
-    bindsym $mod+Shift+1 move container to workspace 1
-    bindsym $mod+Shift+2 move container to workspace 2
-    bindsym $mod+Shift+3 move container to workspace 3
-    bindsym $mod+Shift+4 move container to workspace 4
-    bindsym $mod+Shift+5 move container to workspace 5
-    bindsym $mod+Shift+6 move container to workspace 6
-    bindsym $mod+Shift+7 move container to workspace 7
-    bindsym $mod+Shift+8 move container to workspace 8
-    bindsym $mod+Shift+9 move container to workspace 9
-    bindsym $mod+Shift+0 move container to workspace 10
-    # Note: workspaces can have any name you want, not just numbers.
-    # We just use 1-10 as the default.
-#
-# Layout stuff:
-#
-    # You can "split" the current object of your focus with
-    # $mod+b or $mod+v, for horizontal and vertical splits
-    # respectively.
-    bindsym $mod+b splith
-    bindsym $mod+v splitv
-
-    # Switch the current container between different layout styles
-    bindsym $mod+s layout stacking
-    #bindsym $mod+w layout tabbed
-
-    # Make the current focus fullscreen
-    bindsym $mod+f fullscreen
-
-    # Toggle the current focus between tiling and floating mode
-    bindsym $mod+Shift+space floating toggle
-
-    # Swap focus between the tiling area and the floating area
-    bindsym $mod+space focus mode_toggle
-
-    # Move focus to the parent container
-    bindsym $mod+a focus parent
-#
-# Scratchpad:
-#
-    # Sway has a "scratchpad", which is a bag of holding for windows.
-    # You can send windows there and get them back later.
-
-    # Move the currently focused window to the scratchpad
-    bindsym $mod+Shift+minus move scratchpad
-
-    # Show the next scratchpad window or hide the focused scratchpad window.
-    # If there are multiple scratchpad windows, this command cycles through them.
-    bindsym $mod+minus scratchpad show
-#
-# Resizing containers:
-#
-mode "resize" {
-    # left will shrink the containers width
-    # right will grow the containers width
-    # up will shrink the containers height
-    # down will grow the containers height
-    bindsym $left resize shrink width 10px
-    bindsym $down resize grow height 10px
-    bindsym $up resize shrink height 10px
-    bindsym $right resize grow width 10px
-
-    # Ditto, with arrow keys
-    bindsym Left resize shrink width 10px
-    bindsym Down resize grow height 10px
-    bindsym Up resize shrink height 10px
-    bindsym Right resize grow width 10px
-
-    # Return to default mode
-    bindsym Return mode "default"
-    bindsym Escape mode "default"
-}
-bindsym $mod+r mode "resize"
-
-# Volume control
-bindsym XF86AudioRaiseVolume exec amixer -q sset Master 5%+ 
-bindsym XF86AudioLowerVolume exec amixer -q sset Master 5%-
-bindsym XF86AudioMute exec amixer -q sset Master toggle
-
-bar {
-    position top
-    
-    #status_command SCRIPT_DIR=~/.config/i3blocks/ i3blocks
-    
-    strip_workspace_name yes
-
-    #tray_output primary
-
-    colors {
-        statusline #cccccc
-        background #333333
-	focused_workspace #333333 #aeafad #333333
-        inactive_workspace #333333 #333333 #cccccc
-	urgent_workspace #333333 #f2777a #2d2d2d
-    }
-}
-
-
-input type:keyboard {
-    xkb_layout us,ru
-    xkb_options grp:win_space_toggle,caps:ctrl_modifier#,ctrl:nocaps
-}
-
-# Change borders
-default_border none
-default_floating_border normal
-hide_edge_borders vertical
-
-gaps inner 1
-
-workspace_auto_back_and_forth on
-focus_on_window_activation focus
-focus_wrapping workspace
-
-# Default stumpwm keybinding doesn't work, because C-t is used by many programs
-# and sway let other programs to use binded keys.
-set $StumpMod Control+t 
-
-assign [class="Emacs"] "Editor"
-assign [class="Icecat"] "Browser"
-assign [class="Firefox"] "Browser"
-assign [class="Chromium"] "Browser"
-
-mode "stumpwm" {
-     # Would be nice to have exit from mode after each bind
-
-     bindsym --to-code {
-     	 # Launch emacs
-	 e exec emacsclient; workspace "Editor"; mode default;
-	 
-    	 shift+e exec "if ps auxf | grep -c emacs > 1; then swaymsg '[class=Emacs] focus'; else swaymsg exec 'emacs'; fi; swaymsg 'mode default'";
-	 
-	 # Launch terminal
-	 c mode default; exec $term;
-
-	 # Kill window
-	 k kill; mode default;
-
-    	 # Navigation
-	 n workspace next; mode default;
-	 p workspace prev; mode default;
-
-	 # Switch to previous workspace
-	 t workspace current; mode default;
-	 Control+t workspace current; mode default;
-
-	 # Splitting
-	 s split vertical; mode default;
-	 Shift+s split horizontal; mode default;
-
-	 # Exit stumpwmm mode
-	 g mode default;
-	 
-	 Control+g mode default;
-
-         # Select workspace with corresponding digit
-	 0 workspace "0: Emacs"; mode default;
-	 1 workspace 1; mode default;
-	 2 workspace 2; mode default;
-	 3 workspace 3; mode default;
-	 4 workspace 4; mode default;
-	 5 workspace 5; mode default;
-	 6 workspace 6; mode default;
-	 7 workspace 7; mode default;
-	 8 workspace 8; mode default;
-	 9 workspace 9; mode default;
-
-	 # Choose/find window
-	 apostrophe exec --no-startup-id "swaymsg mode default; rofi -show window"
-
-	 # Combimode
-	 b exec --no-startup-id "swaymsg mode default; rofi -show combi"
-	 
-
-	 # Exec/find shell command
-	 shift+1 exec --no-startup-id "swaymsg mode default; rofi -show run -run-shell-command '{terminal} -e \\" {cmd}; read -n 1 -s\\"'"
-     }
-
-    # bindsym --to-code n exec "swaymsg focus down; swaymsg mode default;"
-    # bindsym --to-code p exec "swaymsg focus up; swaymsg mode default;"
-    # bindsym --to-code b exec "swaymsg focus left; swaymsg mode default;"
-    # bindsym --to-code f exec "swaymsg focus right; swaymsg mode default;"
-
-    # List of windows
-    bindsym w exec --no-startup-id "swaymsg mode default; rofi -show window -run-shell-command '{terminal} -e \\" {cmd}; read -n 1 -s\\"'"
-}
-bindsym --to-code $StumpMod mode "stumpwm"
-
-bindsym --to-code $mod+n exec --no-startup-id "rofi -show window"
-
-bindsym $mod+g mode "default"
Index: ix/.config/sxhkd/sxhkdrc
===================================================================
--- guix/.config/sxhkd/sxhkdrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,2 +1,0 @@
-ctrl + t ; c
-     urxvt
Index: guix/.dotfiles/.bash_profile
===================================================================
--- guix/.dotfiles/.bash_profile	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ guix/.dotfiles/.bash_profile	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,12 @@
+# Merge search-paths from multiple profiles, the order matters.
+eval "$(guix package --search-paths \
+-p $HOME/.config/guix/current \
+-p $HOME/.guix-profile \
+-p /run/current-system/profile)"
+
+# Prepend setuid programs.
+export PATH=/run/setuid-programs:$PATH
+
+export PATH=$HOME/.bin:$PATH
+
+export EMACSLOADPATH=$EMACSLOADPATH:$HOME/.emacs.d/elpa
Index: guix/.dotfiles/.bashrc
===================================================================
--- guix/.dotfiles/.bashrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ guix/.dotfiles/.bashrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,2 @@
+export GUIX_PACKAGE_PATH=$HOME/.guix-packages
+export GUIX_EXTRA_PROFILES=$HOME/.guix-extra-profiles
Index: guix/.dotfiles/home-configuration.scm
===================================================================
--- guix/.dotfiles/home-configuration.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ guix/.dotfiles/home-configuration.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,170 @@
+(use-modules (gnu home)
+             (gnu packages)
+	     (gnu packages gnupg)
+	     (gnu packages shells)
+             (gnu services)
+             (guix gexp)
+	     (guix channels)
+	     (gnu home services)
+	     (gnu home services guix)
+	     (gnu home services ssh)
+	     (gnu home services desktop)
+	     (gnu home services dotfiles)
+             (gnu home services shells)
+	     (gnu home services gnupg))
+
+(define dotfiles-dir "/home/w96k/projects/dotfiles/")
+
+(define wkz-home (home-environment
+		  (packages (specifications->packages (list
+						       "guix"
+						       "ratpoison"
+						       "xdot"
+						       "graphviz"
+						       "sed"
+						       "darktable"
+                                            "openssh"
+                                            "docker-compose"
+                                            "emacs-company"
+                                            "emacs-f"
+                                            "emacs-s"
+					    "emacs-xterm-color"
+                                            "emacs-lsp-mode"
+
+					    "guile"
+					    "guile-readline"
+					    "guile-colorized"
+					    "emacs-geiser"
+					    "emacs-geiser-guile"
+					    
+					    "emacs-telega"
+					    "emacs-guix"
+					    "emacs-simple-httpd"
+					    "emacs-osm"
+                                            "wget"
+                                            "bitcoin-core"
+                                            "xrandr"
+                                            "unzip"
+                                            "zip"
+                                            "mpv"
+                                            "emacs-rmsbolt"
+                                            "git"
+                                            ;; "wkz-emacs"
+					    "emacs-no-x-toolkit"
+					    "emacs-gptel"
+                                            "lm-sensors"
+                                            "htop"
+                                            "make"
+                                            "emacs-simple-httpd"
+                                            "emacs-guix"
+                                            "emacs-telega"
+                                            "gimp"
+                                            "imagemagick"
+                                            "stow"
+                                            "icecat"
+                                            "smartmontools"
+                                            "lshw"
+                                            "hwinfo"
+                                            "ntfs-3g"
+                                            "qbittorrent"
+                                            "x11-ssh-askpass"
+                                            "syncthing"
+                                            "pavucontrol"
+                                            "arp-scan"
+                                            "proot"
+                                            "openconnect"
+                                            "alsa-utils"
+                                            "grep"
+					    "xlockmore"
+					    "bitcoin-core"
+					    "x11-ssh-askpass"
+					    "pinentry-emacs"
+					    "texlive"
+					    "fetchmail"
+					    "gnupg"
+					    "xhost"
+
+					    ;; "wkz-php"
+					    ;; "wkz-python"
+					    ;; "wkz-ruby"
+					    )))
+
+  ;; Below is the list of Home services.  To search for available
+  ;; services, run 'guix home search KEYWORD' in a terminal.
+  (services
+   (list
+    ;; (service home-run-on-first-login-service-type)
+    ;; (service home-activation-service-type)
+    
+    (service home-bash-service-type
+                  (home-bash-configuration
+		   (guix-defaults? #t)
+                   (aliases '(("grep" . "grep --color=auto")
+                              ("ip" . "ip -color=auto")
+                              ("ll" . "ls -l")
+                              ("ls" . "ls -p --color=auto")))
+                   (bashrc (list (local-file
+                                  ".bashrc"
+                                  "bashrc")))
+                   ;; (bash-profile (list (local-file
+                   ;;                      ".bash_profile"
+                   ;;                      "bash_profile")))
+		   ))
+
+    (service home-redshift-service-type
+	     (home-redshift-configuration
+	      (location-provider 'manual)
+	      (latitude 41.71)
+	      (longitude 44.82)
+	      ))
+
+    ;; (service home-x11-display-service-type)
+	 (service home-gpg-agent-service-type
+         (home-gpg-agent-configuration
+          (pinentry-program
+           (file-append pinentry-emacs "/bin/pinentry-emacs"))
+          (ssh-support? #t)))
+
+	 (service home-unclutter-service-type
+		  (home-unclutter-configuration
+		   (idle-timeout 1)))
+
+	 (service home-openssh-service-type
+		  (home-openssh-configuration
+		   (authorized-keys (list (local-file "id_rsa.pub")))))
+
+	 (service home-startx-command-service-type
+		   (xorg-configuration (keyboard-layout (keyboard-layout "us,ru"
+									 #:options '("grp:shifts_toggle" "ctrl:nocaps")))))
+
+	 ;; (service home-files-service-type `((".xinitrc" ,(local-file ".xinitrc" "xinitrc"))))
+
+	 (service home-dotfiles-service-type
+		  (home-dotfiles-configuration
+		   ;; (layout 'stow)
+		   (directories '(
+				  "/home/w96k/projects/dotfiles/X"
+				  "/home/w96k/projects/dotfiles/wm"
+				  "/home/w96k/projects/dotfiles/emacs"
+				  "/home/w96k/projects/dotfiles/cvs"
+				  "/home/w96k/projects/dotfiles/guix"
+				  ))))
+
+	 ;; (service home-ssh-agent-service-type
+	 ;; 	  (home-ssh-agent-configuration
+	 ;; 	   (extra-options '("-t" "1h30m"))))
+
+	 (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"))))))
+	 ))))
+
+wkz-home
Index: guix/.dotfiles/id_rsa.pub
===================================================================
--- guix/.dotfiles/id_rsa.pub	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ guix/.dotfiles/id_rsa.pub	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,1 @@
+ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCft3eS5RCtC321fr2JEnDAx2uvqXE2CFN7P1RzzNxb4+48zKAjPgxYkruyAcFKUDXJe9rOeP0JNA5DDZPQOHgvjJRm22PtFPPs3UdsZQHzWcd/DfhUkBwuourinKnZG/JRpOFOBt1S/7nHMNovGAk7oobIyU9gumoAOVryCiliZ/co5wziUyl8ofzJs6T50aFihFveLmlUeO1Fqlik59K3yZ9MshwLfHj5Vz4z7vNUMM5mxMM1UgfWQfrVP07VAgeQYxhcogWM8USIA+7edrewAx5ZGbcjIjPzAvTe0ijwUk/IUwsln7Z2B81mFU1ZdTR7t83uJluD82HoDkp+lXPYcI2vRiqzV14HJhKrHiJbMnXmBO2I/SGntUtSFRYy3Y7EiaujEkWuAk1yVo1Cq/aKnejlE+VfHmdqpBneJo7rrCl49aZq0j4/JNVsMdwY+t88NhlxjWJSQq6NnZL999BGxdnHL1NwRojomwbdVDvXH9ENX0JzWhMpxbBBfO/aSGk= w96k@wkz-guix
Index: guix/.guix-packages/emacs.scm
===================================================================
--- guix/.guix-packages/emacs.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ guix/.guix-packages/emacs.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,256 +1,1 @@
-(define-module (emacs)
-  #:use-module ((guix licenses) #:prefix license:)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (guix git-download)
-  #:use-module (guix licenses)
-  #:use-module (guix utils)
-  #:use-module (guix memoization)
-  #:use-module (guix build-system emacs)
-  #:use-module (guix build-system glib-or-gtk)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages imagemagick)
-  #:use-module (gnu packages xorg)
-  #:use-module (gnu packages base)
-  #:use-module (gnu packages code)
-  #:use-module (gnu packages gcc)
-  #:use-module (gnu packages php)
-  #:use-module (gnu packages web)  
-  #:use-module (gnu packages autotools)
-  #:use-module (gnu packages compression)
-  #:use-module (gnu packages emacs)
-  #:use-module (gnu packages emacs-xyz)
-  #:use-module (guix utils)
-  #:use-module (srfi srfi-1)
-  #:use-module (ice-9 match))
-
-(define-public emacs-pythonic
-  (package
-   (name "emacs-pythonic")
-   (version "0.2.0")
-   (source (origin
-            (method git-fetch)
-            (uri (git-reference
-		  (url "https://github.com/pythonic-emacs/pythonic.git")
-                  (commit (string-append "v" version))))
-            (file-name (git-file-name name version))
-            (sha256
-             (base32
-	      "0hbvy8wdi5dgxn86j8z54y2fhcvm605xxm6xv054nl6fw2hh2h5h"))))
-   (build-system emacs-build-system)
-   (propagated-inputs
-    `(("s" ,emacs-s)
-      ("f" ,emacs-f)))
-   (home-page "https://github.com/pythonic-emacs/anaconda-mode")
-   (synopsis "Utility functions for writing pythonic emacs package.")
-   (description
-    "Utility functions for writing pythonic emacs package.")
-   (license license:gpl3+)))
-
-(define-public emacs-anaconda-mode
-  (package
-   (name "emacs-anaconda-mode")
-   (version "0.1.14")
-   (source (origin
-            (method git-fetch)
-            (uri (git-reference
-                  (url "https://github.com/pythonic-emacs/anaconda-mode.git")
-                  (commit (string-append "v" version))))
-            (file-name (git-file-name name version))
-            (sha256
-             (base32
-	      "04f6kw4rd8k6waiyfbk7x8qdrqm411mdsdzjh2w9rvmv7y36ckh8"))))
-   (build-system emacs-build-system)
-   (propagated-inputs
-    `(("emacs-pythonic" ,emacs-pythonic)
-      ("dash" ,emacs-dash)
-      ("s" ,emacs-s)
-      ("f" ,emacs-f)))
-   (home-page "https://github.com/pythonic-emacs/anaconda-mode")
-   (synopsis "Code navigation, documentation lookup and completion for
-Python.")
-   (description
-    "Code navigation, documentation lookup and completion for Python.")
-   (license license:gpl3)))
-
-(define-public emacs-kiwix
-  (package
-   (name "emacs-kiwix")
-   (version "1.0.3")
-   (source
-    (origin
-     (method url-fetch)
-     (uri (string-append
-           "https://elpa.gnu.org/packages/kiwix-"
-           version
-           ".tar"))
-     (sha256
-      (base32
-       "061b816xp8ykqd56z0nvc69aql9y4mba42p6x6vc0j6gr9n3c1j6"))))
-   (build-system emacs-build-system)
-   (propagated-inputs
-    `(("emacs-request" ,emacs-request)))
-   (home-page
-    "https://github.com/stardiviner/kiwix.el")
-   (synopsis
-    "Searching offline Wikipedia through Kiwix.")
-   (description
-    "Emacs client for a free offline web browser created by Emmanuel
-Engelhart and Renaud Gaudin in 2007.")
-   (license license:gpl3+)))
-
-(define-public emacs-realgud-xdebug
-  (package
-   (name "emacs-realgud-xdebug")
-   (version "0.1.0")
-   (source
-    (origin
-     (uri (git-reference
-           (url "https://github.com/realgud/realgud-xdebug")
-           (commit version)))
-     (method git-fetch)
-     (sha256
-      (base32 "0iyxm4yfjwpc322md8iz38xs1y6whqjgsbbs7vdjw1k5029q8nc0"))
-     (file-name (git-file-name name version))))
-   (build-system emacs-build-system)
-   (inputs
-    (list emacs-realgud))
-   (home-page "https://github.com/realgud/realgud-xdebug/")
-   (synopsis
-    "Modular front-end for interacting with external debuggers")
-   (description
-    "RealGUD is a modular, extensible GNU Emacs front-end for interacting
-with external debuggers.  It integrates various debuggers such as gdb, pdb,
-ipdb, jdb, lldb, bashdb, zshdb, etc. and allows visually steping through code in the
-sources.  Unlike GUD, it also supports running multiple debug sessions in
-parallel.")
-   (license license:gpl3+)))
-
-(define-public emacs-xcscope
-    (package
-     (name "emacs-xcscope")
-     (version "1.5")
-     (source (origin
-            (method git-fetch)
-            (uri (git-reference
-                  (url "https://github.com/dkogan/xcscope.el")
-                  (commit (string-append "v" version))))
-            (file-name (git-file-name name version))
-            (sha256
-             (base32
-	      "0w2bxrnidladpzrd82z3w3gvjhajs71k5vjk2y03r09i9fwn2ykc"))))
-     (build-system emacs-build-system)
-     (home-page "https://github.com/realgud/realgud-xdebug/")
-     (synopsis
-      "emacs auto-complete & company-mode for php ")
-     (description
-      "The PHP code completion and the jump to definition/declaration/inclusion-file provided by phpctags")
-     (license license:gpl3+)))
-
-(define-public emacs-ac-php
-    (package
-     (name "emacs-ac-php")
-     (version "2.4.2")
-     (source (origin
-            (method git-fetch)
-            (uri (git-reference
-                  (url "https://github.com/xcwen/ac-php")
-                  (commit version)))
-            (file-name (git-file-name name version))
-            (sha256
-             (base32
-	      "08vfdp7q6x5fk2nn5dl884cyysxrl2gw8f16g7wqvf7v24jmx71d"))))
-     (build-system emacs-build-system)
-     (native-inputs
-      (list emacs-company emacs-helm))
-     (propagated-inputs
-      (list emacs-php-mode php emacs-s
-	    emacs-f emacs-popup emacs-dash
-	    emacs-xcscope cscope emacs-auto-complete
-	    emacs-yasnippet))
-     (home-page "https://github.com/xcwen/ac-php")
-     (synopsis
-      "emacs auto-complete & company-mode for php ")
-     (description
-      "The PHP code completion and the jump to definition/declaration/inclusion-file provided by phpctags")
-     (license license:gpl3+)))
-
-(define-public emacs-php-quickhelp
-    (package
-     (name "emacs-php-quickhelp")
-     (version "0.5.5")
-     (source (origin
-            (method git-fetch)
-            (uri (git-reference
-                  (url "https://github.com/vpxyz/php-quickhelp")
-                  (commit (string-append "v" version))))
-            (file-name (git-file-name name version))
-            (sha256
-             (base32
-	      "1d9rg699wl67qkb93r4qnjn0ng4xn9c2g6kc98zaiy2v0v2wcv8g"))))
-     (build-system emacs-build-system)
-     (propagated-inputs
-      (list jq))
-     (home-page "https://github.com/vpxyz/php-quickhelp")
-     (synopsis
-      "A php quickhelp and eldoc backed for emacs ")
-     (description
-      "Provide quick help (and a eldoc beckend) for company-php and company-phpactor. It require jq to extract a short help from php manual.")
-     (license license:gpl3+)))
-
-(define-public emacs-mastodon-updated
-  (package
-   (inherit emacs-mastodon)
-   (name "emacs-mastodon")
-   (version "1.0.0")
-   (source (origin
-            (method git-fetch)
-            (uri (git-reference
-                  (url "https://codeberg.org/martianh/mastodon.el")
-                  (commit version)))
-            (file-name (git-file-name name version))
-            (sha256
-             (base32
-	      "13swcbvwhjl8ksrgzvmfafkgd3iz8znk49bs1n48w3g9qvh097w7"))))
-   (propagated-inputs
-    (list emacs-request))
-   (build-system emacs-build-system)))
-
-(define-public emacs-mini-modeline
-  (package
-    (name "emacs-mini-modeline")
-    (version "20211130.604")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/kiennq/emacs-mini-modeline.git")
-                    (commit "434b98b22c69c8b3b08e9c267c935591c49a8301")))
-              (sha256
-               (base32
-                "063bpi3gxzi6kkc3mb9h4m8lvbsvfw47z559960h912h2l3z6vhq"))))
-    (build-system emacs-build-system)
-    (propagated-inputs (list emacs-dash))
-    (home-page "https://github.com/kiennq/emacs-mini-modeline")
-    (synopsis "Display modeline in minibuffer")
-    (description
-     "Display modeline in minibuffer.  With this we save one display line and also
-don't have to see redundant information.")
-    (license #f)))
-
-(define-public emacs-isearch-mb
-  (package
-    (name "emacs-isearch-mb")
-    (version "0.5")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://elpa.gnu.org/packages/isearch-mb-"
-                                  version ".tar"))
-              (sha256
-               (base32
-                "0fah8dmh9jv05i93ccn9dvl7qmfy32vwxqdzkf1v8gr1plsyjyx7"))))
-    (build-system emacs-build-system)
-    (home-page "https://github.com/astoff/isearch-mb")
-    (synopsis "Control isearch from the minibuffer")
-    (description "")
-    (license license:gpl3+)))
+/gnu/store/bp44dky1ixj2w1hqjs8nw7a5k177vl9s-home-dotfiles--guix-packages-emacs-scm
Index: guix/.guix-packages/kiwix.scm
===================================================================
--- guix/.guix-packages/kiwix.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ guix/.guix-packages/kiwix.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,56 +1,1 @@
-(define-module (kiwix)
-  #:use-module ((guix licenses) #:prefix license:)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (guix git-download)
-  #:use-module (guix licenses)
-  #:use-module (guix utils)
-  #:use-module (guix build-system meson)
-  #:use-module (gnu packages cmake)
-  #:use-module (gnu packages web)
-  #:use-module (gnu packages gnunet)
-  #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages search)
-  #:use-module (gnu packages icu4c)
-  #:use-module (gnu packages xml)
-  #:use-module (gnu packages curl)
-  #:use-module (gnu packages compression))
-
-(define-public kiwix-tools
-  (package
-    (name "kiwix-tools")
-    (version "3.1.2")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-		    (url "https://github.com/kiwix/kiwix-tools.git")
-                    ;;(commit (string-append "v" version))
-		    (commit version)
-		    ))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-		"1jmvw9llmj8cah6kwmdamwjpakz9ly688a988kd7sy22av8jnz4b"))))
-    (build-system meson-build-system)
-    (native-inputs
-     `(("cmake" ,cmake)))
-    (inputs
-     `(
-       ("libzim" ,libzim)
-       ("libmicrohttpd" ,libmicrohttpd)
-       ("zlib" ,zlib)
-       ("pkg-config" ,pkg-config)
-       ("zstd" ,zstd "lib")
-       ("xapian" ,xapian)
-       ("icu4c" ,icu4c)
-       ("pugixml" ,pugixml)
-       ("curl" ,curl)
-       ))
-    (propagated-inputs
-     `(("kiwix-lib" ,kiwix-lib)))
-    (home-page "https://kiwix.org/")
-    (synopsis "")
-    (description
-     "")
-    (license license:gpl3+)))
+/gnu/store/38h5jn2wp5g1s4wqrx8maxz7vw2fshwx-home-dotfiles--guix-packages-kiwix-scm
Index: guix/.guix-packages/php.scm
===================================================================
--- guix/.guix-packages/php.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ guix/.guix-packages/php.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,384 +1,1 @@
-(define-module (php)
-  #:use-module (gnu packages php)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages algebra)
-  #:use-module (gnu packages aspell)
-  #:use-module (gnu packages base)
-  #:use-module (gnu packages bison)
-  #:use-module (gnu packages compression)
-  #:use-module (gnu packages crypto)
-  #:use-module (gnu packages curl)
-  #:use-module (gnu packages cyrus-sasl)
-  #:use-module (gnu packages databases)
-  #:use-module (gnu packages dbm)
-  #:use-module (gnu packages fontutils)
-  #:use-module (gnu packages gd)
-  #:use-module (gnu packages gettext)
-  #:use-module (gnu packages gnupg)
-  #:use-module (gnu packages icu4c)
-  #:use-module (gnu packages image)
-  #:use-module (gnu packages linux)
-  #:use-module (gnu packages multiprecision)
-  #:use-module (gnu packages openldap)
-  #:use-module (gnu packages pcre)
-  #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages readline)
-  #:use-module (gnu packages sqlite)
-  #:use-module (gnu packages textutils)
-  #:use-module (gnu packages tls)
-  #:use-module (gnu packages web)
-  #:use-module (gnu packages xml)
-  #:use-module (gnu packages xorg)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (guix utils)
-  #:use-module ((guix licenses) #:prefix license:))
-
-;; (define-public php-8
-;;   (package
-;;     (name "php-8")
-;;     (version "8.1.9")
-;;     (home-page "https://secure.php.net/")
-;;     (source (origin
-;;               (method url-fetch)
-;;               (uri (string-append home-page "distributions/"
-;;                                   "php-" version ".tar.xz"))
-;;               (sha256
-;;                (base32
-;;                 "1gr79i9dwm7qiqgimxms8rlvzzazh66sa4w9nr1cjk95wrrpwisk"))
-;;               (modules '((guix build utils)))
-;;               (snippet
-;;                '(with-directory-excursion "ext"
-;;                   (for-each delete-file-recursively
-;;                             ;; Some of the bundled libraries have no proper upstream.
-;;                             ;; Ideally we'd extract these out as separate packages:
-;;                             ;;"mbstring/libmbfl"
-;;                             ;;"date/lib"
-;;                             ;;"bcmath/libbcmath"
-;;                             ;;"fileinfo/libmagic" ; a patched version of libmagic
-;;                             '("gd/libgd"
-;;                               "pcre/pcre2lib"
-;;                               "xmlrpc/libxmlrpc"))))))
-;;     (build-system gnu-build-system)
-;;     (arguments
-;;      `(#:configure-flags
-;;        (let-syntax ((with (syntax-rules ()
-;;                             ((_ option input)
-;;                              (string-append option "="
-;;                                             (assoc-ref %build-inputs input))))))
-;;          (list (with "--with-bz2" "bzip2")
-;;                (with "--with-curl" "curl")
-;;                (with "--with-gdbm" "gdbm")
-;;                (with "--with-gettext" "libc")  ; libintl.h
-;;                (with "--with-gmp" "gmp")
-;;                (with "--with-ldap" "openldap")
-;;                (with "--with-ldap-sasl" "cyrus-sasl")
-;;                (with "--with-pdo-pgsql" "postgresql")
-;;                (with "--with-pdo-sqlite" "sqlite")
-;;                (with "--with-pgsql" "postgresql")
-;;                ;; PHP’s Pspell extension, while retaining its current name,
-;;                ;; now uses the Aspell library.
-;;                (with "--with-pspell" "aspell")
-;;                (with "--with-readline" "readline")
-;;                (with "--with-sodium" "libsodium")
-;;                (with "--with-sqlite3" "sqlite")
-;;                (with "--with-tidy" "tidy")
-;;                (with "--with-xsl" "libxslt")
-;;                (with "--with-zlib-dir" "zlib")
-;;                ;; We could add "--with-snmp", but it requires netsnmp that
-;;                ;; we don't have a package for. It is used to build the snmp
-;;                ;; extension of php.
-;;                "--with-external-pcre"
-;;                "--with-external-gd"
-;;                "--with-iconv"
-;;                "--with-openssl"
-;;                "--with-mysqli"          ; Required for, e.g. wordpress
-;;                "--with-pdo-mysql"
-;;                "--with-zip"
-;;                "--with-zlib"
-;;                "--enable-bcmath"        ; Required for, e.g. Zabbix frontend
-;;                "--enable-calendar"
-;;                "--enable-dba=shared"
-;;                "--enable-exif"
-;;                "--enable-flatfile"
-;;                "--enable-fpm"
-;;                "--enable-ftp"
-;;                "--enable-gd"
-;;                "--enable-inifile"
-;;                "--enable-intl"
-;;                "--enable-mbstring"
-;;                "--enable-pcntl"
-;;                "--enable-sockets"))
-;;        #:phases
-;;        (modify-phases %standard-phases
-;;          (add-after 'unpack 'do-not-record-build-flags
-;;            (lambda _
-;;              ;; Prevent configure flags from being stored and causing
-;;              ;; unnecessary runtime dependencies.
-;;              (substitute* "scripts/php-config.in"
-;;                (("@CONFIGURE_OPTIONS@") "")
-;;                (("@PHP_LDFLAGS@") ""))
-;;              ;; This file has ISO-8859-1 encoding.
-;;              (with-fluids ((%default-port-encoding "ISO-8859-1"))
-;;                (substitute* "main/build-defs.h.in"
-;;                  (("@CONFIGURE_COMMAND@") "(omitted)")))))
-;;          (add-before 'build 'patch-/bin/sh
-;;            (lambda _
-;;              (substitute* '("run-tests.php" "ext/standard/proc_open.c")
-;;                (("/bin/sh") (which "sh")))))
-;;          (add-before 'check 'prepare-tests
-;;            (lambda _
-;;              ;; Some of these files have ISO-8859-1 encoding, whereas others
-;;              ;; use ASCII, so we can't use a "catch-all" find-files here.
-;;              (with-fluids ((%default-port-encoding "ISO-8859-1"))
-;;                (substitute* '("ext/mbstring/tests/mb_send_mail02.phpt"
-;;                               "ext/mbstring/tests/mb_send_mail04.phpt"
-;;                               "ext/mbstring/tests/mb_send_mail05.phpt"
-;;                               "ext/mbstring/tests/mb_send_mail06.phpt")
-;;                  (("/bin/cat") (which "cat"))))
-;;              (substitute* '("ext/mbstring/tests/mb_send_mail01.phpt"
-;;                             "ext/mbstring/tests/mb_send_mail03.phpt"
-;;                             "ext/mbstring/tests/bug52681.phpt"
-;;                             "ext/standard/tests/general_functions/bug34794.phpt"
-;;                             "ext/standard/tests/general_functions/bug44667.phpt"
-;;                             "ext/standard/tests/general_functions/proc_open.phpt")
-;;                (("/bin/cat") (which "cat")))
-
-;;              ;; The encoding of this file is not recognized, so we simply drop it.
-;;              (delete-file "ext/mbstring/tests/mb_send_mail07.phpt")
-
-;;              (substitute* "ext/standard/tests/streams/bug60602.phpt"
-;;                (("'ls'") (string-append "'" (which "ls") "'")))
-
-;;              ,@(if (string-prefix? "arm" (or (%current-system)
-;;                                              (%current-target-system)))
-;;                    ;; Drop tests known to fail on armhf.
-;;                    '((for-each delete-file
-;;                               (list
-;;                                 "ext/calendar/tests/unixtojd_error1.phpt"
-;;                                 ;; arm can be a lot slower, so a time-related test fails
-;;                                 "ext/fileinfo/tests/cve-2014-3538-nojit.phpt"
-;;                                 "ext/pcntl/tests/pcntl_unshare_01.phpt"
-;;                                 "ext/pcre/tests/bug76514.phpt"
-;;                                 "ext/pcre/tests/preg_match_error3.phpt"
-;;                                 "ext/pcre/tests/cache_limit.phpt"
-;;                                 "ext/sockets/tests/socket_getopt.phpt"
-;;                                 "ext/sockets/tests/socket_sendrecvmsg_error.phpt"
-;;                                 "ext/standard/tests/general_functions/var_export-locale.phpt"
-;;                                 "ext/standard/tests/general_functions/var_export_basic1.phpt"
-;;                                 "ext/intl/tests/timezone_getErrorCodeMessage_basic.phpt"
-;;                                 "ext/intl/tests/timezone_getOffset_error.phpt"
-;;                                 "sapi/cli/tests/cli_process_title_unix.phpt"
-;;                                 "sapi/cli/tests/upload_2G.phpt"
-;;                                 "Zend/tests/concat_003.phpt")))
-;;                    '())
-
-;;              ,@(if (target-ppc64le?)
-;;                    ;; Drop tests known to fail on powerpc64le.
-;;                    '((for-each delete-file
-;;                                (list
-;;                                 ;; phpdbg watchpoints don't work.
-;;                                 ;; Bug tracked upstream at:
-;;                                 ;; https://bugs.php.net/bug.php?id=81408
-;;                                 "sapi/phpdbg/tests/watch_001.phpt"
-;;                                 "sapi/phpdbg/tests/watch_003.phpt"
-;;                                 "sapi/phpdbg/tests/watch_004.phpt"
-;;                                 "sapi/phpdbg/tests/watch_005.phpt"
-;;                                 "sapi/phpdbg/tests/watch_006.phpt")))
-;;                    '())
-
-;;              ;; Drop tests that are known to fail.
-;;              (for-each delete-file
-;;                        '("ext/posix/tests/posix_getgrgid.phpt"    ; Requires /etc/group.
-;;                          "ext/posix/tests/posix_getgrnam_basic.phpt" ; Requires /etc/group.
-;;                          "ext/sockets/tests/bug63000.phpt"        ; Fails to detect OS.
-;;                          "ext/sockets/tests/socket_shutdown.phpt" ; Requires DNS.
-;;                          "ext/sockets/tests/socket_send.phpt"     ; Likewise.
-;;                          "ext/sockets/tests/mcast_ipv4_recv.phpt" ; Requires multicast.
-;;                          ;; These needs /etc/services.
-;;                          "ext/standard/tests/general_functions/getservbyname_basic.phpt"
-;;                          "ext/standard/tests/general_functions/getservbyport_basic.phpt"
-;;                          "ext/standard/tests/general_functions/getservbyport_variation1.phpt"
-;;                          ;; And /etc/protocols.
-;;                          "ext/standard/tests/network/getprotobyname_basic.phpt"
-;;                          "ext/standard/tests/network/getprotobynumber_basic.phpt"
-;;                          ;; And exotic locales.
-;;                          "ext/standard/tests/strings/setlocale_basic1.phpt"
-;;                          "ext/standard/tests/strings/setlocale_basic2.phpt"
-;;                          "ext/standard/tests/strings/setlocale_basic3.phpt"
-;;                          "ext/standard/tests/strings/setlocale_variation1.phpt"
-;;                          ;; This failing test is skipped on PHP's Travis CI as it is
-;;                          ;; supposedly inaccurate.
-;;                          "ext/standard/tests/file/disk_free_space_basic.phpt"
-;;                          ;; The following test erroneously expect the link
-;;                          ;; count of a sub-directory to increase compared to
-;;                          ;; its parent.
-;;                          "ext/standard/tests/file/lstat_stat_variation8.phpt"
-;;                          ;; This tests whether microseconds ‘differ enough’ and
-;;                          ;; fails inconsistently on ‘fast’ machines.
-;;                          "ext/date/tests/bug73837.phpt"
-
-;;                          ;; XXX: These gd tests fails.  Likely because our version
-;;                          ;; is different from the (patched) bundled one.
-;;                          ;; Here, gd quits immediately after "fatal libpng error"; while the
-;;                          ;; test expects it to additionally return a "setjmp" error and warning.
-;;                          "ext/gd/tests/bug39780_extern.phpt"
-;;                          "ext/gd/tests/libgd00086_extern.phpt"
-;;                          ;; Extra newline in gd-png output.
-;;                          "ext/gd/tests/bug45799.phpt"
-;;                          ;; Test expects generic "gd warning" but gets the actual function name.
-;;                          "ext/gd/tests/createfromwbmp2_extern.phpt"
-;;                          ;; This bug should have been fixed in gd 2.2.2.
-;;                          ;; Is it a regression?
-;;                          "ext/gd/tests/bug65148.phpt"
-;;                          ;; This bug should have been fixed in the gd 2.2
-;;                          ;; series.  Perhaps a regression introduced by gd
-;;                          ;; 2.3.0?
-;;                          "ext/gd/tests/bug66590.phpt"
-;;                          ;; This bug should have been fixed in the php-5.5
-;;                          ;; series.  Perhaps a regression introduced by gd
-;;                          ;; 2.3.0?
-;;                          "ext/gd/tests/bug70102.phpt"
-;;                          ;; This bug should have been fixed in the php-5.6
-;;                          ;; series.  Perhaps a regression introduced by gd
-;;                          ;; 2.3.0?
-;;                          "ext/gd/tests/bug73869.phpt"
-;;                          ;; Some WebP related tests fail.
-;;                          "ext/gd/tests/webp_basic.phpt"
-;;                          "ext/gd/tests/imagecreatefromstring_webp.phpt"
-;;                          ;; Expected error message, but from the wrong function
-;;                          "ext/gd/tests/bug77269.phpt"
-;;                          ;; TODO: Enable these when libgd is built with xpm support.
-;;                          "ext/gd/tests/xpm2gd.phpt"
-;;                          "ext/gd/tests/xpm2jpg.phpt"
-;;                          "ext/gd/tests/xpm2png.phpt"
-;;                          ;; Whitespace difference, probably caused by a very
-;;                          ;; long store path
-;;                          "ext/gd/tests/bug77479.phpt"
-;;                          ;; Expected invalid XBM but got EOF before image was
-;;                          ;; complete.  It's a warning in both cases and test
-;;                          ;; result is the same.
-;;                          "ext/gd/tests/bug77973.phpt"
-;;                          ;; Test expects uninitialized value to be false, but
-;;                          ;; instead gets "resource(5) of type (gd)".
-;;                          "ext/gd/tests/bug79067.phpt"
-;;                          ;; The following test fails with "The image size
-;;                          ;; differs: expected 114x115, got 117x117".
-;;                          "ext/gd/tests/bug79068.phpt"
-
-;;                          ;; XXX: These iconv tests have the expected outcome,
-;;                          ;; but with different error messages.
-;;                          ;; Expects "illegal character", instead gets "unknown error (84)".
-;;                          "ext/iconv/tests/bug52211.phpt"
-;;                          "ext/iconv/tests/bug60494.phpt"
-;;                          ;; Expects "wrong charset", gets unknown error (22).
-;;                          "ext/iconv/tests/iconv_strlen_error2.phpt"
-;;                          "ext/iconv/tests/iconv_substr_error2.phpt"
-;;                          ;; Expects conversion error, gets "error condition Termsig=11".
-;;                          "ext/iconv/tests/iconv_strpos_error2.phpt"
-;;                          "ext/iconv/tests/iconv_strrpos_error2.phpt"
-;;                          ;; Expects "invalid multibyte sequence" but got
-;;                          ;; "unknown error".
-;;                          "ext/iconv/tests/bug76249.phpt"
-
-;;                          ;; XXX: These test failures appear legitimate, needs investigation.
-;;                          ;; open_basedir() restriction failure.
-;;                          "ext/curl/tests/bug61948-unix.phpt"
-;;                          ;; Expects a false boolean, gets empty array from glob().
-;;                          "ext/standard/tests/file/bug41655_1.phpt"
-;;                          "ext/standard/tests/file/glob_variation5.phpt"
-;;                          ;; The test expects an Array, but instead get the contents(?).
-;;                          "ext/gd/tests/bug43073.phpt"
-;;                          ;; imagettftext() returns wrong coordinates.
-;;                          "ext/gd/tests/bug48732-mb.phpt"
-;;                          "ext/gd/tests/bug48732.phpt"
-;;                          ;; Similarly for imageftbbox().
-;;                          "ext/gd/tests/bug48801-mb.phpt"
-;;                          "ext/gd/tests/bug48801.phpt"
-;;                          ;; Different expected output from imagecolorallocate().
-;;                          "ext/gd/tests/bug53504.phpt"
-;;                          ;; Wrong image size after scaling an image.
-;;                          "ext/gd/tests/bug73272.phpt"
-;;                          ;; Expects iconv to detect illegal characters, instead gets
-;;                          ;; "unknown error (84)" and heap corruption(!).
-;;                          "ext/iconv/tests/bug48147.phpt"
-;;                          ;; Expects illegal character ".", gets "=?utf-8?Q?."
-;;                          "ext/iconv/tests/bug51250.phpt"
-;;                          ;; iconv throws "buffer length exceeded" on some string checks.
-;;                          "ext/iconv/tests/iconv_mime_encode.phpt"
-;;                          ;; file_get_contents(): iconv stream filter
-;;                          ;; ("ISO-8859-1"=>"UTF-8") unknown error.
-;;                          "ext/standard/tests/file/bug43008.phpt"
-;;                          ;; Table data not created in sqlite(?).
-;;                          "ext/pdo_sqlite/tests/bug_42589.phpt"
-;;                          ;; Expects an Array with 3 preg_matches; gets 0.
-;;                          "ext/pcre/tests/bug79846.phpt"
-;;                          ;; Expects an empty Array; gets one with " " in it.
-;;                          "ext/pcre/tests/bug80118.phpt"
-;;                          ;; Renicing a process fails in the build environment.
-;;                          "ext/standard/tests/general_functions/proc_nice_basic.phpt"
-;;                          ;; Can fail on fast machines?
-;;                          "Zend/tests/bug74093.phpt"))
-
-;;              ;; Accomodate two extra openssl errors flanking the expected one:
-;;              ;; random number generator:RAND_{load,write}_file:Cannot open file
-;;              ;; This is due to an invalid $HOME, but changing it in the test
-;;              ;; still prints the first one & changing it globally is overkill.
-;;              (substitute* "ext/openssl/tests/bug80747.phpt"
-;;                ((".*error:%s:key size too small.*" match)
-;;                 (string-append "%s\n" match "%s\n")))
-
-;;              ;; Skip tests requiring network access.
-;;              (setenv "SKIP_ONLINE_TESTS" "1")
-;;              ;; Without this variable, 'make test' passes regardless of failures.
-;;              (setenv "REPORT_EXIT_STATUS" "1")
-;;              ;; Skip tests requiring I/O facilities that are unavailable in the
-;;              ;; build environment
-;;              (setenv "SKIP_IO_CAPTURE_TESTS" "1"))))
-;;        #:test-target "test"))
-;;     (inputs
-;;      `(("aspell" ,aspell)
-;;        ("bzip2" ,bzip2)
-;;        ("curl" ,curl)
-;;        ("cyrus-sasl" ,cyrus-sasl)
-;;        ("gd" ,gd)
-;;        ("gdbm" ,gdbm)
-;;        ("gmp" ,gmp)
-;;        ("gnutls" ,gnutls)
-;;        ("icu4c" ,icu4c)
-;;        ("libgcrypt" ,libgcrypt)
-;;        ("libpng" ,libpng)
-;;        ("libsodium" ,libsodium)
-;;        ("libxml2" ,libxml2)
-;;        ("libxslt" ,libxslt)
-;;        ("libx11" ,libx11)
-;;        ("libzip" ,libzip)
-;;        ("oniguruma" ,oniguruma)
-;;        ("openldap" ,openldap)
-;;        ("openssl" ,openssl)
-;;        ("pcre" ,pcre2)
-;;        ("postgresql" ,postgresql)
-;;        ("readline" ,readline)
-;;        ("sqlite" ,sqlite)
-;;        ("tidy" ,tidy)
-;;        ("zlib" ,zlib)))
-;;     (native-inputs
-;;      `(("pkg-config" ,pkg-config)
-;;        ("bison" ,bison)
-;;        ("gettext" ,gettext-minimal)
-;;        ("procps" ,procps)))             ; for tests
-;;     (synopsis "PHP programming language")
-;;     (description
-;;       "PHP (PHP Hypertext Processor) is a server-side (CGI) scripting
-;; language designed primarily for web development but is also used as
-;; a general-purpose programming language.  PHP code may be embedded into
-;; HTML code, or it can be used in combination with various web template
-;; systems, web content management systems and web frameworks." )
-;;     (license (list
-;;               (license:non-copyleft "file://LICENSE")       ; The PHP license.
-;;               (license:non-copyleft "file://Zend/LICENSE")  ; The Zend license.
-;;               license:lgpl2.1                               ; ext/mbstring/libmbfl
-;;               license:lgpl2.1+                              ; ext/bcmath/libbcmath
-;;               license:bsd-2                                 ; ext/fileinfo/libmagic
-;;               license:expat))))
+/gnu/store/nf678d8jcd8kjz3vgf8l3zgmp7306qhx-home-dotfiles--guix-packages-php-scm
Index: guix/.guix-packages/python.scm
===================================================================
--- guix/.guix-packages/python.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ guix/.guix-packages/python.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -1,336 +1,1 @@
-(define-module (python)
-  #:use-module ((guix licenses) #:prefix license:)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages base)
-  #:use-module (gnu packages bash)
-  #:use-module (gnu packages certs)
-  #:use-module (gnu packages check)
-  #:use-module (gnu packages compression)
-  #:use-module (gnu packages dbm)
-  #:use-module (gnu packages time)
-  #:use-module (gnu packages databases)
-  #:use-module (gnu packages hurd)
-  #:use-module (gnu packages libffi)
-  #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages python-xyz)
-  #:use-module (gnu packages python-web)
-  #:use-module (gnu packages readline)
-  #:use-module (gnu packages shells)
-  #:use-module (gnu packages sqlite)
-  #:use-module (gnu packages tcl)
-  #:use-module (gnu packages tls)
-  #:use-module (gnu packages xml)
-  #:use-module (guix gexp)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix utils)
-  #:use-module (guix build-system gnu)
-  #:use-module (guix build-system python)
-  #:use-module (guix build-system trivial)
-  #:use-module (srfi srfi-1)
-  #:use-module (srfi srfi-26)
-
-  #:export (customize-site
-            guix-pythonpath-search-path))
-
-(define-public python-types-urllib3
-  (package
-    (name "python-types-urllib3")
-    (version "1.26.11")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-urllib3" version))
-        (sha256
-          (base32 "0nri65gfihl4wcbi33wwcksmh5g3ibhjs0hxbyq1x1b82524xmi4"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for urllib3")
-    (description "Typing stubs for urllib3")
-    (license #f)))
-
-(define-public python-types-requests
-  (package
-    (name "python-types-requests")
-    (version "2.27.16")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-requests" version))
-        (sha256
-          (base32 "16zypz2csgw0c86ffmyn7mljbg1h4phxnlhl1fvfz9win8c0q0f8"))))
-    (build-system python-build-system)
-    (propagated-inputs (list python-types-urllib3))
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for requests")
-    (description "Typing stubs for requests")
-    (license #f)))
-
-(define-public python-types-pyyaml
-  (package
-    (name "python-types-pyyaml")
-    (version "6.0.5")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-PyYAML" version))
-        (sha256
-          (base32 "0blavmg6f0xapjba1sh2rnvrdjx5dps1r3h3ihxdilgk2h4hakj6"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for PyYAML")
-    (description "Typing stubs for PyYAML")
-    (license #f)))
-
-(define-public python-types-pytz
-  (package
-    (name "python-types-pytz")
-    (version "2021.3.6")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-pytz" version))
-        (sha256
-          (base32 "14yr5hg2ww8s4a0mz2bkd549fv8qgm538fnzxvqv92ld1pcpym3l"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for pytz")
-    (description "Typing stubs for pytz")
-    (license #f)))
-
-(define-public python-types-psycopg2
-  (package
-    (name "python-types-psycopg2")
-    (version "2.9.9")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-psycopg2" version))
-        (sha256
-          (base32 "0bhaybs5rl864yw2w1qapbpihp4a798z3m2yzl0dqhxkxr94v7ag"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for psycopg2")
-    (description "Typing stubs for psycopg2")
-    (license #f)))
-
-(define-public python-types-werkzeug
-  (package
-    (name "python-types-werkzeug")
-    (version "1.0.9")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-Werkzeug" version))
-        (sha256
-          (base32 "132im9g3m7hv57g3zq30qj7qfpv5jxiyw354aba360a09ih6khjw"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for Werkzeug")
-    (description "Typing stubs for Werkzeug")
-    (license #f)))
-
-(define-public python-types-markupsafe
-  (package
-    (name "python-types-markupsafe")
-    (version "1.1.10")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-MarkupSafe" version))
-        (sha256
-          (base32 "1c8iczhgiyw7f92mhbq3j9038g0rj3sqwamclnisw0ixd1raicw5"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for MarkupSafe")
-    (description "Typing stubs for MarkupSafe")
-    (license #f)))
-
-(define-public python-types-jinja2
-  (package
-    (name "python-types-jinja2")
-    (version "2.11.9")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-Jinja2" version))
-        (sha256
-          (base32 "10cc9d6hikrv28sqn84lhi8qchpyy3l8jkby1d9fsyms1aj79p6v"))))
-    (build-system python-build-system)
-    (propagated-inputs (list python-types-markupsafe))
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for Jinja2")
-    (description "Typing stubs for Jinja2")
-    (license #f)))
-
-(define-public python-types-flask
-  (package
-    (name "python-types-flask")
-    (version "1.1.6")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-Flask" version))
-        (sha256
-          (base32 "1kz9cdbirfxa79vvy777bdpfl8ygf60x1xh1ddp47ygzmfrpgixa"))))
-    (build-system python-build-system)
-    (propagated-inputs
-      (list python-types-click python-types-jinja2 python-types-werkzeug))
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for Flask")
-    (description "Typing stubs for Flask")
-    (license #f)))
-
-(define-public python-types-click
-  (package
-    (name "python-types-click")
-    (version "7.1.8")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "types-click" version))
-        (sha256
-          (base32 "14p0yjzxpw0jfkyhx16bl2kvla0ai9q51jhicd8xq0b4prl4jq5n"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/python/typeshed")
-    (synopsis "Typing stubs for click")
-    (description "Typing stubs for click")
-    (license #f)))
-
-(define-public python-systemd-python
-  (package
-    (name "python-systemd-python")
-    (version "234")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "systemd-python" version))
-        (sha256
-          (base32 "1rw3vfakils7h0i93cyi5hvvdc5mgq5cp4n2mmdf9npaf2zl83px"))))
-    (build-system python-build-system)
-    (home-page "https://github.com/systemd/python-systemd")
-    (synopsis "Python interface for libsystemd")
-    (description "Python interface for libsystemd")
-    (license #f)))
-
-(define-public python-gunicorn
-  (package
-    (name "python-gunicorn")
-    (version "20.1.0")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "gunicorn" version))
-        (sha256
-          (base32 "1s7670qw36x90bgmazmgib170i5gnpyb2ypxzlla7y0mpasniag0"))))
-    (build-system python-build-system)
-    (arguments
-     `(#:tests? #f))
-    (propagated-inputs (list python-setuptools))
-    (home-page "https://gunicorn.org")
-    (synopsis "WSGI HTTP Server for UNIX")
-    (description "WSGI HTTP Server for UNIX")
-    (license license:expat)))
-
-(define-public python-aiohttp-utils
-  (package
-    (name "python-aiohttp-utils")
-    (version "3.1.1")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "aiohttp_utils" version))
-        (sha256
-          (base32 "056w0aw3nnnhwzrn8rrsn7hbmxb5yd7iz8h4m4x1kzd32pfc9wh8"))))
-    (build-system python-build-system)
-    (arguments
-     `(#:tests? #f))
-    (propagated-inputs (list python-aiohttp python-gunicorn python-mimeparse))
-    (home-page "https://github.com/sloria/aiohttp_utils")
-    (synopsis "Handy utilities for aiohttp.web applications.")
-    (description "Handy utilities for aiohttp.web applications.")
-    (license license:expat)))
-
-(define-public python-mirakuru
-  (package
-    (name "python-mirakuru")
-    (version "2.4.2")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "mirakuru" version))
-        (sha256
-          (base32 "09l2a2c2mh422j43q8n1l0vg14la34ynp32r1v5rdjjb3gcd917c"))))
-    (build-system python-build-system)
-    (propagated-inputs (list python-psutil))
-    (native-inputs (list python-daemon python-pytest python-pytest-cov))
-    (home-page "https://github.com/ClearcodeHQ/mirakuru")
-    (synopsis "Process executor (not only) for tests.")
-    (description "Process executor (not only) for tests.")
-    (license #f)))
-
-(define-public python-pytest-postgresql
-  (package
-    (name "python-pytest-postgresql")
-    (version "4.1.1")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "pytest-postgresql" version))
-        (sha256
-          (base32 "0p99j6wm36s0xz3zxi8qyir0ajnxpzcjb00f3z5xwh8603s6lk8l"))))
-    (build-system python-build-system)
-    (propagated-inputs
-      (list python-mirakuru python-port-for python-pytest python-setuptools))
-    (native-inputs (list python-pytest-cov python-pytest-xdist))
-    (home-page "https://github.com/ClearcodeHQ/pytest-postgresql")
-    (synopsis "Postgresql fixtures and fixture factories for Pytest.")
-    (description "Postgresql fixtures and fixture factories for Pytest.")
-    (license #f)))
-
-(define-public python-swh.core
-  (package
-    (name "python-swh.core")
-    (version "2.4.0")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (pypi-uri "swh.core" version))
-        (sha256
-          (base32 "17dyqq1z774xnbjak4ncdrbp6acnbrmks0636fw1rmqq728rzz68"))))
-    (build-system python-build-system)
-    (propagated-inputs
-      (list python-click
-            python-deprecated
-            python-magic
-            python-pyyaml
-            python-sentry-sdk))
-    (native-inputs
-      (list python-aiohttp
-            python-aiohttp-utils
-            python-blinker
-            python-flask
-            python-hypothesis
-            python-iso8601
-            python-msgpack
-            python-psycopg2
-            python-pytest
-            python-pytest-mock
-            python-pytest-postgresql
-            python-pytz
-            python-requests
-            python-requests-mock
-            ;;python-systemd-python
-            python-types-click
-            python-types-flask
-            python-types-psycopg2
-            python-types-pytz
-            python-types-pyyaml
-            python-types-requests
-            python-typing-extensions))
-    (home-page "https://forge.softwareheritage.org/diffusion/DCORE/")
-    (synopsis "Software Heritage core utilities")
-    (description "Software Heritage core utilities")
-    (license #f)))
-
+/gnu/store/jafbqipm2a88dppzq6y9r2fhmpznb293-home-dotfiles--guix-packages-python-scm
Index: ix/.zprofile
===================================================================
--- guix/.zprofile	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,2 +1,0 @@
-# Honor system-wide environment variables
-source /etc/profile
Index: ix/.zshenv
===================================================================
--- guix/.zshenv	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,1 +1,0 @@
-if [ -e /home/w96k/.nix-profile/etc/profile.d/nix.sh ]; then . /home/w96k/.nix-profile/etc/profile.d/nix.sh; fi # added by Nix installer
Index: ix/.zshrc
===================================================================
--- guix/.zshrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,20 +1,0 @@
-# Enable colors and change prompt:
-autoload -U colors && colors
-PS1="%B%{$fg[magenta]%}%n %{$fg[blue]%}%~ %{$fg[grey]%}$%{$reset_color%}%b "
-
-#PS1="%B%{$fg[magenta]%}%n"
-#PS1="%B%{$fg[red]%}"
-#PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b "
-
-# Basic auto/tab complete:
-autoload -U compinit
-zstyle ':completion:*' menu select
-zmodload zsh/complist
-compinit
-_comp_options+=(globdots)		# Include hidden files.
-
-#source /run/current-system/profile/etc/profile.d/nix.sh
-
-#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
-export SDKMAN_DIR="/home/w96k/.sdkman"
-[[ -s "/home/w96k/.sdkman/bin/sdkman-init.sh" ]] && source "/home/w96k/.sdkman/bin/sdkman-init.sh"
Index: guix/config-desktop.scm
===================================================================
--- guix/config-desktop.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ guix/config-desktop.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,154 @@
+(use-modules (gnu)
+	     (guix transformations)
+	     (gnu home)
+             (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)
+(use-package-modules gnome xdisorg vnc databases)
+
+(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)
+ (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" "docker")))
+	       (user-account
+                (name "wkz")
+                (comment "wkz")
+                (group "users")
+                (home-directory "/home/wkz")
+                (supplementary-groups '("wheel" "netdev" "audio" "video" "docker")))
+               %base-user-accounts))
+
+ ;; (packages %base-packages)
+ (packages
+  (append
+   (map
+    specification->package
+    '(
+      "ratpoison"
+      "xterm"
+      ))
+   %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) ("wkz" ,wkz-home)))
+	   (service block-facebook-hosts-service-type)
+
+	   (service tor-service-type)
+	   (service openssh-service-type)
+	   (service containerd-service-type)
+	   (service docker-service-type)
+	   ;; (service hurd-vm-service-type
+           ;;   (hurd-vm-configuration
+           ;;    (disk-size (* 5000 (expt 2 20))) ;5G
+           ;;    (memory-size 1024)))
+	   
+	   (service nix-service-type (nix-configuration
+				      (extra-options '("--extra-experimental-features nix-command"))))
+
+	   (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 connman-service-type)
+
+	   ;; (service screen-locker-service-type
+           ;;  (screen-locker-configuration
+           ;;   (name "xlock")
+           ;;   (program (file-append xlockmore "/bin/xlock"))))
+
+	   ;; (service slim-service-type
+	   ;;    (slim-configuration
+	   ;;     (default-user "w96k")
+	   ;;    (xorg-configuration
+	   ;;      (xorg-configuration	   
+	   ;;       (keyboard-layout keyboard-layout)))))
+	   )
+
+	  (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 usb-modeswitch-service-type)
+			   (delete geoclue-service-type)
+			   
+			   
+			   (guix-service-type config => (guix-configuration
+							 (inherit config)
+							 (extra-options '("--max-jobs=10"))
+							 (substitute-urls
+							  (append (list "https://substitutes.nonguix.org")
+								  %default-substitute-urls))
+							 (authorized-keys
+							  (append (list (plain-file "non-guix.pub"
+										    "
+(public-key 
+ (ecc 
+  (curve Ed25519)
+  (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)
+  )
+ )
+"))
+								  %default-authorized-guix-keys))))
+			   
+			   (delete gdm-service-type))))
+
+ (bootloader (bootloader-configuration
+              (bootloader grub-efi-bootloader)
+              (targets (list "/boot/efi"))
+              (keyboard-layout keyboard-layout)))
+ (mapped-devices (list (mapped-device
+                        (source (uuid
+                                 "6cfe9eed-8cdd-43da-9b9f-cec6f8ec538b"))
+                        (target "cryptroot")
+                        (type luks-device-mapping))))
+
+ (file-systems (cons* (file-system
+                       (mount-point "/boot/efi")
+                       (device (uuid "17C5-3E35"
+                                     'fat32))
+                       (type "vfat"))
+                      (file-system
+                       (mount-point "/")
+                       (device "/dev/mapper/cryptroot")
+                       (type "ext4")
+		       (options "discard")
+		       (skip-check-if-clean? #f)
+		       (repair #t)
+                       (dependencies mapped-devices)) %base-file-systems)))
Index: guix/config-desktop.scm~
===================================================================
--- guix/config-desktop.scm~	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ guix/config-desktop.scm~	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,154 @@
+(use-modules (gnu)
+	     (guix transformations)
+	     (gnu home)
+             (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)
+(use-package-modules gnome xdisorg vnc databases)
+
+(load "/home/w96k/projects/dotfiles/guix/home/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)
+ (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" "docker")))
+	       (user-account
+                (name "wkz")
+                (comment "wkz")
+                (group "users")
+                (home-directory "/home/wkz")
+                (supplementary-groups '("wheel" "netdev" "audio" "video" "docker")))
+               %base-user-accounts))
+
+ ;; (packages %base-packages)
+ (packages
+  (append
+   (map
+    specification->package
+    '(
+      "ratpoison"
+      "xterm"
+      ))
+   %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) ("wkz" ,wkz-home)))
+	   (service block-facebook-hosts-service-type)
+
+	   (service tor-service-type)
+	   (service openssh-service-type)
+	   (service containerd-service-type)
+	   (service docker-service-type)
+	   ;; (service hurd-vm-service-type
+           ;;   (hurd-vm-configuration
+           ;;    (disk-size (* 5000 (expt 2 20))) ;5G
+           ;;    (memory-size 1024)))
+	   
+	   (service nix-service-type (nix-configuration
+				      (extra-options '("--extra-experimental-features nix-command"))))
+
+	   (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 connman-service-type)
+
+	   ;; (service screen-locker-service-type
+           ;;  (screen-locker-configuration
+           ;;   (name "xlock")
+           ;;   (program (file-append xlockmore "/bin/xlock"))))
+
+	   ;; (service slim-service-type
+	   ;;    (slim-configuration
+	   ;;     (default-user "w96k")
+	   ;;    (xorg-configuration
+	   ;;      (xorg-configuration	   
+	   ;;       (keyboard-layout keyboard-layout)))))
+	   )
+
+	  (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 usb-modeswitch-service-type)
+			   (delete geoclue-service-type)
+			   
+			   
+			   (guix-service-type config => (guix-configuration
+							 (inherit config)
+							 (extra-options '("--max-jobs=10"))
+							 (substitute-urls
+							  (append (list "https://substitutes.nonguix.org")
+								  %default-substitute-urls))
+							 (authorized-keys
+							  (append (list (plain-file "non-guix.pub"
+										    "
+(public-key 
+ (ecc 
+  (curve Ed25519)
+  (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)
+  )
+ )
+"))
+								  %default-authorized-guix-keys))))
+			   
+			   (delete gdm-service-type))))
+
+ (bootloader (bootloader-configuration
+              (bootloader grub-efi-bootloader)
+              (targets (list "/boot/efi"))
+              (keyboard-layout keyboard-layout)))
+ (mapped-devices (list (mapped-device
+                        (source (uuid
+                                 "6cfe9eed-8cdd-43da-9b9f-cec6f8ec538b"))
+                        (target "cryptroot")
+                        (type luks-device-mapping))))
+
+ (file-systems (cons* (file-system
+                       (mount-point "/boot/efi")
+                       (device (uuid "17C5-3E35"
+                                     'fat32))
+                       (type "vfat"))
+                      (file-system
+                       (mount-point "/")
+                       (device "/dev/mapper/cryptroot")
+                       (type "ext4")
+		       (options "discard")
+		       (skip-check-if-clean? #f)
+		       (repair #t)
+                       (dependencies mapped-devices)) %base-file-systems)))
Index: guix/config-thinkpad.scm
===================================================================
--- guix/config-thinkpad.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ guix/config-thinkpad.scm	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,336 @@
+;; -*- geiser-scheme-implementation: guile -*-
+
+(use-modules (gnu)
+	     (gnu packages)
+	     (srfi srfi-1))
+
+(use-service-modules
+ desktop
+ databases
+ networking
+ ssh
+ xorg
+ docker
+ virtualization
+ dbus
+ linux
+ pm
+ vpn
+ nix)
+
+(use-package-modules
+ wm
+ lisp
+ bash
+ linux
+ python
+ gnome
+ gawk
+ xorg
+ xdisorg)
+
+;; (define-public linux-libre-custom
+;;   (package
+;;     (inherit linux-libre)
+;;     (native-inputs
+;;      `(("kconfig" ,(local-file "fb.config"))
+;;       ,@(alist-delete "kconfig"
+;;                       (package-native-inputs linux-libre))))))
+
+(define %cpupower-service
+  (simple-service
+   'cpupower activation-service-type
+   #~(zero? (system* #$(file-append cpupower "/bin/cpupower")
+		     "frequency-set" "--governor" "schedutil"))))
+
+(define %x86-energy-perf-policy-service
+  (simple-service
+   'x86-energy-perf-policy-service activation-service-type
+   #~(zero? (system* #$(file-append x86-energy-perf-policy "/bin/x86_energy_perf_policy")
+		     "--turbo-enable" "0"
+		     "--hwp-desired" "16"))))
+
+(define %thinkfan-service
+  (simple-service
+   'thinkfan activation-service-type
+   #~(zero? (system* #$(file-append thinkfan "/sbin/thinkfan")))))
+
+
+(define i915-config
+  (plain-file "i915.conf"
+              "options i915 enable_fbc=1 enable_dc=0 modeset=1 enable_psr=0"))
+
+(define drm-kms-config
+  (plain-file "drm_kms.conf"
+              "options drm_kms_helper poll=N"))
+
+(define thinkpad-acpi-config
+  (plain-file "thinkpad_acpi.conf"
+              "options thinkpad_acpi fan_control=1"))
+
+;; tp_thermal /proc/acpi/ibm/thermal
+
+(define thinkfan-config
+  (plain-file "thinkfan.conf"
+   "\
+hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp3_input
+hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp5_input
+hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp1_input
+hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp4_input
+hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp6_input
+hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp7_input
+hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp8_input
+hwmon /sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/hwmon/hwmon1/temp1_input
+hwmon /sys/devices/pci0000:00/0000:00:1f.2/ata2/host1/target1:0:0/1:0:0:0/hwmon/hwmon2/temp1_input
+# hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon6/temp3_input
+# hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon6/temp2_input
+hwmon /sys/devices/virtual/thermal/thermal_zone0/hwmon0/temp1_input
+hwmon /sys/devices/virtual/thermal/thermal_zone0/hwmon0/temp2_input
+tp_fan /proc/acpi/ibm/fan
+
+(0, 0, 35)
+(1, 30, 40)
+(2, 35, 50)
+(3, 45, 60)
+(4, 55, 65)
+(5, 60, 70)
+(6, 65, 75)
+(7, 70, 85)
+(\"level full-speed\", 78, 120)"))
+
+(define fancontrol-config
+  (plain-file "fancontrol"
+	      "
+INTERVAL=10
+DEVPATH=hwmon0=devices/virtual/thermal/thermal_zone0 hwmon1=devices/platform/thinkpad_hwmon
+DEVNAME=hwmon0=acpitz hwmon5=thinkpad
+FCTEMPS=hwmon1/pwm1=hwmon0/temp1_input
+FCFANS= hwmon1/pwm1=hwmon5/fan1_input
+MINTEMP=hwmon1/pwm1=20
+MAXTEMP=hwmon1/pwm1=50
+MINSTART=hwmon1/pwm1=150
+MINSTOP=hwmon1/pwm1=50
+MINPWM=hwmon1/pwm1=10"))
+
+(operating-system
+ (locale "ru_RU.utf8")
+ (timezone "Europe/Tbilisi")
+ (keyboard-layout
+  (keyboard-layout
+   "us,ru"
+   #:options
+   '("grp:shifts_toggle"
+     "caps:ctrl_modifier")))
+ ;; (kernel linux-libre-5.19)
+ ;; (kernel-loadable-modules '(acpi-call-linux-module))
+ (kernel-arguments
+   '("consoleblank=0"
+     ;; "processor.max_cstate=3"  ; Disable power savings
+     ;; "intel_idle.max_cstate=0" ; (cstate 3-4 provides
+     ;; 		     			; high freq cpu noice)
+     "vblank_mode=0"
+     ;;"vm.swappiness=5"
+     "thinkpad_acpi.fan_control=1"
+     "acpi_sleep=s3_bios"
+     "acpi_osi=Linux"
+     "i915.modeset=1"
+     ;; "i915.enable_dc=0"
+     ;; "i915.enable_psr=0"
+     "rootfstype=ext4"
+     "KVM"
+     "loglevel=7"
+     ;;"logo"
+     "ahci.mobile_lpm_policy=1"
+     "intremap=off"     ; Fix for failed to map dmar2
+     "modprobe.blacklist=pcspkr,usbmouse,usbkbd,glx"))
+ (host-name "w96k-x200t")
+ (users
+  (cons*
+   (user-account
+    (name "w96k")
+    (comment "Mikhail Kirillov")
+    (group "users")
+    (home-directory "/home/w96k")
+    (supplementary-groups
+     '("wheel" "netdev" "audio" "video" "kvm" "docker")))
+   %base-user-accounts))
+ (packages
+  (append
+   (map
+    specification->package
+    '("xterm"
+      "xinit"
+      "xorg-server"
+      "font-gnu-unifont"
+      "font-gnu-freefont"
+      "mesa"
+      "mesa-utils"
+      "ratpoison"
+      "wmname"
+      "windowmaker" 
+      "nss-certs"
+      "docker-compose"
+      "thinkfan"
+      "cpupower"
+      "lm-sensors"
+      "x86-energy-perf-policy"
+      "git"
+      "stow"
+      "lm-sensors"
+      "xset"
+      "cpuid"
+      ;; Video Codecs stuff
+      "gstreamer"
+      "gst-plugins-base"
+      "gst-plugins-good"
+      "gst-plugins-bad"
+      "gst-plugins-ugly"
+      "gst-libav"
+      ;; "intel-vaapi-driver-g45-h264"
+      "libva-utils"
+      "igt-gpu-tools"
+      ;; Xorg      
+      "xev"
+      "xset"
+      "xrdb"
+      "xhost"
+      "xmodmap"
+      "setxkbmap"
+      "xrandr"
+      "arandr"
+      "xss-lock"
+      "libinput"
+      "xinput"
+      "xf86-input-libinput"
+      ;; "xf86-video-fbdev"
+      "xf86-video-intel"
+      "qemu"))
+   %base-packages))
+ 
+ (services
+  (cons*
+   (service docker-service-type)
+   (service thermald-service-type)
+   (service virtlog-service-type)
+   (service libvirt-service-type
+            (libvirt-configuration (unix-sock-group "libvirt")))
+   (service openssh-service-type)
+   (service tor-service-type)
+
+   ;;Wacom tablet support
+   (service inputattach-service-type
+	    (inputattach-configuration
+	     (device "/dev/ttyS4")
+	     (device-type "wacom")))
+
+   (service kernel-module-loader-service-type
+            '("thinkpad_acpi"
+	      "msr"
+	      "coretemp"
+	      "acpi_cpufreq"
+	      "overlay"))
+
+   (simple-service 'thinkpad-acpi-config etc-service-type
+		   (list `("modprobe.d/thinkpad_acpi.conf"
+			   ,thinkpad-acpi-config)))
+
+   ;; (simple-service 'fancontrol-config etc-service-type
+   ;; 		   (list `("fancontrol"
+   ;; 			   ,fancontrol-config)))
+
+   ;; (simple-service 'thinkfan-config etc-service-type
+   ;; 		   (list `("thinkfan.conf"
+   ;; 			   ,thinkfan-config)))
+
+   (simple-service 'i915-config etc-service-type
+		   (list `("modprobe.d/i915.conf"
+			   ,i915-config)))
+
+   (simple-service 'drm-kms-config etc-service-type
+		   (list `("modprobe.d/drm_kms.conf"
+			   ,drm-kms-config)))
+
+   ;; (service openvpn-client-service-type
+   ;; 	    (openvpn-client-configuration
+   ;; 	     (persist-tun? #t)
+   ;; 	     (remote
+   ;; 	      (list
+   ;; 	       (openvpn-remote-configuration
+   ;; 		(name "nyc.vpn.riseup.net")
+   ;; 		(port 1196))))))
+   
+   (service special-files-service-type
+	    `(("/bin/bash"   ,(file-append bash "/bin/bash"))
+	      ("/bin/python" ,(file-append python "/bin/python3"))
+	      ("/bin/python3" ,(file-append python "/bin/python3"))
+	      ("/bin/awk" ,(file-append gawk "/usr/bin/awk"))
+	      ("/usr/bin/awk" ,(file-append gawk "/usr/bin/awk"))
+	      ("/lib64/ld-linux-x86-64.so.2"
+               ,(file-append (canonical-package glibc)
+                             "/lib/ld-linux-x86-64.so.2"))))
+
+   (service nix-service-type
+	    (nix-configuration
+	     (extra-config '("trusted-users = root w96k"))))
+
+   (service postgresql-service-type)
+
+   %cpupower-service
+
+   ;; Doesn't start on boot sadly :(
+   %thinkfan-service
+
+   %x86-energy-perf-policy-service
+
+   (screen-locker-service xlockmore "xlock")
+
+
+   ;; (service xorg-server-service-type
+   ;; 	     (xorg-configuration
+   ;; 	      (keyboard-layout keyboard-layout)))
+
+   ;; (service hurd-vm-service-type
+   ;;          (hurd-vm-configuration
+   ;;           (disk-size (* 8 (expt 2 30))) ;12GiB
+   ;;           (memory-size 1024)))
+
+   (service slim-service-type
+	    (slim-configuration
+	     (xorg-configuration
+	      (xorg-configuration
+	       (drivers '("modesetting"))
+	       (keyboard-layout keyboard-layout)))))
+   
+   
+   (modify-services %desktop-services
+		    (delete gdm-service-type))))
+
+ (bootloader
+  (bootloader-configuration
+   (bootloader grub-bootloader)
+   (target "/dev/sda")
+   (keyboard-layout keyboard-layout)))
+ (swap-devices
+  (list
+   (swap-space
+    (target "/dev/sda1"))))
+ (file-systems
+  (cons*
+   (file-system
+    (mount-point "/")
+    (device
+     (uuid "c184f446-df67-4103-b28e-465ac8776f10"
+	   'ext4))
+    (type "ext4")
+    (options "discard"))
+
+   ;; Thinkpad doc HDD
+   
+   ;;(file-system
+   ;;(mount-point "/media/hdd/")
+   ;;(device
+   ;;  (uuid "71cb0818-baf3-4f7f-8bc2-7e2b0cca3488"
+   ;;	 'ext4))
+   ;; (type "ext4"))
+   
+   %base-file-systems)))
Index: ix/config.scm
===================================================================
--- guix/config.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,336 +1,0 @@
-;; -*- geiser-scheme-implementation: guile -*-
-
-(use-modules (gnu)
-	     (gnu packages)
-	     (srfi srfi-1))
-
-(use-service-modules
- desktop
- databases
- networking
- ssh
- xorg
- docker
- virtualization
- dbus
- linux
- pm
- vpn
- nix)
-
-(use-package-modules
- wm
- lisp
- bash
- linux
- python
- gnome
- gawk
- xorg
- xdisorg)
-
-;; (define-public linux-libre-custom
-;;   (package
-;;     (inherit linux-libre)
-;;     (native-inputs
-;;      `(("kconfig" ,(local-file "fb.config"))
-;;       ,@(alist-delete "kconfig"
-;;                       (package-native-inputs linux-libre))))))
-
-(define %cpupower-service
-  (simple-service
-   'cpupower activation-service-type
-   #~(zero? (system* #$(file-append cpupower "/bin/cpupower")
-		     "frequency-set" "--governor" "schedutil"))))
-
-(define %x86-energy-perf-policy-service
-  (simple-service
-   'x86-energy-perf-policy-service activation-service-type
-   #~(zero? (system* #$(file-append x86-energy-perf-policy "/bin/x86_energy_perf_policy")
-		     "--turbo-enable" "0"
-		     "--hwp-desired" "16"))))
-
-(define %thinkfan-service
-  (simple-service
-   'thinkfan activation-service-type
-   #~(zero? (system* #$(file-append thinkfan "/sbin/thinkfan")))))
-
-
-(define i915-config
-  (plain-file "i915.conf"
-              "options i915 enable_fbc=1 enable_dc=0 modeset=1 enable_psr=0"))
-
-(define drm-kms-config
-  (plain-file "drm_kms.conf"
-              "options drm_kms_helper poll=N"))
-
-(define thinkpad-acpi-config
-  (plain-file "thinkpad_acpi.conf"
-              "options thinkpad_acpi fan_control=1"))
-
-;; tp_thermal /proc/acpi/ibm/thermal
-
-(define thinkfan-config
-  (plain-file "thinkfan.conf"
-   "\
-hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp3_input
-hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp5_input
-hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp1_input
-hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp4_input
-hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp6_input
-hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp7_input
-hwmon /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon4/temp8_input
-hwmon /sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/hwmon/hwmon1/temp1_input
-hwmon /sys/devices/pci0000:00/0000:00:1f.2/ata2/host1/target1:0:0/1:0:0:0/hwmon/hwmon2/temp1_input
-# hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon6/temp3_input
-# hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon6/temp2_input
-hwmon /sys/devices/virtual/thermal/thermal_zone0/hwmon0/temp1_input
-hwmon /sys/devices/virtual/thermal/thermal_zone0/hwmon0/temp2_input
-tp_fan /proc/acpi/ibm/fan
-
-(0, 0, 35)
-(1, 30, 40)
-(2, 35, 50)
-(3, 45, 60)
-(4, 55, 65)
-(5, 60, 70)
-(6, 65, 75)
-(7, 70, 85)
-(\"level full-speed\", 78, 120)"))
-
-(define fancontrol-config
-  (plain-file "fancontrol"
-	      "
-INTERVAL=10
-DEVPATH=hwmon0=devices/virtual/thermal/thermal_zone0 hwmon1=devices/platform/thinkpad_hwmon
-DEVNAME=hwmon0=acpitz hwmon5=thinkpad
-FCTEMPS=hwmon1/pwm1=hwmon0/temp1_input
-FCFANS= hwmon1/pwm1=hwmon5/fan1_input
-MINTEMP=hwmon1/pwm1=20
-MAXTEMP=hwmon1/pwm1=50
-MINSTART=hwmon1/pwm1=150
-MINSTOP=hwmon1/pwm1=50
-MINPWM=hwmon1/pwm1=10"))
-
-(operating-system
- (locale "ru_RU.utf8")
- (timezone "Europe/Tbilisi")
- (keyboard-layout
-  (keyboard-layout
-   "us,ru"
-   #:options
-   '("grp:shifts_toggle"
-     "caps:ctrl_modifier")))
- ;; (kernel linux-libre-5.19)
- ;; (kernel-loadable-modules '(acpi-call-linux-module))
- (kernel-arguments
-   '("consoleblank=0"
-     ;; "processor.max_cstate=3"  ; Disable power savings
-     ;; "intel_idle.max_cstate=0" ; (cstate 3-4 provides
-     ;; 		     			; high freq cpu noice)
-     "vblank_mode=0"
-     ;;"vm.swappiness=5"
-     "thinkpad_acpi.fan_control=1"
-     "acpi_sleep=s3_bios"
-     "acpi_osi=Linux"
-     "i915.modeset=1"
-     ;; "i915.enable_dc=0"
-     ;; "i915.enable_psr=0"
-     "rootfstype=ext4"
-     "KVM"
-     "loglevel=7"
-     ;;"logo"
-     "ahci.mobile_lpm_policy=1"
-     "intremap=off"     ; Fix for failed to map dmar2
-     "modprobe.blacklist=pcspkr,usbmouse,usbkbd,glx"))
- (host-name "w96k-x200t")
- (users
-  (cons*
-   (user-account
-    (name "w96k")
-    (comment "Mikhail Kirillov")
-    (group "users")
-    (home-directory "/home/w96k")
-    (supplementary-groups
-     '("wheel" "netdev" "audio" "video" "kvm" "docker")))
-   %base-user-accounts))
- (packages
-  (append
-   (map
-    specification->package
-    '("xterm"
-      "xinit"
-      "xorg-server"
-      "font-gnu-unifont"
-      "font-gnu-freefont"
-      "mesa"
-      "mesa-utils"
-      "ratpoison"
-      "wmname"
-      "windowmaker" 
-      "nss-certs"
-      "docker-compose"
-      "thinkfan"
-      "cpupower"
-      "lm-sensors"
-      "x86-energy-perf-policy"
-      "git"
-      "stow"
-      "lm-sensors"
-      "xset"
-      "cpuid"
-      ;; Video Codecs stuff
-      "gstreamer"
-      "gst-plugins-base"
-      "gst-plugins-good"
-      "gst-plugins-bad"
-      "gst-plugins-ugly"
-      "gst-libav"
-      ;; "intel-vaapi-driver-g45-h264"
-      "libva-utils"
-      "igt-gpu-tools"
-      ;; Xorg      
-      "xev"
-      "xset"
-      "xrdb"
-      "xhost"
-      "xmodmap"
-      "setxkbmap"
-      "xrandr"
-      "arandr"
-      "xss-lock"
-      "libinput"
-      "xinput"
-      "xf86-input-libinput"
-      ;; "xf86-video-fbdev"
-      "xf86-video-intel"
-      "qemu"))
-   %base-packages))
- 
- (services
-  (cons*
-   (service docker-service-type)
-   (service thermald-service-type)
-   (service virtlog-service-type)
-   (service libvirt-service-type
-            (libvirt-configuration (unix-sock-group "libvirt")))
-   (service openssh-service-type)
-   (service tor-service-type)
-
-   ;;Wacom tablet support
-   (service inputattach-service-type
-	    (inputattach-configuration
-	     (device "/dev/ttyS4")
-	     (device-type "wacom")))
-
-   (service kernel-module-loader-service-type
-            '("thinkpad_acpi"
-	      "msr"
-	      "coretemp"
-	      "acpi_cpufreq"
-	      "overlay"))
-
-   (simple-service 'thinkpad-acpi-config etc-service-type
-		   (list `("modprobe.d/thinkpad_acpi.conf"
-			   ,thinkpad-acpi-config)))
-
-   ;; (simple-service 'fancontrol-config etc-service-type
-   ;; 		   (list `("fancontrol"
-   ;; 			   ,fancontrol-config)))
-
-   ;; (simple-service 'thinkfan-config etc-service-type
-   ;; 		   (list `("thinkfan.conf"
-   ;; 			   ,thinkfan-config)))
-
-   (simple-service 'i915-config etc-service-type
-		   (list `("modprobe.d/i915.conf"
-			   ,i915-config)))
-
-   (simple-service 'drm-kms-config etc-service-type
-		   (list `("modprobe.d/drm_kms.conf"
-			   ,drm-kms-config)))
-
-   ;; (service openvpn-client-service-type
-   ;; 	    (openvpn-client-configuration
-   ;; 	     (persist-tun? #t)
-   ;; 	     (remote
-   ;; 	      (list
-   ;; 	       (openvpn-remote-configuration
-   ;; 		(name "nyc.vpn.riseup.net")
-   ;; 		(port 1196))))))
-   
-   (service special-files-service-type
-	    `(("/bin/bash"   ,(file-append bash "/bin/bash"))
-	      ("/bin/python" ,(file-append python "/bin/python3"))
-	      ("/bin/python3" ,(file-append python "/bin/python3"))
-	      ("/bin/awk" ,(file-append gawk "/usr/bin/awk"))
-	      ("/usr/bin/awk" ,(file-append gawk "/usr/bin/awk"))
-	      ("/lib64/ld-linux-x86-64.so.2"
-               ,(file-append (canonical-package glibc)
-                             "/lib/ld-linux-x86-64.so.2"))))
-
-   (service nix-service-type
-	    (nix-configuration
-	     (extra-config '("trusted-users = root w96k"))))
-
-   (service postgresql-service-type)
-
-   %cpupower-service
-
-   ;; Doesn't start on boot sadly :(
-   %thinkfan-service
-
-   %x86-energy-perf-policy-service
-
-   (screen-locker-service xlockmore "xlock")
-
-
-   ;; (service xorg-server-service-type
-   ;; 	     (xorg-configuration
-   ;; 	      (keyboard-layout keyboard-layout)))
-
-   ;; (service hurd-vm-service-type
-   ;;          (hurd-vm-configuration
-   ;;           (disk-size (* 8 (expt 2 30))) ;12GiB
-   ;;           (memory-size 1024)))
-
-   (service slim-service-type
-	    (slim-configuration
-	     (xorg-configuration
-	      (xorg-configuration
-	       (drivers '("modesetting"))
-	       (keyboard-layout keyboard-layout)))))
-   
-   
-   (modify-services %desktop-services
-		    (delete gdm-service-type))))
-
- (bootloader
-  (bootloader-configuration
-   (bootloader grub-bootloader)
-   (target "/dev/sda")
-   (keyboard-layout keyboard-layout)))
- (swap-devices
-  (list
-   (swap-space
-    (target "/dev/sda1"))))
- (file-systems
-  (cons*
-   (file-system
-    (mount-point "/")
-    (device
-     (uuid "c184f446-df67-4103-b28e-465ac8776f10"
-	   'ext4))
-    (type "ext4")
-    (options "discard"))
-
-   ;; Thinkpad doc HDD
-   
-   ;;(file-system
-   ;;(mount-point "/media/hdd/")
-   ;;(device
-   ;;  (uuid "71cb0818-baf3-4f7f-8bc2-7e2b0cca3488"
-   ;;	 'ext4))
-   ;; (type "ext4"))
-   
-   %base-file-systems)))
Index: ix/desktop.scm
===================================================================
--- guix/desktop.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,109 +1,0 @@
-;; This is an operating system configuration generated
-;; by the graphical installer.
-;;
-;; Once installation is complete, you can learn and modify
-;; this file to tweak the system configuration, and pass it
-;; to the 'guix system reconfigure' command to effect your
-;; changes.
-
-
-;; Indicate which modules to import to access the variables
-;; used in this configuration.
-(use-modules (gnu)
-	     (nongnu packages linux)
-	     (nongnu system linux-initrd))
-(use-service-modules cups desktop networking ssh xorg)
-
-(operating-system
-  (locale "en_US.utf8")
-  (timezone "Asia/Tbilisi")
-
-  (kernel linux)
-  (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")))
-                %base-user-accounts))
-
-  ;; Packages installed system-wide.  Users can also install packages
-  ;; under their own account: use 'guix search KEYWORD' to search
-  ;; for packages and 'guix install PACKAGE' to install a package.
-  (packages (append (list (specification->package "ratpoison")
-                          (specification->package "xterm")
-                          (specification->package "emacs")
-                          (specification->package "emacs-exwm")
-                          (specification->package
-                           "emacs-desktop-environment")
-                          (specification->package "nss-certs"))
-                    %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 tor-service-type)
-		 (service openssh-service-type)
-		 (service slim-service-type
-		    (slim-configuration
-		     (xorg-configuration
-		      (xorg-configuration
-		       (keyboard-layout keyboard-layout)))))
-		 
-                 ;; (set-xorg-configuration
-                 ;;  (xorg-configuration (keyboard-layout keyboard-layout)))
-
-		 )
-
-	   (modify-services %desktop-services
-			    (guix-service-type config => (guix-configuration
-					       (inherit config)
-					       (substitute-urls
-						(append (list "https://substitutes.nonguix.org")
-							%default-substitute-urls))
-					       (authorized-keys
-						(append (list (plain-file "non-guix.pub"
-"
-(public-key 
- (ecc 
-  (curve Ed25519)
-  (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)
-  )
- )
-"))
-							%default-authorized-guix-keys))))
-			    
-			    (delete gdm-service-type))
-
-	   ))
-  (bootloader (bootloader-configuration
-                (bootloader grub-efi-bootloader)
-                (targets (list "/boot/efi"))
-                (keyboard-layout keyboard-layout)))
-  (mapped-devices (list (mapped-device
-                          (source (uuid
-                                   "6cfe9eed-8cdd-43da-9b9f-cec6f8ec538b"))
-                          (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 "/boot/efi")
-                         (device (uuid "17C5-3E35"
-                                       'fat32))
-                         (type "vfat"))
-                       (file-system
-                         (mount-point "/")
-                         (device "/dev/mapper/cryptroot")
-                         (type "ext4")
-                         (dependencies mapped-devices)) %base-file-systems)))
Index: ix/emacs.scm
===================================================================
--- guix/emacs.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,92 +1,0 @@
-(use-package-modules guile emacs)
-
-(specifications->manifest
-       '(;;"emacs-next"
-	 ;;"emacs-no-x-toolkit"
-	 "emacs-with-editor"
-	 "emacs-use-package"
-	 ;;"emacs-auto-package-update"
-	 ;;"emacs-color-theme-sanityinc-tomorrow"
-	 ;;"emacs-mood-line"
-	 ;;"emacs-agressive-indent"
-	 "emacs-guix"
-	 "emacs-edit-indirect"
-	 "emacs-build-farm"
-	 "guile-gcrypt"
-	 "emacs-dash"
-	 "emacs-bui"
-	 "emacs-pdf-tools"
-	 "emacs-magit"
-	 ;;"emacs-magit-gitflow"
-	 "emacs-undo-tree"
-	 "emacs-magit-todos"
-	 ;;"emacs-git-gutter+"
-	 "emacs-ace-jump-mode"
-	 "emacs-ido-vertical-mode"
-	 "emacs-ido-completing-read+"
-	 "emacs-ido-ubiquitous"
-	 "emacs-amx"
-	 "emacs-company"
-	 "emacs-company-quickhelp"
-	 "emacs-ivy"
-	 ;;"emacs-swiper"
-	 "emacs-projectile"
-	 "emacs-dumb-jump"
-	 "emacs-yasnippet"
-	 "emacs-yasnippet-snippets"
-	 "emacs-whitespace-cleanup-mode"
-	 ;;"emacs-column-enforce-mode"
-	 "emacs-editorconfig"
-	 "emacs-sudo-edit"
-	 "emacs-rainbow-delimiters"
-	 "emacs-paredit"
-	 "emacs-s"
-	 "emacs-company-jedi"
-	 "emacs-nodejs-repl"
-	 "emacs-typescript-mode"
-	 ;;"emacs-mwim"
-	 ;;"emacs-vue-mode"
-	 "emacs-haskell-mode"
-	 ;;"emacs-intero"
-	 "emacs-cider"
-	 "emacs-org-bullets"
-	 "emacs-org-pomodoro"
-	 ;;"emacs-org-journal"
-	 ;;"emacs-epresent"
-	 ;;"emacs-flymd"
-	 ;;"emacs-flycheck-lilypond"
-	 ;;"emacs-erc"
-	 "emacs-telega"
-	 ;;"emacs-org-mime"
-	 "emacs-pinentry"
-	 "emacs-exec-path-from-shell"
-	 "emacs-docker"
-	 "emacs-debbugs"
-	 ;;"emacs-keycast"
-	 ;;"emacs-pos-tip"
-	 "emacs-simple-httpd"
-	 "emacs-js2-mode"
-	 "emacs-web-mode"
-	 "emacs-restclient"
-	 ;;"emacs-djvu"
-	 "emacs-htmlize"
-	 "emacs-ledger-mode"
-	 "emacs-diminish"
-	 ;;"emacs-smooth-scrolling"
-	 "emacs-so-long"
-	 "emacs-hydra"
-	 "emacs-geiser"
-	 "emacs-scheme-complete"
-	 "emacs-build-farm"
-	 "emacs-clojure-mode"
-	 "emacs-cider"
-	 "emacs-slime"
-	 "emacs-slime-company"
-	 "emacs-parinfer-mode"
-	 "emacs-lispy"
-	 "emacs-emms"
-	 "emacs-which-key"
-	 "emacs-emacsql"
-	 "emacs-slime"
-	 "emacs-slime-company"
-	 ))
Index: ix/etc/guix/machines.scm
===================================================================
--- guix/etc/guix/machines.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,9 +1,0 @@
-(list (build-machine
-       (name "Yunohost")
-       (systems (list "x86_64-linux" "i686-linux"))
-       (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHeon4e9iK9HWicDp2lwoBmbTXQPB4dofNaBubGflhJN root@yunohost")
-       (user "root")
-       (private-key
-        (string-append (getenv "HOME")
-                       "/.ssh/id_ed25519"))
-       (speed 2.)))
Index: ix/home/.bash_profile
===================================================================
--- guix/home/.bash_profile	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,18 +1,0 @@
-# Set up Guix Home profile
-if [ -f ~/.profile ]; then . ~/.profile; fi
-
-# Honor per-interactive-shell startup file
-if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
-
-# Merge search-paths from multiple profiles, the order matters.
-eval "$(guix package --search-paths \
--p $HOME/.config/guix/current \
--p $HOME/.guix-profile \
--p /run/current-system/profile)"
-
-# Prepend setuid programs.
-export PATH=/run/setuid-programs:$PATH
-
-export PATH=$HOME/.bin:$PATH
-
-export EMACSLOADPATH=$EMACSLOADPATH:$HOME/.emacs.d/elpa
Index: ix/home/.bashrc
===================================================================
--- guix/home/.bashrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,28 +1,0 @@
-# Bash initialization for interactive non-login shells and
-# for remote shells (info "(bash) Bash Startup Files").
-
-# Export 'SHELL' to child processes.  Programs such as 'screen'
-# honor it and otherwise use /bin/sh.
-export SHELL
-
-export GUIX_PACKAGE_PATH=$HOME/.guix-packages
-export GUIX_EXTRA_PROFILES=$HOME/.guix-extra-profiles
-
-if [[ $- != *i* ]]
-then
-    # We are being invoked from a non-interactive shell.  If this
-    # is an SSH session (as in "ssh host command"), source
-    # /etc/profile so we get PATH and other essential variables.
-    [[ -n "$SSH_CLIENT" ]] && source /etc/profile
-
-    # Don't do anything else.
-    return
-fi
-
-# Source the system-wide file.
-[ -f /etc/bashrc ] && source /etc/bashrc
-
-alias ls='ls -p --color=auto'
-alias ll='ls -l'
-alias grep='grep --color=auto'
-alias ip='ip -color=auto'
Index: ix/home/home-configuration.scm
===================================================================
--- guix/home/home-configuration.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,70 +1,0 @@
-;; This "home-environment" file can be passed to 'guix home reconfigure'
-;; to reproduce the content of your profile.  This is "symbolic": it only
-;; specifies package names.  To reproduce the exact same profile, you also
-;; need to capture the channels being used, as returned by "guix describe".
-;; See the "Replicating Guix" section in the manual.
-
-(use-modules (gnu home)
-             (gnu packages)
-             (gnu services)
-             (guix gexp)
-             (gnu home services shells))
-
-(define wkz-home (home-environment
-  (packages (specifications->packages (list "darktable"
-                                            "openssh"
-                                            "docker-compose"
-                                            "emacs-company"
-                                            "emacs-f"
-                                            "emacs-s"
-					    "emacs-xterm-color"
-                                            "emacs-lsp-mode"
-                                            "wget"
-                                            "bitcoin-core"
-                                            "xrandr"
-                                            "unzip"
-                                            "zip"
-                                            "mpv"
-                                            "emacs-rmsbolt"
-                                            "git"
-                                            "emacs"
-                                            "lm-sensors"
-                                            "htop"
-                                            "make"
-                                            "emacs-simple-httpd"
-                                            "emacs-guix"
-                                            "emacs-telega"
-                                            "gimp"
-                                            "imagemagick"
-                                            "stow"
-                                            "icecat"
-                                            "smartmontools"
-                                            "lshw"
-                                            "hwinfo"
-                                            "ntfs-3g"
-                                            "qbittorrent"
-                                            "x11-ssh-askpass"
-                                            "syncthing"
-                                            "pavucontrol"
-                                            "wmname"
-                                            "arp-scan"
-                                            "proot"
-                                            "openconnect"
-                                            "alsa-utils"
-                                            "grep")))
-
-  ;; Below is the list of Home services.  To search for available
-  ;; services, run 'guix home search KEYWORD' in a terminal.
-  (services
-   (list (service home-bash-service-type
-                  (home-bash-configuration
-                   (aliases '(("grep" . "grep --color=auto")
-                              ("ip" . "ip -color=auto")
-                              ("ll" . "ls -l")
-                              ("ls" . "ls -p --color=auto")))
-                   (bashrc (list (local-file
-                                  ".bashrc"
-                                  "bashrc")))
-                   (bash-profile (list (local-file
-                                        ".bash_profile"
-                                        "bash_profile")))))))))
Index: ix/home/home-configuration.scm~
===================================================================
--- guix/home/home-configuration.scm~	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,80 +1,0 @@
-;; This "home-environment" file can be passed to 'guix home reconfigure'
-;; to reproduce the content of your profile.  This is "symbolic": it only
-;; specifies package names.  To reproduce the exact same profile, you also
-;; need to capture the channels being used, as returned by "guix describe".
-;; See the "Replicating Guix" section in the manual.
-
-(use-modules (gnu home)
-             (gnu packages)
-             (gnu services)
-             (guix gexp)
-             (gnu home services shells))
-
-(home-environment
-  ;; Below is the list of packages that will show up in your
-  ;; Home profile, under ~/.guix-home/profile.
-  (packages (specifications->packages (list "darktable"
-                                            "openssh"
-                                            "docker-compose"
-                                            "emacs-company"
-                                            "emacs-f"
-                                            "emacs-s"
-					    "emacs-xterm-color"
-                                            "emacs-lsp-mode"
-					    "emacs-osm"
-                                            "wget"
-                                            "bitcoin-core"
-                                            "xrandr"
-                                            "unzip"
-                                            "zip"
-                                            "mpv"
-					    "gnupg"
-					    "pinentry-tty"
-					    "pinentry-emacs"
-					    "signing-party"
-                                            "emacs-rmsbolt"
-                                            "git"
-                                            "emacs-no-x-toolkit"
-					    "emacs-mastodon"
-                                            "lm-sensors"
-                                            "htop"
-                                            "make"
-                                            "emacs-simple-httpd"
-                                            "emacs-guix"
-                                            "emacs-telega"
-					    "font-gnu-unifont"
-                                            "gimp"
-                                            "imagemagick"
-                                            "stow"
-                                            "icecat"
-					    "icedove"
-                                            "smartmontools"
-                                            "lshw"
-                                            "hwinfo"
-                                            "ntfs-3g"
-                                            "qbittorrent"
-                                            "x11-ssh-askpass"
-                                            "syncthing"
-                                            "pavucontrol"
-                                            "wmname"
-                                            "arp-scan"
-                                            "proot"
-                                            "openconnect"
-                                            "alsa-utils"
-                                            "grep")))
-
-  ;; Below is the list of Home services.  To search for available
-  ;; services, run 'guix home search KEYWORD' in a terminal.
-  (services
-   (list (service home-bash-service-type
-                  (home-bash-configuration
-                   (aliases '(("grep" . "grep --color=auto")
-                              ("ip" . "ip -color=auto")
-                              ("ll" . "ls -l")
-                              ("ls" . "ls -p --color=auto")))
-                   (bashrc (list (local-file
-                                  ".bashrc"
-                                  "bashrc")))
-                   (bash-profile (list (local-file
-                                        ".bash_profile"
-                                        "bash_profile"))))))))
Index: ix/machines.scm
===================================================================
--- guix/machines.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,9 +1,0 @@
-(list (build-machine
-       (name "wkz-serv")
-       ;;(system "x86_64-linux")
-       (host-key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDGqGIwdYuz+fnvMFQjA7S/xw6bTkJsJg+/6bORPb3Bf root@(none)")
-       (user "root")
-       (parallel-builds 4)
-       (features '("kvm"))
-       (speed 2.0)
-       ))
Index: ix/rde/.envrc
===================================================================
--- guix/rde/.envrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,2 +1,0 @@
-GUIX_PROFILE=target/profiles/guix
-if [ -f $GUIX_PROFILE/etc/profile ]; then source $GUIX_PROFILE/etc/profile; fi
Index: ix/rde/Makefile
===================================================================
--- guix/rde/Makefile	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,33 +1,0 @@
-# profiles.mk provides guix version specified by rde/channels-lock.scm
-# To rebuild channels-lock.scm use `make -B rde/channels-lock.scm`
-include profiles.mk
-
-# Also defined in .envrc to make proper guix version available project-wide
-GUIX_PROFILE=target/profiles/guix
-GUIX=./pre-inst-env ${GUIX_PROFILE}/bin/guix
-
-SRC_DIR=./src
-CONFIGS=${SRC_DIR}/abcdw/configs.scm
-PULL_EXTRA_OPTIONS=
-# --allow-downgrades
-
-ROOT_MOUNT_POINT=/mnt
-
-VERSION=latest
-
-target:
-	mkdir -p target
-
-build-home: guix
-	${GUIX} home build ./src/wkz-p1.scm
-
-install-home: guix
-	${GUIX} home reconfigure ./src/wkz-p1.scm -v 5
-
-rollback-home: guix
-	${GUIX} home roll-back
-
-clean-target:
-	rm -rf ./target
-
-clean: clean-target
Index: ix/rde/pre-inst-env
===================================================================
--- guix/rde/pre-inst-env	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,6 +1,0 @@
-#!/bin/sh
-
-GUILE_LOAD_PATH="./src${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"
-export GUILE_LOAD_PATH
-
-exec "$@"
Index: ix/rde/profiles.mk
===================================================================
--- guix/rde/profiles.mk	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,34 +1,0 @@
-#
-# Profiles
-#
-
-# Store items doesn't have useful mtime, so we rely on guix.lock to prevent
-# unecessary rebuilds
-guix: target/guix-time-marker
-
-target/profiles:
-	mkdir -p target/profiles
-
-target/guix-time-marker: rde/channels-lock.scm
-	make target/profiles/guix
-	touch $@
-
-target/profiles/guix: target/profiles rde/channels-lock.scm
-	guix pull -C rde/channels-lock.scm -p ${GUIX_PROFILE} \
-	${PULL_EXTRA_OPTIONS}
-
-target/profiles/guix-local: target/profiles rde/channels-lock-local.scm
-	guix pull -C rde/channels-lock-local.scm -p ${GUIX_PROFILE} \
-	${PULL_EXTRA_OPTIONS}
-
-rde/channels-lock.scm: rde/channels.scm
-	echo -e "(use-modules (guix channels))\n" > ./rde/channels-lock-tmp.scm
-	guix time-machine -C ./rde/channels.scm -- \
-	describe -f channels >> ./rde/channels-lock-tmp.scm
-	mv ./rde/channels-lock-tmp.scm ./rde/channels-lock.scm
-
-rde/channels-lock-local.scm: rde/channels-local.scm
-	echo -e "(use-modules (guix channels))\n" > ./rde/channels-lock-tmp.scm
-	guix time-machine -C ./rde/channels-local.scm -- \
-	describe -f channels >> ./rde/channels-lock-tmp.scm
-	mv ./rde/channels-lock-tmp.scm ./rde/channels-lock-local.scm
Index: ix/rde/rde/channels-local.scm
===================================================================
--- guix/rde/rde/channels-local.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,20 +1,0 @@
-(use-modules (guix ci)
-             (guix channels))
-
-(list
- (channel
-  (name 'guix)
-  (url "file:///home/bob/work/gnu/guix")
-  (introduction
-   (make-channel-introduction
-    "9edb3f66fd807b096b48283debdcddccfea34bad"
-    (openpgp-fingerprint
-     "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA"))))
- (channel
-  (name 'rde)
-  (url "https://git.sr.ht/~abcdw/rde")
-  (introduction
-   (make-channel-introduction
-    "257cebd587b66e4d865b3537a9a88cccd7107c95"
-    (openpgp-fingerprint
-     "2841 9AC6 5038 7440 C7E9  2FFA 2208 D209 58C1 DEB0")))))
Index: ix/rde/rde/channels-lock-local.scm
===================================================================
--- guix/rde/rde/channels-lock-local.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,24 +1,0 @@
-(use-modules (guix channels))
-
-(list (channel
-        (name 'rde)
-        (url "https://git.sr.ht/~abcdw/rde")
-        (branch "master")
-        (commit
-          "e4fe6ef24219b3b2a512ae96ef61f2bbad44dc04")
-        (introduction
-          (make-channel-introduction
-            "257cebd587b66e4d865b3537a9a88cccd7107c95"
-            (openpgp-fingerprint
-              "2841 9AC6 5038 7440 C7E9  2FFA 2208 D209 58C1 DEB0"))))
-      (channel
-        (name 'guix)
-        (url "file:///home/bob/work/gnu/guix")
-        (branch "master")
-        (commit
-          "e6acde4a95dea5b9a27416e58c6f904ff1e9eba6")
-        (introduction
-          (make-channel-introduction
-            "9edb3f66fd807b096b48283debdcddccfea34bad"
-            (openpgp-fingerprint
-              "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA")))))
Index: ix/rde/rde/channels-lock.scm
===================================================================
--- guix/rde/rde/channels-lock.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,24 +1,0 @@
-(use-modules (guix channels))
-
-(list (channel
-        (name 'rde)
-        (url "https://git.sr.ht/~abcdw/rde")
-        (branch "master")
-        (commit
-          "a7b59443405169600a00f0b295a3fb1de360cb0b")
-        (introduction
-          (make-channel-introduction
-            "257cebd587b66e4d865b3537a9a88cccd7107c95"
-            (openpgp-fingerprint
-              "2841 9AC6 5038 7440 C7E9  2FFA 2208 D209 58C1 DEB0"))))
-      (channel
-        (name 'guix)
-        (url "https://git.savannah.gnu.org/git/guix.git")
-        (branch "master")
-        (commit
-          "04724e59971b03f86a410285653d24005c62b924")
-        (introduction
-          (make-channel-introduction
-            "9edb3f66fd807b096b48283debdcddccfea34bad"
-            (openpgp-fingerprint
-              "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA")))))
Index: ix/rde/rde/channels.scm
===================================================================
--- guix/rde/rde/channels.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,13 +1,0 @@
-(use-modules (guix ci)
-             (guix channels))
-
-(list
- %default-guix-channel
- (channel
-  (name 'rde)
-  (url "https://git.sr.ht/~abcdw/rde")
-  (introduction
-   (make-channel-introduction
-    "257cebd587b66e4d865b3537a9a88cccd7107c95"
-    (openpgp-fingerprint
-     "2841 9AC6 5038 7440 C7E9  2FFA 2208 D209 58C1 DEB0")))))
Index: ix/rde/src/configs.scm
===================================================================
--- guix/rde/src/configs.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,566 +1,0 @@
-(define-module (abcdw configs)
-  #:use-module (abcdw feature-lists)
-  #:use-module (abcdw hosts ixy)
-  #:use-module (abcdw hosts live)
-
-  #:use-module (rde features)
-  #:use-module (rde features base)
-  #:use-module (rde features gnupg)
-  #:use-module (rde features security-token)
-  #:use-module (rde features keyboard)
-  #:use-module (rde features system)
-  #:use-module (rde features xdg)
-  #:use-module (rde features password-utils)
-  #:use-module (rde features emacs-xyz)
-  #:use-module (rde features mail)
-  #:use-module (rde features irc)
-  #:use-module (rde features networking)
-  #:use-module (rde features clojure)
-  #:use-module (contrib features javascript)
-
-  #:use-module (gnu services)
-  #:use-module (gnu home services)
-  #:use-module (gnu home services shepherd)
-  #:use-module (gnu home services xdg)
-  #:use-module (rde home services i2p)
-  #:use-module (rde home services emacs)
-  #:use-module (rde home services wm)
-
-  #:use-module (gnu home-services ssh)
-
-  #:use-module (gnu packages)
-  #:use-module (rde packages)
-  #:use-module (rde packages aspell) ; needed for strings->packages
-
-  #:use-module (guix gexp)
-  #:use-module (guix inferior)
-  #:use-module (guix channels)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (ice-9 match))
-
-
-
-;;; Helpers
-
-(define* (mail-acc id user #:optional (type 'gmail))
-  "Make a simple mail-account with gmail type by default."
-  (mail-account
-   (id   id)
-   (fqda user)
-   (type type)))
-
-(define* (mail-lst id fqda urls)
-  "Make a simple mailing-list."
-  (mailing-list
-   (id   id)
-   (fqda fqda)
-   (config (l2md-repo
-            (name (symbol->string id))
-            (urls urls)))))
-
-
-
-;;; Service extensions
-
-(define emacs-extra-packages-service
-  (simple-service
-   'emacs-extra-packages
-   home-emacs-service-type
-   (home-emacs-extension
-    (init-el
-     `((with-eval-after-load 'org
-         (setq org-use-speed-commands t)
-         (define-key org-mode-map (kbd "M-o")
-           (lambda ()
-             (interactive)
-             (org-end-of-meta-data t))))
-       (with-eval-after-load 'simple
-         (setq-default display-fill-column-indicator-column 80)
-         (add-hook 'prog-mode-hook 'display-fill-column-indicator-mode))
-       (setq copyright-names-regexp
-             (format "%s <%s>" user-full-name user-mail-address))
-       (add-hook 'after-save-hook (lambda () (copyright-update nil nil)))))
-    (elisp-packages
-     (append
-      (strings->packages
-       ;; "emacs-dirvish"
-       "emacs-rainbow-mode"
-       "emacs-hl-todo"
-       "emacs-yasnippet"
-       ;; "emacs-company"
-       "emacs-consult-dir"
-       ;; "emacs-all-the-icons-completion" "emacs-all-the-icons-dired"
-       "emacs-kind-icon"
-       "emacs-nginx-mode" "emacs-yaml-mode"
-       ;; "emacs-lispy"
-       "emacs-ytdl"
-       "emacs-multitran"
-       "emacs-minimap"
-       "emacs-ement"
-       "emacs-restart-emacs"
-       "emacs-org-present"))))))
-
-(define home-extra-packages-service
-  (simple-service
-   'home-profile-extra-packages
-   home-profile-service-type
-   (append
-    (strings->packages
-     "figlet" ;; TODO: Move to emacs-artist-mode
-     "calibre"
-     "icecat" "nyxt"
-     "ungoogled-chromium-wayland" "ublock-origin-chromium"
-
-     "utox" "qtox" "jami"
-
-     "alsa-utils" "yt-dlp" "cozy"
-     "pavucontrol" "wev"
-     "imagemagick"
-     "obs" "obs-wlrobs"
-     "recutils" "binutils" "make"
-     "fheroes2"
-
-     "hicolor-icon-theme" "adwaita-icon-theme" "gnome-themes-extra"
-     "papirus-icon-theme" "arc-theme"
-     "thunar" "fd"
-     ;; "glib:bin"
-
-     "libreoffice"
-     "ffmpeg"
-     "ripgrep" "curl"))))
-
-(define (wallpaper url hash)
-  (origin
-    (method url-fetch)
-    (uri url)
-    (file-name "wallpaper.png")
-    (sha256 (base32 hash))))
-
-(define wallpaper-ai-art
-  (wallpaper "https://w.wallhaven.cc/full/j3/wallhaven-j3m8y5.png"
-             "0qqx6cfx0krlp0pxrrw0kvwg6x40qq9jic90ln8k4yvwk8fl1nyw"))
-
-(define wallpaper-dark-rider
-  (wallpaper "https://w.wallhaven.cc/full/lm/wallhaven-lmlzwl.jpg"
-             "01j5z3al8zvzqpig8ygvf7pxihsj2grsazg9yjiqyjgsmp00hpaf"))
-
-(define sway-extra-config-service
-  (simple-service
-   'sway-extra-config
-   home-sway-service-type
-   `((output DP-2 scale 2)
-     ;; (output * bg ,wallpaper-ai-art center)
-     ;; (output eDP-1 disable)
-     ,@(map (lambda (x) `(workspace ,x output DP-2)) (iota 8 1))
-
-     ;; (workspace 9 output DP-2)
-     ;; (workspace 10 output DP-2)
-
-     ;; (bindswitch --reload --locked lid:on exec /run/setuid-programs/swaylock)
-
-     (bindsym
-      --locked $mod+Shift+t exec
-      ,(file-append (@ (gnu packages music) playerctl) "/bin/playerctl")
-      play-pause)
-
-     (bindsym
-      --locked $mod+Shift+n exec
-      ,(file-append (@ (gnu packages music) playerctl) "/bin/playerctl")
-      next)
-
-     (bindsym $mod+Shift+o move workspace to output left)
-     (bindsym $mod+Ctrl+o focus output left)
-     (input type:touchpad
-            ;; TODO: Move it to feature-sway or feature-mouse?
-            (;; (natural_scroll enabled)
-             (tap enabled)))
-
-     ;; (xwayland disable)
-     (bindsym $mod+Shift+Return exec emacs))))
-
-(define i2pd-add-ilita-irc-service
-  (simple-service
-   'i2pd-add-ilita-irc
-   home-i2pd-service-type
-   (home-i2pd-extension
-    (tunnels-conf
-     `((IRC-ILITA ((type . client)
-                   (address . 127.0.0.1)
-                   (port . 6669)
-                   (destination . irc.ilita.i2p)
-                   (destinationport . 6667)
-                   (keys . ilita-keys.dat))))))))
-
-(define ssh-extra-config-service
-  (simple-service
-   'ssh-extra-config
-   home-ssh-service-type
-   (home-ssh-extension
-    (extra-config
-     (append
-      ;; TODO: Move it feature-qemu?
-      (map (lambda (id)
-             (ssh-host
-              (host (format #f "qemu~a" id))
-              (options
-               `((host-name . "localhost")
-                 (port . ,(+ 10020 id))))))
-           (iota 4))
-      (list
-       (ssh-host
-        (host "pinky-ygg")
-        (options
-         '((host-name . "200:554d:3eb1:5bc5:6d7b:42f4:8792:efb8")
-           (port . 50621)
-           (control-master . "auto")
-           (control-path . "~/.ssh/master-%r@%h:%p")
-           (compression . #t))))
-       (ssh-host
-        (host "pinky")
-        (options
-         '((host-name . "23.137.249.202")
-           (port . 50621)
-           (compression . #t)))))))
-    (toplevel-options
-     '((host-key-algorithms . "+ssh-rsa")
-       (pubkey-accepted-key-types . "+ssh-rsa"))))))
-
-
-
-;;; User-specific features with personal preferences
-
-;; Initial user's password hash will be available in store, so use this
-;; feature with care (display (crypt "hi" "$6$abc"))
-
-(define %abcdw-features
-  (list
-   (feature-user-info
-    #:user-name "bob"
-    #:full-name "Andrew Tropin"
-    #:email "andrew@trop.in"
-    #:user-initial-password-hash
-    "$6$abc$3SAZZQGdvQgAscM2gupP1tC.SqnsaLSPoAnEOb2k6jXMhzQqS1kCSplAJ/vUy2rrnpHtt6frW2Ap5l/tIvDsz."
-    ;; (crypt "bob" "$6$abc")
-
-    ;; WARNING: This option can reduce the explorability by hiding
-    ;; some helpful messages and parts of the interface for the sake
-    ;; of minimalistic, less distractive and clean look.  Generally
-    ;; it's not recommended to use it.
-    #:emacs-advanced-user? #t)
-   (feature-gnupg
-    #:gpg-primary-key "74830A276C328EC2")
-   (feature-security-token)
-   (feature-password-store
-    #:remote-password-store-url "ssh://abcdw@olorin.lan/~/state/password-store")
-
-   (feature-mail-settings
-    #:mail-accounts (list (mail-acc 'work     "andrew@trop.in" 'gandi)
-                          (mail-acc 'personal "bs@trop.in"     'gandi))
-    #:mailing-lists (list (mail-lst 'guix-devel "guix-devel@gnu.org"
-                                    '("https://yhetil.org/guix-devel/0"))
-                          (mail-lst 'guix-bugs "guix-bugs@gnu.org"
-                                    '("https://yhetil.org/guix-bugs/0"))
-                          (mail-lst 'guix-patches "guix-patches@gnu.org"
-                                    '("https://yhetil.org/guix-patches/1"))))
-
-   (feature-irc-settings
-    #:irc-accounts (list
-                    (irc-account
-                     (id 'srht)
-                     (network "chat.sr.ht")
-                     (bouncer? #t)
-                     (nick "abcdw"))
-                    (irc-account
-                     (id 'libera)
-                     (network "irc.libera.chat")
-                     (nick "abcdw"))
-                    (irc-account
-                     (id 'oftc)
-                     (network "irc.oftc.net")
-                     (nick "abcdw"))))
-
-   (feature-custom-services
-    #:feature-name-prefix 'abcdw
-    #:home-services
-    (list
-     emacs-extra-packages-service
-     home-extra-packages-service
-     sway-extra-config-service
-     ssh-extra-config-service
-     i2pd-add-ilita-irc-service))
-
-   (feature-ssh-proxy #:host "pinky-ygg" #:auto-start? #f)
-   (feature-ssh-proxy #:host "pinky-ygg" #:name "hundredrps"
-                      #:proxy-string "50080:localhost:8080"
-                      #:reverse? #t
-                      #:auto-start? #f)
-
-   (feature-xdg
-    #:xdg-user-directories-configuration
-    (home-xdg-user-directories-configuration
-     (music "$HOME/music")
-     (videos "$HOME/vids")
-     (pictures "$HOME/pics")
-     (documents "$HOME/docs")
-     (download "$HOME/dl")
-     (desktop "$HOME")
-     (publicshare "$HOME")
-     (templates "$HOME")))
-
-   (feature-yggdrasil)
-   (feature-i2pd
-    #:outproxy 'http://acetone.i2p:3128
-    ;; 'purokishi.i2p
-    #:less-anonymous? #t)
-
-   (feature-emacs-keycast #:turn-on? #t)
-
-   (feature-emacs-tempel
-    #:default-templates? #t
-    #:templates
-    `(fundamental-mode
-      ,#~""
-      (t (format-time-string "%Y-%m-%d"))
-      ;; TODO: Move to feature-guix
-      ;; ,((@ (rde gexp) slurp-file-like)
-      ;;   (file-append ((@ (guix packages) package-source)
-      ;;                 (@ (gnu packages package-management) guix))
-      ;;                "/etc/snippets/tempel/text-mode"))
-      ))
-   (feature-emacs-time)
-   (feature-emacs-spelling
-    #:spelling-program (@ (gnu packages hunspell) hunspell)
-    #:spelling-dictionaries
-    (list
-     (@ (gnu packages hunspell) hunspell-dict-en)
-     (@ (rde packages aspell) hunspell-dict-ru)))
-   (feature-emacs-git
-    #:project-directory "~/work")
-   (feature-emacs-org
-    #:org-directory "~/work/abcdw/private"
-    #:org-indent? #f
-    #:org-capture-templates
-    ;; https://libreddit.tiekoetter.com/r/orgmode/comments/gc76l3/org_capture_inside_notmuch/
-    `(("r" "Reply" entry (file+headline "" "Tasks")
-       "* TODO Reply %:subject %?\nSCHEDULED: %t\n%U\n%a\n"
-       :immediate-finish t)
-      ("t" "Todo" entry (file+headline "" "Tasks") ;; org-default-notes-file
-       "* TODO %?\nSCHEDULED: %t\n%a\n" :clock-in t :clock-resume t)))
-   (feature-emacs-org-roam
-    ;; TODO: Rewrite to states
-    #:org-roam-directory "~/work/abcdw/notes/notes")
-   (feature-emacs-org-agenda
-    #:org-agenda-files '("~/work/abcdw/private/todo.org"
-                         "~/work/abcdw/rde/TODO"))
-   (feature-emacs-elfeed
-    #:elfeed-org-files '("~/work/abcdw/private/rss.org"))
-
-
-   (feature-javascript)
-
-   ;; TODO: move feature to general, move extra configuration to service.
-   (feature-notmuch
-    ;; TODO: Add integration with mail-lists
-    ;; `notmuch-show-stash-mlarchive-link-alist'
-    #:extra-tag-updates-post
-    '("notmuch tag +guix-home -- 'thread:\"\
-{((subject:guix and subject:home) or (subject:service and subject:home) or \
-subject:/home:/) and tag:new}\"'")
-    #:notmuch-saved-searches
-    (cons*
-     ;; TODO: Add tag:unread to all inboxes.  Revisit archive workflow.
-     '(:name "Work Inbox" :query "tag:work and tag:inbox and tag:unread" :key "W")
-     '(:name "Personal Inbox" :query "tag:personal and tag:inbox" :key "P")
-     '(:name "Guix Home Inbox" :key "H" :query "tag:guix-home and tag:unread")
-     '(:name "RDE Inbox"       :key "R"
-             :query "(to:/rde/ or cc:/rde/) and tag:unread")
-     '(:name "New TODO" :query "tag:todo or (tag:inbox and not tag:unread)" :key "T")
-     ;; '(:name "Watching" :query "thread:{tag:watch} and tag:unread" :key "tw")
-     %rde-notmuch-saved-searches))
-
-   (feature-keyboard
-    ;; To get all available options, layouts and variants run:
-    ;; cat `guix build xkeyboard-config`/share/X11/xkb/rules/evdev.lst
-    #:keyboard-layout
-    (keyboard-layout
-     "us,ru" "dvorak,"
-     #:options '("grp:shifts_toggle" "ctrl:nocaps")))))
-
-(define %guest-features
-  (list
-   (feature-user-info
-    #:user-name "guest"
-    #:full-name "rde user"
-    #:email "guest@rde"
-    ;; (crypt "guest" "$6$abc")
-    #:user-initial-password-hash
-    "$6$abc$9a9KlQ2jHee45D./UOzUZWLHjI/atvz2Dp6.Zz6hjRcP2KJv\
-G9.lc/f.U9QxNW1.2MZdV1KzW6uMJ0t23KKoN/")
-
-   (feature-keyboard
-    ;; To get all available options, layouts and variants run:
-    ;; cat `guix build xkeyboard-config`/share/X11/xkb/rules/evdev.lst
-    #:keyboard-layout
-    (keyboard-layout
-     "us,us"
-     ",dvorak"
-     #:options '("grp:shifts_toggle" "ctrl:nocaps")))
-
-   (feature-irc-settings
-    #:irc-accounts (list
-                    (irc-account
-                     (id 'libera)
-                     (network "irc.libera.chat")
-                     (nick "rde-user"))
-                    (irc-account
-                     (id 'oftc)
-                     (network "irc.oftc.net")
-                     (nick "rde-user"))))))
-
-
-
-;;; Some TODOs
-
-;; TODO: Add an app for saving and reading articles and web pages
-;; https://github.com/wallabag/wallabag
-;; https://github.com/chenyanming/wallabag.el
-
-;; TODO: feature-wallpapers https://wallhaven.cc/
-;; TODO: feature-icecat
-;; TODO: Revisit <https://en.wikipedia.org/wiki/Git-annex>
-;; TODO: <https://www.labri.fr/perso/nrougier/GTD/index.html#table-of-contents>
-
-
-
-;;; ixy
-
-(define-public ixy-config
-  (rde-config
-   (features
-    (append
-     %all-features
-     %ixy-features
-     %abcdw-features))))
-
-(define-public ixy-os
-  (rde-config-operating-system ixy-config))
-
-(define-public ixy-he
-  (rde-config-home-environment ixy-config))
-
-
-
-;;; live
-
-(use-modules (srfi srfi-1)
-             (rde features version-control))
-
-(define sway-wlr-settings-service
-  (simple-service
-   'sway-wlr-settings
-   home-environment-variables-service-type
-   ;; Make sway work on virtual gpu in qemu
-   `(("WLR_RENDERER_ALLOW_SOFTWARE" . "1")
-     ("WLR_NO_HARDWARE_CURSORS" . "1"))))
-
-(define sway-live-extra-config-service
-  (simple-service
-   'sway-output-settings
-   home-sway-service-type
-   `((output Virtual-1 mode 1920x1080 scale 2)
-     (exec emacs --eval "'(info \"(rde)Getting Started\")'"))))
-
-(define home-profile-live-extra-packages-service
-  (simple-service
-   'home-profile-live-extra-packages
-   home-profile-service-type
-   (append
-    (strings->packages
-     "icecat"
-     "imv" "wev"
-     "make"
-     "adwaita-icon-theme" "gnome-themes-extra"
-     "hicolor-icon-theme" ;; needed for nm icons
-
-     "ripgrep" "curl"))))
-
-(define example-configs-service
-  (simple-service
-   'live-example-configs
-   home-shepherd-service-type
-   (list
-    (shepherd-service
-     (documentation "Create ~/rde-configs.")
-     (requirement '())
-     (provision '(rde-configs))
-     (start
-      (with-imported-modules '((guix build utils))
-        #~(lambda ()
-            (let ((rde-configs #$(local-file
-                                  "../.." "rde-configs"
-                                  #:recursive? #t
-                                  #:select?
-                                  (lambda (file _)
-                                    (not (string=? (basename file) "target")))))
-                  (output (string-append (getenv "HOME") "/rde-configs")))
-              (when (not (file-exists? output))
-                (mkdir-p output)
-                (copy-recursively
-                 rde-configs
-                 output
-                 #:copy-file (lambda (f t)
-                               (copy-file f t)
-                               (make-file-writable t)))
-                ;; MAYBE: take this value from rde-config
-                (system* #$(file-append (@ (gnu packages shellutils) direnv)
-                                        "/bin/direnv") "allow" output))))))
-     (one-shot? #t)))))
-
-(define live-custom-services
-  (feature-custom-services
-    #:feature-name-prefix 'live
-    #:home-services
-    (list
-     example-configs-service
-     sway-live-extra-config-service
-     sway-wlr-settings-service
-     home-profile-live-extra-packages-service)))
-
-;; TODO: Pull channels from lock file in advance and link them to example-config
-;; TODO: Add auto-login
-
-(define-public live-config
-  (rde-config
-   (integrate-he-in-os? #t)
-   (features
-    (append
-     %guest-features
-     (list live-custom-services)
-
-     (remove
-      (lambda (f) (member (feature-name f) '(git markdown)))
-      %general-features)
-     (list
-      (feature-git #:sign-commits? #f)
-      (feature-hidpi))
-
-     %live-features))))
-
-(define-public live-os
-  (rde-config-operating-system live-config))
-
-
-
-;;; Dispatcher, which helps to return various values based on environment
-;;; variable value.
-
-(define (dispatcher)
-  (let ((rde-target (getenv "RDE_TARGET")))
-    (match rde-target
-      ("ixy-home" ixy-he)
-      ("ixy-system" ixy-os)
-      ("live-system" live-os)
-      (_ ixy-he))))
-
-(dispatcher)
Index: ix/rde/src/hosts/ixy.scm
===================================================================
--- guix/rde/src/hosts/ixy.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,61 +1,0 @@
-(define-module (abcdw hosts ixy)
-  #:use-module (rde features base)
-  #:use-module (rde features system)
-  #:use-module (rde features wm)
-  #:use-module (gnu system file-systems)
-  #:use-module (gnu system mapped-devices)
-  #:use-module (ice-9 match))
-
-
-
-;;; Hardware/host specifis features
-
-;; TODO: Switch from UUIDs to partition labels For better
-;; reproducibilty and easier setup.  Grub doesn't support luks2 yet.
-
-(define ixy-mapped-devices
-  (list (mapped-device
-         (source (uuid "0e51ee1e-49ef-45c6-b0c3-6307e9980fa9"))
-         (target "enc")
-         (type luks-device-mapping))))
-
-(define ixy-file-systems
-  (append
-   (map (match-lambda
-          ((subvol . mount-point)
-           (file-system
-             (type "btrfs")
-             (device "/dev/mapper/enc")
-             (mount-point mount-point)
-             (options (format #f "subvol=~a" subvol))
-             (dependencies ixy-mapped-devices))))
-        '((root . "/")
-          (boot . "/boot")
-          (gnu  . "/gnu")
-          (home . "/home")
-          (data . "/data")
-          (log  . "/var/log")))
-   (list
-    (file-system
-      (mount-point "/boot/efi")
-      (type "vfat")
-      (device (uuid "8C99-0704" 'fat32))))))
-
-(define-public %ixy-features
-  (list
-   (feature-host-info
-    #:host-name "ixy"
-    ;; ls `guix build tzdata`/share/zoneinfo
-    #:timezone  "Asia/Tbilisi")
-   ;;; Allows to declare specific bootloader configuration,
-   ;;; grub-efi-bootloader used by default
-   ;; (feature-bootloader)
-   (feature-file-systems
-    #:mapped-devices ixy-mapped-devices
-    #:file-systems   ixy-file-systems)
-   (feature-kanshi
-    #:extra-config
-    `((profile laptop ((output eDP-1 enable)))
-      (profile docked ((output eDP-1 enable)
-                       (output DP-2 scale 2)))))
-   (feature-hidpi)))
Index: ix/rde/src/hosts/live.scm
===================================================================
--- guix/rde/src/hosts/live.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,52 +1,0 @@
-(define-module (abcdw hosts live)
-  #:use-module (rde features base)
-  #:use-module (rde features system)
-
-  #:use-module (rde system services admin)
-  #:use-module (rde system services guix)
-
-  #:use-module (gnu services)
-  #:use-module (gnu system file-systems))
-
-
-
-;;; Hardware/host specifis features
-
-;; TODO: Switch from UUIDs to partition labels For better
-;; reproducibilty and easier setup.  Grub doesn't support luks2 yet.
-
-(define live-file-systems
-  (list (file-system
-          (mount-point "/")
-          (device (file-system-label "Guix_image"))
-          (type "ext4"))
-        (file-system
-          (mount-point "/tmp")
-          (device "none")
-          (type "tmpfs")
-          (check? #f))))
-
-(define sudoers-extra-service
-  (simple-service
-   'sudoers-extra
-   sudoers-service-type
-   (list "%wheel ALL=(ALL) NOPASSWD: ALL")))
-
-(define live-extra-services
-  (feature-custom-services
-   #:feature-name-prefix 'live-extra
-   #:system-services
-   (list
-    sudoers-extra-service
-    (service cow-store-service-type))))
-
-(define-public %live-features
-  (list
-   (feature-host-info
-    #:host-name "live"
-    #:issue "This is rde.  Welcome.  Login and password - guest and guest.\n"
-    ;; ls `guix build tzdata`/share/zoneinfo
-    #:timezone  "Europe/Kiev")
-   live-extra-services
-   (feature-file-systems
-    #:file-systems live-file-systems)))
Index: ix/rde/src/wkz-p1.scm
===================================================================
--- guix/rde/src/wkz-p1.scm	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,261 +1,0 @@
-(define-module (wkz-p1)
-  #:use-module (rde features)
-  #:use-module (rde features base)
-  #:use-module (rde features documentation)
-  #:use-module (rde features docker)
-  #:use-module (rde features linux)
-  #:use-module (rde features networking)
-  #:use-module (rde features wm)
-  #:use-module (rde features finance)
-  #:use-module (rde features mail)
-  #:use-module (rde features irc)
-  #:use-module (rde features video)
-  #:use-module (rde features keyboard)
-  #:use-module (rde features fontutils)
-  #:use-module (rde features emacs)
-  #:use-module (rde features emacs-xyz)
-  #:use-module (rde features shellutils)
-  #:use-module (rde features terminals)
-  #:use-module (rde features shells)
-  #:use-module (rde features version-control)
-  #:use-module (rde features virtualization)
-  ;; #:use-module (rde features web)
-  #:use-module (rde features xdg)
-  #:use-module (gnu home-services base)
-  #:use-module (gnu home services)
-  #:use-module (gnu home-services wm)
-  #:use-module (gnu services)
-
-  #:use-module (rde packages)
-  #:use-module (guix gexp))
-
-(define home-extra-packages-service
-  (simple-service
-   'home-profile-extra-packages
-   home-profile-service-type
-   (append
-    (strings->packages
-     ;; "calibre"
-     "glibc-locales"
-     "icecat" ;; "nyxt"
-     ;; "ungoogled-chromium-wayland" "ublock-origin-chromium"
-
-     "alsa-utils" "pamixer" "yt-dlp"
-     "pavucontrol" "wev"
-     "imagemagick"
-     "obs" "obs-wlrobs"
-     "recutils" "binutils" "make"
-
-     ;; Web tech
-     "node" "php" "docker-compose"
-
-     "papirus-icon-theme" "arc-theme"
-     "thunar" "fd"
-     "glib:bin"
-     "wob" "brightnessctl"
-
-     "ffmpeg"))))
-
-(define sway-extra-config-service
-  (simple-service
-   'sway-extra-config
-   home-sway-service-type
-   `((output DP-2 scale 2)
-     ,@(map (lambda (x) `(workspace ,x output DP-2)) (iota 8 1))
-
-     (bindswitch --reload --locked lid:on exec /run/setuid-programs/swaylock)
-
-     (set $WOBSOCK $XDG_RUNTIME_DIR/wob.sock)
-     (exec rm -f $WOBSOCK && mkfifo $WOBSOCK && tail -f $WOBSOCK \| ,(file-append (@ (gnu packages xdisorg) wob) "/bin/wob"))
-
-     ;; Brightness control
-     ;; (bindsym --locked XF86MonBrightnessUp exec
-     ;;          ,(file-append (@ (gnu packages linux) brightnessctl) "/bin/brightnessctl")
-     ;;          set 5%+)
-     ;; (bindsym --locked XF86MonBrightnessDown exec
-     ;;          ,(file-append (@ (gnu packages linux) brightnessctl) "/bin/brightnessctl")
-     ;;          set 5%-)
-
-     ;; Audio control
-     ;; (bindsym --locked XF86AudioLowerVolume exec
-     ;;          ,(file-append (@ (gnu packages pulseaudio) pamixer) "/bin/pamixer")
-     ;;          -ud 2)
-     ;; (bindsym --locked XF86AudioMute exec
-     ;;          ,(file-append (@ (gnu packages pulseaudio) pamixer) "/bin/pamixer")
-     ;;          --toggle-mute)
-
-     (bindsym $mod+Ctrl+o focus output left)
-     (input type:touchpad
-            ((events disabled)
-             (tap disabled)))
-
-     ;; (xwayland disable)
-     (bindsym $mod+Shift+Return exec emacs))))
-
-(define minimal-rde-config
-  (rde-config
-   (features
-    (list
-     ;; %general-features
-     (feature-user-info
-      #:user-name "w96k"
-      #:full-name "Mikhail Kirillov"
-      #:email "w96k.ru@gmail.com"
-      #:emacs-advanced-user? #t)
-
-     (feature-backlight)
-     (feature-pipewire)
-
-     (feature-vterm)
-     (feature-bash)
-     (feature-direnv)
-
-     (feature-qemu)
-
-     (feature-base-services)
-     (feature-base-packages)
-
-     (feature-desktop-services)
-     (feature-hidpi)
-     (feature-foreign-distro)
-     
-     (feature-sway)
-     (feature-emacs
-      #:default-application-launcher? #t)
-
-     (feature-keyboard
-    ;; To get all available options, layouts and variants run:
-    ;; cat `guix build xkeyboard-config`/share/X11/xkb/rules/evdev.lst
-    #:keyboard-layout
-    (keyboard-layout
-     "us,ru"
-     "qwerty"
-     #:options '("grp:shifts_toggle" "ctrl:nocaps")))
-
-     (feature-irc-settings
-      #:irc-accounts (list
-                      (irc-account
-                       (id 'libera)
-                       (network "irc.libera.chat")
-                       (nick "w96k")
-                       (bouncer? #t))))
-
-     ;; (feature-alternative-frontends)
-
-     (feature-docker)
-
-     (feature-youtube-dl)
-
-     (feature-fonts
-      #:default-font-size 13)
-
-     (feature-emacs-appearance)
-     (feature-emacs-faces)
-     (feature-emacs-modus-themes)
-
-     (feature-emacs-completion
-      #:mini-frame? #f
-      #:marginalia-align 'right)
-     (feature-emacs-corfu
-      #:corfu-doc-auto #f)
-     (feature-emacs-vertico)
-
-     (feature-emacs-tramp)
-     (feature-emacs-project)
-     (feature-compile)
-     (feature-emacs-perspective)
-     (feature-emacs-input-methods)
-     (feature-emacs-which-key)
-     (feature-emacs-monocle)
-
-     (feature-emacs-message)
-
-
-     (feature-emacs-erc
-      #:erc-log? #f
-      #:erc-autojoin-channels-alist '((Libera.Chat "#rde")))
-     (feature-emacs-telega)
-     (feature-emacs-elpher)
-
-     (feature-emacs-pdf-tools)
-     ;; (feature-emacs-nov-el)
-     (feature-emacs-org)
-     (feature-emacs-org-roam
-      #:org-roam-directory "~/projects/at-w96k/content/digarden/pages/"
-     )
-     (feature-emacs-org-agenda)
-     (feature-emacs-org-protocol)
-     (feature-emacs-calendar)
-
-
-     (feature-emacs-shell)
-     (feature-emacs-eshell)
-     (feature-emacs-re-builder)
-
-     (feature-emacs-elisp)
-
-     (feature-emacs-spelling)
-     (feature-emacs-dashboard)
-
-     (feature-emacs-browse-url)
-
-     ;; TODO: Remove auctex dependency, which interjects in texinfo-mode.
-     ;; (feature-emacs-citar)
-
-     ;; (feature-emacs-smartparens
-     ;;  #:show-smartparens? #t)
-
-     (feature-emacs-pulseaudio-control)
-     (feature-emacs-geiser)
-     (feature-emacs-guix)
-     (feature-emacs-eglot)
-     (feature-emacs-help)
-     (feature-emacs-info)
-
-     (feature-manpages)
-
-     (feature-xdg)
-
-     (feature-git #:sign-commits? #f)
-
-     (feature-custom-services
-      #:feature-name-prefix 'w96k
-      #:home-services
-      (list
-       home-extra-packages-service
-       sway-extra-config-service
-      ))
-
-   (feature-sway-run-on-tty
-    #:sway-tty-number 2)
-   (feature-sway-screenshot)
-   ;; (feature-sway-statusbar
-   ;;  #:use-global-fonts? #f)
-   (feature-waybar
-    #:extra-config '(((position . bottom)))
-    #:transitions? #t
-    #:waybar-modules
-    (list
-     (waybar-temperature)
-     (waybar-cpu)
-     (waybar-memory)
-     (waybar-disk)
-     (waybar-sway-workspaces)
-     (waybar-tray)
-     (waybar-idle-inhibitor)
-     (waybar-sway-language)
-     (waybar-microphone)
-     (waybar-volume)
-     (waybar-battery #:intense? #t)
-     (waybar-clock)))
-   (feature-swayidle)
-
-   (feature-swaylock
-    #:swaylock (@ (gnu packages wm) swaylock-effects)
-    ;; The blur on lock screen is not privacy-friendly.
-    #:extra-config '((screenshots)
-                     (effect-blur . 7x5)
-                     (clock)))
-   ))))
-
-(rde-config-home-environment minimal-rde-config)
Index: ix/rde/target/profiles/guix
===================================================================
--- guix/rde/target/profiles/guix	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,1 +1,0 @@
-guix-1-link
Index: ix/rde/target/profiles/guix-1-link
===================================================================
--- guix/rde/target/profiles/guix-1-link	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,1 +1,0 @@
-/gnu/store/hdsjdz3hdymz3p9dafjmjgdgpzcnhq2k-profile
Index: .eslintrc
===================================================================
--- js/.eslintrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,43 +1,0 @@
-{
-    "parser": "babel-eslint",
-    "plugins": [ "react" ],
-    "extends": "airbnb-base",
-    "env": {
-        "browser": true,
-        "es6": true,
-        "node": true
-    },
-    "parserOptions": {
-        "ecmaFeatures": {
-            "jsx": true,
-            "modules": true
-        },
-        "sourceType": "module"
-    },
-    "ecmaFeatures": {
-        "arrowFunctions": true,
-        "blockBindings": true,
-        "classes": true,
-        "defaultParams": true,
-        "destructuring": true,
-        "forOf": true,
-        "generators": true,
-        "modules": true,
-        "spread": true,
-        "templateStrings": true,
-        "jsx": true
-    },
-    "rules": {
-        "consistent-return": [0],
-        "key-spacing": [0],
-        "quotes": [0],
-        "new-cap": [0],
-        "no-multi-spaces": [0],
-        "no-shadow": [0],
-        "no-unused-vars": [1],
-        "no-use-before-define": [2, "nofunc"],
-        "react/jsx-no-undef": 1,
-        "react/jsx-uses-react": 1,
-        "react/jsx-uses-vars": 1
-    }
-}
Index: .npmrc
===================================================================
--- js/.npmrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,1 +1,0 @@
-prefix=/home/w96k/.nodejs
Index: languages/js/.eslintrc
===================================================================
--- languages/js/.eslintrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ languages/js/.eslintrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,43 @@
+{
+    "parser": "babel-eslint",
+    "plugins": [ "react" ],
+    "extends": "airbnb-base",
+    "env": {
+        "browser": true,
+        "es6": true,
+        "node": true
+    },
+    "parserOptions": {
+        "ecmaFeatures": {
+            "jsx": true,
+            "modules": true
+        },
+        "sourceType": "module"
+    },
+    "ecmaFeatures": {
+        "arrowFunctions": true,
+        "blockBindings": true,
+        "classes": true,
+        "defaultParams": true,
+        "destructuring": true,
+        "forOf": true,
+        "generators": true,
+        "modules": true,
+        "spread": true,
+        "templateStrings": true,
+        "jsx": true
+    },
+    "rules": {
+        "consistent-return": [0],
+        "key-spacing": [0],
+        "quotes": [0],
+        "new-cap": [0],
+        "no-multi-spaces": [0],
+        "no-shadow": [0],
+        "no-unused-vars": [1],
+        "no-use-before-define": [2, "nofunc"],
+        "react/jsx-no-undef": 1,
+        "react/jsx-uses-react": 1,
+        "react/jsx-uses-vars": 1
+    }
+}
Index: languages/js/.npmrc
===================================================================
--- languages/js/.npmrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ languages/js/.npmrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,1 @@
+prefix=/home/w96k/.nodejs
Index: languages/php/.phprc
===================================================================
--- languages/php/.phprc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ languages/php/.phprc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,2 @@
+error_reporting = E_ALL
+display_startup_errors = on
Index: languages/php/.psysh/rc.php
===================================================================
--- languages/php/.psysh/rc.php	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ languages/php/.psysh/rc.php	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,15 @@
+<?php
+
+$config = [
+    'pager'       => 'more',
+    'usePcntl'    => true,
+    'useReadline' => true,
+    'commands'    => [
+        new \Psy\Command\ParseCommand,
+    ],
+];
+
+$f = getenv('HOME') . '/.composer/vendor/autoload.php';
+if (file_exists($f)) { $config['defaultIncludes'] = [$f]; }
+
+return $config;
Index: languages/python/.pythonrc
===================================================================
--- languages/python/.pythonrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ languages/python/.pythonrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,9 @@
+# -*- mode: python -*-
+# import atexit
+# import rlcompleter
+# import code
+# import os
+# import readline
+
+# readline.parse_and_bind('tab:complete')
+# readline.parse_and_bind('bind ^I rl_complete')
Index: languages/ruby/.irbrc
===================================================================
--- languages/ruby/.irbrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ languages/ruby/.irbrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,1 @@
+IRB.conf[:USE_MULTILINE] = false if ENV['INSIDE_EMACS']
Index: languages/scheme/.guile
===================================================================
--- languages/scheme/.guile	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
+++ languages/scheme/.guile	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -0,0 +1,4 @@
+(use-modules (ice-9 readline) (ice-9 colorized))
+
+(activate-readline)
+(activate-colorized)
Index: x/configuration.nix
===================================================================
--- nix/configuration.nix	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,327 +1,0 @@
-# Edit this configuration file to define what should be installed on
-# your system.  Help is available in the configuration.nix(5) man page
-# and in the NixOS manual (accessible by running ‘nixos-help’).
-
-{ config, pkgs, ... }:
-
-{
-  imports =
-    [ # Include the results of the hardware scan.
-      ./hardware-configuration.nix
-       <nixos-hardware/lenovo/thinkpad/x200s>
-       <home-manager/nixos>
-       
-    ];
-
-  nix = {
-    package = pkgs.nixUnstable;
-    extraOptions = ''
-      experimental-features = nix-command flakes
-    '';
-  };
-  
-  # Bootloader
-  boot.kernelPackages = pkgs.linuxPackages_latest;
-  boot.loader.grub.enable = true;
-  boot.loader.grub.device = "/dev/sdb";
-  boot.loader.grub.useOSProber = true;
-  boot.kernel.sysctl = { "net.ipv4.ip_forward" = 1; };
-
-  networking.hostName = "nixos"; # Define your hostname.
-  #networking.wireless.enable = true;  # Enables wireless support via wpa_supplicant.
-
-  # Configure network proxy if necessary
-  # networking.proxy.default = "http://user:password@proxy:port/";
-  # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
-
-  # Enable networking
-  networking.networkmanager.enable = true;
-
-  # Select internationalisation properties.
-  i18n.defaultLocale = "en_US.UTF-8";
-  console = {
-    font = "Lat2-Terminus16";
-    keyMap = "us";
-  };
-
-  fonts.fonts = with pkgs; [
-    unifont
-    dejavu_fonts
-  ];
-
-  fonts.fontDir.enable = true;
-
-  # Set your time zone.
-  time.timeZone = "Europe/Moscow";
-
-  services.lorri.enable = true;
-
-  # Configure keymap in X11
-  services.xserver = {
-    enable = true;
-    layout = "us,ru";
-    xkbOptions = "grp:shifts_toggle,caps:ctrl_modifier";
-    videoDrivers = [ "intel" ];
-
-    windowManager.ratpoison.enable = true;
-    displayManager.startx.enable = true;
-    displayManager.defaultSession = "none+ratpoison";
-  };
-
-  powerManagement = {
-    enable = true;
-    cpuFreqGovernor = "ondemand";
-  };
-
-  # Define a user account. Don't forget to set a password with ‘passwd’.
-  users.users.w96k = {
-    isNormalUser = true;
-    description = "Mikhail Kirillov";
-    extraGroups = [ "networkmanager" "wheel" "audio" "docker" "libvirtd"];
-  };
-
-  nix.trustedUsers = [ "root" "w96k" ];
-
-  home-manager.useGlobalPkgs = true;
-
-  home-manager.users.w96k = { pkgs, ... }: {
-    home.stateVersion = "22.05";
-    home.packages = [
-    pkgs.gparted
-    pkgs.python3
-    pkgs.nodejs
-    # pkgs.php81
-    # # Minimal requirements for symfony
-    # pkgs.php81Extensions.redis
-    # pkgs.php81Extensions.amqp
-    # pkgs.php81Extensions.xsl
-    pkgs.php81Packages.psysh
-    pkgs.gimp
-    pkgs.php81Packages.composer
-    pkgs.direnv
-    pkgs.openjdk17
-    pkgs.firefox
-    pkgs.tdesktop
-    pkgs.imagemagick
-    pkgs.arandr
-    pkgs.symfony-cli
-    pkgs.shellcheck
-    pkgs.gnome.gnome-boxes
-    pkgs.cachix
-    pkgs.tor-browser-bundle-bin
-    pkgs.htop
-    pkgs.ghc
-    pkgs.nix-prefetch-scripts
-    pkgs.libreoffice
-    pkgs.mpv
-    pkgs.musescore
-    pkgs.yarn
-    pkgs.postgresql
-    pkgs.unzip
-    pkgs.sloc
-    ];
-
-    programs.git = {
-      enable = true;
-      userName = "Mikhail Kirillov";
-      userEmail = "w96k.ru@gmail.com";
-    };
-    programs.autorandr.enable = true;
-    programs.direnv.enable = true;
-    programs.direnv.nix-direnv.enable = true;
-    programs.bash.enable = true;
-    programs.emacs = {
-      enable = true;
-      extraPackages = epkgs: with epkgs; [
-      flycheck
-      avy
-      anaconda-mode
-      auctex
-      beginend
-      composer
-      cinspect
-      debian-el
-      dpkg-dev-el
-      edebug-inline-result
-      magit
-      git-dwim
-      gitpatch
-      goto-chg
-      debbugs
-      direnv
-      docker
-      docker-cli
-      docker-tramp
-      mastodon
-      exec-path-from-shell
-      expand-region
-      geiser
-      geiser-guile
-      guix
-      gnuplot
-      isearch-mb
-      minibuffer-line
-      org-roam
-      org-roam-ui
-      org-download
-      org-babel-eval-in-repl
-      on-screen
-      pdf-tools
-      lsp-mode
-      lsp-java
-      company
-      company-quickhelp
-      # ac-php
-      # php-mode
-      # php-quickhelp
-      phan
-      php-cs-fixer
-      # company-php
-      # php-eldoc
-      realgud
-      kiwix
-      slime
-      simple-httpd
-      sudo-edit
-      imenu-list
-      telega
-      mini-frame
-      mini-modeline
-      undo-tree
-      yasnippet
-      yasnippet-snippets
-      vimrc-mode
-      no-littering
-      web-mode
-      reverse-im
-      restclient
-      # php-scratch
-      yaml-mode
-      php-quickhelp
-      nix-mode
-    ];
-};
-  };
-
-  # nixpkgs.config.allowUnfree = true;
-  # Nixos optimizations for thinkpadg
-  # nixpkgs.localSystem = {
-  #   system = "x86_64-linux";
-  #   gcc.arch = "core2";
-  #   gcc.tune = "core2";
-  # };
-
-  # Enable sound
-  sound.enable = true;
-
-  # List packages installed in system profile. To search, run:
-  # $ nix search wget
-  environment.systemPackages = with pkgs; [
-  wget
-  lm_sensors
-  emacs28NativeComp
-  nix-tree
-  xorg.xf86inputevdev
-  xorg.xf86videointel
-  xorg.xorgserver
-  xorg.xinit
-  thinkfan
-  home-manager
-  neofetch
-  git
-  wmname
-  docker-compose
-  niv
-
-  (pkgs.php81.buildEnv {
-    extensions = ({ enabled, all }: enabled ++ (with all; [
-      xdebug
-      amqp
-      redis
-      xsl
-    ]));
-    extraConfig = ''
-      xdebug.mode=debug
-    '';
-  })
-  ];
-
-  services.emacs.package = pkgs.emacs28NativeComp;
-  services.emacs.defaultEditor = true;
-
-  # services.postgresql = {
-  #   enable = true;
-  #   package = pkgs.postgresql_14;
-  #   enableTCPIP = true;
-  #   authentication = pkgs.lib.mkOverride 10 ''
-  #     local all all trust
-  #     host all all 127.0.0.1/32 trust
-  #     host all all ::1/128 trust
-  #   '';
-  #   initialScript = pkgs.writeText "backend-initScript" ''
-  #     CREATE ROLE w96k WITH LOGIN PASSWORD 'w96k' CREATEDB;
-  #     CREATE DATABASE symfony;
-  #     GRANT ALL PRIVILEGES ON DATABASE symfony TO w96k;
-  #   '';
-  # };
-
-  services.tor.settings = {
-      UseBridges = true;
-      ClientTransportPlugin = "obfs4 exec ${pkgs.obfs4}/bin/obfs4proxy";
-      Bridge = "obfs4 IP:ORPort [fingerprint]";
-  };
-
-  services.tor.client.enable = true;
-
-  virtualisation.docker = {
-    enable = true;
-    enableOnBoot = true;
-    # autoPrune.enable = true;
-  };
-
-  virtualisation.libvirtd.enable = true;
-
-  systemd.mounts = [
-  { what = "/dev/sda2";
-    where = "/mnt/guix";
-    mountConfig = {
-      TimeoutSec = "1";
-      Options = "uid=c184f446-df67-4103-b28e-465ac8776f10";
-    };
-  }
-  ];
-
-  # Some programs need SUID wrappers, can be configured further or are
-  # started in user sessions.
-  # programs.mtr.enable = true;
-  programs.gnupg.agent = {
-    enable = true;
-    enableSSHSupport = true;
-  };
-
-  nix.autoOptimiseStore = true;
-  nix.gc = {
-    automatic = true;
-    dates = "weekly";
-    options = "--delete-older-than 60d";
-  };
-
-  # List services that you want to enable:
-
-  # Enable the OpenSSH daemon.
-  # services.openssh.enable = true;
-
-  # Open ports in the firewall.
-  # networking.firewall.allowedTCPPorts = [ ... ];
-  # networking.firewall.allowedUDPPorts = [ ... ];
-  # Or disable the firewall altogether.
-  # networking.firewall.enable = false;
-
-  # This value determines the NixOS release from which the default
-  # settings for stateful data, like file locations and database versions
-  # on your system were taken. It‘s perfectly fine and recommended to leavecatenate(variables, "bootdev", bootdev)
-  # this value at the release version of the first install of this system.
-  # Before changing this value read the documentation for this option
-  # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
-  system.stateVersion = "22.05"; # Did you read the comment?
-}
Index: x/hardware-configuration.nix
===================================================================
--- nix/hardware-configuration.nix	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,50 +1,0 @@
-# Do not modify this file!  It was generated by ‘nixos-generate-config’
-# and may be overwritten by future invocations.  Please make changes
-# to /etc/nixos/configuration.nix instead.
-{ config, lib, pkgs, modulesPath, ... }:
-
-{
-  imports =
-    [ (modulesPath + "/installer/scan/not-detected.nix")
-    ];
-
-  boot.initrd.availableKernelModules = [ "uhci_hcd" "ehci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
-  boot.initrd.kernelModules = [ ];
-  boot.kernelModules = [ "kvm-intel" ];
-  boot.extraModulePackages = [ ];
-
-  fileSystems."/" =
-    { device = "/dev/disk/by-uuid/a1abae4a-c292-4d2c-85f8-6690bb3e4c03";
-      fsType = "ext4";
-    };
-
-  # fileSystems."/mnt/guix" =
-  #   { device = "/dev/disk/by-uuid/c184f446-df67-4103-b28e-465ac8776f10";
-  #     fsType = "ext4";
-  #   };
-
-  # swapDevices = [{ device = "/dev/sda1"; }];
-
-  # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
-  # (the default) this is the recommended approach. When using systemd-networkd it's
-  # still possible to use this option, but it's recommended to use it in conjunction
-  # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
-  networking.useDHCP = lib.mkDefault true;
-  # networking.interfaces.enp0s25.useDHCP = lib.mkDefault true;
-  # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
-
-  hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
-  hardware.pulseaudio.enable = true;
-  hardware.pulseaudio.package = pkgs.pulseaudioFull;
-  hardware.opengl = {
-    enable = true;
-    driSupport = true;
-    driSupport32Bit = true;
-    extraPackages = with pkgs; [
-      intel-media-driver # LIBVA_DRIVER_NAME=iHD
-      vaapiIntel         # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
-      vaapiVdpau
-      libvdpau-va-gl
-    ];
-  };
-}
Index: p/.phprc
===================================================================
--- php/.phprc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,2 +1,0 @@
-error_reporting = E_ALL
-display_startup_errors = on
Index: p/.psysh/rc.php
===================================================================
--- php/.psysh/rc.php	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,15 +1,0 @@
-<?php
-
-$config = [
-    'pager'       => 'more',
-    'usePcntl'    => true,
-    'useReadline' => true,
-    'commands'    => [
-        new \Psy\Command\ParseCommand,
-    ],
-];
-
-$f = getenv('HOME') . '/.composer/vendor/autoload.php';
-if (file_exists($f)) { $config['defaultIncludes'] = [$f]; }
-
-return $config;
Index: thon/.pythonrc
===================================================================
--- python/.pythonrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,9 +1,0 @@
-# -*- mode: python -*-
-# import atexit
-# import rlcompleter
-# import code
-# import os
-# import readline
-
-# readline.parse_and_bind('tab:complete')
-# readline.parse_and_bind('bind ^I rl_complete')
Index: by/.irbrc
===================================================================
--- ruby/.irbrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,1 +1,0 @@
-IRB.conf[:USE_MULTILINE] = false if ENV['INSIDE_EMACS']
Index: .config/polybar/config
===================================================================
--- wm/.config/polybar/config	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ 	(revision )
@@ -1,6 +1,0 @@
-[bar/w96k]
-modules-right = date
-
-[module/date]
-type = internal/date
-date = %Y-%m-%d%
Index: wm/.ratpoisonrc
===================================================================
--- wm/.ratpoisonrc	(revision 7bfb563bd9fae2bbcfdcd8c4df8db1ad44ef8ca7)
+++ wm/.ratpoisonrc	(revision 254aa1d44b1575434f9f92ace2e1ea12280d028c)
@@ -8,5 +8,6 @@
 set framesels 1234567890abcdefg
 
-set font "Courier:size=12"
+set font "Courier:size=10"
+set winliststyle column
 set bargravity n
 defborder 0 
@@ -16,5 +17,5 @@
 # Commands to run-or-raise programs
 alias icecat exec ratpoison -c "select icecat" || exec icecat
-alias nyxt exec ratpoison -c "select nyxt" || exec nyxt
+alias palemoon exec ratpoison -c "select Pale moon" || sh ~/Software/palemoon/palemoon-guix.sh
 alias workrave exec ratpoison -c "select workrave" || exec workrave
 alias emacs exec ratpoison -c "select emacs" || exec emacs
@@ -30,5 +31,5 @@
 
 # Run or raise Nyxt
-bind B nyxt
+bind B palemoon
 
 # Run or raise Icecat
@@ -51,4 +52,2 @@
 definekey top XF86AudioLowerVolume exec amixer -q sset Master 3%-
 definekey top XF86AudioRaiseVolume exec amixer -q sset Master 3%+
-
-#exec wmname LG3D
