aboutsummaryrefslogtreecommitdiffstats
path: root/oni/home/rincewind/config.scm
blob: 710daa13c897d693d8455190248b6c19cd44a370 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
(define-module (oni home data config)
  #:use-module (gnu home)
  #:use-module (gnu home services)
  #:use-module (gnu home services guix)
  #:use-module (gnu packages)
  #:use-module (gnu packages video)
  #:use-module (gnu packages music)
  #:use-module (gnu packages emacs)
  #:use-module (gnu packages commencement)
  #:use-module (gnu services)
  #:use-module (guix packages)
  #:use-module (guix gexp)
  #:use-module (guix store)
  #:use-module (guix derivations)
  #:use-module (guix channels)
  #:use-module (guix transformations)
  #:use-module (oni home services environment)
  #:use-module (oni home services rofi)
  #:use-module (oni home services polybar)
  #:use-module (oni home services dunst)
  #:use-module (oni home services zsh)
  #:use-module (oni home services kdeconnect)
  #:use-module (oni home services syncthing)
  #:use-module (oni packages hlwm-run-or-raise)
  #:use-module (oni packages pick-random-wallpaper)
  #:use-module (oni packages notmuch-collect-tasks)
  #:use-module (oni packages notmuch-tag-mailinglists)
  #:use-module (oni packages inbox-size)
  #:use-module (oni packages count-emails)
  #:use-module (oni home common config))

(define (with-master-branch package)
  "Apply a transformation to PACKAGE so that it uses the master branch."
  ((options->transformation
    `((with-branch . ,(string-append (package-name package) "=master"))))
   package))

(home-environment
 (packages (list mpv mpv-mpris easytag emacs-next
                 (specification->package+output "glibc-locales")
                 (specification->package+output "font-fantasque-sans")
                 (specification->package+output "font-comic-neue")
                 hlwm-run-or-raise
                 pick-random-wallpaper
                 gcc-toolchain                  ;Needed for emacs-next?
                 notmuch-collect-tasks
                 notmuch-tag-mailinglists
                 (inbox-size emacs-next)
                 count-emails))

 (services
  (list
   home-environment-service
   home-rofi-default-service
   home-dunst-default-service
   home-redshift-service
   home-xbindkeys-service
   home-zsh-service
   home-guile-service
   home-xmodmap-service
   home-openssh-service
   home-kitty-service

   ;; This has to be the first extension because it needs to be added to the
   ;; configuration last.
   (service home-zsh-syntax-highlighting-service-type)
   (service home-zsh-autosuggestions-service-type)

   (simple-service 'my-channel-service
                   home-channels-service-type
                   (list
                    (channel
                     (name 'oni)
                     (url "https://git.sr.ht/~ryuslash/guix-packages")
                     (introduction
                      (make-channel-introduction
                       "646573578b7adfbff415645fed201269076cebf6"
                       (openpgp-fingerprint
                        "061C C5C4 D936 C9A8 AECC  1A17 7D5C 407B 4350 25C1"))))
                    (channel
                     (name 'guix-gaming-games)
                     (url "https://gitlab.com/guix-gaming-channels/games.git")
                     (introduction
                      (make-channel-introduction
                       "c23d64f1b8cc086659f8781b27ab6c7314c5cca5"
                       (openpgp-fingerprint
                        "50F3 3E2E 5B0C 3D90 0424  ABE8 9BDC F497 A4BB CC7F"))))))

   (service home-polybar-service-type
            (home-polybar-configuration
             (bar "rincewind")))

   (service home-kdeconnect-service-type)
   (service home-syncthing-service-type))))