nixos-config/machines/omo/config.nix

213 lines
6.3 KiB
Nix
Raw Normal View History

2015-12-16 12:06:44 +01:00
# 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).
2016-01-05 16:07:13 +01:00
{ config, pkgs, lib, ... }:
let
primaryInterface = config.makefu.server.primary-itf;
2016-01-05 16:07:13 +01:00
in {
2015-12-16 12:06:44 +01:00
imports =
2016-01-03 06:07:35 +01:00
[
2018-10-14 23:46:51 +02:00
./hw/omo.nix
#./hw/tsp.nix
../../2configs/default.nix
../../2configs/headless.nix
../../2configs/support-nixos.nix
../../2configs/nur.nix
2024-01-15 22:35:36 +01:00
{
services.xserver.enable = true;
services.xserver.displayManager.sddm.enable = true;
services.xserver.desktopManager.plasma5.enable = true;
services.xrdp.enable = true;
services.xrdp.defaultWindowManager = "startplasma-x11";
services.xrdp.openFirewall = true;
}
2020-07-02 08:31:53 +02:00
# x11 forwarding
{
services.openssh.settings.X11Forwarding = true;
2020-07-02 08:31:53 +02:00
users.users.makefu.packages = [
pkgs.tinymediamanager
];
}
{ environment.systemPackages = [ pkgs.youtube-dl2kodi pkgs.youtube-dl]; }
../../2configs/zsh-user.nix
../../2configs/home-manager
../../2configs/home-manager/cli.nix
../../2configs/editor/neovim
# ../../2configs/storj/client.nix
2024-02-14 23:44:28 +01:00
../../2configs/networking/zerotier.nix
../../2configs/backup/state.nix
{ makefu.backup.server.repo = "/media/cryptX/backup/borg"; }
../../2configs/backup/server.nix
../../2configs/exim-retiolum.nix
# ../../2configs/smart-monitor.nix
../../2configs/mail-client.nix
../../2configs/mosh.nix
../../2configs/tools/core.nix
../../2configs/tools/dev.nix
../../2configs/tools/desktop.nix
../../2configs/tools/mobility.nix
../../2configs/tools/consoles.nix
#../../2configs/graphite-standalone.nix
#../../2configs/share-user-sftp.nix
../../2configs/urlwatch
# ../../2configs/legacy_only.nix
../../2configs/share
../../2configs/share/omo.nix
../../2configs/share/gum-client.nix
../../2configs/sync
../../2configs/sync/share/omo.nix
2024-01-15 22:35:36 +01:00
../../2configs/wireguard/wiregrill-client.nix
# Community services
../../2configs/nix-community/legacy-mediawiki-matrix-bot.nix
#../../2configs/dcpp/airdcpp.nix
2023-06-03 15:41:49 +02:00
#{ krebs.airdcpp.dcpp.shares = let
# d = path: "/media/cryptX/${path}";
# in {
# emu.path = d "emu";
# audiobooks.path = lib.mkForce (d "audiobooks");
# incoming.path = lib.mkForce (d "torrent");
# anime.path = d "anime";
# };
# krebs.airdcpp.dcpp.DownloadDirectory = "/media/cryptX/torrent/dcpp";
#}
2018-10-14 23:46:51 +02:00
{
# copy config from <secrets/sabnzbd.ini> to /var/lib/sabnzbd/
#services.sabnzbd.enable = true;
#systemd.services.sabnzbd.environment.SSL_CERT_FILE = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt";
}
# ../../2configs/share/omo-timemachine.nix
../../2configs/tinc/retiolum.nix
2017-05-25 23:19:36 +02:00
# statistics
# ../../2configs/stats/client.nix
2017-05-25 23:19:36 +02:00
# Logging
2017-07-21 10:49:11 +02:00
#influx + grafana
../../2configs/stats/server.nix
# ../../2configs/stats/nodisk-client.nix
2017-07-21 10:49:11 +02:00
# logs to influx
../../2configs/stats/external/aralast.nix
../../2configs/stats/telegraf
# ../../2configs/stats/telegraf/europastats.nix
../../2configs/stats/telegraf/hamstats.nix
../../2configs/hw/cdrip.nix
2017-05-02 14:04:39 +02:00
# services
2018-10-14 23:46:51 +02:00
{
services.nginx.enable = true;
2023-06-03 15:41:49 +02:00
networking.firewall.allowedTCPPorts = [ 80 8123 ];
2018-10-14 23:46:51 +02:00
}
# ../../2configs/syncthing.nix
../../2configs/remote-build/slave.nix
# TODO:
../../2configs/virtualisation/docker.nix
2024-01-15 22:35:36 +01:00
# ../../2configs/bluetooth-mpd.nix
../../2configs/home/jellyfin.nix
../../2configs/home/music.nix
../../2configs/home/photoprism.nix
# ../../2configs/home/tonie.nix
../../2configs/home/ps4srv.nix
# ../../2configs/home/metube.nix
# ../../2configs/home/ham
../../2configs/home/ham/docker.nix
../../2configs/home/zigbee2mqtt
2023-09-20 16:54:07 +02:00
../../2configs/home/streams.nix
../../2configs/home/esphome.nix
2024-05-30 18:12:55 +02:00
../../2configs/home/audio-dl.nix
2018-10-14 23:46:51 +02:00
{
makefu.ps3netsrv = {
enable = true;
servedir = "/media/cryptX/emu/ps3";
};
2022-02-28 21:31:52 +01:00
users.users.makefu.packages = [ pkgs.pkgrename ];
2018-10-14 23:46:51 +02:00
}
2024-01-15 22:35:36 +01:00
../../2configs/home/paperless.nix
2024-01-15 22:35:36 +01:00
#{
# hardware.pulseaudio.systemWide = true;
# makefu.mpd.musicDirectory = "/media/cryptX/music";
#}
2017-07-21 10:49:11 +02:00
# security
../../2configs/sshd-totp.nix
# ../../2configs/logging/central-logging-client.nix
2017-02-04 14:35:29 +01:00
# ../../2configs/torrent.nix
{
#krebs.rtorrent = {
# downloadDir = lib.mkForce "/media/cryptX/torrent";
# extraConfig = ''
# upload_rate = 500
# '';
#};
}
# ../../2configs/elchos/search.nix
# ../../2configs/elchos/log.nix
# ../../2configs/elchos/irc-token.nix
2016-06-12 19:43:50 +02:00
## as long as pyload is not in nixpkgs:
# docker run -d -v /var/lib/pyload:/opt/pyload/pyload-config -v /media/crypt0/pyload:/opt/pyload/Downloads --name pyload --restart=always -p 8112:8000 -P writl/pyload
2017-09-19 16:39:58 +02:00
# Temporary:
# ../../2configs/temp/rst-issue.nix
2024-02-14 23:44:28 +01:00
# ../../2configs/bgt/social-to-irc.nix
2015-12-16 12:06:44 +01:00
];
makefu.full-populate = true;
nixpkgs.config.allowUnfree = true;
users.users.share.isNormalUser = true;
2016-08-22 18:43:38 +02:00
users.groups.share = {
gid = pkgs.stockholm.lib.genid "share";
2016-08-22 18:43:38 +02:00
members = [ "makefu" "misa" ];
};
networking.firewall.trustedInterfaces = [ primaryInterface "docker0" ];
2016-01-08 03:37:38 +01:00
2016-07-11 20:45:34 +02:00
users.users.misa = {
uid = 9002;
name = "misa";
isNormalUser = true;
2016-07-11 20:45:34 +02:00
};
2015-12-16 12:06:44 +01:00
2016-01-08 03:37:38 +01:00
zramSwap.enable = true;
2016-01-03 06:07:35 +01:00
#krebs.Reaktor.reaktor-shack = {
# nickname = "Reaktor|shack";
# workdir = "/var/lib/Reaktor/shack";
# channels = [ "#shackspace" ];
# plugins = with pkgs.ReaktorPlugins;
# [ shack-correct
# # stockholm-issue
# sed-plugin
# random-emoji ];
#};
#krebs.Reaktor.reaktor-bgt = {
# nickname = "Reaktor|bgt";
# workdir = "/var/lib/Reaktor/bgt";
# channels = [ "#binaergewitter" ];
# plugins = with pkgs.ReaktorPlugins;
# [ titlebot
# # stockholm-issue
# nixos-version
# shack-correct
# sed-plugin
# random-emoji ];
#};
2017-03-24 13:03:46 +01:00
2016-01-27 22:00:50 +01:00
krebs.build.host = config.krebs.hosts.omo;
2015-12-16 12:06:44 +01:00
}