mac-nix
This commit is contained in:
@@ -2,39 +2,63 @@
|
||||
# your system. Help is available in the configuration.nix(5) man page, on
|
||||
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||
|
||||
{ pkgs, ... }:
|
||||
{ pkgs, lib, ... }:
|
||||
let
|
||||
plasma = false;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
../default.nix
|
||||
./gnome
|
||||
# ./gnome
|
||||
# ./cosmic
|
||||
];
|
||||
|
||||
hardware.asahi.enable = true;
|
||||
hardware.asahi.useExperimentalGPUDriver = true;
|
||||
hardware.asahi.peripheralFirmwareDirectory = ./firmware;
|
||||
hardware.asahi.setupAsahiSound = true;
|
||||
hardware.asahi = {
|
||||
enable = true;
|
||||
useExperimentalGPUDriver = true;
|
||||
peripheralFirmwareDirectory = ./firmware;
|
||||
setupAsahiSound = true;
|
||||
};
|
||||
|
||||
# Use the systemd-boot EFI boot loader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.systemd-boot.configurationLimit = 3;
|
||||
boot.loader.efi.canTouchEfiVariables = false;
|
||||
boot.loader = {
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
configurationLimit = 3;
|
||||
};
|
||||
efi.canTouchEfiVariables = lib.mkForce false;
|
||||
};
|
||||
|
||||
apps.discover-wrapped.enable = lib.mkDefault true;
|
||||
apps.discover-wrapped.enable = lib.mkDefault false;
|
||||
|
||||
boot.extraModprobeConfig = ''
|
||||
options hid_apple iso_layout=0
|
||||
'';
|
||||
|
||||
networking.hostName = "mac-nixos"; # Define your hostname.
|
||||
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
|
||||
# Networking configs
|
||||
networking = {
|
||||
hostName = "mac-nixos";
|
||||
|
||||
# Enable Network Manager
|
||||
networkmanager = {
|
||||
enable = lib.mkDefault true;
|
||||
wifi.powersave = lib.mkDefault false;
|
||||
settings.connectivity.uri = lib.mkDefault "http://nmcheck.gnome.org/check_network_status.txt";
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
displayManager.sddm.wayland.enable = lib.mkDefault true;
|
||||
displayManager.sddm.enable = lib.mkDefault true;
|
||||
desktopManager.plasma6.enable = lib.mkDefault true;
|
||||
displayManager.sddm.wayland.enable = lib.mkDefault plasma;
|
||||
displayManager.sddm.enable = lib.mkDefault plasma;
|
||||
desktopManager.plasma6.enable = lib.mkDefault plasma;
|
||||
|
||||
xserver = {
|
||||
enable = true;
|
||||
desktopManager.gnome.enable = lib.mkForce true;
|
||||
displayManager.gdm.enable = lib.mkForce true;
|
||||
};
|
||||
|
||||
# enable auto discovery of printers
|
||||
avahi = {
|
||||
@@ -44,7 +68,7 @@
|
||||
};
|
||||
|
||||
# Enable Flatpak
|
||||
flatpak.enable = lib.mkDefault true;
|
||||
flatpak.enable = lib.mkDefault false;
|
||||
};
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
@@ -56,11 +80,12 @@
|
||||
firefox
|
||||
tree
|
||||
neofetch
|
||||
gdm
|
||||
git
|
||||
box64
|
||||
#minecraft
|
||||
prismlauncher
|
||||
#vmware-horizon-client
|
||||
vmware-horizon-client
|
||||
distrobox
|
||||
podman
|
||||
];
|
||||
@@ -73,6 +98,11 @@
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
apple-cursor
|
||||
gnomeExtensions.dash-to-dock
|
||||
gnomeExtensions.arcmenu
|
||||
gnomeExtensions.appindicator
|
||||
gnomeExtensions.tiling-assistant
|
||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||
wget
|
||||
];
|
||||
@@ -81,6 +111,8 @@
|
||||
DBX_CONTAINER_MANAGER = "podman";
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnsupportedSystem = true;
|
||||
|
||||
# Copy the NixOS configuration file and link it from the resulting system
|
||||
# (/run/current-system/configuration.nix). This is useful in case you
|
||||
# accidentally delete configuration.nix.
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
specialisation.gnome.configuration = {
|
||||
|
||||
|
||||
home-manager.users.matt = import ./home.nix;
|
||||
apps.discover-wrapped.enable = false;
|
||||
@@ -19,7 +20,7 @@
|
||||
displayManager.defaultSession = "gnome";
|
||||
|
||||
# Enable Flatpak
|
||||
flatpak.enable = true;
|
||||
flatpak.enable = false;
|
||||
|
||||
# disable plasma
|
||||
displayManager.sddm.enable = false;
|
||||
@@ -29,4 +30,4 @@
|
||||
|
||||
# xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
home.packages = with pkgs; [
|
||||
nixfmt-rfc-style
|
||||
deadnix
|
||||
gdm
|
||||
gnomeExtensions.dash-to-dock
|
||||
gnomeExtensions.arcmenu
|
||||
gnomeExtensions.appindicator
|
||||
@@ -38,4 +39,4 @@
|
||||
"org/gtk/settings/file-chooser".clock-format = "12h";
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,22 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
gtkThemeSize = "compact";
|
||||
gtkThemeAccent = "all";
|
||||
gtkThemeVariant = "nord";
|
||||
gtkThemeColor = "dark";
|
||||
gtkTheme = "Colloid-Dark-Compact-Nord";
|
||||
gtkThemePkg = pkgs.colloid-gtk-theme.override {
|
||||
sizeVariants = [ gtkThemeSize ];
|
||||
colorVariants = [ gtkThemeColor ];
|
||||
themeVariants = [ gtkThemeAccent ];
|
||||
tweaks = [ gtkThemeVariant ];
|
||||
};
|
||||
iconThemeColor = "dark"; # "" "light" "dark"
|
||||
# iconThemeVariant = "default"; # "" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey"
|
||||
iconThemeScheme = "nord"; # "" "nord" "dracula" "gruvbox" "everforest" "catppuccin"
|
||||
iconTheme = "Colloid-${iconThemeScheme}-${iconThemeColor}";
|
||||
iconThemePkg = pkgs.colloid-icon-theme.override { schemeVariants = [ iconThemeScheme ]; };
|
||||
in
|
||||
{
|
||||
|
||||
home.username = "matt";
|
||||
@@ -50,9 +68,51 @@
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
home.packages = with pkgs; [
|
||||
apple-cursor
|
||||
nixfmt-rfc-style
|
||||
deadnix
|
||||
papirus-icon-theme
|
||||
gnomeExtensions.dash-to-dock
|
||||
gnomeExtensions.arcmenu
|
||||
gnomeExtensions.appindicator
|
||||
gnomeExtensions.tiling-assistant
|
||||
gnome-tweaks
|
||||
iconThemePkg
|
||||
gtkThemePkg
|
||||
orca-slicer
|
||||
vesktop
|
||||
vscodium
|
||||
];
|
||||
|
||||
dconf = {
|
||||
enable = true;
|
||||
settings = {
|
||||
"org/gnome/desktop/interface".clock-format = "12h";
|
||||
"org/gnome/desktop/interface".color-scheme = "prefer-dark";
|
||||
"org/gnome/desktop/interface".cursor-theme = "macOS-Monterey";
|
||||
"org/gnome/desktop/interface".enable-hot-corners = false;
|
||||
"org/gnome/desktop/interface".font-antialiasing = "grayscale";
|
||||
"org/gnome/desktop/interface".font-hinting = "slight";
|
||||
"org/gnome/desktop/interface".icon-theme = iconTheme;
|
||||
"org/gnome/desktop/interface".gtk-theme = gtkTheme;
|
||||
"org/gnome/desktop/peripherals/mouse".accel-profile = "flat";
|
||||
"org/gnome/desktop/peripherals/touchpad".two-finger-scrolling-enabled = true;
|
||||
"org/gnome/desktop/peripherals/touchpad".tap-to-click = true;
|
||||
"org/gnome/mutter".experimental-features = [
|
||||
"scale-monitor-framebuffer"
|
||||
"variable-refresh-rate"
|
||||
];
|
||||
"org/gnome/tweaks".show-extensions-notice = false;
|
||||
"org/gnome/shell/extensions/user-theme".name = gtkTheme;
|
||||
"org/gnome/shell".enabled-extensions = [
|
||||
"appindicatorsupport@rgcjonas.gmail.com"
|
||||
"arcmenu@arcmenu.com"
|
||||
"user-theme@gnome-shell-extensions.gcampax.github.com"
|
||||
"dash-to-dock@micxgx.gmail.com"
|
||||
"tiling-assistant@leleat-on-github"
|
||||
];
|
||||
"org/gtk/settings/file-chooser".clock-format = "12h";
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user