Author | SHA1 | Message | Date |
---|---|---|---|
Martin Klimeš | 0672c4adf5 | migrated to new repo https://git.nekoit.xyz/klimi/nixos | 5 years ago |
Martin Klimeš | a6c1936b77 | I am Idiot. I am sorry | 5 years ago |
@ -1,140 +0,0 @@ | |||||
# Edit this configuration file to define what should be installed on | |||||
# your system. Help is available in the configuration.nix(5) man page | |||||
# and in the NixOS manual (accessible by running ‘nixos-help’). | |||||
{ config, pkgs, ... }: | |||||
let | |||||
userName = "klimi"; | |||||
name = "Martin Klimeš <Klimi>"; | |||||
email = "klimi@sitischu.com"; | |||||
hostName = "nixos"; | |||||
timeZone = "Europe/Prague"; | |||||
dots = "/home/klimi/dotfiles/dotfiles/"; | |||||
#home-manager = builtins.fetchGit { | |||||
# url = "https://github.com/rycee/home-manager.git"; | |||||
# rev = "dd94a849df69fe62fe2cb23a74c2b9330f1189ed"; # CHANGEME | |||||
# ref = "release-18.09"; | |||||
#}; | |||||
in { | |||||
imports = [ # Include the results of the hardware scan. | |||||
./hardware-configuration.nix | |||||
#"${home-manager}/nixos" | |||||
#<home-manager/nixos> | |||||
./user.nix | |||||
./machines/G560.nix | |||||
]; | |||||
# Linux kernel Latest | |||||
boot.kernelPackages = pkgs.linuxPackages_latest; | |||||
# Use the GRUB 2 boot loader. | |||||
# boot.loader.grub.efiSupport = true; | |||||
# boot.loader.grub.efiInstallAsRemovable = true; | |||||
# boot.loader.efi.efiSysMountPoint = "/boot/efi"; | |||||
# Define on which hard drive you want to install Grub. | |||||
networking = { | |||||
hostName = hostName; | |||||
networkmanager.enable = true; | |||||
}; | |||||
# 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"; | |||||
# Select internationalisation properties. | |||||
i18n = { | |||||
consoleFont = "Lat2-Terminus16"; | |||||
consoleKeyMap = "uk"; | |||||
defaultLocale = "en_GB.UTF-8"; | |||||
# consoleUseXkbConfig = true; WELL IDK | |||||
}; | |||||
# Set your time zone. | |||||
time.timeZone = timeZone; | |||||
# List packages installed in system profile. To search, run: # $ nix search wget | |||||
environment.systemPackages = with pkgs; [ | |||||
wget | |||||
vim | |||||
git | |||||
killall | |||||
acpi | |||||
gnumake | |||||
gcc | |||||
xorg.libxcb.dev | |||||
wirelesstools | |||||
]; | |||||
# Some programs need SUID wrappers, can be configured further or are | |||||
# started in user sessions. | |||||
# programs.mtr.enable = true; | |||||
# programs.gnupg.agent = { enable = true; enableSSHSupport = true; }; | |||||
# List services that you want to enable: | |||||
# Enable the OpenSSH daemon. | |||||
# services.openssh.enable = true; | |||||
nixpkgs.config = { | |||||
allowUnfree = true; | |||||
}; | |||||
# Open ports in the firewall. | |||||
networking.firewall.allowedTCPPorts = [ 22000 ]; | |||||
# networking.firewall.allowedUDPPorts = [ ... ]; | |||||
# Or disable the firewall altogether. | |||||
# networking.firewall.enable = false; | |||||
# Enable CUPS to print documents. | |||||
# services.printing.enable = true; | |||||
# Enable sound. | |||||
sound.enable = true; | |||||
hardware.pulseaudio.enable = true; | |||||
# Enable the X11 windowing system. | |||||
# services.xserver.enable = true; | |||||
# services.xserver.layout = "us"; | |||||
# services.xserver.xkbOptions = "eurosign:e"; | |||||
services.xserver = { | |||||
enable = true; | |||||
layout = "gb"; | |||||
xkbOptions = "compose:sclk,ctrl:nocaps"; | |||||
displayManager.sddm.enable = true; | |||||
windowManager.bspwm = { | |||||
enable = true; | |||||
#configFile = "${dots}bspwmrc"; | |||||
#sxhkd.configFile = "${dots}sxhkdrc"; | |||||
#sxhkd.configFile = "/home/klimi/dotfiles/dotfiles/sxhkdrc"; | |||||
########################################################### | |||||
# this doesnt work so i will try to do it in home-manager # | |||||
########################################################### | |||||
}; | |||||
}; | |||||
# Enable touchpad support. | |||||
services.xserver.libinput.enable = true; | |||||
# Enable the KDE Desktop Environment. | |||||
# services.xserver.displayManager.sddm.enable = true; | |||||
# services.xserver.desktopManager.plasma5.enable = true; | |||||
# Define a user account. Don't forget to set a password with ‘passwd’. | |||||
# in user.nix | |||||
# This value determines the NixOS release with which your system is to be | |||||
# compatible, in order to avoid breaking some software such as database | |||||
# servers. You should change this only after NixOS release notes say you | |||||
# should. | |||||
system.stateVersion = "19.03"; # Did you read the comment? | |||||
} |
@ -1,32 +0,0 @@ | |||||
# 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, ... }: | |||||
{ | |||||
imports = | |||||
[ <nixpkgs/nixos/modules/installer/scan/not-detected.nix> | |||||
]; | |||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" "sr_mod" ]; | |||||
boot.initrd.kernelModules = [ ]; | |||||
boot.kernelModules = [ "kvm-intel" ]; | |||||
boot.extraModulePackages = [ ]; | |||||
fileSystems."/" = | |||||
{ device = "/dev/disk/by-uuid/f0cc2b2c-8370-4319-81cd-dd66a2f15e42"; | |||||
fsType = "ext4"; | |||||
}; | |||||
fileSystems."/boot" = | |||||
{ device = "/dev/disk/by-uuid/DAD9-70D3"; | |||||
fsType = "vfat"; | |||||
}; | |||||
swapDevices = | |||||
[ { device = "/dev/disk/by-uuid/c4e402ad-8efb-4b49-bc1d-9201a1b485aa"; } | |||||
]; | |||||
nix.maxJobs = lib.mkDefault 12; | |||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; | |||||
} |
@ -1,139 +0,0 @@ | |||||
# Edit this configuration file to define what should be installed on | |||||
# your system. Help is available in the configuration.nix(5) man page | |||||
# and in the NixOS manual (accessible by running ‘nixos-help’). | |||||
{ config, pkgs, ... }: | |||||
let | |||||
userName = "klimi"; | |||||
name = "Martin Klimeš <Klimi>"; | |||||
email = "klimi@sitischu.com"; | |||||
hostName = "nixos"; | |||||
timeZone = "Europe/Prague"; | |||||
dots = "/home/klimi/dotfiles/dotfiles/"; | |||||
#home-manager = builtins.fetchGit { | |||||
# url = "https://github.com/rycee/home-manager.git"; | |||||
# rev = "dd94a849df69fe62fe2cb23a74c2b9330f1189ed"; # CHANGEME | |||||
# ref = "release-18.09"; | |||||
#}; | |||||
in { | |||||
imports = [ # Include the results of the hardware scan. | |||||
./desktop-hardware-configuration.nix | |||||
#"${home-manager}/nixos" | |||||
#<home-manager/nixos> | |||||
./user.nix | |||||
./machines/desktop.nix | |||||
]; | |||||
# Linux kernel Latest | |||||
boot.kernelPackages = pkgs.linuxPackages_latest; | |||||
# Use the GRUB 2 boot loader. | |||||
# boot.loader.grub.efiSupport = true; | |||||
# boot.loader.grub.efiInstallAsRemovable = true; | |||||
# boot.loader.efi.efiSysMountPoint = "/boot/efi"; | |||||
# Define on which hard drive you want to install Grub. | |||||
networking = { | |||||
networkmanager.enable = true; | |||||
}; | |||||
# 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"; | |||||
# Select internationalisation properties. | |||||
i18n = { | |||||
consoleFont = "Lat2-Terminus16"; | |||||
consoleKeyMap = "uk"; | |||||
defaultLocale = "en_GB.UTF-8"; | |||||
# consoleUseXkbConfig = true; WELL IDK | |||||
}; | |||||
# Set your time zone. | |||||
time.timeZone = timeZone; | |||||
# List packages installed in system profile. To search, run: # $ nix search wget | |||||
environment.systemPackages = with pkgs; [ | |||||
wget | |||||
vim | |||||
git | |||||
killall | |||||
acpi | |||||
gnumake | |||||
gcc | |||||
xorg.libxcb.dev | |||||
wirelesstools | |||||
]; | |||||
# Some programs need SUID wrappers, can be configured further or are | |||||
# started in user sessions. | |||||
# programs.mtr.enable = true; | |||||
# programs.gnupg.agent = { enable = true; enableSSHSupport = true; }; | |||||
# List services that you want to enable: | |||||
# Enable the OpenSSH daemon. | |||||
# services.openssh.enable = true; | |||||
nixpkgs.config = { | |||||
allowUnfree = true; | |||||
}; | |||||
# Open ports in the firewall. | |||||
networking.firewall.allowedTCPPorts = [ 22000 ]; | |||||
# networking.firewall.allowedUDPPorts = [ ... ]; | |||||
# Or disable the firewall altogether. | |||||
# networking.firewall.enable = false; | |||||
# Enable CUPS to print documents. | |||||
# services.printing.enable = true; | |||||
# Enable sound. | |||||
sound.enable = true; | |||||
hardware.pulseaudio.enable = true; | |||||
# Enable the X11 windowing system. | |||||
# services.xserver.enable = true; | |||||
# services.xserver.layout = "us"; | |||||
# services.xserver.xkbOptions = "eurosign:e"; | |||||
services.xserver = { | |||||
enable = true; | |||||
layout = "gb"; | |||||
xkbOptions = "compose:sclk,ctrl:nocaps"; | |||||
displayManager.sddm.enable = true; | |||||
windowManager.bspwm = { | |||||
enable = true; | |||||
#configFile = "${dots}bspwmrc"; | |||||
#sxhkd.configFile = "${dots}sxhkdrc"; | |||||
#sxhkd.configFile = "/home/klimi/dotfiles/dotfiles/sxhkdrc"; | |||||
########################################################### | |||||
# this doesnt work so i will try to do it in home-manager # | |||||
########################################################### | |||||
}; | |||||
}; | |||||
# Enable touchpad support. | |||||
services.xserver.libinput.enable = true; | |||||
# Enable the KDE Desktop Environment. | |||||
# services.xserver.displayManager.sddm.enable = true; | |||||
# services.xserver.desktopManager.plasma5.enable = true; | |||||
# Define a user account. Don't forget to set a password with ‘passwd’. | |||||
# in user.nix | |||||
# This value determines the NixOS release with which your system is to be | |||||
# compatible, in order to avoid breaking some software such as database | |||||
# servers. You should change this only after NixOS release notes say you | |||||
# should. | |||||
system.stateVersion = "19.03"; # Did you read the comment? | |||||
} |
@ -1,26 +0,0 @@ | |||||
# 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, ... }: | |||||
{ | |||||
imports = | |||||
[ <nixpkgs/nixos/modules/installer/scan/not-detected.nix> | |||||
]; | |||||
boot.initrd.availableKernelModules = [ "ehci_pci" "ahci" "sd_mod" ]; | |||||
boot.initrd.kernelModules = [ ]; | |||||
boot.kernelModules = [ "kvm-intel" ]; | |||||
boot.extraModulePackages = [ ]; | |||||
fileSystems."/" = | |||||
{ device = "/dev/disk/by-uuid/da28e3d4-4534-4da1-8e29-aa4196189825"; | |||||
fsType = "ext4"; | |||||
}; | |||||
swapDevices = | |||||
[ { device = "/dev/disk/by-uuid/7972a0ef-66b7-4d1b-a248-be0ddf8b55fa"; } | |||||
]; | |||||
nix.maxJobs = lib.mkDefault 4; | |||||
} |
@ -1 +0,0 @@ | |||||
# home.nix |
@ -1,6 +0,0 @@ | |||||
{ config, pkgs, ... }: | |||||
{ | |||||
boot.loader.grub.enable = true; | |||||
boot.loader.grub.version = 2; | |||||
boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only | |||||
} |
@ -1,71 +0,0 @@ | |||||
# Edit this configuration file to define what should be installed on | |||||
# your system. Help is available in the configuration.nix(5) man page | |||||
# and in the NixOS manual (accessible by running ‘nixos-help’). | |||||
{ config, pkgs, ... }: | |||||
{ | |||||
boot.loader.systemd-boot.enable = true; | |||||
boot.loader.efi.canTouchEfiVariables = true; | |||||
networking.hostName = "desktop"; # Define your hostname. | |||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. | |||||
# The global useDHCP flag is deprecated, therefore explicitly set to false here. | |||||
# Per-interface useDHCP will be mandatory in the future, so this generated config | |||||
# replicates the default behaviour. | |||||
networking.useDHCP = false; | |||||
networking.interfaces.enp0s31f6.useDHCP = true; | |||||
# Configure network proxy if necessary | |||||
# networking.proxy.default = "http://user:password@proxy:port/"; | |||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; | |||||
# Select internationalisation properties. | |||||
# Set your time zone. | |||||
# List packages installed in system profile. To search, run: | |||||
# $ nix search wget | |||||
# Some programs need SUID wrappers, can be configured further or are | |||||
# started in user sessions. | |||||
# programs.mtr.enable = true; | |||||
# programs.gnupg.agent = { enable = true; enableSSHSupport = true; }; | |||||
# List services that you want to enable: | |||||
# Enable the OpenSSH daemon. | |||||
# services.openssh.enable = true; | |||||
# Open ports in the firewall. | |||||
# networking.firewall.allowedTCPPorts = [ ... ]; | |||||
# networking.firewall.allowedUDPPorts = [ ... ]; | |||||
# Or disable the firewall altogether. | |||||
# networking.firewall.enable = false; | |||||
# Enable CUPS to print documents. | |||||
# services.printing.enable = true; | |||||
# Enable sound. | |||||
# Enable the X11 windowing system. | |||||
# services.xserver.enable = true; | |||||
# services.xserver.layout = "us"; | |||||
# services.xserver.xkbOptions = "eurosign:e"; | |||||
# Enable touchpad support. | |||||
# services.xserver.libinput.enable = true; | |||||
# Enable the KDE Desktop Environment. | |||||
# services.xserver.displayManager.sddm.enable = true; | |||||
# services.xserver.desktopManager.plasma5.enable = true; | |||||
# Define a user account. Don't forget to set a password with ‘passwd’. | |||||
# This value determines the NixOS release with which your system is to be | |||||
# compatible, in order to avoid breaking some software such as database | |||||
# servers. You should change this only after NixOS release notes say you | |||||
# should. | |||||
} | |||||
@ -1,155 +0,0 @@ | |||||
# user.nix | |||||
{ config, pkgs, ...}: | |||||
let | |||||
email = "klimi@sitischu.com"; | |||||
in | |||||
{ | |||||
imports = [<home-manager/nixos>]; | |||||
home-manager.useUserPackages = true; | |||||
# | |||||
#accounts.email.accounts.klimi.address # TODO FIX | |||||
users.users.klimi = { | |||||
isNormalUser = true; | |||||
extraGroups = [ "wheel" "networkmanager" "adbusers" ]; | |||||
home = "/home/klimi"; | |||||
description = "Martin Klimeš"; | |||||
}; | |||||
# services.xserver.videoDrivers = [ "nvidiaLegacy340" ]; | |||||
programs.adb.enable = true; | |||||
fonts.fonts = with pkgs; [ | |||||
noto-fonts | |||||
noto-fonts-cjk | |||||
noto-fonts-emoji | |||||
liberation_ttf | |||||
fira-code | |||||
fira-code-symbols | |||||
mplus-outline-fonts | |||||
dina-font | |||||
proggyfonts | |||||
siji | |||||
inconsolata | |||||
]; | |||||
######## POWER MANAGMENT ###### | |||||
powerManagement.enable = true; | |||||
# powerManagement.powertop.enable = true; | |||||
#powerManagement.cpuFreqGovernor = "powersave"; | |||||
## EXPERIMENTAL ## | |||||
nix.buildCores = 4; | |||||
# networking.networkmanager.wifi.powersave = true; | |||||
# powerManagement.cpufreq.max = 933000; | |||||
# compton -b --unredir-if-possible --backend xr_glx_hybrid --vsync --use-damage --glx-no-stencil | |||||
programs.bash.shellAliases = { | |||||
nrs = | |||||
"sudo nixos-rebuild switch -I nixos-config=/home/klimi/dotfiles/nix/desktop.nix"; | |||||
nrb = | |||||
"sudo nixos-rebuild boot -I nixos-config=/home/klimi/dotfiles/nix/desktop.nix"; | |||||
un = | |||||
"NIXPKGS_ALLOW_UNFREE=1 "; | |||||
}; | |||||
hardware.opengl.driSupport32Bit = true; | |||||
hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ]; | |||||
hardware.pulseaudio.support32Bit = true; | |||||
services.weechat.enable = true; | |||||
programs.screen.screenrc = '' | |||||
multiuser on | |||||
acladd normal_user | |||||
''; | |||||
services.printing.enable = true; | |||||
services.printing.drivers = [ pkgs.brgenml1lpr pkgs.brgenml1cupswrapper ]; | |||||
# TODO FIX | |||||
home-manager.users.klimi = { pkgs, ... }: | |||||
let | |||||
unstable = import (fetchTarball | |||||
"https://nixos.org/channels/nixos-unstable/nixexprs.tar.xz") { }; | |||||
in { | |||||
accounts.email.accounts.klimi.address = "klimi@sitischu.com"; | |||||
accounts.email.accounts.klimi.primary = true; | |||||
programs.alacritty.enable = true; | |||||
home.keyboard = { | |||||
layout = "gb"; | |||||
options = ["compose:sclk" "ctrl:nocaps"]; | |||||
}; | |||||
############# | |||||
# syncthing # | |||||
############# | |||||
services.syncthing.enable = true; | |||||
########## | |||||
# xcape # | |||||
########## | |||||
services.xcape.enable = true; | |||||
# Do not map Control_L because it gets mapped too late | |||||
# Mapping it co caps_lock suddenly works... america please explain | |||||
services.xcape.mapExpression = { Caps_Lock="Multi_key";}; | |||||
########### | |||||
# polybar # | |||||
########### | |||||
#services.polybar.enable = true; | |||||
#services.polybar.config = "${dots}/polybar.config"; | |||||
#services.polybar.script = "polybar top &"; | |||||
nixpkgs.config.allowUnfree = true; | |||||
nixpkgs.config.allowBroken = true; | |||||
programs.firefox.enable = true; | |||||
home = { | |||||
packages = [ | |||||
pkgs.mumble | |||||
pkgs.zathura # TODO FIX | |||||
pkgs.libreoffice-fresh | |||||
(pkgs.steam.override { extraPkgs = pkgs: [ pkgs.mono pkgs.gtk3 pkgs.gtk3-x11 pkgs.libgdiplus pkgs.zlib ];}) | |||||
pkgs.youtube-dl | |||||
pkgs.ffmpeg | |||||
pkgs.mpv | |||||
pkgs.paper-gtk-theme | |||||
pkgs.paper-icon-theme | |||||
pkgs.adapta-gtk-theme | |||||
pkgs.moka-icon-theme | |||||
pkgs.tango-icon-theme | |||||
pkgs.lxappearance | |||||
(pkgs.dunst.override {dunstify = true; }) | |||||
pkgs.transmission-gtk | |||||
pkgs.unzip | |||||
pkgs.ncat | |||||
pkgs.lm_sensors | |||||
pkgs.libnotify | |||||
pkgs.bc | |||||
pkgs.ranger | |||||
pkgs.htop | |||||
pkgs.stow # just stow for a workaround... | |||||
pkgs.neofetch | |||||
pkgs.rofi | |||||
pkgs.xclip | |||||
pkgs.maim | |||||
pkgs.file | |||||
pkgs.feh | |||||
unstable.riot-desktop | |||||
unstable.tdesktop | |||||
pkgs.ghc | |||||
pkgs.zile | |||||
pkgs.nethogs | |||||
pkgs.xcape | |||||
pkgs.lemonbar-xft | |||||
pkgs.xdotool | |||||
pkgs.ruby | |||||
pkgs.zsh | |||||
pkgs.iw | |||||
pkgs.xdo | |||||
pkgs.emacs | |||||
pkgs.tree | |||||
pkgs.gotop | |||||
]; | |||||
#file = { | |||||
# ".xinitrc".text = "exec bspwm"; | |||||
#}; | |||||
}; | |||||
}; | |||||
} |