Compare commits
10 Commits
6613f56600
...
f2ca2bd317
Author | SHA1 | Date | |
---|---|---|---|
f2ca2bd317 | |||
d5c6b07d4f | |||
2e994e636e | |||
952fb59019 | |||
800acd0325 | |||
21bf877967 | |||
50d517abc2 | |||
418084f2c9 | |||
001ab33d7b | |||
1f0d0c64db |
6
flake.lock
generated
6
flake.lock
generated
@ -769,11 +769,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1718243258,
|
||||
"narHash": "sha256-abBpj2VU8p6qlRzTU8o22q68MmOaZ4v8zZ4UlYl5YRU=",
|
||||
"lastModified": 1718788307,
|
||||
"narHash": "sha256-SqiOz0sljM0GjyQEVinPXQxaGcbOXw5OgpCWGPgh/vo=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "8d5e27b4807d25308dfe369d5a923d87e7dbfda3",
|
||||
"rev": "d7830d05421d0ced83a0f007900898bdcaf2a2ca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -31,8 +31,7 @@ in {
|
||||
enableCryptodisk = true;
|
||||
useOSProber = false;
|
||||
zfsSupport = true;
|
||||
gfxmodeEfi = "2560x1440";
|
||||
# efiInstallAsRemovable = true;
|
||||
gfxmodeEfi = "2560x1440"; # efiInstallAsRemovable = true;
|
||||
# theme = pkgs.;
|
||||
};
|
||||
systemd-boot.enable = lib.mkForce false;
|
||||
|
@ -80,10 +80,5 @@
|
||||
];
|
||||
|
||||
users.users.root.openssh.authorizedKeys.keys = config.users.users.nixos.openssh.authorizedKeys.keys;
|
||||
|
||||
# isoImage.contents = [{
|
||||
# source = ../..;
|
||||
# target = "/home/nixos/nixos-config";
|
||||
# }];
|
||||
};
|
||||
}
|
@ -3,9 +3,6 @@ let
|
||||
zfs_arc_max = toString (3 * 1024 * 1024 * 1024);
|
||||
in {
|
||||
boot = {
|
||||
# extraModprobeConfig = ''
|
||||
# options zfs metaslab_lba_weighting_enabled=0
|
||||
# '';
|
||||
zfs.forceImportAll = lib.mkForce false;
|
||||
loader.efi.canTouchEfiVariables = false;
|
||||
loader.efi.efiSysMountPoint = "/efi";
|
||||
@ -18,8 +15,6 @@ in {
|
||||
zfsSupport = true;
|
||||
efiInstallAsRemovable = true;
|
||||
copyKernels = true;
|
||||
# # extraPrepareConfig = ''
|
||||
# # '';
|
||||
};
|
||||
initrd = {
|
||||
luks.devices = {
|
||||
@ -45,7 +40,6 @@ in {
|
||||
kernelPackages = pkgs.linuxPackages_hardened;
|
||||
kernelModules = [ "tcp_bbr" "veth" ];
|
||||
kernelParams = [
|
||||
# "zfs.metaslab_lba_weighting_enabled=0"
|
||||
"zfs.zfs_arc_max=${zfs_arc_max}"
|
||||
"zswap.enabled=0"
|
||||
"quiet"
|
||||
|
@ -45,7 +45,6 @@ in {
|
||||
})
|
||||
|
||||
(import customProfiles.headscale {
|
||||
inherit config lib inputs;
|
||||
inherit (import ./dns-mapping.nix) headscale-list;
|
||||
})
|
||||
];
|
||||
|
@ -89,7 +89,6 @@
|
||||
"net.ipv4.tcp_congestion_control" = "bbr";
|
||||
"net.ipv4.tcp_slow_start_after_idle" = 0;
|
||||
"net.core.default_qdisc" = "cake";
|
||||
# "net.core.default_qdisc" = "fq";
|
||||
"net.core.rmem_max" = 67108864;
|
||||
"net.core.wmem_max" = 67108864;
|
||||
"net.core.netdev_max_backlog" = 10000;
|
||||
@ -142,27 +141,28 @@
|
||||
];
|
||||
|
||||
# Locale
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
i18n.defaultLocale = "en_IE.UTF-8";
|
||||
i18n.extraLocaleSettings = {
|
||||
LANGUAGE = "en_US.UTF-8";
|
||||
LC_ALL = "en_US.UTF-8";
|
||||
LC_TIME = "en_US.UTF-8";
|
||||
LANGUAGE = "en_IE:en:C:ru_RU";
|
||||
LC_TIME = "en_DK.UTF-8";
|
||||
LC_ADDRESS = "ru_RU.UTF-8";
|
||||
LC_MONETARY = "ru_RU.UTF-8";
|
||||
LC_NUMERIC = "ru_RU.UTF-8";
|
||||
LC_PAPER = "ru_RU.UTF-8";
|
||||
LC_TELEPHONE = "ru_RU.UTF-8";
|
||||
};
|
||||
i18n.supportedLocales = [
|
||||
"C.UTF-8/UTF-8"
|
||||
"en_DK.UTF-8/UTF-8"
|
||||
"en_GB.UTF-8/UTF-8"
|
||||
"en_IE.UTF-8/UTF-8"
|
||||
"en_US.UTF-8/UTF-8"
|
||||
"ru_RU.UTF-8/UTF-8"
|
||||
"en_GB.UTF-8/UTF-8"
|
||||
];
|
||||
time.timeZone = "Europe/Helsinki";
|
||||
time.timeZone = "Europe/Vienna";
|
||||
environment.sessionVariables = {
|
||||
XKB_DEFAULT_LAYOUT = "us,ru";
|
||||
XKB_DEFAULT_OPTIONS = "grp:win_space_toggle";
|
||||
LANGUAGE = "en_US.UTF-8";
|
||||
LC_ALL = "en_US.UTF-8";
|
||||
};
|
||||
|
||||
# Hardened
|
||||
@ -249,7 +249,7 @@
|
||||
};
|
||||
programs.virt-manager.enable = true;
|
||||
networking.firewall.trustedInterfaces = [ "podman*" "vnet*" "virbr*" ];
|
||||
networking.firewall.interfaces."podman+".allowedUDPPorts = [ 53 ];
|
||||
networking.firewall.interfaces."podman+".allowedUDPPorts = [ 53 5353 ];
|
||||
security.unprivilegedUsernsClone = true;
|
||||
|
||||
system.stateVersion = "23.11";
|
||||
|
@ -5,7 +5,7 @@ let
|
||||
cfg = config.autoinstall;
|
||||
|
||||
autoinstallOptions = { name, ... }: {
|
||||
options = rec {
|
||||
options = {
|
||||
autoReboot = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
@ -37,11 +37,6 @@ let
|
||||
default = true;
|
||||
description = "";
|
||||
};
|
||||
# partitions = mkOption {
|
||||
# type = types.nullOr attrsOf partitionsAttrs;
|
||||
# default = null;
|
||||
# description = "If not wipe entire disk";
|
||||
# };
|
||||
};
|
||||
debug = mkOption {
|
||||
type = types.bool;
|
||||
@ -166,8 +161,6 @@ let
|
||||
|
||||
mkService = name: opt: {
|
||||
description = "Autoinstall NixOS on ${name}";
|
||||
# wantedBy = [ "multi-user.target" ];
|
||||
# after = [ "network.target" "polkit.service" ];
|
||||
path = with pkgs; [
|
||||
"/run/current-system/sw/"
|
||||
"/usr/bin/"
|
||||
@ -183,14 +176,6 @@ let
|
||||
};
|
||||
serviceConfig = { Type = "oneshot"; };
|
||||
};
|
||||
|
||||
# asserts = opt: [{
|
||||
# assertion = opt.flakesPath != "";
|
||||
# message = "flakesPath can't be empty";
|
||||
# } {
|
||||
# assertion = !(opt.encryption.enable && opt.encryption.passwordFile == "");
|
||||
# message = "If you use encryption, you need to set path to password file";
|
||||
# }];
|
||||
in {
|
||||
options.autoinstall = mkOption {
|
||||
default = {};
|
||||
|
@ -4,7 +4,7 @@ let
|
||||
|
||||
takeAll = what: concatMap (x: x.${what});
|
||||
|
||||
persists = with cfg; [ state derivative cache ];
|
||||
persists = with cfg; [ state cache ];
|
||||
|
||||
absoluteHomePath = map (x: "${cfg.homeDir}/${x}");
|
||||
|
||||
@ -64,9 +64,6 @@ in {
|
||||
# backup = {...};
|
||||
} // common;
|
||||
|
||||
# Stuff that can be computed from declarative+state, but is never invalidated (so shouldn't be cleaned up)
|
||||
derivative = common;
|
||||
|
||||
# Stuff that's just there to speed up the system
|
||||
# It's cleaned up regularly, to solve the cache invalidation problem once and for all
|
||||
cache = {
|
||||
@ -110,15 +107,5 @@ in {
|
||||
'';
|
||||
startAt = cfg.cache.clean.dates;
|
||||
};
|
||||
|
||||
# system.activationScripts = {
|
||||
# homedir.text = builtins.concatStringsSep "\n" (map (dir: ''
|
||||
# mkdir -p ${cfg.persistRoot}${dir}
|
||||
# chown ${config.mainuser}:users ${cfg.persistRoot}${dir}
|
||||
# '') (
|
||||
# (builtins.filter (lib.hasPrefix cfg.homeDir) allDirectories)
|
||||
# ++ absoluteHomePath allHomeDirectories
|
||||
# ));
|
||||
# };
|
||||
};
|
||||
}
|
||||
|
@ -1,79 +0,0 @@
|
||||
{ config, pkgs, ... }: {
|
||||
defaultApplications = {
|
||||
fm = {
|
||||
cmd = "${pkgs.pcmanfm}/bin/pcmanfm";
|
||||
desktop = "pcmanfm";
|
||||
};
|
||||
monitor = {
|
||||
cmd = "${pkgs.gnome.gnome-system-monitor}/bin/gnome-system-monitor";
|
||||
desktop = "gnome-system-monitor";
|
||||
};
|
||||
torrent = {
|
||||
cmd = "${pkgs.qbittorrent}/bin/qbittorrent";
|
||||
desktop = "qbittorrent";
|
||||
};
|
||||
archive = {
|
||||
cmd = "${pkgs.xarchiver}/bin/xarchiver";
|
||||
desktop = "xarchiver";
|
||||
};
|
||||
messenger = {
|
||||
cmd = "${pkgs.tdesktop}/bin/telegram-desktop";
|
||||
desktop = "telegram-desktop";
|
||||
};
|
||||
# text_processor = {
|
||||
# cmd = "${pkgs.libreoffice}/bin/libreoffice";
|
||||
# desktop = "libreoffice";
|
||||
# };
|
||||
# spreadsheet = {
|
||||
# cmd = "${pkgs.gnumeric}/bin/gnumeric";
|
||||
# desktop = "gnumeric";
|
||||
# };
|
||||
};
|
||||
|
||||
startupApplications = with config.defaultApplications; [
|
||||
messenger.cmd
|
||||
];
|
||||
|
||||
environment.sessionVariables = {
|
||||
EDITOR = config.defaultApplications.editor.cmd;
|
||||
VISUAL = config.defaultApplications.editor.cmd;
|
||||
};
|
||||
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home.activation."mimeapps-remove" = {
|
||||
before = [ "checkLinkTargets" ];
|
||||
after = [ ];
|
||||
data = "rm -f /home/${config.mainuser}/.config/mimeapps.list";
|
||||
};
|
||||
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
defaultApplications =
|
||||
with config.defaultApplications;
|
||||
builtins.mapAttrs (_name: value:
|
||||
if value ? desktop then [ "${value.desktop}.desktop" ] else value) {
|
||||
"text/html" = browser;
|
||||
"inode/directory" = fm;
|
||||
"image/*" = { desktop = "org.gnome.eog"; };
|
||||
"application/x-bittorrent" = torrent;
|
||||
"application/zip" = archive;
|
||||
"application/rar" = archive;
|
||||
"application/7z" = archive;
|
||||
"application/*tar" = archive;
|
||||
"x-scheme-handler/http" = browser;
|
||||
"x-scheme-handler/https" = browser;
|
||||
"x-scheme-handler/about" = browser;
|
||||
# "x-scheme-handler/mailto" = mail;
|
||||
"application/pdf" = pdf;
|
||||
# "application/vnd.openxmlformats-officedocument.wordprocessingml.document" =
|
||||
# text_processor;
|
||||
# "application/msword" = text_processor;
|
||||
# "application/vnd.oasis.opendocument.text" = text_processor;
|
||||
# "text/csv" = spreadsheet;
|
||||
# "application/vnd.oasis.opendocument.spreadsheet" = spreadsheet;
|
||||
"text/plain" = editor;
|
||||
"x-scheme-handler/element" = matrix;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,13 +1,10 @@
|
||||
{ config, ... }:
|
||||
let
|
||||
homeDir = config.home-manager.users.${config.mainuser}.home.homeDirectory;
|
||||
in {
|
||||
{ config, ... }: {
|
||||
# TODO: enable websocket (--rpc-certificate)
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home-manager.users.${config.mainuser} = { config, ...}: {
|
||||
programs.aria2 = {
|
||||
enable = true;
|
||||
settings = {
|
||||
dir = "${homeDir}/Downloads/aria2";
|
||||
dir = "${config.home.homeDirectory}/Downloads/aria2";
|
||||
listen-port = "6881-6999";
|
||||
# rpc-listen-port = 6800;
|
||||
};
|
||||
|
189
profiles/applications/mime-apps.nix
Normal file
189
profiles/applications/mime-apps.nix
Normal file
@ -0,0 +1,189 @@
|
||||
{ config, pkgs, ... }: {
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home.activation."mimeapps-remove" = {
|
||||
before = [ "checkLinkTargets" ];
|
||||
after = [ ];
|
||||
data = "rm -f /home/${config.mainuser}/.config/mimeapps.list";
|
||||
};
|
||||
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
associations.added = with config.defaultApplications;
|
||||
builtins.mapAttrs (_name: value:
|
||||
if value ? desktop then [ "${value.desktop}.desktop" ] else value) {
|
||||
"application/pdf" = pdf;
|
||||
"application/x-extension-htm" = browser;
|
||||
"application/x-extension-html" = browser;
|
||||
"application/x-extension-shtml" = browser;
|
||||
"application/x-extension-xht" = browser;
|
||||
"application/x-extension-xhtml" = browser;
|
||||
"application/xhtml+xml" = browser;
|
||||
"text/html" = browser;
|
||||
"x-scheme-handler/chrome" = browser;
|
||||
"x-scheme-handler/ftp" = browser;
|
||||
"x-scheme-handler/http" = browser;
|
||||
"x-scheme-handler/https" = browser;
|
||||
};
|
||||
defaultApplications =
|
||||
with config.defaultApplications;
|
||||
builtins.mapAttrs (_name: value:
|
||||
if value ? desktop then [ "${value.desktop}.desktop" ] else value) {
|
||||
# application
|
||||
"application/*tar" = archive;
|
||||
"application/7z" = archive;
|
||||
"application/eps" = pdf;
|
||||
"application/msword" = office;
|
||||
"application/ogg" = media-player;
|
||||
"application/pdf" = pdf;
|
||||
"application/postscript" = pdf;
|
||||
"application/rar" = archive;
|
||||
"application/sdp" = media-player;
|
||||
"application/smil" = media-player;
|
||||
"application/streamingmedia" = media-player;
|
||||
"application/vnd.oasis.opendocument.presentation" = office;
|
||||
"application/vnd.oasis.opendocument.spreadsheet" = office;
|
||||
"application/vnd.oasis.opendocument.text" = office;
|
||||
"application/vnd.openxmlformats-officedocument.wordprocessingml.document" = office;
|
||||
"application/vnd.rar" = archive;
|
||||
"application/vnd.rn-realmedia-vbr" = media-player;
|
||||
"application/vnd.rn-realmedia" = media-player;
|
||||
"application/x-bittorrent" = torrent;
|
||||
"application/x-eps" = pdf;
|
||||
"application/x-extension-htm" = browser;
|
||||
"application/x-extension-html" = browser;
|
||||
"application/x-extension-shtml" = browser;
|
||||
"application/x-extension-xht" = browser;
|
||||
"application/x-extension-xhtml" = browser;
|
||||
"application/x-flash-video" = media-player;
|
||||
"application/x-ogg" = media-player;
|
||||
"application/x-shellscript" = editor;
|
||||
"application/x-smil" = media-player;
|
||||
"application/x-streamingmedia" = media-player;
|
||||
"application/xhtml+xml" = browser;
|
||||
"application/zip" = archive;
|
||||
# "application/rss+xml" = editor;
|
||||
# "application/x-calendar" = "google-calendar-import.desktop";
|
||||
# "application/x-java-archive" = "java.desktop";
|
||||
# audio
|
||||
"audio/aac" = media-player;
|
||||
"audio/ac3" = media-player;
|
||||
"audio/AMR" = media-player;
|
||||
"audio/flac" = media-player;
|
||||
"audio/m4a" = media-player;
|
||||
"audio/mp1" = media-player;
|
||||
"audio/mp2" = media-player;
|
||||
"audio/mp3" = media-player;
|
||||
"audio/mp4" = media-player;
|
||||
"audio/mpeg" = media-player;
|
||||
"audio/mpegurl" = media-player;
|
||||
"audio/mpg" = media-player;
|
||||
"audio/ogg" = media-player;
|
||||
"audio/rn-mpeg" = media-player;
|
||||
"audio/scpls" = media-player;
|
||||
"audio/vnd.rn-realaudio" = media-player;
|
||||
"audio/wav" = media-player;
|
||||
"audio/x-aac" = media-player;
|
||||
"audio/x-ape" = media-player;
|
||||
"audio/x-flac" = media-player;
|
||||
"audio/x-m4a" = media-player;
|
||||
"audio/x-mp1" = media-player;
|
||||
"audio/x-mp2" = media-player;
|
||||
"audio/x-mp3" = media-player;
|
||||
"audio/x-mpeg" = media-player;
|
||||
"audio/x-mpegurl" = media-player;
|
||||
"audio/x-mpg" = media-player;
|
||||
"audio/x-ms-wma" = media-player;
|
||||
"audio/x-pls" = media-player;
|
||||
"audio/x-pn-realaudio" = media-player;
|
||||
"audio/x-pn-windows-pcm" = media-player;
|
||||
"audio/x-realaudio" = media-player;
|
||||
"audio/x-scpls" = media-player;
|
||||
"audio/x-shorten" = media-player;
|
||||
"audio/x-tta" = media-player;
|
||||
"audio/x-vorbis+ogg" = media-player;
|
||||
"audio/x-wav" = media-player;
|
||||
"audio/x-wavpack" = media-player;
|
||||
# image
|
||||
"image/bmp" = image;
|
||||
"image/eps" = pdf;
|
||||
"image/gif" = image;
|
||||
"image/jpeg" = image;
|
||||
"image/jpg" = image;
|
||||
"image/pjpeg" = image;
|
||||
"image/png" = image;
|
||||
"image/tiff" = image;
|
||||
"image/vnd.djvu" = pdf;
|
||||
"image/webp" = image;
|
||||
"image/x-bmp" = image;
|
||||
"image/x-canon-cr2" = image;
|
||||
# "image/x-dcraw" = "nufraw.desktop";
|
||||
"image/x-eps" = pdf;
|
||||
"image/x-pcx" = image;
|
||||
"image/x-png" = image;
|
||||
"image/x-portable-anymap" = image;
|
||||
"image/x-portable-bitmap" = image;
|
||||
"image/x-portable-graymap" = image;
|
||||
"image/x-portable-pixmap" = image;
|
||||
"image/x-tga" = image;
|
||||
"image/x-xbitmap" = image;
|
||||
# text
|
||||
# "text/calendar" = "google-calendar-import.desktop";
|
||||
"text/csv" = editor;
|
||||
"text/html" = browser;
|
||||
"text/plain" = editor;
|
||||
"text/rhtml" = editor;
|
||||
"text/x-java" = editor;
|
||||
"text/x-markdown" = editor;
|
||||
"text/x-python" = editor;
|
||||
"text/x-readme" = editor;
|
||||
"text/x-tex" = editor;
|
||||
# video
|
||||
"video/AV1" = media-player;
|
||||
"video/H264" = media-player;
|
||||
"video/H265" = media-player;
|
||||
"video/matroska" = media-player;
|
||||
"video/mp2t" = media-player;
|
||||
"video/mp4" = media-player;
|
||||
"video/MPV" = media-player;
|
||||
"video/mpeg" = media-player;
|
||||
"video/msvideo" = media-player;
|
||||
"video/ogg" = media-player;
|
||||
"video/quicktime" = media-player;
|
||||
"video/vnd.rn-realvideo" = media-player;
|
||||
"video/webm" = media-player;
|
||||
"video/VP8" = media-player;
|
||||
"video/VP9" = media-player;
|
||||
"video/x-avi" = media-player;
|
||||
"video/x-fli" = media-player;
|
||||
"video/x-flv" = media-player;
|
||||
"video/x-matroska" = media-player;
|
||||
"video/x-mpeg" = media-player;
|
||||
"video/x-mpeg2" = media-player;
|
||||
"video/x-ms-afs" = media-player;
|
||||
"video/x-ms-asf" = media-player;
|
||||
"video/x-ms-wmv" = media-player;
|
||||
"video/x-ms-wmx" = media-player;
|
||||
"video/x-ms-wvxvideo" = media-player;
|
||||
"video/x-msvideo" = media-player;
|
||||
"video/x-ogm+ogg" = media-player;
|
||||
"video/x-theora" = media-player;
|
||||
# x-scheme-handler
|
||||
"x-scheme-handler/about" = browser;
|
||||
"x-scheme-handler/chrome" = browser;
|
||||
"x-scheme-handler/element" = matrix;
|
||||
"x-scheme-handler/ftp" = browser;
|
||||
"x-scheme-handler/http" = browser;
|
||||
"x-scheme-handler/https" = browser;
|
||||
# "x-scheme-handler/ics" = "google-calendar-import.desktop";
|
||||
"x-scheme-handler/magnet" = torrent;
|
||||
"x-scheme-handler/mailto" = mail;
|
||||
"x-scheme-handler/spotify" = spotify;
|
||||
"x-scheme-handler/terminal" = term;
|
||||
# other
|
||||
"inode/directory" = fm;
|
||||
"inode/mount-point" = fm;
|
||||
"inode/x-empty" = editor;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{ config, ... }:
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
home-manager.users.${config.mainuser} = {
|
||||
programs.mpv = {
|
||||
@ -23,6 +23,11 @@
|
||||
'';
|
||||
};
|
||||
|
||||
defaultApplications.media-player = {
|
||||
cmd = "${pkgs.mpv}/bin/mpv";
|
||||
desktop = "mpv";
|
||||
};
|
||||
|
||||
persist.state.homeDirectories = [
|
||||
".config/mpv"
|
||||
];
|
||||
|
@ -5,7 +5,6 @@ with config.deviceSpecific; {
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home.packages = with pkgs; [
|
||||
# --- cli ---
|
||||
# bat
|
||||
comma
|
||||
curl
|
||||
curlie
|
||||
@ -32,12 +31,10 @@ with config.deviceSpecific; {
|
||||
usbutils
|
||||
zip
|
||||
# --- tui ---
|
||||
# bottom
|
||||
# micro
|
||||
ncdu
|
||||
procs
|
||||
# --- gui ---
|
||||
feh
|
||||
pcmanfm
|
||||
qimgv
|
||||
xarchiver
|
||||
zathura
|
||||
@ -51,7 +48,6 @@ with config.deviceSpecific; {
|
||||
# ---- gui ----
|
||||
bitwarden
|
||||
jellyfin-mpv-shim
|
||||
# libreoffice
|
||||
obs-studio
|
||||
obs-studio-plugins.obs-vkcapture
|
||||
obsidian
|
||||
@ -59,7 +55,6 @@ with config.deviceSpecific; {
|
||||
pinta
|
||||
qbittorrent
|
||||
sonixd
|
||||
tdesktop
|
||||
tidal-dl
|
||||
tor-browser-bundle-bin
|
||||
ungoogled-chromium
|
||||
@ -92,7 +87,6 @@ with config.deviceSpecific; {
|
||||
".config/Sonixd"
|
||||
".config/WebCord"
|
||||
".config/xarchiver"
|
||||
".local/share/TelegramDesktop"
|
||||
".local/share/tor-browser"
|
||||
".android"
|
||||
".anydesk"
|
||||
@ -104,4 +98,31 @@ with config.deviceSpecific; {
|
||||
".config/.tidal-dl.json"
|
||||
".config/.tidal-dl.token.json"
|
||||
];
|
||||
|
||||
defaultApplications = {
|
||||
fm = {
|
||||
cmd = "${pkgs.pcmanfm}/bin/pcmanfm";
|
||||
desktop = "pcmanfm";
|
||||
};
|
||||
monitor = {
|
||||
cmd = "${pkgs.gnome.gnome-system-monitor}/bin/gnome-system-monitor";
|
||||
desktop = "gnome-system-monitor";
|
||||
};
|
||||
torrent = {
|
||||
cmd = "${pkgs.qbittorrent}/bin/qbittorrent";
|
||||
desktop = "qbittorrent";
|
||||
};
|
||||
archive = {
|
||||
cmd = "${pkgs.xarchiver}/bin/xarchiver";
|
||||
desktop = "xarchiver";
|
||||
};
|
||||
office = {
|
||||
cmd = "${pkgs.onlyoffice-bin_latest}/bin/onlyoffice-desktopeditors";
|
||||
desktop = "onlyoffice-desktopeditors";
|
||||
};
|
||||
image = {
|
||||
cmd = "${pkgs.qimgv}/bin/qimgv";
|
||||
desktop = "qimgv";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -3,6 +3,11 @@
|
||||
spotifywm
|
||||
];
|
||||
|
||||
defaultApplications.spotify = {
|
||||
cmd = "${pkgs.spotify}/bin/spotify";
|
||||
desktop = "spotify";
|
||||
};
|
||||
|
||||
startupApplications = [
|
||||
"${pkgs.spotifywm}/bin/spotify"
|
||||
];
|
||||
|
20
profiles/applications/telegram.nix
Normal file
20
profiles/applications/telegram.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{ config, pkgs, ... }: {
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home.packages = with pkgs; [
|
||||
tdesktop
|
||||
];
|
||||
};
|
||||
|
||||
defaultApplications.messenger = {
|
||||
cmd = "${pkgs.tdesktop}/bin/telegram-desktop";
|
||||
desktop = "telegram-desktop";
|
||||
};
|
||||
|
||||
startupApplications = with config.defaultApplications; [
|
||||
messenger.cmd
|
||||
];
|
||||
|
||||
persist.state.homeDirectories = [
|
||||
".local/share/TelegramDesktop"
|
||||
];
|
||||
}
|
@ -16,6 +16,11 @@ let
|
||||
continue-ver = lib.getVersion ext-vscode.continue.continue;
|
||||
in
|
||||
{
|
||||
environment.sessionVariables = {
|
||||
EDITOR = config.defaultApplications.editor.cmd;
|
||||
VISUAL = config.defaultApplications.editor.cmd;
|
||||
};
|
||||
|
||||
defaultApplications.editor = {
|
||||
cmd = "${EDITOR}";
|
||||
desktop = "code-wayland";
|
||||
@ -32,27 +37,26 @@ in
|
||||
enableExtensionUpdateCheck = false;
|
||||
enableUpdateCheck = false;
|
||||
extensions = [
|
||||
# (pkgs.callPackage ./theme.nix { mainuser = config.mainuser; } config.lib.base16.theme)
|
||||
ext-vscode.aaron-bond.better-comments
|
||||
ext-vscode.alefragnani.bookmarks
|
||||
ext-vscode.alefragnani.project-manager
|
||||
ext-vscode.alexisvt.flutter-snippets
|
||||
# ext-vscode.alefragnani.bookmarks
|
||||
# ext-vscode.alefragnani.project-manager
|
||||
# ext-vscode.alexisvt.flutter-snippets
|
||||
ext-vscode.christian-kohler.path-intellisense
|
||||
ext-vscode.codezombiech.gitignore
|
||||
ext-vscode.continue.continue
|
||||
ext-vscode.dart-code.dart-code
|
||||
ext-vscode.dart-code.flutter
|
||||
# ext-vscode.dlasagno.wal-theme
|
||||
# ext-vscode.dart-code.dart-code
|
||||
# ext-vscode.dart-code.flutter
|
||||
ext-vscode.eamodio.gitlens
|
||||
ext-vscode.enkia.tokyo-night
|
||||
ext-vscode.felixangelov.bloc
|
||||
# ext-vscode.felixangelov.bloc
|
||||
ext-vscode.github.vscode-github-actions
|
||||
ext-vscode.github.vscode-pull-request-github
|
||||
ext-vscode.gruntfuggly.todo-tree
|
||||
ext-vscode.irongeek.vscode-env
|
||||
ext-vscode.jebbs.plantuml
|
||||
ext-vscode.jnoortheen.nix-ide
|
||||
ext-vscode.lucax88x.codeacejumper
|
||||
ext-vscode.marcelovelasquez.flutter-tree
|
||||
# ext-vscode.lucax88x.codeacejumper
|
||||
# ext-vscode.marcelovelasquez.flutter-tree
|
||||
ext-vscode.mhutchie.git-graph
|
||||
ext-vscode.mkhl.direnv
|
||||
ext-vscode.ms-azuretools.vscode-docker
|
||||
@ -64,18 +68,15 @@ in
|
||||
ext-vscode.pkief.material-icon-theme
|
||||
ext-vscode.streetsidesoftware.code-spell-checker
|
||||
ext-vscode.streetsidesoftware.code-spell-checker-russian
|
||||
ext-vscode.usernamehw.errorlens
|
||||
ext-vscode.ultram4rine.vscode-choosealicense
|
||||
ext-vscode.usernamehw.errorlens
|
||||
ext-vscode.yzhang.markdown-all-in-one
|
||||
# Rust
|
||||
ext-vscode.gruntfuggly.todo-tree
|
||||
ext-vscode.jscearcy.rust-doc-viewer
|
||||
ext-vscode.polypus74.trusty-rusty-snippets
|
||||
ext-nixpkgs.rust-lang.rust-analyzer
|
||||
ext-vscode.serayuzgur.crates
|
||||
ext-vscode.tamasfe.even-better-toml
|
||||
ext-vscode.usernamehw.errorlens
|
||||
ext-vscode.vadimcn.vscode-lldb
|
||||
# Golang
|
||||
ext-vscode.golang.go
|
||||
@ -148,11 +149,8 @@ in
|
||||
"terminal.integrated.profiles.linux".zsh.path = "/run/current-system/sw/bin/zsh";
|
||||
"todo-tree.regex.regex" = "(//|#|<!--|;|/\\*|^|^[ \\t]*(-|\\d+.))\\s*($TAGS)|todo!";
|
||||
"update.mode" = "none";
|
||||
# Temp fix crash on startup
|
||||
# See https://github.com/microsoft/vscode/issues/184124
|
||||
"window.menuBarVisibility" = "toggle";
|
||||
"window.titleBarStyle" = "custom";
|
||||
###
|
||||
"workbench.colorTheme" = "Tokyo Night";
|
||||
"workbench.iconTheme" = "material-icon-theme";
|
||||
"[dart]" = {
|
||||
|
@ -1,939 +0,0 @@
|
||||
{ mainuser, linkFarm }:
|
||||
{ base00-hex, base01-hex, base02-hex, base03-hex, base04-hex, base05-hex, base06-hex, base07-hex, base08-hex, base09-hex
|
||||
, base0A-hex, base0B-hex, base0C-hex, base0D-hex, base0E-hex, base0F-hex, ... }:
|
||||
let
|
||||
theme = {
|
||||
"theme/generated.json" = __toJSON {
|
||||
"$schema" = "vscode://schemas/color-theme";
|
||||
colors = {
|
||||
"activityBar.activeBackground" = "#${base00-hex}";
|
||||
"activityBar.background" = "#${base00-hex}";
|
||||
"activityBar.dropBackground" = "#${base07-hex}";
|
||||
"activityBar.foreground" = "#${base05-hex}";
|
||||
"activityBar.inactiveForeground" = "#${base03-hex}";
|
||||
"activityBarBadge.background" = "#${base0D-hex}";
|
||||
"activityBarBadge.foreground" = "#${base07-hex}";
|
||||
"badge.background" = "#${base00-hex}";
|
||||
"badge.foreground" = "#${base05-hex}";
|
||||
"breadcrumb.activeSelectionForeground" = "#${base07-hex}";
|
||||
"breadcrumb.background" = "#${base00-hex}";
|
||||
"breadcrumb.focusForeground" = "#${base06-hex}";
|
||||
"breadcrumb.foreground" = "#${base05-hex}";
|
||||
"breadcrumbPicker.background" = "#${base00-hex}";
|
||||
"button.background" = "#${base00-hex}";
|
||||
"button.foreground" = "#${base07-hex}";
|
||||
"button.hoverBackground" = "#${base04-hex}";
|
||||
"button.secondaryBackground" = "#${base0E-hex}";
|
||||
"button.secondaryForeground" = "#${base07-hex}";
|
||||
"button.secondaryHoverBackground" = "#${base04-hex}";
|
||||
"charts.blue" = "#${base0D-hex}";
|
||||
"charts.foreground" = "#${base05-hex}";
|
||||
"charts.green" = "#${base0B-hex}";
|
||||
"charts.lines" = "#${base05-hex}";
|
||||
"charts.orange" = "#${base09-hex}";
|
||||
"charts.purple" = "#${base0E-hex}";
|
||||
"charts.red" = "#${base08-hex}";
|
||||
"charts.yellow" = "#${base0A-hex}";
|
||||
"checkbox.background" = "#${base01-hex}";
|
||||
"checkbox.foreground" = "#${base05-hex}";
|
||||
"debugConsole.errorForeground" = "#${base08-hex}";
|
||||
"debugConsole.infoForeground" = "#${base05-hex}";
|
||||
"debugConsole.sourceForeground" = "#${base05-hex}";
|
||||
"debugConsole.warningForeground" = "#${base0A-hex}";
|
||||
"debugConsoleInputIcon.foreground" = "#${base05-hex}";
|
||||
"debugExceptionWidget.background" = "#${base00-hex}";
|
||||
"debugIcon.breakpointCurrentStackframeForeground" = "#${base0A-hex}";
|
||||
"debugIcon.breakpointDisabledForeground" = "#${base04-hex}";
|
||||
"debugIcon.breakpointForeground" = "#${base08-hex}";
|
||||
"debugIcon.breakpointStackframeForeground" = "#${base0F-hex}";
|
||||
"debugIcon.breakpointUnverifiedForeground" = "#${base02-hex}";
|
||||
"debugIcon.continueForeground" = "#${base0B-hex}";
|
||||
"debugIcon.disconnectForeground" = "#${base08-hex}";
|
||||
"debugIcon.pauseForeground" = "#${base0D-hex}";
|
||||
"debugIcon.restartForeground" = "#${base0B-hex}";
|
||||
"debugIcon.startForeground" = "#${base0B-hex}";
|
||||
"debugIcon.stepBackForeground" = "#${base0F-hex}";
|
||||
"debugIcon.stepIntoForeground" = "#${base0C-hex}";
|
||||
"debugIcon.stepOutForeground" = "#${base0E-hex}";
|
||||
"debugIcon.stepOverForeground" = "#${base0D-hex}";
|
||||
"debugIcon.stopForeground" = "#${base08-hex}";
|
||||
"debugTokenExpression.boolean" = "#${base09-hex}";
|
||||
"debugTokenExpression.error" = "#${base08-hex}";
|
||||
"debugTokenExpression.name" = "#${base0E-hex}";
|
||||
"debugTokenExpression.number" = "#${base09-hex}";
|
||||
"debugTokenExpression.string" = "#${base0B-hex}";
|
||||
"debugTokenExpression.value" = "#${base05-hex}";
|
||||
"debugToolBar.background" = "#${base00-hex}";
|
||||
"debugView.stateLabelBackground" = "#${base0D-hex}";
|
||||
"debugView.stateLabelForeground" = "#${base07-hex}";
|
||||
"debugView.valueChangedHighlight" = "#${base0D-hex}";
|
||||
descriptionForeground = "#${base03-hex}";
|
||||
"diffEditor.diagonalFill" = "#${base02-hex}";
|
||||
"diffEditor.insertedTextBackground" = "#${base0B-hex}20";
|
||||
"diffEditor.removedTextBackground" = "#${base08-hex}20";
|
||||
"dropdown.background" = "#${base00-hex}";
|
||||
"dropdown.foreground" = "#${base05-hex}";
|
||||
"dropdown.listBackground" = "#${base00-hex}";
|
||||
"editor.background" = "#${base00-hex}";
|
||||
"editor.findMatchBackground" = "#${base0A-hex}6f";
|
||||
"editor.findMatchHighlightBackground" = "#${base09-hex}6f";
|
||||
"editor.findRangeHighlightBackground" = "#${base00-hex}6f";
|
||||
"editor.foreground" = "#${base05-hex}";
|
||||
"editor.hoverHighlightBackground" = "#${base02-hex}6f";
|
||||
"editor.inactiveSelectionBackground" = "#${base02-hex}";
|
||||
"editor.lineHighlightBackground" = "#${base00-hex}";
|
||||
"editor.rangeHighlightBackground" = "#${base00-hex}6f";
|
||||
"editor.selectionBackground" = "#${base01-hex}";
|
||||
"editor.selectionHighlightBackground" = "#${base00-hex}";
|
||||
"editor.snippetFinalTabstopHighlightBackground" = "#${base03-hex}";
|
||||
"editor.snippetTabstopHighlightBackground" = "#${base02-hex}";
|
||||
"editor.wordHighlightBackground" = "#${base02-hex}6f";
|
||||
"editor.wordHighlightStrongBackground" = "#${base03-hex}6f";
|
||||
"editorBracketMatch.background" = "#${base02-hex}";
|
||||
"editorCodeLens.foreground" = "#${base02-hex}";
|
||||
"editorCursor.foreground" = "#${base05-hex}";
|
||||
"editorError.foreground" = "#${base08-hex}";
|
||||
"editorGroup.background" = "#${base00-hex}";
|
||||
"editorGroup.dropBackground" = "#${base02-hex}6f";
|
||||
"editorGroup.emptyBackground" = "#${base00-hex}";
|
||||
"editorGroupHeader.noTabsBackground" = "#${base00-hex}";
|
||||
"editorGroupHeader.tabsBackground" = "#${base00-hex}";
|
||||
"editorGutter.addedBackground" = "#${base0B-hex}";
|
||||
"editorGutter.background" = "#${base00-hex}";
|
||||
"editorGutter.commentRangeForeground" = "#${base04-hex}";
|
||||
"editorGutter.deletedBackground" = "#${base08-hex}";
|
||||
"editorGutter.foldingControlForeground" = "#${base05-hex}";
|
||||
"editorGutter.modifiedBackground" = "#${base0E-hex}";
|
||||
"editorHint.foreground" = "#${base0D-hex}";
|
||||
"editorHoverWidget.background" = "#${base00-hex}";
|
||||
"editorHoverWidget.foreground" = "#${base05-hex}";
|
||||
"editorIndentGuide.activeBackground" = "#${base04-hex}";
|
||||
"editorIndentGuide.background" = "#${base03-hex}";
|
||||
"editorInfo.foreground" = "#${base0C-hex}";
|
||||
"editorLightBulb.foreground" = "#${base0A-hex}";
|
||||
"editorLightBulbAutoFix.foreground" = "#${base0D-hex}";
|
||||
"editorLineNumber.activeForeground" = "#${base04-hex}";
|
||||
"editorLineNumber.foreground" = "#${base03-hex}";
|
||||
"editorLink.activeForeground" = "#${base0D-hex}";
|
||||
"editorMarkerNavigation.background" = "#${base00-hex}";
|
||||
"editorMarkerNavigationError.background" = "#${base08-hex}";
|
||||
"editorMarkerNavigationInfo.background" = "#${base0D-hex}";
|
||||
"editorMarkerNavigationWarning.background" = "#${base0A-hex}";
|
||||
"editorOverviewRuler.addedForeground" = "#${base0B-hex}";
|
||||
"editorOverviewRuler.bracketMatchForeground" = "#${base06-hex}";
|
||||
"editorOverviewRuler.commonContentForeground" = "#${base0F-hex}";
|
||||
"editorOverviewRuler.currentContentForeground" = "#${base0D-hex}";
|
||||
"editorOverviewRuler.deletedForeground" = "#${base08-hex}";
|
||||
"editorOverviewRuler.errorForeground" = "#${base08-hex}";
|
||||
"editorOverviewRuler.findMatchForeground" = "#${base0A-hex}6f";
|
||||
"editorOverviewRuler.incomingContentForeground" = "#${base0B-hex}";
|
||||
"editorOverviewRuler.infoForeground" = "#${base0C-hex}";
|
||||
"editorOverviewRuler.modifiedForeground" = "#${base0E-hex}";
|
||||
"editorOverviewRuler.rangeHighlightForeground" = "#${base03-hex}6f";
|
||||
"editorOverviewRuler.selectionHighlightForeground" = "#${base02-hex}6f";
|
||||
"editorOverviewRuler.warningForeground" = "#${base0A-hex}";
|
||||
"editorOverviewRuler.wordHighlightForeground" = "#${base07-hex}6f";
|
||||
"editorOverviewRuler.wordHighlightStrongForeground" = "#${base0D-hex}6f";
|
||||
"editorPane.background" = "#${base00-hex}";
|
||||
"editorRuler.foreground" = "#${base03-hex}";
|
||||
"editorSuggestWidget.background" = "#${base00-hex}";
|
||||
"editorSuggestWidget.foreground" = "#${base05-hex}";
|
||||
"editorSuggestWidget.highlightForeground" = "#${base0D-hex}";
|
||||
"editorSuggestWidget.selectedBackground" = "#${base02-hex}";
|
||||
"editorWarning.foreground" = "#${base0A-hex}";
|
||||
"editorWhitespace.foreground" = "#${base03-hex}";
|
||||
"editorWidget.background" = "#${base00-hex}";
|
||||
"editorWidget.foreground" = "#${base05-hex}";
|
||||
errorForeground = "#${base08-hex}";
|
||||
"extensionBadge.remoteBackground" = "#${base09-hex}";
|
||||
"extensionBadge.remoteForeground" = "#${base07-hex}";
|
||||
"extensionButton.prominentBackground" = "#${base0B-hex}";
|
||||
"extensionButton.prominentForeground" = "#${base07-hex}";
|
||||
"extensionButton.prominentHoverBackground" = "#${base02-hex}";
|
||||
foreground = "#${base05-hex}";
|
||||
"gitDecoration.addedResourceForeground" = "#${base0B-hex}";
|
||||
"gitDecoration.conflictingResourceForeground" = "#${base09-hex}";
|
||||
"gitDecoration.deletedResourceForeground" = "#${base08-hex}";
|
||||
"gitDecoration.ignoredResourceForeground" = "#${base03-hex}";
|
||||
"gitDecoration.modifiedResourceForeground" = "#${base0A-hex}";
|
||||
"gitDecoration.stageDeletedResourceForeground" = "#${base0C-hex}";
|
||||
"gitDecoration.stageModifiedResourceForeground" = "#${base0C-hex}";
|
||||
"gitDecoration.submoduleResourceForeground" = "#${base0F-hex}";
|
||||
"gitDecoration.untrackedResourceForeground" = "#${base0E-hex}";
|
||||
"icon.foreground" = "#${base04-hex}";
|
||||
"input.background" = "#${base00-hex}";
|
||||
"input.foreground" = "#${base05-hex}";
|
||||
"input.placeholderForeground" = "#${base03-hex}";
|
||||
"inputOption.activeBackground" = "#${base02-hex}";
|
||||
"inputOption.activeBorder" = "#${base09-hex}";
|
||||
"inputOption.activeForeground" = "#${base05-hex}";
|
||||
"inputValidation.errorBackground" = "#${base08-hex}";
|
||||
"inputValidation.errorBorder" = "#${base08-hex}";
|
||||
"inputValidation.errorForeground" = "#${base05-hex}";
|
||||
"inputValidation.infoBackground" = "#${base0D-hex}";
|
||||
"inputValidation.infoBorder" = "#${base0D-hex}";
|
||||
"inputValidation.infoForeground" = "#${base05-hex}";
|
||||
"inputValidation.warningBackground" = "#${base0A-hex}";
|
||||
"inputValidation.warningBorder" = "#${base0A-hex}";
|
||||
"inputValidation.warningForeground" = "#${base05-hex}";
|
||||
"list.activeSelectionBackground" = "#${base01-hex}";
|
||||
"list.activeSelectionForeground" = "#${base05-hex}";
|
||||
"list.dropBackground" = "#${base07-hex}";
|
||||
"list.errorForeground" = "#${base08-hex}";
|
||||
"list.filterMatchBackground" = "#${base02-hex}";
|
||||
"list.focusBackground" = "#${base02-hex}";
|
||||
"list.focusForeground" = "#${base05-hex}";
|
||||
"list.highlightForeground" = "#${base07-hex}";
|
||||
"list.hoverBackground" = "#${base03-hex}";
|
||||
"list.hoverForeground" = "#${base05-hex}";
|
||||
"list.inactiveFocusBackground" = "#${base02-hex}";
|
||||
"list.inactiveSelectionBackground" = "#${base02-hex}";
|
||||
"list.inactiveSelectionForeground" = "#${base05-hex}";
|
||||
"list.invalidItemForeground" = "#${base08-hex}";
|
||||
"list.warningForeground" = "#${base0A-hex}";
|
||||
"listFilterWidget.background" = "#${base00-hex}";
|
||||
"listFilterWidget.noMatchesOutline" = "#${base08-hex}";
|
||||
"menu.background" = "#${base00-hex}";
|
||||
"menu.foreground" = "#${base05-hex}";
|
||||
"menu.selectionBackground" = "#${base02-hex}";
|
||||
"menu.selectionForeground" = "#${base05-hex}";
|
||||
"menu.separatorBackground" = "#${base07-hex}";
|
||||
"menubar.selectionBackground" = "#${base00-hex}";
|
||||
"menubar.selectionForeground" = "#${base05-hex}";
|
||||
"merge.currentContentBackground" = "#${base0D-hex}40";
|
||||
"merge.currentHeaderBackground" = "#${base0D-hex}40";
|
||||
"merge.incomingContentBackground" = "#${base0B-hex}60";
|
||||
"merge.incomingHeaderBackground" = "#${base0B-hex}60";
|
||||
"minimap.background" = "#${base00-hex}";
|
||||
"minimap.errorHighlight" = "#${base08-hex}";
|
||||
"minimap.findMatchHighlight" = "#${base0A-hex}6f";
|
||||
"minimap.selectionHighlight" = "#${base02-hex}6f";
|
||||
"minimap.warningHighlight" = "#${base0A-hex}";
|
||||
"minimapGutter.addedBackground" = "#${base0B-hex}";
|
||||
"minimapGutter.deletedBackground" = "#${base08-hex}";
|
||||
"minimapGutter.modifiedBackground" = "#${base0E-hex}";
|
||||
"notebook.rowHoverBackground" = "#${base00-hex}";
|
||||
"notification.background" = "#${base02-hex}";
|
||||
"notification.buttonBackground" = "#${base0D-hex}";
|
||||
"notification.buttonForeground" = "#${base07-hex}";
|
||||
"notification.buttonHoverBackground" = "#${base02-hex}";
|
||||
"notification.errorBackground" = "#${base08-hex}";
|
||||
"notification.errorForeground" = "#${base07-hex}";
|
||||
"notification.foreground" = "#${base05-hex}";
|
||||
"notification.infoBackground" = "#${base0C-hex}";
|
||||
"notification.infoForeground" = "#${base07-hex}";
|
||||
"notification.warningBackground" = "#${base0A-hex}";
|
||||
"notification.warningForeground" = "#${base07-hex}";
|
||||
"notificationCenterHeader.background" = "#${base00-hex}";
|
||||
"notificationCenterHeader.foreground" = "#${base05-hex}";
|
||||
"notificationLink.foreground" = "#${base0D-hex}";
|
||||
"notifications.background" = "#${base02-hex}";
|
||||
"notifications.foreground" = "#${base05-hex}";
|
||||
"notificationsErrorIcon.foreground" = "#${base08-hex}";
|
||||
"notificationsInfoIcon.foreground" = "#${base0D-hex}";
|
||||
"notificationsWarningIcon.foreground" = "#${base0A-hex}";
|
||||
"panel.background" = "#${base00-hex}";
|
||||
"panel.dropBackground" = "#${base00-hex}6f";
|
||||
"panelTitle.activeForeground" = "#${base05-hex}";
|
||||
"panelTitle.inactiveForeground" = "#${base03-hex}";
|
||||
"peekViewEditor.background" = "#${base00-hex}";
|
||||
"peekViewEditor.matchHighlightBackground" = "#${base09-hex}6f";
|
||||
"peekViewEditorGutter.background" = "#${base00-hex}";
|
||||
"peekViewResult.background" = "#${base00-hex}";
|
||||
"peekViewResult.fileForeground" = "#${base05-hex}";
|
||||
"peekViewResult.lineForeground" = "#${base03-hex}";
|
||||
"peekViewResult.matchHighlightBackground" = "#${base09-hex}6f";
|
||||
"peekViewResult.selectionBackground" = "#${base02-hex}";
|
||||
"peekViewResult.selectionForeground" = "#${base05-hex}";
|
||||
"peekViewTitle.background" = "#${base02-hex}";
|
||||
"peekViewTitleDescription.foreground" = "#${base03-hex}";
|
||||
"peekViewTitleLabel.foreground" = "#${base05-hex}";
|
||||
"pickerGroup.foreground" = "#${base03-hex}";
|
||||
"problemsErrorIcon.foreground" = "#${base08-hex}";
|
||||
"problemsInfoIcon.foreground" = "#${base0C-hex}";
|
||||
"problemsWarningIcon.foreground" = "#${base0A-hex}";
|
||||
"progressBar.background" = "#${base03-hex}";
|
||||
"quickInput.background" = "#${base00-hex}";
|
||||
"quickInput.foreground" = "#${base05-hex}";
|
||||
"scrollbar.shadow" = "#${base00-hex}";
|
||||
"scrollbarSlider.activeBackground" = "#${base04-hex}6f";
|
||||
"scrollbarSlider.background" = "#${base02-hex}6f";
|
||||
"scrollbarSlider.hoverBackground" = "#${base03-hex}6f";
|
||||
"selection.background" = "#${base01-hex}";
|
||||
"settings.checkboxBackground" = "#${base01-hex}";
|
||||
"settings.checkboxForeground" = "#${base05-hex}";
|
||||
"settings.dropdownBackground" = "#${base01-hex}";
|
||||
"settings.dropdownForeground" = "#${base05-hex}";
|
||||
"settings.focusedRowBackground" = "#${base02-hex}";
|
||||
"settings.headerForeground" = "#${base05-hex}";
|
||||
"settings.modifiedItemForeground" = "#${base0D-hex}";
|
||||
"settings.modifiedItemIndicator" = "#${base0D-hex}";
|
||||
"settings.numberInputBackground" = "#${base00-hex}";
|
||||
"settings.numberInputForeground" = "#${base05-hex}";
|
||||
"settings.textInputBackground" = "#${base01-hex}";
|
||||
"settings.textInputForeground" = "#${base05-hex}";
|
||||
"sideBar.background" = "#${base00-hex}";
|
||||
"sideBar.dropBackground" = "#${base01-hex}6f";
|
||||
"sideBar.foreground" = "#${base05-hex}";
|
||||
"sideBarSectionHeader.background" = "#${base00-hex}";
|
||||
"sideBarSectionHeader.foreground" = "#${base05-hex}";
|
||||
"sideBarTitle.foreground" = "#${base05-hex}";
|
||||
"statusBar.background" = "#${base0D-hex}";
|
||||
"statusBar.debuggingBackground" = "#${base09-hex}";
|
||||
"statusBar.debuggingForeground" = "#${base07-hex}";
|
||||
"statusBar.foreground" = "#${base07-hex}";
|
||||
"statusBar.noFolderBackground" = "#${base0E-hex}";
|
||||
"statusBar.noFolderForeground" = "#${base07-hex}";
|
||||
"statusBarItem.activeBackground" = "#${base03-hex}";
|
||||
"statusBarItem.errorBackground" = "#${base08-hex}";
|
||||
"statusBarItem.errorForeground" = "#${base07-hex}";
|
||||
"statusBarItem.hoverBackground" = "#${base02-hex}";
|
||||
"statusBarItem.prominentBackground" = "#${base0E-hex}";
|
||||
"statusBarItem.prominentForeground" = "#${base07-hex}";
|
||||
"statusBarItem.prominentHoverBackground" = "#${base08-hex}";
|
||||
"statusBarItem.remoteBackground" = "#${base0B-hex}";
|
||||
"statusBarItem.remoteForeground" = "#${base07-hex}";
|
||||
"symbolIcon.arrayForeground" = "#${base05-hex}";
|
||||
"symbolIcon.booleanForeground" = "#${base09-hex}";
|
||||
"symbolIcon.classForeground" = "#${base0A-hex}";
|
||||
"symbolIcon.colorForeground" = "#f0f";
|
||||
"symbolIcon.constantForeground" = "#${base09-hex}";
|
||||
"symbolIcon.constructorForeground" = "#${base0D-hex}";
|
||||
"symbolIcon.enumeratorForeground" = "#${base09-hex}";
|
||||
"symbolIcon.enumeratorMemberForeground" = "#${base0D-hex}";
|
||||
"symbolIcon.eventForeground" = "#${base0A-hex}";
|
||||
"symbolIcon.fieldForeground" = "#${base08-hex}";
|
||||
"symbolIcon.fileForeground" = "#${base05-hex}";
|
||||
"symbolIcon.folderForeground" = "#${base05-hex}";
|
||||
"symbolIcon.functionForeground" = "#${base0D-hex}";
|
||||
"symbolIcon.interfaceForeground" = "#${base0D-hex}";
|
||||
"symbolIcon.keyForeground" = "#f0f";
|
||||
"symbolIcon.keywordForeground" = "#${base0E-hex}";
|
||||
"symbolIcon.methodForeground" = "#${base0D-hex}";
|
||||
"symbolIcon.moduleForeground" = "#${base05-hex}";
|
||||
"symbolIcon.namespaceForeground" = "#${base05-hex}";
|
||||
"symbolIcon.nullForeground" = "#${base0F-hex}";
|
||||
"symbolIcon.numberForeground" = "#${base09-hex}";
|
||||
"symbolIcon.objectForeground" = "#f0f";
|
||||
"symbolIcon.operatorForeground" = "#f0f";
|
||||
"symbolIcon.packageForeground" = "#f0f";
|
||||
"symbolIcon.propertyForeground" = "#${base05-hex}";
|
||||
"symbolIcon.referenceForeground" = "#f0f";
|
||||
"symbolIcon.snippetForeground" = "#${base05-hex}";
|
||||
"symbolIcon.stringForeground" = "#${base0B-hex}";
|
||||
"symbolIcon.structForeground" = "#${base0A-hex}";
|
||||
"symbolIcon.textForeground" = "#${base05-hex}";
|
||||
"symbolIcon.typeParameterForeground" = "#f0f";
|
||||
"symbolIcon.unitForeground" = "#f0f";
|
||||
"symbolIcon.variableForeground" = "#${base08-hex}";
|
||||
"tab.activeBackground" = "#${base01-hex}";
|
||||
"tab.activeForeground" = "#${base05-hex}";
|
||||
"tab.activeModifiedBorder" = "#${base0D-hex}";
|
||||
"tab.hoverBackground" = "#${base02-hex}";
|
||||
"tab.inactiveBackground" = "#${base00-hex}";
|
||||
"tab.inactiveForeground" = "#${base03-hex}";
|
||||
"tab.inactiveModifiedBorder" = "#${base0D-hex}";
|
||||
"tab.unfocusedActiveBackground" = "#${base00-hex}";
|
||||
"tab.unfocusedActiveForeground" = "#${base04-hex}";
|
||||
"tab.unfocusedActiveModifiedBorder" = "#${base0D-hex}";
|
||||
"tab.unfocusedHoverBackground" = "#${base02-hex}";
|
||||
"tab.unfocusedInactiveForeground" = "#${base03-hex}";
|
||||
"tab.unfocusedInactiveModifiedBorder" = "#${base0D-hex}";
|
||||
"terminal.ansiBlack" = "#${base00-hex}";
|
||||
"terminal.ansiBlue" = "#${base0D-hex}";
|
||||
"terminal.ansiBrightBlack" = "#${base03-hex}";
|
||||
"terminal.ansiBrightBlue" = "#${base0D-hex}";
|
||||
"terminal.ansiBrightCyan" = "#${base0C-hex}";
|
||||
"terminal.ansiBrightGreen" = "#${base0B-hex}";
|
||||
"terminal.ansiBrightMagenta" = "#${base0E-hex}";
|
||||
"terminal.ansiBrightRed" = "#${base08-hex}";
|
||||
"terminal.ansiBrightWhite" = "#${base07-hex}";
|
||||
"terminal.ansiBrightYellow" = "#${base0A-hex}";
|
||||
"terminal.ansiCyan" = "#${base0C-hex}";
|
||||
"terminal.ansiGreen" = "#${base0B-hex}";
|
||||
"terminal.ansiMagenta" = "#${base0E-hex}";
|
||||
"terminal.ansiRed" = "#${base08-hex}";
|
||||
"terminal.ansiWhite" = "#${base05-hex}";
|
||||
"terminal.ansiYellow" = "#${base0A-hex}";
|
||||
"terminal.background" = "#${base00-hex}";
|
||||
"terminal.foreground" = "#${base05-hex}";
|
||||
"terminalCursor.foreground" = "#${base05-hex}";
|
||||
"textBlockQuote.background" = "#${base00-hex}";
|
||||
"textBlockQuote.border" = "#${base0D-hex}";
|
||||
"textCodeBlock.background" = "#${base00-hex}";
|
||||
"textLink.activeForeground" = "#${base0C-hex}";
|
||||
"textLink.foreground" = "#${base0D-hex}";
|
||||
"textPreformat.foreground" = "#${base0D-hex}";
|
||||
"textSeparator.foreground" = "#f0f";
|
||||
"titleBar.activeBackground" = "#${base01-hex}";
|
||||
"titleBar.activeForeground" = "#${base05-hex}";
|
||||
"titleBar.inactiveBackground" = "#${base00-hex}";
|
||||
"titleBar.inactiveForeground" = "#${base03-hex}";
|
||||
"tree.indentGuidesStroke" = "#${base05-hex}";
|
||||
"walkThrough.embeddedEditorBackground" = "#${base00-hex}";
|
||||
"welcomePage.background" = "#${base00-hex}";
|
||||
"welcomePage.buttonBackground" = "#${base00-hex}";
|
||||
"welcomePage.buttonHoverBackground" = "#${base02-hex}";
|
||||
"widget.shadow" = "#${base00-hex}";
|
||||
};
|
||||
name = "Generated theme";
|
||||
tokenColors = [
|
||||
{
|
||||
name = "Comment";
|
||||
scope = [ "comment" "punctuation.definition.comment" ];
|
||||
settings = {
|
||||
fontStyle = "italic";
|
||||
foreground = "#${base03-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "Variables, Parameters";
|
||||
scope = [
|
||||
"variable"
|
||||
"string constant.other.placeholder"
|
||||
"entity.name.variable.parameter"
|
||||
"entity.name.variable.local"
|
||||
"variable.parameter"
|
||||
];
|
||||
settings = { foreground = "#${base05-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Properties";
|
||||
scope = [ "variable.other.object.property" ];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Colors";
|
||||
scope = [ "constant.other.color" ];
|
||||
settings = { foreground = "#${base0B-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Invalid";
|
||||
scope = [ "invalid" "invalid.illegal" ];
|
||||
settings = { foreground = "#${base08-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Invalid - Deprecated";
|
||||
scope = [ "invalid.deprecated" ];
|
||||
settings = { foreground = "#${base0F-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Keyword, Storage";
|
||||
scope = [ "keyword" "storage.modifier" ];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Keyword Control";
|
||||
scope = [
|
||||
"keyword.control"
|
||||
"keyword.control.flow"
|
||||
"keyword.control.from"
|
||||
"keyword.control.import"
|
||||
"keyword.control.as"
|
||||
];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Keyword";
|
||||
scope = [
|
||||
"keyword.other.using"
|
||||
"keyword.other.namespace"
|
||||
"keyword.other.class"
|
||||
"keyword.other.new"
|
||||
"keyword.other.event"
|
||||
"keyword.other.this"
|
||||
"keyword.other.await"
|
||||
"keyword.other.var"
|
||||
"keyword.other.package"
|
||||
"keyword.other.import"
|
||||
"variable.language.this"
|
||||
"storage.type.ts"
|
||||
];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Types, Primitives";
|
||||
scope = [ "keyword.type" "storage.type.primitive" ];
|
||||
settings = { foreground = "#${base0C-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Function";
|
||||
scope = [ "storage.type.function" ];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Operator, Misc";
|
||||
scope = [
|
||||
"constant.other.color"
|
||||
"punctuation"
|
||||
"punctuation.section.class.end"
|
||||
"meta.tag"
|
||||
"punctuation.definition.tag"
|
||||
"punctuation.separator.inheritance.php"
|
||||
"punctuation.definition.tag.html"
|
||||
"punctuation.definition.tag.begin.html"
|
||||
"punctuation.definition.tag.end.html"
|
||||
"keyword.other.template"
|
||||
"keyword.other.substitution"
|
||||
];
|
||||
settings = { foreground = "#${base04-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Embedded";
|
||||
scope = [ "punctuation.section.embedded" "variable.interpolation" ];
|
||||
settings = { foreground = "#${base0C-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Tag";
|
||||
scope =
|
||||
[ "entity.name.tag" "meta.tag.sgml" "markup.deleted.git_gutter" ];
|
||||
settings = { foreground = "#${base08-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Function, Special Method";
|
||||
scope = [
|
||||
"entity.name.function"
|
||||
"meta.function-call"
|
||||
"variable.function"
|
||||
"support.function"
|
||||
"keyword.other.special-method"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Block Level Variables";
|
||||
scope = [ "meta.block variable.other" ];
|
||||
settings = { foreground = "#${base08-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Other Variable, String Link";
|
||||
scope = [ "support.other.variable" "string.other.link" ];
|
||||
settings = { foreground = "#${base08-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Number, Constant, Function Argument, Tag Attribute, Embedded";
|
||||
scope = [
|
||||
"constant.numeric"
|
||||
"constant.language"
|
||||
"support.constant"
|
||||
"constant.character"
|
||||
"constant.escape"
|
||||
"keyword.other.unit"
|
||||
"keyword.other"
|
||||
];
|
||||
settings = { foreground = "#${base09-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "String, Symbols, Inherited Class, Markup Heading";
|
||||
scope = [
|
||||
"string"
|
||||
"constant.other.symbol"
|
||||
"constant.other.key"
|
||||
"entity.other.inherited-class"
|
||||
"markup.heading"
|
||||
"markup.inserted.git_gutter"
|
||||
"meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js"
|
||||
];
|
||||
settings = {
|
||||
fontStyle = "";
|
||||
foreground = "#${base0B-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "Class, Support";
|
||||
scope = [
|
||||
"entity.name"
|
||||
"support.type"
|
||||
"support.class"
|
||||
"support.other.namespace.use.php"
|
||||
"meta.use.php"
|
||||
"support.other.namespace.php"
|
||||
"markup.changed.git_gutter"
|
||||
"support.type.sys-types"
|
||||
];
|
||||
settings = { foreground = "#${base0A-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Storage Type, Import Class";
|
||||
scope = [
|
||||
"storage.type"
|
||||
"storage.modifier.package"
|
||||
"storage.modifier.import"
|
||||
];
|
||||
settings = { foreground = "#${base0A-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Fields";
|
||||
scope = [ "entity.name.variable.field" ];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Entity Types";
|
||||
scope = [ "support.type" ];
|
||||
settings = { foreground = "#${base0C-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "CSS Class and Support";
|
||||
scope = [
|
||||
"source.css support.type.property-name"
|
||||
"source.sass support.type.property-name"
|
||||
"source.scss support.type.property-name"
|
||||
"source.less support.type.property-name"
|
||||
"source.stylus support.type.property-name"
|
||||
"source.postcss support.type.property-name"
|
||||
];
|
||||
settings = { foreground = "#${base0C-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Sub-methods";
|
||||
scope = [
|
||||
"entity.name.module.js"
|
||||
"variable.import.parameter.js"
|
||||
"variable.other.class.js"
|
||||
];
|
||||
settings = { foreground = "#${base08-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Language methods";
|
||||
scope = [ "variable.language" ];
|
||||
settings = {
|
||||
fontStyle = "italic";
|
||||
foreground = "#${base08-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "entity.name.method.js";
|
||||
scope = [ "entity.name.method.js" ];
|
||||
settings = {
|
||||
fontStyle = "italic";
|
||||
foreground = "#${base0D-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "meta.method.js";
|
||||
scope = [
|
||||
"meta.class-method.js entity.name.function.js"
|
||||
"variable.function.constructor"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Attributes";
|
||||
scope = [ "entity.other.attribute-name" ];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "HTML Attributes";
|
||||
scope = [
|
||||
"text.html.basic entity.other.attribute-name.html"
|
||||
"text.html.basic entity.other.attribute-name"
|
||||
];
|
||||
settings = {
|
||||
fontStyle = "italic";
|
||||
foreground = "#${base0A-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "CSS Classes";
|
||||
scope = [ "entity.other.attribute-name.class" ];
|
||||
settings = { foreground = "#${base0A-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "CSS ID's";
|
||||
scope = [ "source.sass keyword.control" ];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Inserted";
|
||||
scope = [ "markup.inserted" ];
|
||||
settings = { foreground = "#${base0B-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Deleted";
|
||||
scope = [ "markup.deleted" ];
|
||||
settings = { foreground = "#${base08-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Changed";
|
||||
scope = [ "markup.changed" ];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Regular Expressions";
|
||||
scope = [ "string.regexp" ];
|
||||
settings = { foreground = "#${base0C-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Escape Characters";
|
||||
scope = [ "constant.character.escape" ];
|
||||
settings = { foreground = "#${base0C-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "URL";
|
||||
scope = [ "*url*" "*link*" "*uri*" ];
|
||||
settings = { fontStyle = "underline"; };
|
||||
}
|
||||
{
|
||||
name = "Decorators";
|
||||
scope = [
|
||||
"tag.decorator.js entity.name.tag.js"
|
||||
"tag.decorator.js punctuation.definition.tag.js"
|
||||
];
|
||||
settings = {
|
||||
fontStyle = "italic";
|
||||
foreground = "#${base0D-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "ES7 Bind Operator";
|
||||
scope = [
|
||||
"source.js constant.other.object.key.js string.unquoted.label.js"
|
||||
];
|
||||
settings = {
|
||||
fontStyle = "italic";
|
||||
foreground = "#${base0E-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 0";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 1";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 2";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 3";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 4";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 5";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 6";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 7";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "JSON Key - Level 8";
|
||||
scope = [
|
||||
"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Plain";
|
||||
scope = [
|
||||
"text.html.markdown"
|
||||
"punctuation.definition.list_item.markdown"
|
||||
];
|
||||
settings = { foreground = "#${base05-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Markup Raw Inline";
|
||||
scope = [ "text.html.markdown markup.inline.raw.markdown" ];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Markup Raw Inline Punctuation";
|
||||
scope = [
|
||||
"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown"
|
||||
];
|
||||
settings = { foreground = "#${base0C-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Line Break";
|
||||
scope = [ "text.html.markdown meta.dummy.line-break" ];
|
||||
settings = { foreground = "#${base03-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Heading";
|
||||
scope = [
|
||||
"markdown.heading"
|
||||
"markup.heading | markup.heading entity.name"
|
||||
"markup.heading.markdown punctuation.definition.heading.markdown"
|
||||
];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markup - Italic";
|
||||
scope = [ "markup.italic" ];
|
||||
settings = {
|
||||
fontStyle = "italic";
|
||||
foreground = "#${base08-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "Markup - Bold";
|
||||
scope = [ "markup.bold" "markup.bold string" ];
|
||||
settings = {
|
||||
fontStyle = "bold";
|
||||
foreground = "#${base08-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "Markup - Bold-Italic";
|
||||
scope = [
|
||||
"markup.bold markup.italic"
|
||||
"markup.italic markup.bold"
|
||||
"markup.quote markup.bold"
|
||||
"markup.bold markup.italic string"
|
||||
"markup.italic markup.bold string"
|
||||
"markup.quote markup.bold string"
|
||||
];
|
||||
settings = {
|
||||
fontStyle = "bold";
|
||||
foreground = "#${base08-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "Markup - Underline";
|
||||
scope = [ "markup.underline" ];
|
||||
settings = {
|
||||
fontStyle = "underline";
|
||||
foreground = "#${base09-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "Markdown - Blockquote";
|
||||
scope = [ "markup.quote punctuation.definition.blockquote.markdown" ];
|
||||
settings = { foreground = "#${base0C-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markup - Quote";
|
||||
scope = [ "markup.quote" ];
|
||||
settings = { fontStyle = "italic"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Link";
|
||||
scope = [ "string.other.link.title.markdown" ];
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Link Description";
|
||||
scope = [ "string.other.link.description.title.markdown" ];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Link Anchor";
|
||||
scope = [ "constant.other.reference.link.markdown" ];
|
||||
settings = { foreground = "#${base0A-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markup - Raw Block";
|
||||
scope = [ "markup.raw.block" ];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Raw Block Fenced";
|
||||
scope = [ "markup.raw.block.fenced.markdown" ];
|
||||
settings = { foreground = "#00000050"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Fenced Bode Block";
|
||||
scope = [ "punctuation.definition.fenced.markdown" ];
|
||||
settings = { foreground = "#00000050"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Fenced Code Block Variable";
|
||||
scope = [
|
||||
"markup.raw.block.fenced.markdown"
|
||||
"variable.language.fenced.markdown"
|
||||
];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Fenced Language";
|
||||
scope = [ "variable.language.fenced.markdown" ];
|
||||
settings = { foreground = "#${base08-hex}"; };
|
||||
}
|
||||
{
|
||||
name = "Markdown - Separator";
|
||||
scope = [ "meta.separator" ];
|
||||
settings = {
|
||||
fontStyle = "bold";
|
||||
foreground = "#${base0C-hex}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "Markup - Table";
|
||||
scope = [ "markup.table" ];
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
{
|
||||
scope = "token.info-token";
|
||||
settings = { foreground = "#${base0D-hex}"; };
|
||||
}
|
||||
{
|
||||
scope = "token.warn-token";
|
||||
settings = { foreground = "#${base0A-hex}"; };
|
||||
}
|
||||
{
|
||||
scope = "token.error-token";
|
||||
settings = { foreground = "#${base08-hex}"; };
|
||||
}
|
||||
{
|
||||
scope = "token.debug-token";
|
||||
settings = { foreground = "#${base0E-hex}"; };
|
||||
}
|
||||
];
|
||||
type = "dark";
|
||||
};
|
||||
"package.json" = __toJSON {
|
||||
name = "theme";
|
||||
displayName = "Generated theme";
|
||||
version = "0.0.0";
|
||||
publisher = mainuser;
|
||||
engines.vscode = "^1.22.0";
|
||||
contributes.themes = [{
|
||||
label = "Generated theme";
|
||||
uiTheme = "vs-dark";
|
||||
path = "./theme/generated.json";
|
||||
}];
|
||||
capabilities = {
|
||||
untrustedWorkspaces.supported = true;
|
||||
virtualWorkspaces = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
in with builtins;
|
||||
linkFarm "${mainuser}.theme" (attrValues (mapAttrs (name: value: {
|
||||
name = "share/vscode/extensions/${mainuser}.theme/${name}";
|
||||
path = toFile (baseNameOf name) value;
|
||||
}) theme))
|
@ -9,11 +9,6 @@ let
|
||||
config = config.nixpkgs.config;
|
||||
localSystem = { inherit system; };
|
||||
};
|
||||
# nur = import inputs.nur {
|
||||
# nurpkgs = import inputs.nixpkgs {
|
||||
# system = "x86_64-linux";
|
||||
# };
|
||||
# };
|
||||
in
|
||||
with lib; {
|
||||
nixpkgs.overlays = [
|
||||
@ -72,33 +67,6 @@ with lib; {
|
||||
yandex-taxi-py = prev.writers.writePython3 "yandex-taxi.py" {
|
||||
libraries = with prev.python3Packages; [ requests ];
|
||||
} ./packages/yandex-taxi-py.nix;
|
||||
|
||||
spotify-spotx = let
|
||||
spotx = with prev; stdenv.mkDerivation {
|
||||
pname = "spotx-bash";
|
||||
version = "unstable-2023-12-15";
|
||||
src = fetchFromGitHub {
|
||||
owner = "SpotX-Official";
|
||||
repo = "SpotX-Bash";
|
||||
rev = "a0823cb2f7495f9eaf0c94194abe6d2f0ff1b58c";
|
||||
hash = "sha256-qgG5m4ajlbq0G6D1Fx2x+yqxcz+OGN1zsfVDO2/koG4=";
|
||||
};
|
||||
dontBuild = true;
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
installPhase = ''
|
||||
install -Dm 755 spotx.sh $out/bin/spotx
|
||||
sed -i 's/sxbLive=.\+/sxbLive=$buildVer/' $out/bin/spotx
|
||||
patchShebangs $out/bin/spotx
|
||||
wrapProgram $out/bin/spotx --prefix PATH : ${lib.makeBinPath [ perl unzip zip util-linux ]}
|
||||
'';
|
||||
};
|
||||
in prev.spotify.overrideAttrs (_oa: {
|
||||
postInstall = ''
|
||||
${spotx}/bin/spotx -h -P "$out/share/spotify"
|
||||
rm -f "$out/share/spotify/Apps/xpui.bak" "$out/share/spotify/spotify.bak"
|
||||
'';
|
||||
});
|
||||
spotifywm = prev.spotifywm.override { spotify = final.spotify-spotx; };
|
||||
}
|
||||
)
|
||||
];
|
||||
|
@ -9,5 +9,5 @@
|
||||
sshKey = config.sops.secrets.git-ssh-key.path;
|
||||
};
|
||||
|
||||
persist.derivative.homeDirectories = [ ".local/share/password-store" ];
|
||||
persist.state.homeDirectories = [ ".local/share/password-store" ];
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{ dnsmasq-list ? [], ... }:
|
||||
{ dnsmasq-list ? [] }: { ... }:
|
||||
let
|
||||
nodeAddress = "192.168.0.5";
|
||||
upstream-dns = "100.64.0.1";
|
||||
|
@ -100,9 +100,6 @@ in {
|
||||
session = {
|
||||
COOKIE_SECURE = true;
|
||||
};
|
||||
ui = {
|
||||
DEFAULT_THEME = "arc-green";
|
||||
};
|
||||
webhook = {
|
||||
ALLOWED_HOST_LIST = "loopback, private, ataraxiadev.com, *.ataraxiadev.com";
|
||||
};
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ config, lib, inputs, headscale-list ? {}, ... }:
|
||||
{ headscale-list ? {} }: { config, lib, inputs, ... }:
|
||||
let
|
||||
domain = "wg.ataraxiadev.com";
|
||||
in {
|
||||
|
@ -16,7 +16,6 @@ in {
|
||||
"${nas-path}/configs/lidarr/custom-services.d:/custom-services.d"
|
||||
"${nas-path}/configs/lidarr/custom-cont-init.d:/custom-cont-init.d"
|
||||
"${nas-path}:/data"
|
||||
# "${extended-config}:/config/extended.conf:ro"
|
||||
];
|
||||
};
|
||||
}
|
||||
|
@ -12,7 +12,6 @@ in {
|
||||
TZ = "Europe/Moscow";
|
||||
};
|
||||
extraOptions = [ "--pod=media-stack" ];
|
||||
# ports = [ "127.0.0.1:8082:8080/tcp" ];
|
||||
volumes = [
|
||||
"${nas-path}/configs/qbittorrent:/config"
|
||||
"${nas-path}:/data"
|
||||
|
@ -40,14 +40,28 @@ in
|
||||
jvmInitialAllocation = "6144m";
|
||||
jvmPackage = jre17;
|
||||
serverConfig = defaults // {
|
||||
server-port = 25567;
|
||||
rcon-port = 25568;
|
||||
server-port = 25585;
|
||||
rcon-port = 25586;
|
||||
motd = "StaTech";
|
||||
max-world-size = 50000;
|
||||
level-seed = "-4411466874705470064";
|
||||
};
|
||||
};
|
||||
all-of-create = {
|
||||
enable = false;
|
||||
inherit rsyncSSHKeys jvmOpts;
|
||||
jvmMaxAllocation = "4096m";
|
||||
jvmInitialAllocation = "4096m";
|
||||
jvmPackage = jre21;
|
||||
serverConfig = defaults // {
|
||||
server-port = 25575;
|
||||
rcon-port = 25576;
|
||||
motd = "All of Create";
|
||||
max-world-size = 50000;
|
||||
level-seed = "-6893059259197159072";
|
||||
};
|
||||
};
|
||||
create = {
|
||||
enable = true;
|
||||
inherit rsyncSSHKeys jvmOpts;
|
||||
jvmMaxAllocation = "4096m";
|
||||
@ -56,9 +70,9 @@ in
|
||||
serverConfig = defaults // {
|
||||
server-port = 25565;
|
||||
rcon-port = 25566;
|
||||
motd = "All of Create";
|
||||
motd = "AtaraxiaSjel's Create";
|
||||
max-world-size = 50000;
|
||||
level-seed = "-6893059259197159072";
|
||||
# level-seed = "-6893059259197159072";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -34,7 +34,6 @@ let
|
||||
"/outpost.goauthentik.io" = {
|
||||
extraConfig = ''
|
||||
proxy_pass http://127.0.0.1:9000/outpost.goauthentik.io;
|
||||
# proxy_pass https://auth.ataraxiadev.com/outpost.goauthentik.io;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Original-URL $scheme://$http_host$request_uri;
|
||||
add_header Set-Cookie $auth_cookie;
|
||||
|
@ -104,8 +104,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
# persist.state.directories = [ "/var/lib/ocis" ];
|
||||
|
||||
systemd.services.ocis-server.after =
|
||||
lib.mkIf config.services.authentik.enable [
|
||||
"authentik-server.service"
|
||||
|
@ -9,26 +9,22 @@
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
# Change this:
|
||||
wireplumber.configPackages = [
|
||||
(pkgs.writeTextDir "share/wireplumber/bluetooth.lua.d/51-bluez-config.lua" ''
|
||||
bluez_monitor.properties = {
|
||||
["bluez5.enable-sbc-xq"] = true,
|
||||
["bluez5.enable-msbc"] = true,
|
||||
["bluez5.enable-hw-volume"] = true,
|
||||
["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]"
|
||||
}
|
||||
'')
|
||||
];
|
||||
# To this, once https://github.com/NixOS/nixpkgs/pull/292115 is merged
|
||||
# wireplumber.extraLuaConfig.bluetooth."51-bluez-config" = ''
|
||||
# bluez_monitor.properties = {
|
||||
# ["bluez5.enable-sbc-xq"] = true,
|
||||
# ["bluez5.enable-msbc"] = true,
|
||||
# ["bluez5.enable-hw-volume"] = true,
|
||||
# ["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]"
|
||||
# }
|
||||
# '';
|
||||
wireplumber.enable = true;
|
||||
wireplumber.extraConfig = {
|
||||
"monitor.bluez.properties" = {
|
||||
"bluez5.enable-sbc-xq" = true;
|
||||
"bluez5.enable-msbc" = true;
|
||||
"bluez5.enable-hw-volume" = true;
|
||||
"bluez5.roles" = [ "hsp_hs" "hsp_ag" "hfp_hf" "hfp_ag" ];
|
||||
};
|
||||
};
|
||||
extraConfig.client = {
|
||||
"10-no-resample" = {
|
||||
"stream.properties" = {
|
||||
"resample.disable" = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home-manager.users.${config.mainuser} = {
|
||||
|
@ -1,131 +0,0 @@
|
||||
{ config, pkgs, lib, inputs, ... }:
|
||||
let
|
||||
thm = config.lib.base16.theme;
|
||||
# this capitalizes the first letter in a string.
|
||||
mkUpper =
|
||||
str:
|
||||
(lib.toUpper (builtins.substring 0 1 str)) +
|
||||
(builtins.substring 1 (builtins.stringLength str) str);
|
||||
|
||||
accent = "mauve";
|
||||
# accent = "lavender";
|
||||
flavor = "mocha";
|
||||
size = "standard"; # "standard" "compact"
|
||||
tweaks = [ "normal" ]; # "black" "rimless" "normal"
|
||||
flavorUpper = mkUpper flavor;
|
||||
accentUpper = mkUpper accent;
|
||||
sizeUpper = mkUpper size;
|
||||
gtkTheme = if flavor == "latte" then "Light" else "Dark";
|
||||
in
|
||||
{
|
||||
imports = [ inputs.catppuccin.nixosModules.catppuccin ];
|
||||
catppuccin.accent = accent;
|
||||
catppuccin.flavor = flavor;
|
||||
boot.loader.grub.catppuccin.enable = true;
|
||||
console.catppuccin.enable = true;
|
||||
|
||||
home-manager.users.${config.mainuser} = rec {
|
||||
imports = [ inputs.catppuccin.homeManagerModules.catppuccin ];
|
||||
catppuccin.accent = accent;
|
||||
catppuccin.flavor = flavor;
|
||||
|
||||
qt.style.catppuccin.enable = true;
|
||||
qt.style.catppuccin.apply = true;
|
||||
services.mako.catppuccin.enable = true;
|
||||
programs = {
|
||||
bat.catppuccin.enable = true;
|
||||
bottom.catppuccin.enable = true;
|
||||
fzf.catppuccin.enable = true;
|
||||
gitui.catppuccin.enable = true;
|
||||
glamour.catppuccin.enable = true;
|
||||
kitty.catppuccin.enable = true;
|
||||
micro.catppuccin.enable = true;
|
||||
mpv.catppuccin.enable = true;
|
||||
rofi.catppuccin.enable = true;
|
||||
zathura.catppuccin.enable = true;
|
||||
zsh.syntaxHighlighting.enable = true;
|
||||
zsh.syntaxHighlighting.catppuccin.enable = true;
|
||||
waybar.catppuccin.enable = true;
|
||||
waybar.catppuccin.mode = "createLink";
|
||||
|
||||
vscode = {
|
||||
extensions = let
|
||||
ext-vscode = inputs.nix-vscode-marketplace.extensions.${pkgs.system}.vscode-marketplace;
|
||||
in [
|
||||
ext-vscode.alexdauenhauer.catppuccin-noctis
|
||||
ext-vscode.catppuccin.catppuccin-vsc-icons
|
||||
(inputs.catppuccin-vsc.packages.${pkgs.system}.catppuccin-vsc.override {
|
||||
accent = accent;
|
||||
boldKeywords = false;
|
||||
italicComments = false;
|
||||
italicKeywords = false;
|
||||
extraBordersEnabled = false;
|
||||
workbenchMode = "flat";
|
||||
bracketMode = "dimmed";
|
||||
colorOverrides = {
|
||||
mocha = {
|
||||
base = "#1c1c2d";
|
||||
mantle = "#191925";
|
||||
crust = "#151511";
|
||||
};
|
||||
};
|
||||
customUIColors = {
|
||||
"statusBar.foreground" = "accent";
|
||||
};
|
||||
})
|
||||
];
|
||||
userSettings = {
|
||||
"editor.semanticHighlighting.enabled" = lib.mkForce true;
|
||||
"terminal.integrated.minimumContrastRatio" = lib.mkForce 1;
|
||||
"window.titleBarStyle" = lib.mkForce "custom";
|
||||
"workbench.colorTheme" = lib.mkForce "Catppuccin ${flavorUpper}";
|
||||
"workbench.iconTheme" = lib.mkForce "catppuccin-${flavor}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland.extraConfig = ''
|
||||
exec=hyprctl setcursor catppuccin-${flavor}-${accent}-cursors ${toString thm.cursorSize}
|
||||
'';
|
||||
|
||||
# GTK
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = {
|
||||
name = "Catppuccin-${flavorUpper}-${sizeUpper}-${accentUpper}-${gtkTheme}";
|
||||
package = pkgs.catppuccin-gtk.override {
|
||||
inherit tweaks;
|
||||
accents = [ accent ];
|
||||
variant = flavor;
|
||||
};
|
||||
};
|
||||
cursorTheme = {
|
||||
name = "catppuccin-${flavor}-${accent}-cursors";
|
||||
package = pkgs.catppuccin-cursors.${flavor + accentUpper};
|
||||
};
|
||||
iconTheme = {
|
||||
name = "Papirus-${gtkTheme}";
|
||||
package = pkgs.catppuccin-papirus-folders.override { inherit accent flavor; };
|
||||
};
|
||||
font = {
|
||||
name = "${thm.fonts.main.family}";
|
||||
size = thm.fontSizes.normal.int;
|
||||
};
|
||||
gtk3.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
gtk4.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
};
|
||||
home.sessionVariables.GTK_THEME = gtk.theme.name;
|
||||
};
|
||||
|
||||
themes.base16.extraParams = {
|
||||
iconTheme = lib.mkForce "Papirus-${gtkTheme}";
|
||||
iconPackage = lib.mkForce (pkgs.catppuccin-papirus-folders.override { inherit accent flavor; });
|
||||
cursorPackage = lib.mkForce (pkgs.catppuccin-cursors.${flavor + accentUpper});
|
||||
cursorTheme = lib.mkForce "catppuccin-${flavor}-${accent}-cursors";
|
||||
cursorSize = lib.mkForce 32;
|
||||
};
|
||||
}
|
43
profiles/workspace/catppuccin/catppuccin.nix
Normal file
43
profiles/workspace/catppuccin/catppuccin.nix
Normal file
@ -0,0 +1,43 @@
|
||||
{ cfg }: { config, pkgs, lib, inputs, ... }: {
|
||||
catppuccin.accent = cfg.accent;
|
||||
catppuccin.flavor = cfg.flavor;
|
||||
boot.loader.grub.catppuccin.enable = true;
|
||||
console.catppuccin.enable = true;
|
||||
|
||||
home-manager.users.${config.mainuser} = {
|
||||
catppuccin.accent = cfg.accent;
|
||||
catppuccin.flavor = cfg.flavor;
|
||||
|
||||
qt.style.catppuccin.enable = true;
|
||||
qt.style.catppuccin.apply = true;
|
||||
services.mako.catppuccin.enable = true;
|
||||
programs = {
|
||||
bat.catppuccin.enable = true;
|
||||
bottom.catppuccin.enable = true;
|
||||
fzf.catppuccin.enable = true;
|
||||
gitui.catppuccin.enable = true;
|
||||
glamour.catppuccin.enable = true;
|
||||
kitty.catppuccin.enable = true;
|
||||
micro.catppuccin.enable = true;
|
||||
mpv.catppuccin.enable = true;
|
||||
rofi.catppuccin.enable = true;
|
||||
zathura.catppuccin.enable = true;
|
||||
zsh.syntaxHighlighting.enable = true;
|
||||
zsh.syntaxHighlighting.catppuccin.enable = true;
|
||||
waybar.catppuccin.enable = true;
|
||||
waybar.catppuccin.mode = "createLink";
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland.extraConfig = ''
|
||||
exec=hyprctl setcursor catppuccin-${cfg.flavor}-${cfg.accent}-cursors ${toString cfg.thm.cursorSize}
|
||||
'';
|
||||
};
|
||||
|
||||
themes.base16.extraParams = {
|
||||
iconTheme = lib.mkForce "Papirus-${cfg.gtkTheme}";
|
||||
iconPackage = lib.mkForce (pkgs.catppuccin-papirus-folders.override { inherit (cfg) accent flavor; });
|
||||
cursorPackage = lib.mkForce (pkgs.catppuccin-cursors.${cfg.flavor + cfg.accentUpper});
|
||||
cursorTheme = lib.mkForce "catppuccin-${cfg.flavor}-${cfg.accent}-cursors";
|
||||
cursorSize = lib.mkForce 32;
|
||||
};
|
||||
}
|
34
profiles/workspace/catppuccin/default.nix
Normal file
34
profiles/workspace/catppuccin/default.nix
Normal file
@ -0,0 +1,34 @@
|
||||
{ config, lib, inputs, ... }: {
|
||||
imports = let
|
||||
cfg = rec {
|
||||
thm = config.lib.base16.theme;
|
||||
# this capitalizes the first letter in a string.
|
||||
mkUpper =
|
||||
str:
|
||||
(lib.toUpper (builtins.substring 0 1 str)) +
|
||||
(builtins.substring 1 (builtins.stringLength str) str);
|
||||
|
||||
accent = "mauve";
|
||||
flavor = "mocha";
|
||||
size = "standard"; # "standard" "compact"
|
||||
tweaks = [ "normal" ]; # "black" "rimless" "normal"
|
||||
flavorUpper = mkUpper flavor;
|
||||
accentUpper = mkUpper accent;
|
||||
sizeUpper = mkUpper size;
|
||||
gtkTheme = if flavor == "latte" then "Light" else "Dark";
|
||||
};
|
||||
in [
|
||||
inputs.catppuccin.nixosModules.catppuccin
|
||||
# Custom modules
|
||||
(import ./catppuccin.nix { inherit cfg; })
|
||||
# Until https://github.com/catppuccin/nix/pull/179 is merged
|
||||
(import ./gitea.nix { inherit cfg; gitea = "gitea"; })
|
||||
# Deprecated on catppuccin-nix
|
||||
(import ./gtk.nix { inherit cfg; })
|
||||
(import ./vscode.nix { inherit cfg; })
|
||||
];
|
||||
|
||||
home-manager.users.${config.mainuser} = {
|
||||
imports = [ inputs.catppuccin.homeManagerModules.catppuccin ];
|
||||
};
|
||||
}
|
55
profiles/workspace/catppuccin/gitea.nix
Normal file
55
profiles/workspace/catppuccin/gitea.nix
Normal file
@ -0,0 +1,55 @@
|
||||
{ cfg, gitea ? "gitea" }: { config, pkgs, lib, ... }:
|
||||
let
|
||||
theme = pkgs.fetchzip {
|
||||
url = "https://github.com/catppuccin/gitea/releases/download/v0.4.1/catppuccin-gitea.tar.gz";
|
||||
sha256 = "sha256-14XqO1ZhhPS7VDBSzqW55kh6n5cFZGZmvRCtMEh8JPI=";
|
||||
stripRoot = false;
|
||||
};
|
||||
in {
|
||||
config = lib.mkIf (gitea != "" && config.services.${gitea}.enable) {
|
||||
systemd.services.${gitea}.preStart = let
|
||||
customDir = config.services.${gitea}.customDir;
|
||||
baseDir =
|
||||
if lib.versionAtLeast config.services.${gitea}.package.version "1.21.0" then
|
||||
"${customDir}/public/assets"
|
||||
else
|
||||
"${customDir}/public";
|
||||
in lib.mkAfter ''
|
||||
rm -rf ${baseDir}/css
|
||||
mkdir -p ${baseDir}
|
||||
ln -sf ${theme} ${baseDir}/css
|
||||
'';
|
||||
|
||||
services.${gitea}.settings.ui = {
|
||||
DEFAULT_THEME = lib.mkForce "catppuccin-${cfg.flavor}-${cfg.accent}";
|
||||
THEMES = let
|
||||
builtinThemes = {
|
||||
gitea = [
|
||||
"auto"
|
||||
"gitea"
|
||||
"arc-greeen"
|
||||
];
|
||||
forgejo = [
|
||||
"forgejo-auto"
|
||||
"forgejo-light"
|
||||
"forgejo-dark"
|
||||
"gitea-auto"
|
||||
"gitea-light"
|
||||
"gitea-dark"
|
||||
"forgejo-auto-deuteranopia-protanopia"
|
||||
"forgejo-light-deuteranopia-protanopia"
|
||||
"forgejo-dark-deuteranopia-protanopia"
|
||||
"forgejo-auto-tritanopia"
|
||||
"forgejo-light-tritanopia"
|
||||
"forgejo-dark-tritanopia"
|
||||
];
|
||||
};
|
||||
in lib.mkForce builtins.concatStringsSep "," (
|
||||
builtinThemes.${gitea}
|
||||
++ (map (name: lib.removePrefix "theme-" (lib.removeSuffix ".css" name)) (
|
||||
builtins.attrNames (builtins.readDir theme)
|
||||
))
|
||||
);
|
||||
};
|
||||
};
|
||||
}
|
34
profiles/workspace/catppuccin/gtk.nix
Normal file
34
profiles/workspace/catppuccin/gtk.nix
Normal file
@ -0,0 +1,34 @@
|
||||
{ cfg }: { config, pkgs, ... }: {
|
||||
home-manager.users.${config.mainuser} = rec {
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = {
|
||||
name = "Catppuccin-${cfg.flavorUpper}-${cfg.sizeUpper}-${cfg.accentUpper}-${cfg.gtkTheme}";
|
||||
package = pkgs.catppuccin-gtk.override {
|
||||
inherit (cfg) tweaks;
|
||||
accents = [ cfg.accent ];
|
||||
variant = cfg.flavor;
|
||||
};
|
||||
};
|
||||
cursorTheme = {
|
||||
name = "catppuccin-${cfg.flavor}-${cfg.accent}-cursors";
|
||||
package = pkgs.catppuccin-cursors.${cfg.flavor + cfg.accentUpper};
|
||||
};
|
||||
iconTheme = {
|
||||
name = "Papirus-${cfg.gtkTheme}";
|
||||
package = pkgs.catppuccin-papirus-folders.override { inherit (cfg) accent flavor; };
|
||||
};
|
||||
font = {
|
||||
name = cfg.thm.fonts.main.family;
|
||||
size = cfg.thm.fontSizes.normal.int;
|
||||
};
|
||||
gtk3.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
gtk4.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
};
|
||||
home.sessionVariables.GTK_THEME = gtk.theme.name;
|
||||
};
|
||||
}
|
38
profiles/workspace/catppuccin/vscode.nix
Normal file
38
profiles/workspace/catppuccin/vscode.nix
Normal file
@ -0,0 +1,38 @@
|
||||
{ cfg }: { config, lib, pkgs, inputs, ... }: {
|
||||
home-manager.users.${config.mainuser} = {
|
||||
programs.vscode = {
|
||||
extensions = let
|
||||
ext-vscode = inputs.nix-vscode-marketplace.extensions.${pkgs.system}.vscode-marketplace;
|
||||
in [
|
||||
ext-vscode.alexdauenhauer.catppuccin-noctis
|
||||
ext-vscode.catppuccin.catppuccin-vsc-icons
|
||||
(inputs.catppuccin-vsc.packages.${pkgs.system}.catppuccin-vsc.override {
|
||||
accent = cfg.accent;
|
||||
boldKeywords = false;
|
||||
italicComments = false;
|
||||
italicKeywords = false;
|
||||
extraBordersEnabled = false;
|
||||
workbenchMode = "flat";
|
||||
bracketMode = "dimmed";
|
||||
colorOverrides = {
|
||||
mocha = {
|
||||
base = "#1c1c2d";
|
||||
mantle = "#191925";
|
||||
crust = "#151511";
|
||||
};
|
||||
};
|
||||
customUIColors = {
|
||||
"statusBar.foreground" = "accent";
|
||||
};
|
||||
})
|
||||
];
|
||||
userSettings = {
|
||||
"editor.semanticHighlighting.enabled" = lib.mkForce true;
|
||||
"terminal.integrated.minimumContrastRatio" = lib.mkForce 1;
|
||||
"window.titleBarStyle" = lib.mkForce "custom";
|
||||
"workbench.colorTheme" = lib.mkForce "Catppuccin ${cfg.flavorUpper}";
|
||||
"workbench.iconTheme" = lib.mkForce "catppuccin-${cfg.flavor}";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -278,10 +278,11 @@ in with config.deviceSpecific; with lib; {
|
||||
env=SDL_VIDEODRIVER=wayland
|
||||
env=CLUTTER_BACKEND=wayland
|
||||
env=XDG_CURRENT_DESKTOP=Hyprland
|
||||
env=XDG_SESSION_DESKTOP=Hyprland
|
||||
env=XDG_SESSION_TYPE=wayland
|
||||
env=QT_AUTO_SCREEN_SCALE_FACTOR=1
|
||||
env=QT_WAYLAND_DISABLE_WINDOWDECORATION=1
|
||||
env=QT_QPA_PLATFORMTHEME=qt5ct
|
||||
# env=QT_QPA_PLATFORMTHEME=qt5ct
|
||||
env=GSETTINGS_SCHEMA_DIR=${pkgs.glib.getSchemaPath pkgs.gsettings-desktop-schemas}
|
||||
'' ''
|
||||
exec=${importGsettings}
|
||||
|
@ -4,13 +4,23 @@ with config.lib.base16.theme; {
|
||||
[ pkgs.systemd iconPackage ];
|
||||
services.udev.packages = [ pkgs.libmtp pkgs.media-player-info ];
|
||||
|
||||
qt.enable = true;
|
||||
qt = {
|
||||
enable = false;
|
||||
style = "kvantum";
|
||||
platformTheme = "qt5ct";
|
||||
};
|
||||
|
||||
# environment.systemPackages = with pkgs; [
|
||||
# libsForQt5.qtstyleplugin-kvantum
|
||||
# libsForQt5.qt5ct
|
||||
# ];
|
||||
|
||||
environment.sessionVariables = {
|
||||
KDEDIRS =
|
||||
"/run/current-system/sw:/run/current-system/sw/share/kservices5:/run/current-system/sw/share/kservicetypes5:/run/current-system/sw/share/kxmlgui5";
|
||||
};
|
||||
home-manager.users.${config.mainuser} = {
|
||||
qt.enable = true;
|
||||
qt.style.name = "kvantum";
|
||||
|
||||
xdg.configFile."kdeglobals".text = lib.generators.toGitINI {
|
||||
|
@ -1,29 +1,32 @@
|
||||
{ config, ... }:
|
||||
let
|
||||
en = "en_US.UTF-8";
|
||||
c = "C.UTF-8";
|
||||
dk = "en_DK.UTF-8";
|
||||
gb = "en_GB.UTF-8";
|
||||
ie = "en_IE.UTF-8";
|
||||
ru = "ru_RU.UTF-8";
|
||||
us = "en_US.UTF-8";
|
||||
lang = "en_IE:en:C:ru_RU";
|
||||
in {
|
||||
i18n.defaultLocale = en;
|
||||
i18n.defaultLocale = ie;
|
||||
i18n.extraLocaleSettings = {
|
||||
LANGUAGE = en;
|
||||
LC_ALL = en;
|
||||
LC_TIME = en;
|
||||
LANGUAGE = lang;
|
||||
LC_TIME = dk;
|
||||
LC_ADDRESS = ru;
|
||||
LC_MONETARY = ru;
|
||||
LC_NUMERIC = ru;
|
||||
LC_PAPER = ru;
|
||||
LC_TELEPHONE = ru;
|
||||
};
|
||||
i18n.supportedLocales = [
|
||||
"C.UTF-8/UTF-8"
|
||||
"en_US.UTF-8/UTF-8"
|
||||
"en_GB.UTF-8/UTF-8"
|
||||
"ru_RU.UTF-8/UTF-8"
|
||||
i18n.supportedLocales = map (x: "${x}/UTF-8") [
|
||||
c dk gb ie ru us
|
||||
];
|
||||
|
||||
environment.sessionVariables = {
|
||||
XKB_DEFAULT_LAYOUT = "us,ru";
|
||||
XKB_DEFAULT_OPTIONS = "grp:win_space_toggle";
|
||||
LANGUAGE = en;
|
||||
LC_ALL = en;
|
||||
# LANGUAGE = lang;
|
||||
# LC_ALL = en;
|
||||
};
|
||||
|
||||
time.timeZone = "Europe/Moscow";
|
||||
@ -36,11 +39,16 @@ in {
|
||||
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home.language = {
|
||||
base = ie;
|
||||
time = dk;
|
||||
address = ru;
|
||||
monetary = ru;
|
||||
numeric = ru;
|
||||
paper = ru;
|
||||
time = en;
|
||||
base = en;
|
||||
telephone = ru;
|
||||
};
|
||||
home.sessionVariables = {
|
||||
LANGUAGE = lang;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -33,18 +33,18 @@
|
||||
font-family: "${thm.fonts.mono.family}";
|
||||
font-size: 18pt;
|
||||
color: ${palette.text.hex};
|
||||
background-color: rgba(${toString palette.base.rgb.r}, ${toString palette.base.rgb.g}, ${toString palette.base.rgb.b}, 0.8);
|
||||
background-color: alpha(${palette.base.hex}, 0.8);
|
||||
}
|
||||
button {
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
background-size: 25%;
|
||||
border: none;
|
||||
background-color: rgba(${toString palette.base.rgb.r}, ${toString palette.base.rgb.g}, ${toString palette.base.rgb.b}, 0);
|
||||
background-color: alpha(${palette.base.hex}, 0);
|
||||
color: ${palette.${accent}.hex};
|
||||
}
|
||||
button:hover {
|
||||
background-color: rgba(${toString palette.surface0.rgb.r}, ${toString palette.surface0.rgb.g}, ${toString palette.surface0.rgb.b}, 0.1);
|
||||
background-color: alpha(${palette.surface0.hex}, 0.1);
|
||||
}
|
||||
button:focus {
|
||||
background-color: ${palette.${accent}.hex};
|
||||
|
@ -2,10 +2,10 @@
|
||||
|
||||
environment.pathsToLink = [ "/share/zsh" ];
|
||||
environment.sessionVariables.SHELL = "${pkgs.zsh}/bin/zsh";
|
||||
home-manager.users.${config.mainuser} = {
|
||||
home-manager.users.${config.mainuser} = { config, ... }: {
|
||||
home.sessionVariables.SHELL = "${pkgs.zsh}/bin/zsh";
|
||||
home.file.".profile".text = ''
|
||||
. "${config.home-manager.users.${config.mainuser}.home.profileDirectory}/etc/profile.d/hm-session-vars.sh"
|
||||
. "${config.home.profileDirectory}/etc/profile.d/hm-session-vars.sh"
|
||||
'';
|
||||
programs = {
|
||||
zsh = {
|
||||
|
@ -3,7 +3,6 @@
|
||||
./base.nix
|
||||
inputs.base16.hmModule
|
||||
|
||||
applications-setup
|
||||
hardware
|
||||
sound
|
||||
themes
|
||||
@ -21,6 +20,7 @@
|
||||
packages
|
||||
rofi
|
||||
spotify
|
||||
telegram
|
||||
steam
|
||||
vscode
|
||||
waydroid
|
||||
@ -44,6 +44,7 @@
|
||||
xdg
|
||||
vpn
|
||||
|
||||
mime-apps
|
||||
vscode-server
|
||||
catppuccin
|
||||
];
|
||||
|
Loading…
x
Reference in New Issue
Block a user