fixes and extensions
This commit is contained in:
		| @@ -17,3 +17,10 @@ Don't forget to add the `#<host>` to the end of the target to specify the host c | ||||
|  | ||||
| ### Spectre | ||||
| Run `nixos-rebuild switch --flake <target>#spectre` to apply the configuration. | ||||
|  | ||||
|  | ||||
| ## Inspirations | ||||
| - https://github.com/the-nix-way/dev-templates | ||||
| - https://fasterthanli.me/series/building-a-rust-service-with-nix/part-10 | ||||
| - https://codeberg.org/theDoctor/nixOS-config | ||||
| - https://ianthehenry.com/posts/how-to-learn-nix/profiles/ | ||||
| @@ -9,6 +9,7 @@ | ||||
|     home-manager.inputs.nixpkgs.follows = "nixpkgs"; | ||||
|     # Managing flatpak apps | ||||
|     nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.4.1"; | ||||
|  | ||||
|   }; | ||||
|  | ||||
|   outputs = { | ||||
|   | ||||
| @@ -23,10 +23,7 @@ | ||||
|   boot.supportedFilesystems = [ "bcachefs" ]; | ||||
|   boot.kernelPackages = pkgs.linuxPackages_latest; | ||||
|  | ||||
|   networking.hostName = "ArchNix"; # Define your hostname. | ||||
|   # Pick only one of the below networking options. | ||||
|   # networking.wireless.enable = true;  # Enables wireless support via wpa_supplicant. | ||||
|   # networking.networkmanager.enable = true;  # Easiest to use and most distros use this by default. | ||||
|   networking.hostName = "Nixtre"; | ||||
|  | ||||
|   # Set your time zone. | ||||
|   time.timeZone = "Europe/Berlin"; | ||||
|   | ||||
| @@ -4,8 +4,10 @@ | ||||
|     imports = [ | ||||
|         ./configuration.nix | ||||
|         ./hardware-configuration.nix | ||||
|         ../../modules/nixos/flatpak.nix | ||||
|         ../../modules/nixos/gdm.nix | ||||
|         ../../modules/nixos/pipewire.nix | ||||
|         ../../modules/nixos/podman.nix | ||||
|         ../../utils/binary-cache.nix | ||||
|         ../../utils/garbage-collection.nix | ||||
|  | ||||
|   | ||||
| @@ -7,6 +7,21 @@ | ||||
|     policies = { | ||||
|       BlockAboutConfig = true; | ||||
|       DefaultDownloadDirectory = "\${home}/Downloads"; | ||||
|       ExtensionSettings = with builtins; | ||||
|         let extension = shortId: uuid: { | ||||
|           name = uuid; | ||||
|           value = { | ||||
|             install_url = "https://addons.mozilla.org/en-US/firefox/downloads/latest/${shortId}/latest.xpi"; | ||||
|             installation_mode = "normal_installed"; | ||||
|           }; | ||||
|         }; | ||||
|         in listToAttrs [ | ||||
|           (extension "ublock-origin" "uBlock0@raymondhill.net") | ||||
|           (extension "tabliss" "extension@tabliss.io") | ||||
|           (extension "clearurls" "{74145f27-f039-47ce-a470-a662b129930a}") | ||||
|           (extension "keepassxc-browser" "keepassxc-browser@keepassxc.org") | ||||
|           (extension "ghostery" "firefox@ghostery.com") | ||||
|         ]; | ||||
|     }; | ||||
|  | ||||
|     ## Per-profile preferences | ||||
| @@ -41,14 +56,25 @@ | ||||
|         # Harden | ||||
|         "privacy.trackingprotection.enabled" = true; | ||||
|         "dom.security.https_only_mode" = true; | ||||
|  | ||||
|         # Disable Pocket | ||||
|         "extensions.pocket.enabled" = false; | ||||
|  | ||||
|         # Disable telemetry | ||||
|         "toolkit.telemetry.enabled" = false; | ||||
|  | ||||
|         # Remove bookmarks toolbar | ||||
|         "browser.toolbars.bookmarks.visibility" = "never"; | ||||
|  | ||||
|         # Restore session on startup | ||||
|         "browser.startup.page" = 3; | ||||
|  | ||||
|         # Automatically enable extensions | ||||
|         "extensions.autoDisableScopes" = 0; | ||||
|  | ||||
|        | ||||
|       }; | ||||
|      | ||||
|       # # Extensions | ||||
|       # extensions = with pkgs.inputs.firefox-addons; [ | ||||
|       #   ublock-origin | ||||
|       #   keepassxc-browser | ||||
|       #   ghostery | ||||
|       # ]; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
|   | ||||
| @@ -1,6 +1,22 @@ | ||||
| {pkgs, ...}: { | ||||
|   home.packages = with pkgs; [ | ||||
|     vscode | ||||
|     flutter | ||||
|   ]; | ||||
| {pkgs, ...}:  | ||||
| { | ||||
|   programs.vscode = { | ||||
|     enable = true; | ||||
|  | ||||
|     extensions = with pkgs.vscode-extensions; [ | ||||
|       # QOL | ||||
|       mhutchie.git-graph | ||||
|       redhat.vscode-yaml | ||||
|       github.copilot | ||||
|  | ||||
|       # python | ||||
|       ms-python.python | ||||
|       ms-python.isort | ||||
|       ms-python.debugpy | ||||
|       ms-python.vscode-pylance | ||||
|  | ||||
|       # Nix language | ||||
|       jnoortheen.nix-ide | ||||
|     ]; | ||||
|   }; | ||||
| } | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| {pkgs, ...}: | ||||
| {pkgs, lib,  ...}: | ||||
| with lib.hm.gvariant; | ||||
| { | ||||
|     ## Gnome extensions | ||||
| @@ -72,43 +72,5 @@ with lib.hm.gvariant; | ||||
|         show-windows-preview = true; | ||||
|     }; | ||||
|  | ||||
|     dconf.settings."org/gnome/shell/extensions/space-iflow-randomwallpaper" = { | ||||
|         auto-fetch = true; | ||||
|         # TODO: make this user agnostic | ||||
|         favorites-folder = "/home/remy/Pictures/wallpapers"; | ||||
|         hours = 12; | ||||
|         minutes = 0; | ||||
|         sources = [ "1725199048703" "1725199131523" ]; | ||||
|  | ||||
|         backend-connection = { | ||||
|             backend-connection-available = true; | ||||
|             clear-history = false; | ||||
|             open-folder = false; | ||||
|             pause-timer = false; | ||||
|             request-new-wallpaper = false; | ||||
|         }; | ||||
|  | ||||
|         sources = { | ||||
|             general = { | ||||
|                 "1725199048703" = { | ||||
|                     name = "Reddit"; | ||||
|                     type = 2; | ||||
|                 }; | ||||
|                 "1725199131523" = { | ||||
|                     name = "Unsplash"; | ||||
|                 }; | ||||
|             }; | ||||
|             reddit = { | ||||
|                 "1725199048703" = { | ||||
|                     allow-sfw = true; | ||||
|                     subreddits = "wallpaper,wallpapers,minimalwallpaper"; | ||||
|                 }; | ||||
|             }; | ||||
|             unsplash = { | ||||
|                 "1725199131523" = { | ||||
|                     keyword = "minmal"; | ||||
|                 }; | ||||
|             }; | ||||
|         } | ||||
|     }; | ||||
| } | ||||
							
								
								
									
										8
									
								
								modules/home-manager/obsidian.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								modules/home-manager/obsidian.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| {pkgs, ...}:  | ||||
| { | ||||
|     home.packages = [ | ||||
|         pkgs.obsidian | ||||
|     ]; | ||||
|     # obsidian options | ||||
|      | ||||
| } | ||||
							
								
								
									
										6
									
								
								modules/home-manager/quickshare.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								modules/home-manager/quickshare.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| {pkgs, ...}:  | ||||
| { | ||||
|     home.packages = [ | ||||
|         pkgs.rquickshare | ||||
|     ]; | ||||
| } | ||||
							
								
								
									
										15
									
								
								modules/home-manager/thunderbird.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								modules/home-manager/thunderbird.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | ||||
| {pkgs, ...}:  | ||||
| { | ||||
|  | ||||
|     programs.thunderbird = { | ||||
|         enable = true; | ||||
|         profiles = { | ||||
|             default.isDefault = true; | ||||
|         }; | ||||
|         settings = { | ||||
|             "privacy.donottrackheader.enabled" = true; | ||||
|             # TODO | ||||
|         }; | ||||
|     }; | ||||
|  | ||||
| } | ||||
							
								
								
									
										9
									
								
								modules/nixos/flatpak.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								modules/nixos/flatpak.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| { | ||||
|     config, | ||||
|     lib, | ||||
|     pkgs, | ||||
|     ... | ||||
| }: | ||||
| { | ||||
|     services.flatpak.enable = true; | ||||
| } | ||||
| @@ -28,12 +28,18 @@ | ||||
|         gnome.simple-scan | ||||
|         gnome.yelp | ||||
|         gnome.gnome-disk-utility | ||||
|         xterm | ||||
|         gnome.gnome-notes | ||||
|         gnome.gnome-weather | ||||
|         gnome-secrets | ||||
|         gnome.gnome-characters | ||||
|         gnome.gnome-font-viewer | ||||
|         gnome.gnome-system-monitor | ||||
|         gnome-text-editor | ||||
|         gnome-connections | ||||
|         gnome.gnome-clocks | ||||
|         baobab | ||||
|         gnome.gnome-contacts | ||||
|         gnome.gnome-logs | ||||
|     ]); | ||||
|  | ||||
| } | ||||
|   | ||||
							
								
								
									
										24
									
								
								modules/nixos/podman.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/nixos/podman.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| { | ||||
|     config, | ||||
|     lib, | ||||
|     pkgs, | ||||
|     ... | ||||
| }: | ||||
| { | ||||
|     virtualisation.containers.enable = true; | ||||
|     virtualisation = { | ||||
|       podman = { | ||||
|         enable = true; | ||||
|  | ||||
|         dockerCompat = false; | ||||
|  | ||||
|         # Required for containers under podman-compose to be able to talk to each other. | ||||
|         defaultNetwork.settings.dns_enabled = true; | ||||
|       }; | ||||
|     }; | ||||
|  | ||||
|     # Useful other development tools | ||||
|     environment.systemPackages = with pkgs; [ | ||||
|       podman-compose # start group of containers for dev | ||||
|     ]; | ||||
| } | ||||
| @@ -6,6 +6,8 @@ with lib.hm.gvariant; | ||||
|     ../modules/home-manager/browser.nix | ||||
|     ../modules/home-manager/code.nix | ||||
|     ../modules/home-manager/flatpaks.nix | ||||
|     ../modules/home-manager/thunderbird.nix | ||||
|     ../modules/home-manager/quickshare.nix | ||||
|     ../modules/home-manager/gnome-shell-customization.nix | ||||
|   ]; | ||||
|  | ||||
| @@ -39,17 +41,17 @@ with lib.hm.gvariant; | ||||
|  | ||||
|     "org/gnome/desktop/peripherals/keyboard" = { | ||||
|       numlock-state = true; | ||||
|     } | ||||
|     }; | ||||
|  | ||||
|     "org/gnome/desktop/peripherals/mouse" = { | ||||
|       natural-scroll = false; | ||||
|       speed = 0.20851063829787231; | ||||
|     } | ||||
|     }; | ||||
|  | ||||
|     "org/gnome/desktop/peripherals/touchpad" = { | ||||
|       tap-to-click = true; | ||||
|       two-finger-scrolling-enabled = true; | ||||
|       speed = 0.16872427983539096; | ||||
|     } | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user