trying
This commit is contained in:
parent
9c47aba177
commit
2b198d1c4d
7 changed files with 298 additions and 44 deletions
|
@ -10,17 +10,16 @@
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
hardware.openrazer.enable = true;
|
||||||
|
hardware.openrazer.users = [ "emenel" ];
|
||||||
|
hardware.opengl.enable = true;
|
||||||
|
|
||||||
# Bootloader.
|
# Bootloader.
|
||||||
boot.loader.grub.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.grub.device = "/dev/sda";
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
boot.loader.grub.useOSProber = true;
|
boot.kernelPackages = pkgs.linuxPackages_zen;
|
||||||
|
|
||||||
networking.hostName = "thegibson"; # Define your hostname.
|
networking.hostName = "eddie";
|
||||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
|
||||||
|
|
||||||
# Configure network proxy if necessary
|
|
||||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
|
||||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
|
||||||
|
|
||||||
# Enable networking
|
# Enable networking
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
@ -33,6 +32,7 @@
|
||||||
|
|
||||||
nix.nixPath = [ "nixos-config=/home/emenel/source/nixos" ];
|
nix.nixPath = [ "nixos-config=/home/emenel/source/nixos" ];
|
||||||
|
|
||||||
|
nix.package = pkgs.nixFlakes;
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
|
||||||
# Enable the X11 windowing system
|
# Enable the X11 windowing system
|
||||||
|
@ -93,6 +93,7 @@
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
|
||||||
# Allow unfree packages
|
# Allow unfree packages
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
143
dotfile/dot_config/wezterm/wezterm.lua
Normal file
143
dotfile/dot_config/wezterm/wezterm.lua
Normal file
|
@ -0,0 +1,143 @@
|
||||||
|
local wezterm = require 'wezterm'
|
||||||
|
local config = wezterm.config_builder()
|
||||||
|
local act = wezterm.action
|
||||||
|
|
||||||
|
config.default_prog = { '/opt/homebrew/bin/fish', '-l' }
|
||||||
|
|
||||||
|
local bar = wezterm.plugin.require("https://github.com/adriankarlen/bar.wezterm")
|
||||||
|
|
||||||
|
config.font_size = 13
|
||||||
|
config.font = wezterm.font {
|
||||||
|
family = 'JetBrains Mono',
|
||||||
|
weight = 'Medium'
|
||||||
|
}
|
||||||
|
|
||||||
|
config.color_scheme = 'Adventure'
|
||||||
|
|
||||||
|
config.colors = {
|
||||||
|
tab_bar = {
|
||||||
|
inactive_tab = {
|
||||||
|
fg_color = "#444444",
|
||||||
|
bg_color = "#000000"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
config.window_decorations = "RESIZE"
|
||||||
|
|
||||||
|
config.window_padding = {
|
||||||
|
left = 12,
|
||||||
|
right = 12,
|
||||||
|
top = 6,
|
||||||
|
bottom = 6,
|
||||||
|
}
|
||||||
|
|
||||||
|
config.cursor_thickness = 2
|
||||||
|
config.default_cursor_style = 'SteadyBar'
|
||||||
|
|
||||||
|
config.use_fancy_tab_bar = false
|
||||||
|
config.tab_bar_at_bottom = true
|
||||||
|
|
||||||
|
config.enable_kitty_keyboard = true
|
||||||
|
|
||||||
|
config.keys = {
|
||||||
|
{
|
||||||
|
key = ",",
|
||||||
|
mods = "SUPER",
|
||||||
|
action = act.SpawnCommandInNewWindow({
|
||||||
|
cwd = os.getenv("WEZTERM_CONFIG_DIR"),
|
||||||
|
args = { os.getenv("SHELL"), "-c", "$EDITOR $WEZTERM_CONFIG_FILE" },
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
key = 'Enter',
|
||||||
|
mods = 'SUPER',
|
||||||
|
action = act.SplitVertical { domain = 'CurrentPaneDomain' },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
key = 'Enter',
|
||||||
|
mods = 'SUPER|SHIFT',
|
||||||
|
action = act.SplitHorizontal { domain = 'CurrentPaneDomain' },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
key = 'k',
|
||||||
|
mods = 'SUPER',
|
||||||
|
action = act.Multiple {
|
||||||
|
act.ClearScrollback 'ScrollbackAndViewport',
|
||||||
|
act.SendKey { key = 'L', mods = 'CTRL' },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{key="LeftArrow", mods="SUPER|META", action=act.ActivateTabRelative(-1)},
|
||||||
|
{key="RightArrow", mods="SUPER|META", action=act.ActivateTabRelative(1)},
|
||||||
|
|
||||||
|
{key="UpArrow", mods="SUPER|META", action=act.ActivatePaneDirection("Prev")},
|
||||||
|
{key="DownArrow", mods="SUPER|META", action=act.ActivatePaneDirection("Next")},
|
||||||
|
|
||||||
|
{ key='h', mods='SUPER|META', action=wezterm.action{ActivatePaneDirection="Left"} },
|
||||||
|
{ key='l', mods='SUPER|META', action=wezterm.action{ActivatePaneDirection="Right"} },
|
||||||
|
{ key='j', mods='SUPER|META', action=wezterm.action{ActivatePaneDirection="Up"} },
|
||||||
|
{ key='k', mods='SUPER|META', action=wezterm.action{ActivatePaneDirection="Down"} },
|
||||||
|
}
|
||||||
|
|
||||||
|
local barconfig = {
|
||||||
|
position = "bottom",
|
||||||
|
max_width = 32,
|
||||||
|
separator = {
|
||||||
|
space = 2,
|
||||||
|
left_icon = wezterm.nerdfonts.fa_long_arrow_right,
|
||||||
|
right_icon = wezterm.nerdfonts.fa_long_arrow_left,
|
||||||
|
field_icon = wezterm.nerdfonts.indent_line,
|
||||||
|
},
|
||||||
|
modules = {
|
||||||
|
tabs = {
|
||||||
|
active_tab_fg = 4,
|
||||||
|
inactive_tab_fg = 8, -- overridden by tab colour customization near the top
|
||||||
|
},
|
||||||
|
workspace = {
|
||||||
|
enabled = true,
|
||||||
|
icon = wezterm.nerdfonts.cod_window,
|
||||||
|
color = 8,
|
||||||
|
},
|
||||||
|
leader = {
|
||||||
|
enabled = true,
|
||||||
|
icon = wezterm.nerdfonts.oct_rocket,
|
||||||
|
color = 2,
|
||||||
|
},
|
||||||
|
pane = {
|
||||||
|
enabled = false,
|
||||||
|
icon = wezterm.nerdfonts.cod_multiple_windows,
|
||||||
|
color = 7,
|
||||||
|
},
|
||||||
|
username = {
|
||||||
|
enabled = true,
|
||||||
|
icon = wezterm.nerdfonts.fa_user,
|
||||||
|
color = 6,
|
||||||
|
},
|
||||||
|
hostname = {
|
||||||
|
enabled = true,
|
||||||
|
icon = wezterm.nerdfonts.cod_server,
|
||||||
|
color = 8,
|
||||||
|
},
|
||||||
|
clock = {
|
||||||
|
enabled = false,
|
||||||
|
icon = wezterm.nerdfonts.md_calendar_clock,
|
||||||
|
color = 5,
|
||||||
|
},
|
||||||
|
cwd = {
|
||||||
|
enabled = true,
|
||||||
|
icon = wezterm.nerdfonts.oct_file_directory,
|
||||||
|
color = 7,
|
||||||
|
},
|
||||||
|
spotify = {
|
||||||
|
enabled = false,
|
||||||
|
icon = wezterm.nerdfonts.fa_spotify,
|
||||||
|
color = 3,
|
||||||
|
max_width = 64,
|
||||||
|
throttle = 15,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
bar.apply_to_config(config, barconfig)
|
||||||
|
|
||||||
|
return config
|
32
flake.lock
generated
32
flake.lock
generated
|
@ -7,32 +7,47 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719827415,
|
"lastModified": 1726989464,
|
||||||
"narHash": "sha256-pvh+1hStXXAZf0sZ1xIJbWGx4u+OGBC1rVx6Wsw0fBw=",
|
"narHash": "sha256-Vl+WVTJwutXkimwGprnEtXc/s/s8sMuXzqXaspIGlwM=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "f2e3c19867262dbe84fdfab42467fc8dd83a2005",
|
"rev": "2f23fa308a7c067e52dfcc30a0758f47043ec176",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"ref": "release-23.11",
|
"ref": "release-24.05",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix-flatpak": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1721549352,
|
||||||
|
"narHash": "sha256-nlXJa8RSOX0kykrIYW33ukoHYq+FOSNztHLLgqKwOp8=",
|
||||||
|
"owner": "gmodena",
|
||||||
|
"repo": "nix-flatpak",
|
||||||
|
"rev": "dbce39ea8664820ba9037caaf1e2fad365ed6b4b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "gmodena",
|
||||||
|
"repo": "nix-flatpak",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1720535198,
|
"lastModified": 1726969270,
|
||||||
"narHash": "sha256-zwVvxrdIzralnSbcpghA92tWu2DV2lwv89xZc8MTrbg=",
|
"narHash": "sha256-8fnFlXBgM/uSvBlLWjZ0Z0sOdRBesyNdH0+esxqizGc=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "205fd4226592cc83fd4c0885a3e4c9c400efabb5",
|
"rev": "23cbb250f3bf4f516a2d0bf03c51a30900848075",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"ref": "nixos-23.11",
|
"ref": "nixos-24.05",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -56,6 +71,7 @@
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
|
"nix-flatpak": "nix-flatpak",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable"
|
"nixpkgs-unstable": "nixpkgs-unstable"
|
||||||
}
|
}
|
||||||
|
|
19
flake.nix
19
flake.nix
|
@ -3,19 +3,23 @@
|
||||||
description = "My Home Manager configuration";
|
description = "My Home Manager configuration";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||||
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
home-manager.url = "github:nix-community/home-manager/release-23.11";
|
home-manager.url = "github:nix-community/home-manager/release-24.05";
|
||||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
|
nix-flatpak.url = "github:gmodena/nix-flatpak"; # unstable branch. Use github:gmodena/nix-flatpak/?ref=<tag> to pin releases.
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{ nixpkgs, home-manager, ... }: {
|
outputs = inputs@{ nixpkgs, home-manager, nix-flatpak, ... }: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
thegibson = nixpkgs.lib.nixosSystem {
|
eddie = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [ ./configuration.nix ];
|
modules = [
|
||||||
|
nix-flatpak.nixosModules.nix-flatpak
|
||||||
|
./configuration.nix
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -23,7 +27,10 @@
|
||||||
homeConfigurations = {
|
homeConfigurations = {
|
||||||
"emenel" = home-manager.lib.homeManagerConfiguration {
|
"emenel" = home-manager.lib.homeManagerConfiguration {
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
||||||
modules = [ ./home.nix ];
|
modules = [
|
||||||
|
nix-flatpak.homeManagerModules.nix-flatpak
|
||||||
|
./home.nix
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -8,26 +8,33 @@
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
|
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usbhid" "usb_storage" "sd_mod" ];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [ ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" =
|
||||||
{ device = "/dev/disk/by-uuid/91f25a2d-0d73-4d51-a798-e6c7bc88abee";
|
{ device = "/dev/disk/by-uuid/f5d53811-b478-4d20-91e0-4504c33848b4";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [ ];
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/E3CE-0A6E";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [ "fmask=0077" "dmask=0077" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices =
|
||||||
|
[ { device = "/dev/disk/by-uuid/f8a9a852-3ccb-4d00-8e2d-db0d68e688b2"; }
|
||||||
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
networking.useDHCP = lib.mkDefault true;
|
networking.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
}
|
}
|
||||||
|
|
55
home.nix
55
home.nix
|
@ -1,7 +1,18 @@
|
||||||
{ lib, pkgs, ... }:
|
{ nix-flatpak, lib, pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
home = {
|
home = {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
|
plexamp
|
||||||
|
audacity
|
||||||
|
supercollider-with-plugins
|
||||||
|
|
||||||
|
python3
|
||||||
|
sbcl
|
||||||
|
nodejs_22
|
||||||
|
|
||||||
|
kanata-with-cmd
|
||||||
|
wezterm
|
||||||
eza
|
eza
|
||||||
fish
|
fish
|
||||||
emacs
|
emacs
|
||||||
|
@ -11,14 +22,50 @@
|
||||||
bat
|
bat
|
||||||
jq
|
jq
|
||||||
starship
|
starship
|
||||||
|
|
||||||
|
bitwarden-cli
|
||||||
|
bitwarden-desktop
|
||||||
|
tailscale
|
||||||
|
|
||||||
|
gnome.gnome-software
|
||||||
|
polychromatic
|
||||||
|
|
||||||
|
discord
|
||||||
|
slack
|
||||||
|
|
||||||
|
gnomeExtensions.just-perfection
|
||||||
|
gnomeExtensions.dash-to-dock
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
username = "emenel";
|
username = "emenel";
|
||||||
homeDirectory = "/home/emenel";
|
homeDirectory = "/home/emenel";
|
||||||
|
|
||||||
stateVersion = "23.11";
|
stateVersion = "24.05";
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.home-manager.enable = true;
|
programs = {
|
||||||
programs.fish.enable = true;
|
home-manager.enable = true;
|
||||||
|
direnv = {
|
||||||
|
enable = true;
|
||||||
|
#enableFishIntegration = true; # see note on other shells below
|
||||||
|
nix-direnv.enable = true;
|
||||||
|
};
|
||||||
|
fish.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
|
||||||
|
xdg.systemDirs.data = [
|
||||||
|
"/home/emenel/.local/share/applications"
|
||||||
|
"/var/lib/flatpak/exports/share"
|
||||||
|
"/home/emenel/.local/share/flatpak/exports/share"
|
||||||
|
"/home/emenel/.nix-profile/share/applications"
|
||||||
|
];
|
||||||
|
|
||||||
|
services.flatpak.packages = [
|
||||||
|
"io.github.zen_browser.zen"
|
||||||
|
];
|
||||||
|
|
||||||
|
xdg.configFile."wezterm".source = ./dotfiles/dot_config/wezterm/wezterm.lua;
|
||||||
}
|
}
|
||||||
|
|
33
thegibson/hardware-configuration.nix
Normal file
33
thegibson/hardware-configuration.nix
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/91f25a2d-0d73-4d51-a798-e6c7bc88abee";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue