You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

155 lines
4.2 KiB
Nix

{ config, pkgs, ... }: let
packages = (import ../lib/packages.nix) { config = config.nixpkgs.config; };
callPackageFile = path: (import path) packages;
in {
imports = [
(callPackageFile ../profiles/system/base.nix)
(callPackageFile ../profiles/environment/graphical-environment.nix)
(callPackageFile ../profiles/environment/xfce4.nix)
(callPackageFile ../profiles/environment/common-software.nix)
(callPackageFile ../profiles/system/efi-boot.nix)
(callPackageFile ../profiles/system/networked.nix)
(callPackageFile ../profiles/system/printing.nix)
(callPackageFile ../profiles/system/scanning.nix)
(callPackageFile ../profiles/system/amd.nix)
(callPackageFile ../profiles/system/pulseaudio.nix)
(callPackageFile ../profiles/system/virtualization.nix)
(callPackageFile ../profiles/software/elasticsearch.nix)
(callPackageFile ../profiles/software/couchdb.nix)
(callPackageFile ../profiles/software/games.nix)
(callPackageFile ../profiles/software/guake.nix)
(callPackageFile ../profiles/software/synergy.nix)
(callPackageFile ../profiles/software/workrave.nix)
];
services.xserver = {
xrandrHeads = [
"DFP6"
"CRT1"
];
};
networking = {
hostName = "desktop-home";
firewall = { # FIXME: abstract this out...
allowedTCPPorts = [
25565 # Minecraft
];
allowedUDPPorts = [
34197 # Factorio
];
};
};
users.extraUsers.sven = {
isNormalUser = true;
uid = 1000;
extraGroups = ["libvirtd"];
};
users.groups = {
davfs2 = {};
};
users.extraUsers.davfs2 = {
isNormalUser = true;
};
boot = {
kernelModules = [ "tun" "virtio" "nbd" ];
kernelPackages = pkgs.linuxPackages_4_4;
};
fileSystems = [
{
mountPoint = "/mnt/storage1";
device = "/dev/disk/by-uuid/f7b13747-f465-4600-9928-d7bf0720df1a";
}
{
mountPoint = "/mnt/storage2";
device = "/dev/disk/by-uuid/71cc55ca-7fc7-40c2-9dee-9e6216959d15";
}
{
mountPoint = "/mnt/temp";
device = "/dev/disk/by-uuid/6251105f-2b32-40de-859b-1654d6d1037e";
}
{
mountPoint = "/mnt/opensuse";
device = "/dev/disk/by-uuid/02a65154-3d26-4077-8942-c48337a3f9a2";
}
];
environment = {
systemPackages = with packages; [
nixpkgs.blueman
nixpkgs.nixops
nixpkgs.oraclejre8
myNixpkgs.technic-launcher
myNixpkgs.ftb-launcher
];
etc = {
"synergy-server.conf" = {
text = ''
section: screens
desktop:
laptop:
end
section: links
desktop:
left = laptop
laptop:
right = desktop
end
section: aliases
desktop:
192.168.178.60
desktop-home
laptop:
192.168.178.41
linux-o82e.site
end
'';
};
};
pathsToLink = [
"/lib/rustlib/src"
];
};
hardware.bluetooth.enable = true;
hardware.pulseaudio.extraConfig = ''
load-module module-loopback
load-module module-combine-sink sink_name=all
'';
networking.extraHosts = ''
127.0.0.1 im-project.im
'';
/*networking.wireguard = {
wg0 = {
ips = [ "192.168.20.4/24" ];
privateKey = "yAnz5TF+lXXJte14tji3zlMNq+hd2rYUIgJBgB3fBmk=";
peers = [
{ allowedIPs = [ "192.168.20.1/32" ];
publicKey = "xTIBA5rboUvnH4htodjb6e697QjLERt1NAB4mZqp8Dg=";
endpoint = "demo.wireguard.io:12913"; }
];
};
};*/
nix.useSandbox = true;
}