mirror of
https://github.com/larstvei/nix-config.git
synced 2025-11-05 07:50:12 +00:00
Compare commits
No commits in common. "70a4b3195c93b5684f786f1d3f341358a518cb53" and "129292f28580349a5f11d6bf3b055b5cd600fd21" have entirely different histories.
70a4b3195c
...
129292f285
@ -202,11 +202,11 @@
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1757604536,
|
||||
"narHash": "sha256-q0zKPGRi5oW59IpYkxmjyRRLtqwsDaDFbb+oOcFpg2s=",
|
||||
"lastModified": 1757371422,
|
||||
"narHash": "sha256-4EEIRJE52cACFG2ik/+pU5vh8CKShwKLSSTaivGouGM=",
|
||||
"owner": "larstvei",
|
||||
"repo": "nanostatus",
|
||||
"rev": "9338759e13edeca8d8dc14a3b3b8485d5c2fa22e",
|
||||
"rev": "af0dc80af18569becbf40c77ac7380c2efc6bef6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
10
flake.nix
10
flake.nix
@ -45,7 +45,7 @@
|
||||
|
||||
modules = [
|
||||
home-manager.darwinModules.default
|
||||
./machines/macbook
|
||||
./hosts/macbook/configuration.nix
|
||||
nix-rosetta-builder.darwinModules.default
|
||||
{ nix-rosetta-builder.onDemand = true; }
|
||||
];
|
||||
@ -54,10 +54,14 @@
|
||||
|
||||
nixosConfigurations.thinkpad = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit emacs-larstvei nanostatus zen-browser; };
|
||||
specialArgs = {
|
||||
inherit nanostatus;
|
||||
inherit emacs-larstvei;
|
||||
inherit zen-browser;
|
||||
};
|
||||
modules = [
|
||||
home-manager.nixosModules.default
|
||||
./machines/thinkpad
|
||||
./hosts/thinkpad/configuration.nix
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
{
|
||||
imports = [
|
||||
../languages
|
||||
../tools
|
||||
./languages
|
||||
./tools
|
||||
];
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
@ -6,7 +6,6 @@
|
||||
pkgs.brightnessctl
|
||||
pkgs.grimblast
|
||||
pkgs.pamixer
|
||||
pkgs.wl-clipboard
|
||||
pkgs.wtype
|
||||
];
|
||||
|
||||
@ -18,6 +18,15 @@ let
|
||||
};
|
||||
in
|
||||
{
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = [
|
||||
pkgs.xdg-desktop-portal-hyprland
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
];
|
||||
config.hyprland."org.freedesktop.impl.portal.Settings" = "darkman";
|
||||
};
|
||||
|
||||
services.darkman = {
|
||||
enable = true;
|
||||
settings.portal = true;
|
||||
@ -1,4 +1,29 @@
|
||||
{ pkgs, emacs-larstvei, ... }:
|
||||
let
|
||||
v = import ./variables.nix;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../../system
|
||||
../../system/darwin
|
||||
];
|
||||
|
||||
system.primaryUser = v.username;
|
||||
|
||||
networking.hostName = v.hostName;
|
||||
|
||||
users.users.${v.username} = {
|
||||
home = v.userHome;
|
||||
shell = pkgs.fish;
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = { inherit emacs-larstvei; };
|
||||
users.${v.username}.imports = [ ../../home ];
|
||||
};
|
||||
|
||||
homebrew = {
|
||||
enable = true;
|
||||
onActivation = {
|
||||
5
hosts/macbook/variables.nix
Normal file
5
hosts/macbook/variables.nix
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
username = "larstvei";
|
||||
userHome = "/Users/larstvei";
|
||||
hostName = "larstvei-macbookpro";
|
||||
}
|
||||
94
hosts/thinkpad/configuration.nix
Normal file
94
hosts/thinkpad/configuration.nix
Normal file
@ -0,0 +1,94 @@
|
||||
{
|
||||
pkgs,
|
||||
nanostatus,
|
||||
emacs-larstvei,
|
||||
zen-browser,
|
||||
...
|
||||
}:
|
||||
let
|
||||
v = import ./variables.nix;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../../system
|
||||
../../system/nixos
|
||||
./keyboard.nix
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = {
|
||||
inherit nanostatus;
|
||||
inherit emacs-larstvei;
|
||||
inherit zen-browser;
|
||||
};
|
||||
users.${v.username}.imports = [
|
||||
../../home
|
||||
../../home/desktop
|
||||
];
|
||||
};
|
||||
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = "hyprland";
|
||||
user = v.username;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
users.users.${v.username} = {
|
||||
isNormalUser = true;
|
||||
description = "Lars Tveito";
|
||||
home = v.userHome;
|
||||
shell = pkgs.fish;
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
};
|
||||
|
||||
networking.hostName = v.hostName;
|
||||
|
||||
console.keyMap = "us";
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "Europe/Oslo";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
# Enable CUPS to print documents.
|
||||
services.printing.enable = true;
|
||||
|
||||
# Enable bluetooth.
|
||||
hardware.bluetooth.enable = true;
|
||||
|
||||
# Enable sound with pipewire.
|
||||
services.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "25.05"; # Did you read the comment?
|
||||
}
|
||||
5
hosts/thinkpad/variables.nix
Normal file
5
hosts/thinkpad/variables.nix
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
username = "larstvei";
|
||||
userHome = "/home/larstvei";
|
||||
hostName = "larstvei-think";
|
||||
}
|
||||
@ -1,23 +0,0 @@
|
||||
{ pkgs, emacs-larstvei, ... }:
|
||||
{
|
||||
imports = [
|
||||
../../modules/base
|
||||
../../modules/darwin
|
||||
];
|
||||
|
||||
system.primaryUser = "larstvei";
|
||||
|
||||
networking.hostName = "larstvei-macbookpro";
|
||||
|
||||
users.users.larstvei = {
|
||||
home = "/Users/larstvei";
|
||||
shell = pkgs.fish;
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = { inherit emacs-larstvei; };
|
||||
users.larstvei.imports = [ ../../modules/home ];
|
||||
};
|
||||
}
|
||||
@ -1,60 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
nanostatus,
|
||||
emacs-larstvei,
|
||||
zen-browser,
|
||||
...
|
||||
}:
|
||||
{
|
||||
imports = [
|
||||
./keyboard
|
||||
./hardware
|
||||
../../modules/base
|
||||
../../modules/nixos
|
||||
];
|
||||
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = { inherit nanostatus emacs-larstvei zen-browser; };
|
||||
users.larstvei.imports = [
|
||||
../../modules/home
|
||||
../../modules/desktop
|
||||
];
|
||||
};
|
||||
|
||||
networking.hostName = "larstvei-think";
|
||||
|
||||
users.users.larstvei = {
|
||||
isNormalUser = true;
|
||||
description = "Lars Tveito";
|
||||
home = "/home/larstvei";
|
||||
shell = pkgs.fish;
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
};
|
||||
|
||||
console.keyMap = "us";
|
||||
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
settings.default_session = {
|
||||
command = "hyprland";
|
||||
user = "larstvei";
|
||||
};
|
||||
};
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "25.05"; # Did you read the comment?
|
||||
}
|
||||
@ -1,54 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
|
||||
imports = [
|
||||
../fonts
|
||||
];
|
||||
|
||||
fonts = {
|
||||
fontconfig = {
|
||||
enable = true;
|
||||
defaultFonts = {
|
||||
serif = [ "Source Serif 4" ];
|
||||
sansSerif = [ "Source Sans 3" ];
|
||||
monospace = [ "Source Code Pro" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
programs._1password.enable = true;
|
||||
programs._1password-gui.enable = true;
|
||||
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
withUWSM = true;
|
||||
package = pkgs.hyprland;
|
||||
portalPackage = pkgs.xdg-desktop-portal-hyprland;
|
||||
};
|
||||
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = [
|
||||
pkgs.xdg-desktop-portal-hyprland
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
];
|
||||
config.hyprland."org.freedesktop.impl.portal.Settings" = "darkman";
|
||||
};
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
hardware.bluetooth.enable = true;
|
||||
services.printing.enable = true;
|
||||
|
||||
# Enable sound with pipewire.
|
||||
services.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
}
|
||||
@ -1,11 +1,15 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
|
||||
imports = [
|
||||
../fonts
|
||||
../homebrew
|
||||
../../home/fonts
|
||||
];
|
||||
|
||||
nix.linux-builder.enable = true;
|
||||
|
||||
programs.fish.enable = true;
|
||||
environment.shells = [ pkgs.fish ];
|
||||
|
||||
system = {
|
||||
stateVersion = 4;
|
||||
|
||||
@ -1,11 +1,5 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.fish.enable = true;
|
||||
environment.shells = [ pkgs.fish ];
|
||||
|
||||
time.timeZone = "Europe/Oslo";
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
nix = {
|
||||
package = pkgs.nix;
|
||||
|
||||
33
system/nixos/default.nix
Normal file
33
system/nixos/default.nix
Normal file
@ -0,0 +1,33 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
|
||||
imports = [
|
||||
../../home/fonts
|
||||
];
|
||||
|
||||
fonts = {
|
||||
fontconfig = {
|
||||
enable = true;
|
||||
defaultFonts = {
|
||||
serif = [ "Source Serif 4" ];
|
||||
sansSerif = [ "Source Sans 3" ];
|
||||
monospace = [ "Source Code Pro" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs.fish.enable = true;
|
||||
environment.shells = [ pkgs.fish ];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
programs._1password.enable = true;
|
||||
programs._1password-gui.enable = true;
|
||||
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
withUWSM = true;
|
||||
package = pkgs.hyprland;
|
||||
portalPackage = pkgs.xdg-desktop-portal-hyprland;
|
||||
};
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user