Skip to content

Instantly share code, notes, and snippets.

@washort
Created February 26, 2019 16:17
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save washort/1a2c9438f0aa79848cbf0c5580c790c6 to your computer and use it in GitHub Desktop.
Save washort/1a2c9438f0aa79848cbf0c5580c790c6 to your computer and use it in GitHub Desktop.
emerac config
{ config, pkgs, ... }:
{
nixpkgs.config.allowUnfree = true;
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
../common.nix
/etc/nixos/secrets.nix
"${builtins.fetchTarball https://github.com/rycee/home-manager/archive/master.tar.gz}/nixos"
];
nixpkgs.overlays = [
(import (builtins.fetchTarball https://github.com/mozilla/nixpkgs-mozilla/archive/master.tar.gz))
];
boot.kernel.sysctl = { "kernel.perf_event_paranoid" = 1; };
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "emerac";
networking.networkmanager = {
enable = true;
dns = "dnsmasq";
};
hardware.bluetooth.enable = true;
hardware.u2f.enable = true;
hardware.trackpoint = {
enable = true;
emulateWheel = true;
device = "TPPS/2 Elan TrackPoint";
};
hardware.pulseaudio.enable = true;
hardware.pulseaudio.package = pkgs.pulseaudioFull;
# hardware.pulseaudio.extraConfig = "load-module module-alsa-sink device=hw:0,7";
environment.systemPackages = [ pkgs.xorg.xbacklight pkgs.VidyoDesktop ];
environment.pathsToLink = [ "/share/zsh" ];
virtualisation.docker.enable = true;
# virtualisation.virtualbox.host.enable = true;
networking.firewall.allowedTCPPorts = [ 22 22000 ];
programs.ssh.startAgent = true;
services = {
printing = {enable = true; drivers = [ pkgs.hplip ];};
tlp.enable = true;
fwupd.enable = true;
openssh.enable = true;
avahi = {enable = true; nssmdns = true; ipv6 = true;};
emacs.enable = true;
emacs.defaultEditor = true;
emacs.package = (import ../emacs.nix { inherit pkgs; });
xserver.enable = true;
xserver.layout = "us";
xserver.synaptics = {
enable = true;
palmDetect = true;
};
};
home-manager.users.washort = {
home.sessionVariables = {
TZ = "US/Central";
};
home.stateVersion = "19.03";
xsession.enable = true;
xsession.windowManager.awesome = {
enable = true;
luaModules = [
(pkgs.luaPackages.buildLuarocksPackage {
pname = "dbus_proxy";
version = "0.9.0-1";
src = pkgs.fetchurl {
url = https://luarocks.org/dbus_proxy-0.9.0-1.src.rock;
sha256 = "1nwfqdyq6pscq8xhk87fyhyr1n15h4kqv92lgp5nlkfqcs0pr5ms";
};
propagatedBuildInputs = [ pkgs.lua pkgs.luaPackages.lgi ];
buildType = "builtin";
})
];
};
programs = {
git = {
enable = true;
userEmail = "ashort@mozilla.com";
userName = "Allen Short";
};
ssh = {
enable = true;
controlMaster = "yes";
controlPersist = "10m";
};
zsh = {
enable = true;
enableAutosuggestions = true;
enableCompletion = true;
initExtra = ''
if [[ "$TERM" == "dumb" ]]
then
unsetopt zle
unsetopt prompt_cr
unsetopt prompt_subst
unfunction precmd
unfunction preexec
PS1='$ '
fi
'';
};
};
services = {
syncthing.enable = true;
redshift = {
enable = true;
latitude = "33.44";
longitude = "-86.73";
brightness.night = "0.6";
tray = true;
};
screen-locker = {
enable = true;
lockCmd = "${pkgs.i3lock}/bin/i3lock -n -c 000000";
};
random-background = {
enable = true;
imageDirectory = "%h/Wallpapers";
};
udiskie.enable = true;
};
xdg.dataFile = {
"fonts" = {
source = pkgs.fetchzip {
sha256 = "1hys10zibam4jk8sq3ppyk73j4ih2xd0kxjpdlq133ydqvz856m4";
url = "https://download.damieng.com/fonts/original/EnvyCodeR-PR7.zip";
};
target = "fonts/Envy Code R";
};
};
home.file = {
awesome = {
source = ./awesome;
target = ".config/awesome";
recursive = true;
};
emacsd = {
source = ../../../emacs.d;
target = ".emacs.d";
recursive = true;
};
Xresources = {
source = ./Xresources;
target = ".Xresources";
};
alacritty = {
source = ./alacritty/alacritty.yml;
target = ".config/alacritty/alacritty.yml";
};
};
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment