Merge branch 'makefu'

This commit is contained in:
lassulus 2015-08-23 16:53:38 +02:00
commit 65a2d75b14
15 changed files with 244 additions and 54 deletions

View File

@ -78,7 +78,7 @@ let
HOME = cfg.dataDir;
LC_ALL = "en_US.UTF-8";
LOCALE_ARCHIVE = "${pkgs.glibcLocales}/lib/locale/locale-archive";
SSL_CERT_FILE = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt";
SSL_CERT_FILE = "${pkgs.cacert}/etc/ca-bundle.crt";
};
serviceConfig = {
User = user.name;
@ -100,7 +100,6 @@ let
ExecStart = pkgs.writeScript "urlwatch" ''
#! /bin/sh
set -euf
from=${escapeShellArg cfg.from}
mailto=${escapeShellArg cfg.mailto}
urlsFile=${escapeShellArg urlsFile}

View File

@ -10,9 +10,12 @@
<nixpkgs/nixos/modules/profiles/qemu-guest.nix>
../2configs/base.nix
../2configs/cgit-retiolum.nix
../2configs/graphite-standalone.nix
# ../2configs/graphite-standalone.nix
../2configs/vm-single-partition.nix
../2configs/tinc-basic-retiolum.nix
../2configs/exim-retiolum.nix
../2configs/urlwatch.nix
];
krebs.build.host = config.krebs.hosts.pnp;
krebs.build.user = config.krebs.users.makefu;
@ -27,10 +30,14 @@
networking.firewall.allowedTCPPorts = [
# nginx runs on 80
80
# graphite-web runs on 8080, carbon cache runs on 2003 tcp and udp
80
8080 2003
# 8080 2003
# smtp
25
];
networking.firewall.allowedUDPPorts = [ 2003 ];
# networking.firewall.allowedUDPPorts = [ 2003 ];
}

View File

@ -0,0 +1,40 @@
#
#
#
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
../2configs/base.nix
../2configs/main-laptop.nix #< base-gui
../2configs/tinc-basic-retiolum.nix
#../2configs/sda-crypto-root.nix
../2configs/sda-crypto-root-home.nix
../2configs/zsh-user.nix
../2configs/exim-retiolum.nix
#../2configs/disable_v6.nix
# hardware specifics are in here
../2configs/tp-x220.nix
];
krebs.build.host = config.krebs.hosts.pornocauster;
krebs.build.user = config.krebs.users.makefu;
krebs.build.target = "root@pornocauster";
networking.firewall.allowedTCPPorts = [
25
];
krebs.build.deps = {
nixpkgs = {
#url = https://github.com/NixOS/nixpkgs;
# rev=$(curl https://nixos.org/channels/nixos-unstable/git-revision -L)
url = https://github.com/makefu/nixpkgs;
rev = "f5fe787f778b872c6b2221598501c9310cb83915";
};
};
}

View File

@ -11,17 +11,20 @@
../2configs/tinc-basic-retiolum.nix
../2configs/sda-crypto-root.nix
# hardware specifics are in here
../2configs/tp-x200.nix
../2configs/tp-x200.nix #< imports tp-x2x0.nix
../2configs/disable_v6.nix
../2configs/rad1o.nix
../2configs/zsh-user.nix
../2configs/exim-retiolum.nix
];
# not working in vm
krebs.build.host = config.krebs.hosts.tsp;
krebs.build.user = config.krebs.users.makefu;
krebs.build.target = "root@tsp";
krebs.exim-retiolum.enable = true;
networking.firewall.allowedTCPPorts = [
25
];
@ -31,8 +34,8 @@
#url = https://github.com/NixOS/nixpkgs;
# rev=$(curl https://nixos.org/channels/nixos-unstable/git-revision -L)
url = https://github.com/makefu/nixpkgs;
rev = "8b8b65da24f13f9317504e8bcba476f9161613fe";
#rev = "8b8b65da24f13f9317504e8bcba476f9161613fe";
rev = "f5fe787f778b872c6b2221598501c9310cb83915";
};
};
}

View File

@ -1,11 +1,15 @@
{ config, lib, pkgs, ... }:
##
# of course this name is a lie - it prepares a GUI environment close to my
# current configuration.
# of course this name is a lie
# - it prepares a GUI environment close to my
# current configuration,specifically:
#
# autologin with mainUser into awesome
##
# * autologin with mainUser into awesome
# * audio
# * terminus font
#
# if this is not enough, check out main-laptop.nix
with lib;
let
mainUser = config.krebs.build.user.name;
@ -28,14 +32,6 @@ in
displayManager.auto.user = mainUser;
desktopManager.xterm.enable = false;
};
services.redshift = {
enable = true;
latitude = "48.7";
longitude = "9.1";
};
## FONTS
# TODO: somewhere else?
i18n.consoleFont = "Lat2-Terminus16";
@ -49,14 +45,12 @@ in
environment.systemPackages = with pkgs;[
xlockmore
rxvt_unicode-with-plugins
vlc
firefox
chromium
];
# TODO: use mainUser
users.extraUsers.makefu.extraGroups = [ "audio" ];
users.extraUsers.${mainUser}.extraGroups = [ "audio" ];
hardware.pulseaudio = {
enable = true;
# systemWide = true;
enable = true;
# systemWide = true;
};
}

View File

@ -8,7 +8,7 @@ let
krebs-repos = mapAttrs make-krebs-repo {
stockholm = {
desc = "take all the computers hostage, they'll love you!";
desc = "Make all the systems into 1systems!";
};
};

