summaryrefslogtreecommitdiff
path: root/home-config/home-configuration.scm
blob: 62dec0f330f985f436ca6b9c03f702af3e73440f (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
95
96
97
98
;; 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 packages vim)
             (gnu packages gcc)
             (gnu services)
             (guix packages)
             (guix gexp)
             (gnu home services shells)
             (gnu home services))

(define my-neovim
  (package
    (inherit neovim)
    (native-inputs
      (modify-inputs (package-native-inputs neovim)
                     (prepend gcc-12)))))

(home-environment
  ;; Below is the list of packages that will show up in your
  ;; Home profile, under ~/.guix-home/profile.
  (packages (append (specifications->packages (list "bat"
                                                    "qrencode"
                                                    "binutils"
                                                    "gcc-toolchain"
                                                    "borg"
                                                    "python-msgpack"
                                                    "libreoffice"
                                                    "flatpak"
                                                    "gnupg"
                                                    "lsof"
                                                    "pavucontrol"
                                                    "bind:utils"
                                                    "firefox"
                                                    "irssi"
                                                    "font-cns11643"
                                                    "syncthing"
                                                    "perl"
                                                    "tor"
                                                    "unzip"
                                                    "alacritty"
                                                    "htop"
                                                    "curl"
                                                    "pandoc"
                                                    "texlive-base"
                                                    "texlive-txfonts"
                                                    "texlive-amsfonts"
                                                    "texlive-lm"
                                                    "texlive-lm-math"
                                                    "texlive-generic-iftex"
                                                    "texlive-unicode-math"
                                                    "texlive-fontspec"
                                                    "texlive-xcolor"
                                                    "texlive-latex-geometry"
                                                    "texlive-hyperref"
                                                    "texlive-latex-parskip"
                                                    "texlive-etoolbox"
                                                    "zathura"
                                                    "zathura-pdf-mupdf"
                                                    "fzf"
                                                    "weechat"
                                                    "icedove-minimal"
                                                    "gimp"
                                                    "python"
                                                    "python:tk"
                                                    "file"
                                                    "python-lsp-server"
                                                    "sqlite"
                                                    "git"))
                    (list my-neovim)))

  ;; 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") ("ll" . "ls -l")
                              ("ls" . "ls -p --color=auto")
                              ("python" . "python3")))
                   (bashrc (list (local-file
                                  "/home/ryan/.config/guix/home-config/bashrc"
                                  "bashrc")))
                   (bash-profile (list (local-file
                                        "/home/ryan/.config/guix/home-config/bash_profile"
                                        "bash_profile")))))
         (service home-xdg-configuration-files-service-type
                  `(("nvim/init.vim" ,(local-file "nvim/config/init.vim"))
                    ("nvim/after/ftplugin/markdown/custom.vim" ,(local-file "nvim/config/after/ftplugin/markdown/custom.vim"))
                    ("sway" ,(local-file "sway" #:recursive? #t))
                    ("waybar" ,(local-file "waybar" #:recursive? #t))
                    ("alacritty" ,(local-file "alacritty" #:recursive? #t)) ))
         (service home-files-service-type
                  `((".local/share/nvim/site/autoload/plug.vim" ,(local-file "nvim/plugin-manager/plug.vim")) )))))