based loosely on https://github.com/tom-on-the-internet/system-configurationinky
parent
f554a9038b
commit
8f0f5b9bbf
@ -1,48 +0,0 @@
|
|||||||
{ config, pkgs, ... }:
|
|
||||||
|
|
||||||
let
|
|
||||||
user = "elnu";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
# Let Home Manager install and manage itself.
|
|
||||||
programs.home-manager.enable = true;
|
|
||||||
|
|
||||||
home = {
|
|
||||||
# Home Manager needs a bit of information about you and the
|
|
||||||
# paths it should manage.
|
|
||||||
username = "${user}";
|
|
||||||
homeDirectory = "/home/${user}";
|
|
||||||
|
|
||||||
# This value determines the Home Manager release that your
|
|
||||||
# configuration is compatible with. This helps avoid breakage
|
|
||||||
# when a new Home Manager release introduces backwards
|
|
||||||
# incompatible changes.
|
|
||||||
#
|
|
||||||
# You can update Home Manager without changing this value. See
|
|
||||||
# the Home Manager release notes for a list of state version
|
|
||||||
# changes in each release.
|
|
||||||
stateVersion = "22.05";
|
|
||||||
|
|
||||||
packages = with pkgs; [
|
|
||||||
# Command line utilities
|
|
||||||
wget
|
|
||||||
neofetch
|
|
||||||
ranger
|
|
||||||
trash-cli # aliased to rm in .bashrc
|
|
||||||
|
|
||||||
# GUI applications
|
|
||||||
firefox
|
|
||||||
discord
|
|
||||||
];
|
|
||||||
|
|
||||||
file = {
|
|
||||||
".bashrc" = {
|
|
||||||
source = ./.bashrc;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sessionVariables = {
|
|
||||||
EDITOR = "vim";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
@ -0,0 +1,53 @@
|
|||||||
|
{ lib, inputs, nixpkgs, home-manager, user, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
system = "x86_64-linux";
|
||||||
|
pkgs = import nixpkgs {
|
||||||
|
inherit system;
|
||||||
|
config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
lib = nixpkgs.lib;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
elnupad = lib.nixosSystem {
|
||||||
|
inherit system;
|
||||||
|
specialArgs = { inherit user; };
|
||||||
|
modules = [
|
||||||
|
./elnupad
|
||||||
|
./configuration.nix
|
||||||
|
./desktop.nix
|
||||||
|
home-manager.nixosModules.home-manager {
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.extraSpecialArgs = { inherit user; };
|
||||||
|
home-manager.users.${user} = {
|
||||||
|
imports = [
|
||||||
|
(import ./home.nix)
|
||||||
|
(import ./elnupad/home.nix)
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
virtualbox = lib.nixosSystem {
|
||||||
|
inherit system;
|
||||||
|
specialArgs = { inherit user; };
|
||||||
|
modules = [
|
||||||
|
./virtualbox
|
||||||
|
./configuration.nix
|
||||||
|
./desktop.nix
|
||||||
|
home-manager.nixosModules.home-manager {
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.extraSpecialArgs = { inherit user; };
|
||||||
|
home-manager.users.${user} = {
|
||||||
|
imports = [
|
||||||
|
(import ./home.nix)
|
||||||
|
(import ./virtualbox/home.nix)
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
xserver = {
|
||||||
|
enable = true;
|
||||||
|
libinput = {
|
||||||
|
enable = true;
|
||||||
|
touchpad = {
|
||||||
|
naturalScrolling = true;
|
||||||
|
tapping = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
xkbOptions = "caps:escape";
|
||||||
|
displayManager = {
|
||||||
|
lightdm.enable = true;
|
||||||
|
#sddm.enable = true;
|
||||||
|
defaultSession = "none+i3";
|
||||||
|
};
|
||||||
|
windowManager.i3 = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.i3-gaps;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sound.enable = true;
|
||||||
|
hardware.pulseaudio.enable = true;
|
||||||
|
nixpkgs.config.pulseaudio = true;
|
||||||
|
|
||||||
|
fonts.fonts = with pkgs; [
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-cjk
|
||||||
|
(nerdfonts.override { fonts = [ "FiraCode" ]; }) # required for icons
|
||||||
|
];
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [ (import ./hardware-configuration.nix) ];
|
||||||
|
|
||||||
|
boot.loader = {
|
||||||
|
efi = {
|
||||||
|
canTouchEfiVariables = true;
|
||||||
|
efiSysMountPoint = "/boot";
|
||||||
|
};
|
||||||
|
grub = {
|
||||||
|
efiSupport = true;
|
||||||
|
device = "nodev";
|
||||||
|
# 1024x768 is the closest supported resolution to X220's native 1366x768
|
||||||
|
# To see a list of supported GRUB resolutions, enter GRUB,
|
||||||
|
# press e, F2 to enter command mode, and then type videoinfo to see list
|
||||||
|
gfxmodeEfi = "1024x768";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.hostName = "elnupad";
|
||||||
|
|
||||||
|
time.timeZone = "America/Los_Angeles";
|
||||||
|
|
||||||
|
# Use X11 caps lock to escape remap in TTY
|
||||||
|
console.useXkbConfig = true;
|
||||||
|
services.xserver.xkbOptions = "caps:escape";
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,45 @@
|
|||||||
|
{ config, pkgs, user, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../vim.nix
|
||||||
|
../wallpaper.nix
|
||||||
|
../picom.nix
|
||||||
|
../i3.nix
|
||||||
|
../polybar
|
||||||
|
../rofi
|
||||||
|
../git.nix
|
||||||
|
../terminal.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
home = {
|
||||||
|
username = "${user}";
|
||||||
|
homeDirectory = "/home/${user}";
|
||||||
|
|
||||||
|
stateVersion = "22.05";
|
||||||
|
|
||||||
|
packages = with pkgs; [
|
||||||
|
# Command line utilities
|
||||||
|
wget
|
||||||
|
neofetch
|
||||||
|
ranger
|
||||||
|
trash-cli # aliased to rm in .bashrc
|
||||||
|
|
||||||
|
# GUI applications
|
||||||
|
firefox
|
||||||
|
discord
|
||||||
|
];
|
||||||
|
|
||||||
|
file = {
|
||||||
|
".bashrc" = {
|
||||||
|
source = ../.bashrc;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sessionVariables = {
|
||||||
|
EDITOR = "vim";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [ ./hardware-configuration.nix ];
|
||||||
|
|
||||||
|
boot.loader.grub = {
|
||||||
|
enable = true;
|
||||||
|
device = "/dev/sda";
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.hostName = "virtualbox";
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in new issue