1{
2 config,
3 lib,
4 pkgs,
5 ...
6}: {
7 imports = [
8 ./gnome
9 ];
10
11 options.myHome.desktop.enable = lib.mkOption {
12 default = config.myHome.desktop.gnome.enable;
13 description = "Desktop environment configuration.";
14 type = lib.types.bool;
15 };
16
17 config = lib.mkIf config.myHome.desktop.enable {
18 home.packages = [
19 pkgs.adwaita-icon-theme
20 ];
21
22 dconf = {
23 enable = true;
24
25 settings = {
26 "org/gnome/nm-applet".disable-connected-notifications = true;
27 "org/gtk/gtk4/settings/file-chooser".sort-directories-first = true;
28 "org/gtk/settings/file-chooser".sort-directories-first = true;
29 };
30 };
31
32 gtk.gtk3.bookmarks = [
33 "file://${config.xdg.userDirs.documents}"
34 "file://${config.xdg.userDirs.download}"
35 "file://${config.xdg.userDirs.music}"
36 "file://${config.xdg.userDirs.videos}"
37 "file://${config.xdg.userDirs.pictures}"
38 ];
39
40 xdg.userDirs = {
41 enable = true;
42 createDirectories = true;
43 desktop = lib.mkDefault "${config.home.homeDirectory}/Desktop";
44 documents = lib.mkDefault "${config.home.homeDirectory}/Documents";
45 download = lib.mkDefault "${config.home.homeDirectory}/Downloads";
46 music = lib.mkDefault "${config.home.homeDirectory}/Music";
47 pictures = lib.mkDefault "${config.home.homeDirectory}/Pictures";
48 publicShare = lib.mkDefault "${config.home.homeDirectory}/Public";
49 templates = lib.mkDefault "${config.home.homeDirectory}/Templates";
50 videos = lib.mkDefault "${config.home.homeDirectory}/Videos";
51 };
52 };
53}