{
  pkgs,
  lib,
  config,
  ...
}:
with lib;
let
  cfg = config.passthrough.gnome;
  bg = ../../../share/54345906_p0.jpg;
in
mkIf cfg.enable {
  dconf.settings =
    let
      p = "org/gnome";
      pd = "${p}/desktop";
      ps = "${p}/shell";
      pse = "${ps}/extensions";
      ptl = "${p}/terminal/legacy";
      ptlp = "${ptl}/profiles:";
    in
    {
      "${pd}/peripherals/mouse".natural-scroll = true;
      "${pd}/peripherals/touchpad".tap-to-click = true;
      "${p}/epiphany".ask-for-default = false;
      "${p}/evolution-data-server".migrated = true;

      "${p}/nautilus/preferences" = {
        default-folder-viewer = "icon-view";
        migrated-gtk-settings = true;
        search-filter-time-type = "last_modified";
      };

      "${pd}/background" = {
        color-shading-type = "solid";
        picture-options = "zoom";
        picture-uri = "file://${bg}";
        picture-uri-dark = "file://${bg}";
        primary-color = "#000000000000";
        secondary-color = "#000000000000";
      };

      "${pd}/interface" = {
        color-scheme = "prefer-dark";
        cursor-theme = "Bibata-Modern-Classic";
        font-antialiasing = "grayscale";
        font-hinting = "slight";
        gtk-theme = "adw-gtk3-dark";
        icon-theme = "Papirus-Dark";
      };

      "${pd}/screensaver" = {
        color-shading-type = "solid";
        lock-enabled = false;
        picture-options = "zoom";
        picture-uri = "file://${bg}";
        primary-color = "#000000000000";
        secondary-color = "#000000000000";
      };

      "${pd}/wm/preferences" = {
        action-double-click-titlebar = "toggle-maximize";
        action-middle-click-titlebar = "minimize";
        button-layout = "close:appmenu";
        resize-with-right-button = true;
      };

      "${pd}/wm/keybindings" = {
        panel-run-dialog = [ ];
        begin-resize = [ "<Super>r" ];
        close = [ "<Shift><Super>q" ];
        minimize = [ "<Super>BackSpace" ];
        move-to-workspace-1 = [ "<Shift><Super>1" ];
        move-to-workspace-2 = [ "<Shift><Super>2" ];
        move-to-workspace-3 = [ "<Shift><Super>3" ];
        move-to-workspace-4 = [ "<Shift><Super>4" ];
        move-to-workspace-left = [ "<Shift><Super>h" ];
        move-to-workspace-right = [ "<Shift><Super>l" ];
        switch-to-workspace-1 = [ "<Super>1" ];
        switch-to-workspace-2 = [ "<Super>2" ];
        switch-to-workspace-3 = [ "<Super>3" ];
        switch-to-workspace-4 = [ "<Super>4" ];
        toggle-maximized = [ "<Super>f" ];
      };

      "${ps}/keybindings" = {
        switch-to-application-1 = [ ];
        switch-to-application-2 = [ ];
        switch-to-application-3 = [ ];
        switch-to-application-4 = [ ];
        switch-to-application-5 = [ ];
        switch-to-application-6 = [ ];
        switch-to-application-7 = [ ];
        switch-to-application-8 = [ ];
        switch-to-application-9 = [ ];
        toggle-application-view = [ "<Super>d" ];
      };

      "${p}/settings-daemon/plugins/media-keys" = {
        custom-keybindings = [
          "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
          "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/"
        ];
        logout = [ ];
        screensaver = [ "<Control><Alt>l" ];
      };

      "${p}/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
        binding = "<Super>Return";
        command = "kgx";
        name = "Launch console";
      };

      "${p}/settings-daemon/plugins/media-keys/custom-keybindings/custom1" = {
        binding = "<Super>q";
        command = "google-chrome-stable";
        name = "Launch Google Chrome";
      };

      "${ptlp}" = {
        #default = "95894cfd-82f7-430d-af6e-84d168bc34f5";
        list = [
          "de8a9081-8352-4ce4-9519-5de655ad9361"
          "71a9971e-e829-43a9-9b2f-4565c855d664"
          "5083e06b-024e-46be-9cd2-892b814f1fc8"
          "95894cfd-82f7-430d-af6e-84d168bc34f5"
        ];
      };

      "${ptlp}/:5083e06b-024e-46be-9cd2-892b814f1fc8" = {
        background-color = "#24273a";
        cursor-background-color = "#f4dbd6";
        cursor-colors-set = true;
        cursor-foreground-color = "#24273a";
        foreground-color = "#cad3f5";
        highlight-background-color = "#24273a";
        highlight-colors-set = true;
        highlight-foreground-color = "#5b6078";
        palette = [
          "#494d64"
          "#ed8796"
          "#a6da95"
          "#eed49f"
          "#8aadf4"
          "#f5bde6"
          "#8bd5ca"
          "#b8c0e0"
          "#5b6078"
          "#ed8796"
          "#a6da95"
          "#eed49f"
          "#8aadf4"
          "#f5bde6"
          "#8bd5ca"
          "#a5adcb"
        ];
        use-theme-colors = false;
        visible-name = "Catppuccin Macchiato";
      };

      "${ptlp}/:71a9971e-e829-43a9-9b2f-4565c855d664" = {
        background-color = "#303446";
        cursor-background-color = "#f2d5cf";
        cursor-colors-set = true;
        cursor-foreground-color = "#303446";
        default-size-columns = 150;
        default-size-rows = 35;
        foreground-color = "#c6d0f5";
        highlight-background-color = "#303446";
        highlight-colors-set = true;
        highlight-foreground-color = "#626880";
        palette = [
          "#51576d"
          "#e78284"
          "#a6d189"
          "#e5c890"
          "#8caaee"
          "#f4b8e4"
          "#81c8be"
          "#b5bfe2"
          "#626880"
          "#e78284"
          "#a6d189"
          "#e5c890"
          "#8caaee"
          "#f4b8e4"
          "#81c8be"
          "#a5adce"
        ];
        use-theme-colors = false;
        visible-name = "Catppuccin Frappe";
      };

      "${ptlp}/:95894cfd-82f7-430d-af6e-84d168bc34f5" = {
        background-color = "#1e1e2e";
        cursor-background-color = "#f5e0dc";
        cursor-colors-set = true;
        cursor-foreground-color = "#1e1e2e";
        foreground-color = "#cdd6f4";
        highlight-background-color = "#1e1e2e";
        highlight-colors-set = true;
        highlight-foreground-color = "#585b70";
        palette = [
          "#45475a"
          "#f38ba8"
          "#a6e3a1"
          "#f9e2af"
          "#89b4fa"
          "#f5c2e7"
          "#94e2d5"
          "#bac2de"
          "#585b70"
          "#f38ba8"
          "#a6e3a1"
          "#f9e2af"
          "#89b4fa"
          "#f5c2e7"
          "#94e2d5"
          "#a6adc8"
        ];
        use-theme-colors = false;
        visible-name = "Catppuccin Mocha";
      };

      "${ptlp}/:de8a9081-8352-4ce4-9519-5de655ad9361" = {
        background-color = "#eff1f5";
        cursor-background-color = "#dc8a78";
        cursor-colors-set = true;
        cursor-foreground-color = "#eff1f5";
        foreground-color = "#4c4f69";
        highlight-background-color = "#eff1f5";
        highlight-colors-set = true;
        highlight-foreground-color = "#acb0be";
        palette = [
          "#5c5f77"
          "#d20f39"
          "#40a02b"
          "#df8e1d"
          "#1e66f5"
          "#ea76cb"
          "#179299"
          "#acb0be"
          "#6c6f85"
          "#d20f39"
          "#40a02b"
          "#df8e1d"
          "#1e66f5"
          "#ea76cb"
          "#179299"
          "#bcc0cc"
        ];
        use-theme-colors = false;
        visible-name = "Catppuccin Latte";
      };

      "${ps}" = {
        disabled-extensions = [
          "light-style@gnome-shell-extensions.gcampax.github.com"
          "places-menu@gnome-shell-extensions.gcampax.github.com"
          "windowsNavigator@gnome-shell-extensions.gcampax.github.com"
          "window-list@gnome-shell-extensions.gcampax.github.com"
          "workspace-indicator@gnome-shell-extensions.gcampax.github.com"
          "dash-to-dock@micxgx.gmail.com"
        ];
        enabled-extensions = [
          "user-theme@gnome-shell-extensions.gcampax.github.com"
          "apps-menu@gnome-shell-extensions.gcampax.github.com"
          "drive-menu@gnome-shell-extensions.gcampax.github.com"
          "appindicatorsupport@rgcjonas.gmail.com"
          "dash-to-panel@jderose9.github.com"
          "caffeine@patapon.info"
          "PrivacyMenu@stuarthayhurst"
        ];
        last-selected-power-profile = "performance";
        welcome-dialog-last-shown-version = "45.3";
      };

      #"${pse}/user-theme".name = "catppuccin-mocha-pink-compact";

      "${pse}/caffeine" = {
        screen-blank = "never";
      };

      "${pse}/dash-to-dock" = {
        background-opacity = 0.80000000000000004;
        dash-max-icon-size = 48;
        dock-position = "BOTTOM";
        height-fraction = 0.90000000000000002;
        multi-monitor = false;
        running-indicator-style = "DOTS";
        custom-theme-shrink = true;
      };

      "${pse}/dash-to-panel" = {
        animate-appicon-hover = false;
        animate-appicon-hover-animation-type = "SIMPLE";
        appicon-margin = 0;
        appicon-padding = 4;
        appicon-style = "NORMAL";
        available-monitors = [ 0 ];
        dot-position = "BOTTOM";
        dot-style-focused = "METRO";
        dot-style-unfocused = "DOTS";
        group-apps = true;
        hide-overview-on-startup = true;
        hotkeys-overlay-combo = "TEMPORARILY";
        intellihide = true;
        intellihide-behaviour = "FOCUSED_WINDOWS";
        intellihide-hide-from-windows = true;
        isolate-workspaces = false;
        leftbox-padding = -1;
        overview-click-to-exit = true;
        panel-anchors = ''{"0":"MIDDLE"}'';
        panel-element-positions = ''{"0":[{"element":"showAppsButton","visible":true,"position":"stackedTL"},{"element":"activitiesButton","visible":true,"position":"stackedTL"},{"element":"leftBox","visible":false,"position":"stackedTL"},{"element":"taskbar","visible":true,"position":"centerMonitor"},{"element":"centerBox","visible":true,"position":"stackedBR"},{"element":"rightBox","visible":true,"position":"stackedBR"},{"element":"dateMenu","visible":true,"position":"stackedBR"},{"element":"systemMenu","visible":true,"position":"stackedBR"},{"element":"desktopButton","visible":false,"position":"stackedBR"}]}'';
        panel-lengths = ''{"0":100}'';
        panel-positions = ''{"0":"BOTTOM"}'';
        panel-sizes = ''{"0":42}'';
        primary-monitor = 0;
        secondarymenu-contains-showdetails = true;
        show-showdesktop-hover = true;
        status-icon-padding = -1;
        stockgs-force-hotcorner = false;
        stockgs-keep-dash = false;
        stockgs-keep-top-panel = false;
        stockgs-panelbtn-click-only = false;
        trans-bg-color = "#2a2a2a";
        trans-dynamic-anim-target = 1.0;
        trans-dynamic-behavior = "MAXIMIZED_WINDOWS";
        trans-gradient-bottom-color = "#000000";
        trans-gradient-bottom-opacity = 0.5;
        trans-gradient-top-opacity = 0.0;
        trans-panel-opacity = 0.0;
        trans-use-custom-bg = true;
        trans-use-custom-gradient = true;
        trans-use-custom-opacity = true;
        trans-use-dynamic-opacity = true;
        tray-padding = -1;
        window-preview-title-position = "TOP";
      };
    };
}