2020-06-17 19:01:57 +02:00
|
|
|
{ config, lib, pkgs, ... }:
|
|
|
|
|
|
|
|
let
|
|
|
|
cfg = config.profiles.base;
|
|
|
|
in {
|
|
|
|
|
|
|
|
options.machine = {
|
|
|
|
name = lib.mkOption {
|
2022-05-02 14:49:06 +02:00
|
|
|
type = lib.types.str;
|
2020-06-17 19:01:57 +02:00
|
|
|
};
|
|
|
|
eth = lib.mkOption {};
|
2021-08-20 19:20:18 +02:00
|
|
|
wlan = lib.mkOption {};
|
2022-05-02 14:49:06 +02:00
|
|
|
secondary-fs = lib.mkOption {
|
2022-05-02 23:45:57 +02:00
|
|
|
type = lib.types.nullOr lib.types.nonEmptyStr;
|
|
|
|
default = null;
|
|
|
|
example = "''${env:HOME}";
|
2022-05-02 14:49:06 +02:00
|
|
|
};
|
2020-06-17 19:01:57 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
options.profiles.base = {
|
|
|
|
enable = lib.mkEnableOption "The base profile, should be always enabled";
|
|
|
|
};
|
|
|
|
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
|
|
|
|
|
|
home.packages = with pkgs; [
|
2020-07-09 12:36:16 +02:00
|
|
|
#libguestfs
|
|
|
|
#ansible
|
2020-07-11 04:08:58 +02:00
|
|
|
#nixops
|
2022-04-02 03:04:37 +02:00
|
|
|
|
|
|
|
nix-output-monitor
|
|
|
|
nix-top
|
|
|
|
nix-index
|
|
|
|
unstable.comma
|
|
|
|
|
2020-06-17 19:01:57 +02:00
|
|
|
ldns
|
2022-04-02 04:33:24 +02:00
|
|
|
mtr
|
2020-06-17 19:01:57 +02:00
|
|
|
|
2020-07-11 04:08:58 +02:00
|
|
|
lsof
|
|
|
|
|
2020-06-17 19:01:57 +02:00
|
|
|
htop
|
|
|
|
|
|
|
|
file
|
|
|
|
tmux
|
2020-07-11 04:08:58 +02:00
|
|
|
|
|
|
|
unzip
|
|
|
|
p7zip
|
2022-04-02 03:04:37 +02:00
|
|
|
|
2020-07-11 04:08:58 +02:00
|
|
|
parallel
|
|
|
|
sshfs
|
|
|
|
jq
|
2020-06-17 19:01:57 +02:00
|
|
|
|
2020-07-11 04:08:58 +02:00
|
|
|
ncdu
|
2020-06-17 19:01:57 +02:00
|
|
|
|
2020-07-11 04:08:58 +02:00
|
|
|
bat
|
2022-04-02 03:53:25 +02:00
|
|
|
exa
|
2020-07-11 04:08:58 +02:00
|
|
|
ripgrep
|
|
|
|
|
|
|
|
mkvtoolnix
|
|
|
|
# unstable.youtubeDL
|
|
|
|
ffmpeg-full
|
|
|
|
] ++ lib.optionals config.profiles.gui.enable [
|
|
|
|
# virtmanager
|
|
|
|
# virt-viewer
|
|
|
|
|
2022-04-02 03:07:02 +02:00
|
|
|
thunderbird
|
|
|
|
|
2020-06-17 19:01:57 +02:00
|
|
|
mpv
|
|
|
|
sxiv
|
2022-04-24 18:37:29 +02:00
|
|
|
|
2020-06-17 19:01:57 +02:00
|
|
|
mumble
|
|
|
|
|
2020-12-12 15:26:49 +01:00
|
|
|
#dan.rank_photos
|
2020-06-17 19:01:57 +02:00
|
|
|
|
2021-12-23 05:22:49 +01:00
|
|
|
|
|
|
|
dolphin plasma5Packages.dolphin-plugins
|
|
|
|
ffmpegthumbs
|
|
|
|
plasma5Packages.kdegraphics-thumbnailers
|
|
|
|
plasma5Packages.kio plasma5Packages.kio-extras
|
|
|
|
krename
|
|
|
|
konsole # https://bugs.kde.org/show_bug.cgi?id=407990 reeee
|
|
|
|
|
2020-06-17 19:01:57 +02:00
|
|
|
gnome3.gedit
|
2022-06-02 05:08:38 +02:00
|
|
|
vscodium
|
2020-07-09 12:36:16 +02:00
|
|
|
# texlive.combined.scheme-full
|
|
|
|
# kile
|
2021-06-01 13:10:33 +02:00
|
|
|
libreoffice
|
2020-06-17 19:01:57 +02:00
|
|
|
|
|
|
|
gimp
|
2020-07-09 12:36:16 +02:00
|
|
|
# krita
|
|
|
|
# inkscape
|
|
|
|
# digikam
|
|
|
|
# godot
|
|
|
|
# blender
|
|
|
|
# audacity
|
2020-07-11 04:08:58 +02:00
|
|
|
# mixxx
|
2020-07-09 12:36:16 +02:00
|
|
|
# ardour
|
2020-06-17 19:01:57 +02:00
|
|
|
kdenlive
|
|
|
|
frei0r
|
2022-06-02 05:08:38 +02:00
|
|
|
] ++ lib.optionals (config.nixpkgs.config.allowUnfree && config.profiles.gui.enable) [
|
2021-06-01 13:10:33 +02:00
|
|
|
geogebra
|
2020-06-17 19:01:57 +02:00
|
|
|
];
|
|
|
|
|
|
|
|
programs.firefox = {
|
2020-07-11 04:08:58 +02:00
|
|
|
enable = config.profiles.gui.enable;
|
2021-12-22 04:55:24 +01:00
|
|
|
profiles = {
|
|
|
|
daniel = {
|
|
|
|
settings = {
|
|
|
|
"browser.startup.homepage" = "https://nixos.org";
|
|
|
|
};
|
|
|
|
bookmarks = {
|
|
|
|
"NixOS Options" = {
|
|
|
|
keyword = "no";
|
|
|
|
url = "https://search.nixos.org/options?query=%s";
|
|
|
|
};
|
|
|
|
"NixOS Packages" = {
|
|
|
|
keyword = "np";
|
|
|
|
url = "https://search.nixos.org/packages?query=%s";
|
|
|
|
};
|
|
|
|
"Home-Manager Options" = {
|
|
|
|
keyword = "hm";
|
|
|
|
url = "https://rycee.gitlab.io/home-manager/options.html#opt-%s";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [ bitwarden cookies-txt https-everywhere metamask no-pdf-download sponsorblock ublock-origin ];
|
2020-06-17 19:01:57 +02:00
|
|
|
};
|
|
|
|
|
2022-04-02 03:07:30 +02:00
|
|
|
programs.obs-studio.enable = config.profiles.gui.enable;
|
2020-06-17 19:01:57 +02:00
|
|
|
|
|
|
|
|
|
|
|
programs.git = {
|
|
|
|
enable = true;
|
|
|
|
userEmail = "daniel.olsen99@gmail.com";
|
|
|
|
userName = "Daniel Olsen";
|
2020-12-12 15:26:49 +01:00
|
|
|
extraConfig = {
|
|
|
|
pull.rebase = true;
|
|
|
|
};
|
2022-04-02 04:02:44 +02:00
|
|
|
delta.enable = true;
|
2020-06-17 19:01:57 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
|
2021-12-22 04:57:40 +01:00
|
|
|
programs.ssh = {
|
|
|
|
enable = true;
|
|
|
|
matchBlocks = {
|
|
|
|
"lilith" = {
|
|
|
|
hostname = "lilith.d.d.dodsorf.as";
|
|
|
|
user = "dandellion";
|
|
|
|
};
|
|
|
|
"desktop" = {
|
|
|
|
hostname = "10.42.42.10";
|
|
|
|
user = "dan";
|
|
|
|
};
|
|
|
|
"laptop" = {
|
|
|
|
hostname = "10.42.42.13";
|
|
|
|
user = "daniel";
|
|
|
|
};
|
|
|
|
"pvv.ntnu.no" = {
|
|
|
|
user = "danio";
|
|
|
|
};
|
|
|
|
"*.pvv.ntnu.no" = {
|
|
|
|
user = "danio";
|
|
|
|
};
|
2022-04-02 03:08:29 +02:00
|
|
|
"gitlab.stud.idi.ntnu.no" = {
|
|
|
|
proxyJump = "login.pvv.ntnu.no";
|
|
|
|
};
|
2022-04-03 17:28:22 +02:00
|
|
|
"workshop" = {
|
|
|
|
user = "student";
|
|
|
|
hostname = "129.241.99.15";
|
|
|
|
proxyJump = "hildring.pvv.ntnu.no";
|
|
|
|
};
|
2021-12-22 04:57:40 +01:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2020-06-17 19:01:57 +02:00
|
|
|
# services.kdeconnect = {
|
|
|
|
# enable = true;
|
|
|
|
# indicator = true;
|
|
|
|
# };
|
|
|
|
|
|
|
|
services.gpg-agent = {
|
|
|
|
enable = true;
|
|
|
|
defaultCacheTtl = 1800;
|
|
|
|
enableSshSupport = true;
|
|
|
|
};
|
|
|
|
|
2021-12-23 05:23:15 +01:00
|
|
|
xdg.mimeApps = {
|
|
|
|
enable = true;
|
|
|
|
defaultApplications = {
|
|
|
|
"image/png" = [ "sxiv.desktop" "gimp.desktop" ];
|
2022-04-02 03:09:11 +02:00
|
|
|
"text/plain" = [ "gedit.desktop" "kakoune.desktop" "code.desktop" ];
|
2022-04-24 18:43:06 +02:00
|
|
|
"video/x-matroska" = [ "mpv.desktop" ];
|
2022-04-02 03:09:11 +02:00
|
|
|
};
|
|
|
|
associations.removed = {
|
|
|
|
"text/plain" = [ "writer.desktop" ];
|
2021-12-23 05:23:15 +01:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
fonts.fontconfig.enable = config.profiles.gui.enable;
|
2020-06-17 19:01:57 +02:00
|
|
|
};
|
|
|
|
}
|