diff options
Diffstat (limited to 'systems/aisaka/home-configuration.scm')
-rw-r--r-- | systems/aisaka/home-configuration.scm | 224 |
1 files changed, 224 insertions, 0 deletions
diff --git a/systems/aisaka/home-configuration.scm b/systems/aisaka/home-configuration.scm new file mode 100644 index 0000000..f785e41 --- /dev/null +++ b/systems/aisaka/home-configuration.scm @@ -0,0 +1,224 @@ +(define-module (aisaka-home-configuration) + #:use-module (gnu home) + #:use-module (gnu home services) + #:use-module (gnu home services shells) + #:use-module (gnu packages) + #:use-module (gnu services) + #:use-module (guix gexp)) + +(define allow-downgrades + "--allow-downgrades ") + +(define config-prefix + "/home/marek/Publiczny/src/guix-config/") + +(define pull-guix + "guix pull ") + +(define pull-guix- + (string-append pull-guix + allow-downgrades + "--disable-authentication ")) + +(define guix-home + "guix home reconfigure ") + +(define home-configuration + "home-configuration.scm ") + +(define reconfigure-home + (string-append guix-home + config-prefix + home-configuration)) + +(define reconfigure-home- + (string-append reconfigure-home + allow-downgrades)) + +(define guix-system + "sudo guix system reconfigure ") + +(define system-configuration + "system-configuration.scm ") + +(define reconfigure-system + (string-append guix-system + config-prefix + system-configuration)) + +(define reconfigure-system- + (string-append reconfigure-system + allow-downgrades)) + +(define and + "&& ") + +(define system-update + (string-append pull-guix + and + reconfigure-system + and + reconfigure-home + and + "sudo guix gc -d 7d")) + +(define system-update- + (string-append pull-guix- + and + reconfigure-system- + and + reconfigure-home- + and + "sudo guix gc -d 7d")) + +(home-environment + (packages + (map + (compose list + specification->package+output) + '("adwaita-icon-theme" + "alacritty" + "clamav" + "cpupower" + "dconf-editor" + "emacs-next" + "emacs-aggressive-indent" + "emacs-eldoc" + "emacs-geiser" + "emacs-geiser-guile" + "emacs-nix-mode" + "emacs-nov-el" + "emacs-org-contacts" + "emacs-org-contrib" + "emacs-paredit" + "font-google-noto" + "git" + "git-lfs" + "gnome-tweaks" + "gnupg" + "hicolor-icon-theme" + "icecat" + "jami" + "libadwaita" + "libreoffice" + "nm-tray" + "pwgen" + "seahorse" + "sicp" + "strace" + "unzip" + "zip"))) + (services + (list + (service + (service-type + (name 'flashrom-package) + (extensions + `(,(service-extension home-profile-service-type + (lambda (_) + (map specification->package + '("flashrom")))))) + (description "Flashrom installation.") + (default-value #f))) + (service + (service-type + (name 'git-sendemail-packages) + (extensions + (list + (service-extension home-profile-service-type + (lambda (_) + (map + (compose list + specification->package+output) + (list + "git" + "git:send-email")))))) + (description "Git Send Email") + (default-value #f))) + (service + (service-type + (name 'org-fc-tn-package) + (extensions + (list + (service-extension home-profile-service-type + (lambda (_) + (map specification->package + (list + "emacs-org-fc-tn")))))) + (description "Custom version of ORG-FC.") + (default-value #f))) + (simple-service 'ssh-configuration* home-files-service-type + `((".ssh/config" ,(plain-file "ssh-config" "\ + Host *.onion + ProxyCommand nc -x localhost:9050 -X5 %h %p + + Host kynio.onion + User kynio + Hostname prnpi5oblk35gzcihbgu3227xvanisouxgbejri57bnzjawcksq4l7yd.onion + Port 22\n")))) + ;; (service + ;; (service-type + ;; (name 'trezor-user-packages) + ;; (extensions + ;; (list + ;; (service-extension home-profile-service-type + ;; (lambda (_) + ;; (map specification->package + ;; (list + ;; "trezor-agent")))))) + ;; (description "Trezor packages for the user.") + ;; (default-value #f))) + (service home-bash-service-type + (home-bash-configuration + (environment-variables '(("EDITOR" . "emacs -nw") + ("GUILE_AUTO_COMPILE" . "0") + ("PATH" . "$PATH:/home/marek/.nix-profile/bin"))) + (aliases `(("grep" . "grep --color=auto ") + ("ll" . "ls -l ") + ("ls" . "ls -p --color=auto ") + ("nix" . "nix --extra-experimental-features flakes --extra-experimental-features nix-command") + ("pull-guix" . ,pull-guix) + ("pull-guix-" . ,pull-guix-) + ("reconfigure-home" . ,reconfigure-home) + ("reconfigure-home-" . ,reconfigure-home-) + ("reconfigure-system" . ,reconfigure-system) + ("reconfigure-system-" . ,reconfigure-system-) + ("system-update" . ,system-update) + ("system-update-" . ,system-update-))) + (bashrc (list + (local-file "data/bashrc"))))) + ;; (service + ;; home-channels-service-type + ;; (list + ;; (channel + ;; (name 'guix) + ;; (url "https://git.savannah.gnu.org/git/guix.git")) + ;; (channel + ;; (name 'jeko) + ;; (url "https://framagit.org/Jeko/guix-jeko-channel.git")) + ;; (channel + ;; (name 'nonguix) + ;; (url "https://gitlab.com/nonguix/nonguix") + ;; ;; Enable signature verification: + ;; (introduction + ;; (make-channel-introduction + ;; "897c1a470da759236cc11798f4e0a5f7d4d59fbc" + ;; (openpgp-fingerprint "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5")))) + ;; (channel (name 'org-fc-tn) + ;; (url "file:///home/marek/src/org-fc") + ;; (branch "repository")) + ;; (channel (name 'packages) + ;; (url "file:///home/marek/src/packages") + ;; (branch "master")) + ;; (channel (name 'channel) + ;; (url "https://git.marekpasnikowski.pl/git/channel.git") + ;; (branch "wip-channel") + ;; ( introduction + ;; ( make-channel-introduction + ;; "f8ccfe8f3e5c8bafe06665cbd4b0c9301e1a64b6" + ;; ( openpgp-fingerprint + ;; "590E 500F E39D 26B3 E60B 743B 6D81 B120 7711 899F" ) ) )))) + (simple-service 'configuration-files + home-files-service-type + `((".config/git/config" ,(local-file "data/git-config")) + (".emacs" ,(local-file "data/emacs-config"))))))) |