View File

@ -0,0 +1,11 @@
{ config, lib, pkgs, ... }:
with lib;
{
krebs.exim-retiolum.enable = true;
environment.systemPackages = with pkgs; [
msmtp
mutt-kz
];
}

View File

@ -0,0 +1,23 @@
{ config, lib, pkgs, ... }:
# stuff for the main laptop
# this is pretty much nice-to-have and does
# not fit into base-gui
with lib;
{
imports = [ ./base-gui.nix ];
environment.systemPackages = with pkgs;[
vlc
firefox
chromium
keepassx
];
services.redshift = {
enable = true;
latitude = "48.7";
longitude = "9.1";
};
}

View File

@ -0,0 +1,39 @@
{ config, lib, pkgs, ... }:
# ssd #
# sda: bootloader grub2
# sda1: boot ext4 (label nixboot)
# sda2: cryptoluks -> lvm:
# / (main-root)
# /home (main-home)
with lib;
{
boot = {
loader.grub.enable =true;
loader.grub.version =2;
loader.grub.device = "/dev/sda";
initrd.luks.devices = [ { name = "main"; device = "/dev/sda2"; allowDiscards=true; }];
initrd.luks.cryptoModules = ["aes" "sha512" "sha1" "xts" ];
initrd.availableKernelModules = ["xhci_hcd" "ehci_pci" "ahci" "usb_storage" ];
};
fileSystems = {
"/" = {
device = "/dev/mapper/main-root";
fsType = "ext4";
options="defaults,discard";
};
# TODO: just import sda-crypto-root, add this device
"/home" = {
device = "/dev/mapper/main-home";
fsType = "ext4";
options="defaults,discard";
};
"/boot" = {
device = "/dev/disk/by-label/nixboot";
fsType = "ext4";
options="defaults,discard";
};
};
}

View File

@ -2,36 +2,13 @@
with lib;
{
#services.xserver = {
# videoDriver = "intel";
#};
imports = [ ./tp-x2x0.nix ];
boot = {
kernelModules = [ "tp_smapi" "msr" ];
extraModulePackages = [ config.boot.kernelPackages.tp_smapi ];
};
#networking.wireless.enable = true;
hardware.enableAllFirmware = true;
nixpkgs.config.allowUnfree = true;
zramSwap.enable = true;
zramSwap.numDevices = 2;
hardware.trackpoint.enable = true;
hardware.trackpoint.sensitivity = 255;
hardware.trackpoint.speed = 255;
services.xserver.displayManager.sessionCommands = ''
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 1
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 2
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Timeout" 200
'';
services.thinkfan.enable = true;
services.tlp.enable = true;
services.tlp.extraConfig = ''
START_CHARGE_THRESH_BAT0=80
'';
}

View File

@ -0,0 +1,16 @@
{ config, lib, pkgs, ... }:
with lib;
{
imports = [ ./tp-x2x0.nix ];
boot.kernelModules = [ "kvm-intel" ];
services.xserver.displayManager.sessionCommands =''
xinput set-int-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 8 1
xinput set-int-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 8 2
xinput set-int-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Timeout" 8 200
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Axes" 6 7 4 5
'';
}

View File

@ -0,0 +1,27 @@
{ config, lib, pkgs, ... }:
with lib;
{
# TODO: pot this somewhere else
networking.wireless.enable = true;
hardware.enableAllFirmware = true;
nixpkgs.config.allowUnfree = true;
zramSwap.enable = true;
zramSwap.numDevices = 2;
hardware.trackpoint.enable = true;
hardware.trackpoint.sensitivity = 220;
hardware.trackpoint.speed = 220;
services.xserver.displayManager.sessionCommands = ''
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 1
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 2
xinput set-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Timeout" 200
'';
services.tlp.enable = true;
services.tlp.extraConfig = ''
START_CHARGE_THRESH_BAT0=80
'';
}

View File

@ -0,0 +1,17 @@
{ config, ... }:
{
krebs.urlwatch = {
enable = true;
mailto = config.krebs.users.makefu.mail;
onCalendar = "*-*-* 05:00:00";
urls = [
## nixpkgs maintenance
https://api.github.com/repos/ovh/python-ovh/tags
https://api.github.com/repos/embray/d2to1/tags
http://git.sysphere.org/vicious/log/?qt=grep&q=Next+release
];
};
}

27
makefu/2configs/wwan.nix Normal file
View File

@ -0,0 +1,27 @@
{ config, lib, pkgs, ... }:
let
mainUser = config.krebs.build.user;
in {
environment.systemPackages = with pkgs;[
wvdial
];
# configure for NETZCLUB
environment.wvdial.dialerDefaults = ''
Phone = *99***1#
Dial Command = ATDT
Modem = /dev/ttyACM0
Baud = 460800
Init1 = AT+CGDCONT=1,"IP","pinternet.interkom.de","",0,0
Init2 = ATZ
Init3 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ISDN = 0
Modem Type = Analog Modem
Username = netzclub
Password = netzclub
Stupid Mode = 1
Idle Seconds = 0'';
users.extraUsers.${mainUser.name}.extraGroups = [ "dialout" ];
}

View File

@ -0,0 +1,10 @@
{ config, lib, pkgs, ... }:
##
with lib;
let
mainUser = config.krebs.build.user.name;
in
{
programs.zsh.enable = true;
users.extraUsers.${mainUser}.shell = "/run/current-system/sw/bin/zsh";
}