many changes, add printer

This commit is contained in:
Dmitriy Kholkin 2020-08-15 19:36:16 +04:00
parent ba48b6da38
commit cd3c449620
35 changed files with 479 additions and 303 deletions

3
.envrc
View File

@ -1 +1,2 @@
use flake || use nix
# use flake || use nix
use nix

21
flake.lock generated
View File

@ -5,16 +5,15 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1597074307,
"narHash": "sha256-iPbbi0Ipv2ppoyPn3N2NF/OVzri/tBeHkMTvpG2uOzk=",
"lastModified": 1597074767,
"narHash": "sha256-WrctYb/drpAsxvBJLDbA+wPCEx9fVDoHHKTMnjVZ4ZU=",
"owner": "alukardbf",
"repo": "base16-nix",
"rev": "fdb349a3869ed9482254fc619df8a1cb615554d6",
"rev": "d2a9a9a8cf652049f02bbd8671684d8a3e4fcc24",
"type": "github"
},
"original": {
"owner": "alukardbf",
"ref": "custom-scheme",
"repo": "base16-nix",
"type": "github"
}
@ -91,16 +90,18 @@
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1596554686,
"narHash": "sha256-B+c/xcjp/7vxUm6zVV2SwPalRWYWzxoUOvjGrzlwm7g=",
"owner": "NixOS",
"lastModified": 1593628299,
"narHash": "sha256-TG05BV4fbJdDW4RzoYBYaGdFtOq6NNet1JHjP1Au/VE=",
"owner": "nixos",
"repo": "nix",
"rev": "5b22a2c0d443ce1156f361af2dcb142d270daa6c",
"rev": "6ff9aa8df7ce8266147f74c65e2cc529a1e72ce0",
"type": "github"
},
"original": {
"id": "nix",
"type": "indirect"
"owner": "nixos",
"repo": "nix",
"rev": "6ff9aa8df7ce8266147f74c65e2cc529a1e72ce0",
"type": "github"
}
},
"nixpkgs": {

View File

@ -3,8 +3,9 @@
inputs = {
nixpkgs.url = github:nixos/nixpkgs/nixos-unstable;
nix.url = github:nixos/nix/6ff9aa8df7ce8266147f74c65e2cc529a1e72ce0;
home-manager.url = github:rycee/home-manager/bqv-flakes;
base16.url = github:alukardbf/base16-nix/custom-scheme;
base16.url = github:alukardbf/base16-nix;
# base16.url = "/shared/nixos/base16-nix";
base16-horizon-scheme = {
url = github:michael-ball/base16-horizon-scheme;
@ -55,5 +56,19 @@
legacyPackages.x86_64-linux =
(builtins.head (builtins.attrValues self.nixosConfigurations)).pkgs;
devShell.x86_64-linux = let
pkgs = import nixpkgs { system = "x86_64-linux"; };
rebuild = pkgs.writeShellScriptBin "rebuild" ''
if [[ -z $1 ]]; then
echo "Usage: $(basename $0) {switch|boot|test}"
else
sudo nixos-rebuild $1 --flake .
fi
'';
in pkgs.mkShell {
nativeBuildInputs = [ rebuild ];
};
};
}

Binary file not shown.

BIN
misc/Passwords.old.kdbx Executable file

Binary file not shown.

View File

@ -1,4 +1,5 @@
{ pkgs, config, lib, ... }:
with config.deviceSpecific;
{
options.defaultApplications = lib.mkOption {
type = lib.types.attrs;
@ -6,7 +7,10 @@
};
config = rec {
defaultApplications = {
term = {
term = if isLaptop then {
cmd = "${pkgs.rxvt_unicode}/bin/urxvt";
desktop = "urxvt";
} else {
cmd = "${pkgs.alacritty}/bin/alacritty";
desktop = "alacritty";
};

View File

@ -2,14 +2,13 @@
let
thm = config.lib.base16.theme;
in
with config.deviceSpecific;
{
home-manager.users.alukard = {
programs.alacritty = {
enable = true;
enable = !isLaptop;
settings = {
font = {
# normal.family = "Roboto Mono for Powerline";
# bold = { style = "Bold"; };
normal = {
family = "${thm.powerlineFont}";
style = "Regular";
@ -26,7 +25,7 @@ in
family = "${thm.powerlineFont}";
style = "Bold Italic";
};
size = 11;
size = lib.toInt thm.smallFontSize;
};
window.padding = {
@ -40,53 +39,38 @@ in
colors = {
primary = {
background = "0x${thm.base00-hex}";
foreground = "0x${thm.base05-hex}";
background = "#${thm.base00-hex}";
foreground = "#${thm.base05-hex}";
};
cursor = {
text = "0x${thm.base00-hex}";
cursor = "0x${thm.base05-hex}";
text = "#${thm.base00-hex}";
cursor = "#${thm.base05-hex}";
};
normal = {
black = "0x${thm.base00-hex}";
red = "0x${thm.base08-hex}";
green = "0x${thm.base0B-hex}";
yellow = "0x${thm.base0A-hex}";
blue = "0x${thm.base0D-hex}";
magenta = "0x${thm.base0E-hex}";
cyan = "0x${thm.base0C-hex}";
white = "0x${thm.base05-hex}";
black = "#${thm.base00-hex}";
red = "#${thm.base08-hex}";
green = "#${thm.base0B-hex}";
yellow = "#${thm.base0A-hex}";
blue = "#${thm.base0D-hex}";
magenta = "#${thm.base0E-hex}";
cyan = "#${thm.base0C-hex}";
white = "#${thm.base05-hex}";
};
bright = {
black = "0x${thm.base03-hex}";
red = "0x${thm.base09-hex}";
green = "0x${thm.base01-hex}";
yellow = "0x${thm.base02-hex}";
blue = "0x${thm.base04-hex}";
magenta = "0x${thm.base06-hex}";
cyan = "0x${thm.base0F-hex}";
white = "0x${thm.base07-hex}";
black = "#${thm.base03-hex}";
red = "#${thm.base09-hex}";
green = "#${thm.base01-hex}";
yellow = "#${thm.base02-hex}";
blue = "#${thm.base04-hex}";
magenta = "#${thm.base06-hex}";
cyan = "#${thm.base0F-hex}";
white = "#${thm.base07-hex}";
};
draw_bold_text_with_bright_colors = "false";
# bright = {
# black = "0x${thm.base03-hex}";
# red = "0x${thm.base08-hex}";
# green = "0x${thm.base0B-hex}";
# yellow = "0x${thm.base0A-hex}";
# blue = "0x${thm.base0D-hex}";
# magenta = "0x${thm.base0E-hex}";
# cyan = "0x${thm.base0C-hex}";
# white = "0x${thm.base07-hex}";
# };
# indexed_colors = {
# - { index: 16, color: '0xff8700' }
# - { index: 17, color: '0xd65d0e' }
# - { index: 18, color: '0x3a3a3a' }
# - { index: 19, color: '0x4e4e4e' }
# - { index: 20, color: '0x949494' }
# - { index: 21, color: '0xd5c4a1' }
# };
};
env = {
WINIT_X11_SCALE_FACTOR = "1.0";
};
};
};

View File

@ -1,8 +1,6 @@
{ config, lib, pkgs, ... }:
with rec {
inherit (config) deviceSpecific;
};
with deviceSpecific; {
with config.deviceSpecific;
{
home-manager.users.alukard.programs.mpv = {
enable = true;
config = {

View File

@ -13,11 +13,13 @@ with deviceSpecific; {
# Utils
curl
wget
rxvt_unicode
xclip
pciutils
usbutils
nix-prefetch-git
system-config-printer
gnome3.simple-scan
# vdpauinfo
# libva-utils
lm_sensors
@ -25,6 +27,8 @@ with deviceSpecific; {
neofetch
# bashmount
zip
unzip
(p7zip.override { enableUnfree = true; })
feh
# new tools
@ -36,7 +40,7 @@ with deviceSpecific; {
lnav
advance-touch # python3 pip
exa
# nomino # 'heavy' rust build
nomino # 'heavy' rust build
bpytop
nnn
micro
@ -62,11 +66,12 @@ with deviceSpecific; {
xarchiver
tdesktop
spotifywm
# spotify-tui
discord
pulseeffects
# quodlibet
zathura # pdf
pinta
# audacity # fixit
] ++ lib.optionals (!isVM) [
libreoffice
# rust-stable

View File

@ -7,7 +7,7 @@ in
home-manager.users.alukard = {
programs.rofi = {
enable = true;
font = "${thm.fontMono} ${thm.headerSize}";
font = "${thm.fontMono} ${thm.headerFontSize}";
terminal = config.defaultApplications.term.cmd;
theme = "${themeFile}";
};

View File

@ -0,0 +1,62 @@
{ config, lib, pkgs, ... }:
with config.deviceSpecific;
with config.lib.base16.theme;
{
home-manager.users.alukard = {
programs.urxvt = {
enable = isLaptop;
extraConfig = {
"font" = "xft:${powerlineFont}:style=Regular:size=${smallFontSize}";
"boldFont" = "xft:${powerlineFont}:style=Bold:size=${smallFontSize}";
"italicFont" = "xft:${powerlineFont}:style=Italic:size=${smallFontSize}";
"boldItalicfont" = "xft:${powerlineFont}:style=Bold Italic:size=${smallFontSize}";
"letterSpace" = "0";
"lineSpace" = "0";
"geometry" = "92x24";
"internalBorder" = "24";
"cursorBlink" = "true";
"cursorUnderline" = "false";
"saveline" = "2048";
"scrollBar" = "false";
"scrollBar_right" = "false";
"urgentOnBell" = "true";
"depth" = "24";
"iso14755" = "false";
"keysym.Shift-Up" = "command:\\033]720;1\\007";
"keysym.Shift-Down" = "command:\\033]721;1\\007";
"keysym.Control-Up" = "\\033[1;5A";
"keysym.Control-Down" = "\\033[1;5B";
"keysym.Control-Right" = "\\033[1;5C";
"keysym.Control-Left" = "\\033[1;5D";
"foreground" = "#${base05-hex}";
"background" = "#${base00-hex}";
"cursorColor" = "#${base05-hex}";
"color0" = "#${base00-hex}";
"color1" = "#${base08-hex}";
"color2" = "#${base0B-hex}";
"color3" = "#${base0A-hex}";
"color4" = "#${base0D-hex}";
"color5" = "#${base0E-hex}";
"color6" = "#${base0C-hex}";
"color7" = "#${base05-hex}";
"color8" = "#${base03-hex}";
"color9" = "#${base08-hex}";
"color10" = "#${base0B-hex}";
"color11" = "#${base0A-hex}";
"color12" = "#${base0D-hex}";
"color13" = "#${base0E-hex}";
"color14" = "#${base0C-hex}";
"color15" = "#${base07-hex}";
"color16" = "#${base09-hex}";
"color17" = "#${base0F-hex}";
"color18" = "#${base01-hex}";
"color19" = "#${base02-hex}";
"color20" = "#${base04-hex}";
"color21" = "#${base06-hex}";
};
};
};
}

View File

@ -1,26 +1,29 @@
{ pkgs, lib, config, ... }:
let
thmFile = config.lib.base16.templateFile;
thm = config.lib.base16.theme;
in
{
# home-manager.users.alukard.home.file."tests/vscode/themes/thm.base16.json".source =
# thmFile { name = "vscode"; };
# Support Wal color theme
home-manager.users.alukard.home.file.".cache/wal/colors".text = ''
#${thm.base00-hex}
#${thm.base01-hex}
#${thm.base02-hex}
#${thm.base03-hex}
#${thm.base04-hex}
#${thm.base05-hex}
#${thm.base06-hex}
#${thm.base07-hex}
#${thm.base08-hex}
#${thm.base09-hex}
#${thm.base0A-hex}
#${thm.base0B-hex}
#${thm.base0C-hex}
#${thm.base0A-hex}
#${thm.base0D-hex}
#${thm.base0E-hex}
#${thm.base0C-hex}
#${thm.base05-hex}
#${thm.base03-hex}
#${thm.base09-hex}
#${thm.base01-hex}
#${thm.base02-hex}
#${thm.base04-hex}
#${thm.base06-hex}
#${thm.base0F-hex}
#${thm.base07-hex}
'';
}

View File

@ -2,9 +2,11 @@ device:
{ config, lib, ... }: {
imports = [
./applications/alacritty.nix
./applications/mpv.nix
./applications/packages.nix
./applications/qbittorrent
./applications/rofi.nix
./applications/urxvt.nix
./applications/vscode.nix
# ./workspace/barrier.nix
@ -17,7 +19,7 @@ device:
./workspace/light.nix
./workspace/locale.nix
./workspace/misc.nix
./workspace/mpv.nix
./workspace/picom.nix
./workspace/pulseeffects
# ./workspace/spotifyd.nix
./workspace/ssh.nix

View File

@ -1,6 +1,6 @@
{ pkgs, lib, config, ... }:
with rec {
inherit (config) device deviceSpecific secrets;
inherit (config) deviceSpecific secrets;
};
with deviceSpecific;
# let
@ -121,5 +121,20 @@ with deviceSpecific;
# "x-systemd.after=wg-quick-wg0.service"
# ];
};
# Music folder
# TODOL FIXIT
"/home/alukard/Music" = {
fsType = "none";
device = "/media/windows/files/Music";
options = [
"uid=${toString config.users.users.alukard.uid}"
"gid=${toString config.users.groups.users.gid}"
"bind"
"nofail"
"x-systemd.requires-mounts-for=media-windows-files.mount"
"_netdev"
];
};
};
}

View File

@ -12,14 +12,15 @@ with deviceSpecific; {
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
};
boot.initrd.kernelModules = if video == "intel" then [ "iHD" ] else [ ];
# boot.initrd.kernelModules = if video == "intel" then [ "i915" ] else [ ];
hardware.opengl = {
enable = true;
driSupport = true;
driSupport32Bit = true;
extraPackages = if video == "intel" then [
pkgs.vaapiIntel
pkgs.vaapiVdpau
pkgs.libvdpau-va-gl
# pkgs.vaapiIntel
# pkgs.vaapiVdpau
# pkgs.libvdpau-va-gl
pkgs.intel-media-driver
] else [ ];
};
@ -29,7 +30,7 @@ with deviceSpecific; {
};
# --- END ---
hardware.bluetooth.enable = isLaptop;
# hardware.bluetooth.enable = isLaptop;
boot.loader = {
systemd-boot.enable = true;

View File

@ -1,8 +1,10 @@
{ pkgs, lib, config, ... }: {
{ pkgs, lib, config, ... }:
with config.deviceSpecific;
{
networking = {
networkmanager.enable = false;
wireless = {
enable = config.deviceSpecific.isLaptop;
enable = isLaptop;
networks.Alukard_5GHz = {
pskRaw = "feee27000fb0d7118d498d4d867416d04d1d9a1a7b5dbdbd888060bbde816fe4";
priority = 1;

View File

@ -51,7 +51,7 @@
};
});
# spotifyd = super.spotifyd.override { withPulseAudio = true; };
spotifyd = super.spotifyd.override { withPulseAudio = true; };
# spotify-tui = naersk.buildPackage {
# name = "spotify-tui";

View File

@ -1,8 +1,6 @@
{ config, lib, pkgs, ... }:
with rec {
inherit (config) deviceSpecific;
};
with deviceSpecific; {
with config.deviceSpecific;
{
users.groups.smbgrp.gid = 2001;
# TODO: add nologin shell to this user
users.users.smbuser =

View File

@ -12,7 +12,8 @@ in {
};
services.earlyoom = {
enable = device.ram < 16;
# enable = device.ram < 16;
enable = false;
freeMemThreshold = 5;
freeSwapThreshold = 100;
};
@ -28,8 +29,11 @@ in {
services.printing = {
enable = true;
drivers = [ pkgs.gutenprint ];
drivers = [ pkgs.samsungUnifiedLinuxDriver pkgs.gutenprint ];
};
hardware.sane.enable = true;
programs.dconf.enable = true;
services.avahi = {

View File

@ -42,14 +42,21 @@ with lib;
font = "IBM Plex Sans";
fontMono = "IBM Plex Mono";
fontSerif = "IBM Plex Serif";
powerlineFont = "IBM Plex Mono for Powerline";
fallbackFont = "Roboto";
fallbackFontMono = "Roboto Mono";
fallbackFontSerif = "Roboto Slab";
powerlineFont = "IBM Plex Mono for Powerline";
fontSize = "12";
headerSize = "14";
iconFont = "Font Awesome 5 Free";
fallbackIcon = "Material Icons";
normalFontSize = "12";
headerFontSize = "14";
smallFontSize = "11";
microFontSize = "10";
minimalFontSize = "8";
iconsTheme = "Papirus-Dark";
};
};

View File

@ -21,6 +21,7 @@
"vboxusers"
"smbgrp"
"cdrom"
"scanner"
];
description = "Дмитрий Холкин";
uid = 1000;

View File

@ -1,5 +1,6 @@
{ pkgs, config, lib, ... }:
let thm = config.lib.base16.theme;
let
thm = config.lib.base16.theme;
in {
home-manager.users.alukard = {
services.dunst = {
@ -14,7 +15,7 @@ in {
transparency = 10;
frame_color = "#${thm.base05-hex}";
separator_color = "#${thm.base05-hex}";
font = "${thm.font} ${thm.fontSize}";
font = "${thm.font} ${thm.normalFontSize}";
padding = 15;
horizontal_padding = 17;
word_wrap = true;
@ -25,22 +26,39 @@ in {
markup = "full";
};
# urgency_low = {
# background = "#${thm.base01-hex}";
# foreground = "#${thm.base03-hex}";
# timeout = 5;
# };
# urgency_normal = {
# background = "#${thm.base02-hex}";
# foreground = "#${thm.base05-hex}";
# timeout = 10;
# };
# urgency_critical = {
# background = "#${thm.base08-hex}";
# foreground = "#${thm.base06-hex}";
# timeout = 15;
# };
urgency_low = {
background = "#${thm.base01-hex}";
foreground = "#${thm.base03-hex}";
timeout = 5;
foreground = "#${thm.base05-hex}";
timeout = 8;
};
urgency_normal = {
background = "#${thm.base02-hex}";
foreground = "#${thm.base05-hex}";
timeout = 10;
background = "#${thm.base01-hex}";
foreground = "#${thm.base08-hex}";
timeout = 12;
};
urgency_critical = {
background = "#${thm.base08-hex}";
foreground = "#${thm.base06-hex}";
timeout = 15;
background = "#${thm.base01-hex}";
foreground = "#${thm.base0D-hex}";
timeout = 20;
};
};
};

View File

@ -21,9 +21,9 @@ in
fontconfig = {
enable = true;
defaultFonts = {
monospace = [ "${thm.fontMono} 13" ];
sansSerif = [ "${thm.font} 13" ];
serif = [ "${thm.fontSerif} 13" ];
monospace = [ "${thm.fontMono} ${thm.normalFontSize}" ];
sansSerif = [ "${thm.font} ${thm.normalFontSize}" ];
serif = [ "${thm.fontSerif} ${thm.normalFontSize}" ];
};
};
enableDefaultFonts = true;

View File

@ -58,7 +58,7 @@ in {
# package = pkgs.flatcolor-gtk-theme;
};
font = {
name = "${thm.font} 14";
name = "${thm.font} ${thm.normalFontSize}";
};
gtk3.extraConfig.gtk-cursor-theme-name = "bibata_oil";
};

View File

@ -11,17 +11,16 @@ in {
package = pkgs.i3-gaps;
config = rec {
assigns = {
"" = [
"" = [
{ class = "Spotify"; }
{ class = "PulseEffects"; }
{ class = "spt"; }
];
"" = [
"" = [
{ class = "^Telegram"; }
];
"" = [{ class = "cantata"; }];
};
fonts = [ "${thm.fontMono} 9" ];
fonts = [ "${thm.fontMono} ${thm.microFontSize}" ];
bars = [ ];
@ -84,6 +83,7 @@ in {
];
};
startup = map (a: { notification = false; } // a) [
{ command = "${pkgs.feh}/bin/feh --bg-fill $HOME/.wallpaper"; }
{ command = "${pkgs.xorg.xrdb}/bin/xrdb -merge ~/.Xresources"; }
{ command = "${pkgs.pywal}/bin/wal -R"; }
{ command = "${pkgs.tdesktop}/bin/telegram-desktop"; }
@ -124,7 +124,7 @@ in {
"${modifier}+j" = "exec ${pkgs.playerctl}/bin/playerctl previous";
"${modifier}+k" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
"${modifier}+l" = "exec ${pkgs.playerctl}/bin/playerctl next";
"${modifier}+m" = "exec ${pkgs.alsaUtils}/bin/amixer set Master toggle";
"${modifier}+m" = "exec ${pkgs.pamixer}/bin/pamixer -t";
"${modifier}+d" = "exec ${apps.fm.cmd}";
"${modifier}+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv";
@ -157,6 +157,11 @@ in {
"XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
"XF86AudioLowerVolume" = "exec ${pkgs.pamixer}/bin/pamixer -d 5";
"XF86AudioRaiseVolume" = "exec ${pkgs.pamixer}/bin/pamixer -i 5";
"XF86AudioMute" = "exec ${pkgs.pamixer}/bin/pamixer -t";
"${modifier}+XF86AudioLowerVolume" = "exec ${pkgs.pamixer}/bin/pamixer -d 2";
"${modifier}+XF86AudioRaiseVolume" = "exec ${pkgs.pamixer}/bin/pamixer -i 2";
"--release button2" = "kill";
"--whole-window ${modifier}+button2" = "kill";
@ -166,12 +171,8 @@ in {
}) workspaces) // builtins.listToAttrs (builtins.map (x: {
name = "${modifier}+Shift+${builtins.elemAt x 0}";
value = "move container to workspace ${builtins.elemAt x 1}";
}) workspaces));
keycodebindings = {
"122" = "exec ${pkgs.pamixer}/bin/pamixer -d 5";
"123" = "exec ${pkgs.pamixer}/bin/pamixer -i 5";
"121" = "exec ${pkgs.pamixer}/bin/pamixer -t";
};
}) workspaces)
);
workspaceLayout = "tabbed";
};
extraConfig = ''

View File

@ -7,154 +7,171 @@ let
scripts = import ./scripts pkgs config;
thm = config.lib.base16.theme;
in {
home-manager.users.alukard.xsession.windowManager.i3.extraConfig = ''
bar {
id top
font pango:${thm.iconFont} Solid 10, ${thm.fallbackIcon} 10, ${thm.powerlineFont} SemiBold 10
mode dock
hidden_state hide
position top
status_command ${pkgs.i3status-rust}/bin/i3status-rs $HOME/.config/i3status-rust/config.toml
workspace_buttons yes
strip_workspace_numbers no
tray_output primary
colors {
background #${thm.base00-hex}
separator #${thm.base02-hex}
statusline #${thm.base04-hex}
focused_workspace #${thm.base00-hex} #${thm.base00-hex} #${thm.base0D-hex}
active_workspace #${thm.base00-hex} #${thm.base03-hex} #${thm.base00-hex}
inactive_workspace #${thm.base00-hex} #${thm.base01-hex} #${thm.base05-hex}
urgent_workspace #${thm.base0A-hex} #${thm.base00-hex} #${thm.base05-hex}
binding_mode #${thm.base00-hex} #${thm.base0A-hex} #${thm.base00-hex}
}
}
'';
home-manager.users.alukard = {
xsession.windowManager.i3.config.bars = [{
id = "default";
fonts = [ "${thm.iconFont} Solid ${thm.microFontSize}" "${thm.fallbackIcon} ${thm.microFontSize}" "${thm.powerlineFont} SemiBold ${thm.microFontSize}" ];
position = "top";
statusCommand = "${pkgs.i3status-rust}/bin/i3status-rs";
workspaceNumbers = false;
colors = {
background = "#${thm.base00-hex}";
statusline = "#${thm.base02-hex}";
separator = "#${thm.base04-hex}";
focusedWorkspace = {
background = "#${thm.base00-hex}";
border = "#${thm.base00-hex}";
text = "#${thm.base0D-hex}";
};
activeWorkspace = {
background = "#${thm.base03-hex}";
border = "#${thm.base00-hex}";
text = "#${thm.base00-hex}";
};
inactiveWorkspace = {
background = "#${thm.base01-hex}";
border = "#${thm.base00-hex}";
text = "#${thm.base05-hex}";
};
urgentWorkspace = {
background = "#${thm.base00-hex}";
border = "#${thm.base0A-hex}";
text = "#${thm.base05-hex}";
};
bindingMode = {
background = "#${thm.base0A-hex}";
border = "#${thm.base00-hex}";
text = "#${thm.base00-hex}";
};
};
home-manager.users.alukard.xdg.configFile."i3status-rust/config.toml".text = lib.concatStrings [''
}];
[theme]
name = "solarized-dark"
[theme.overrides]
idle_bg = "#${thm.base00-hex}"
idle_fg = "#${thm.base05-hex}"
info_bg = "#${thm.base0C-hex}"
info_fg = "#${thm.base00-hex}"
good_bg = "#${thm.base0B-hex}"
good_fg = "#${thm.base00-hex}"
warning_bg = "#${thm.base0A-hex}"
warning_fg = "#${thm.base00-hex}"
critical_bg = "#${thm.base08-hex}"
critical_fg = "#${thm.base00-hex}"
xdg.configFile."i3status-rust/config.toml".text = lib.concatStrings [''
[theme]
name = "solarized-dark"
[theme.overrides]
idle_bg = "#${thm.base00-hex}"
idle_fg = "#${thm.base05-hex}"
info_bg = "#${thm.base0C-hex}"
info_fg = "#${thm.base00-hex}"
good_bg = "#${thm.base0B-hex}"
good_fg = "#${thm.base00-hex}"
warning_bg = "#${thm.base0A-hex}"
warning_fg = "#${thm.base00-hex}"
critical_bg = "#${thm.base08-hex}"
critical_fg = "#${thm.base00-hex}"
# Material Icons Cheatsheet [https://shanfan.github.io/material-icons-cheatsheet/]
# Font Awesome Cheatsheet [https://fontawesome.com/icons?d=gallery&m=free]
[icons]
name = "awesome5"
[icons.overrides]
# backlight_empty = ""
# backlight_full = ""
# backlight_partial1 = ""
# backlight_partial2 = ""
# backlight_partial3 = ""
# bat_charging = ""
# bat_discharging = ""
# bat_full = ""
# bat = ""
# cogs = ""
cpu = " "
# gpu = ""
# mail = ""
memory_mem = " "
memory_swap = " "
music_next = ""
music_pause = ""
music_play = ""
music_prev = ""
music = " "
net_down = " "
net_up = " "
### net_up = " "
net_wired = ""
net_wireless = ""
### net_wired = "  "
### net_wireless = "  "
# ping = ""
# thermometer = ""
# time = ""
# toggle_off = ""
# toggle_on = ""
# update = ""
# uptime = ""
volume_empty = " "
volume_full = " "
volume_half = " "
volume_muted = " "
# weather_clouds = ""
# weather_default = ""
# weather_rain = ""
# weather_snow = ""
# weather_sun = ""
# weather_thunder = ""
# xrandr = ""
# Material Icons Cheatsheet [https://shanfan.github.io/material-icons-cheatsheet/]
# Font Awesome Cheatsheet [https://fontawesome.com/icons?d=gallery&m=free]
[icons]
name = "awesome5"
[icons.overrides]
backlight_empty = " 🌑 "
backlight_full = " 🌕 "
backlight_partial1 = " 🌘 "
backlight_partial2 = " 🌗 "
backlight_partial3 = " 🌖 "
# bat_charging = ""
# bat_discharging = ""
# bat_full = ""
# bat = ""
# cogs = ""
cpu = " "
# gpu = ""
# mail = ""
memory_mem = " "
memory_swap = " "
music_next = ""
music_pause = ""
music_play = ""
music_prev = ""
music = " "
net_down = " "
net_up = " "
### net_up = " "
net_wired = ""
net_wireless = ""
### net_wired = "  "
### net_wireless = "  "
# ping = ""
# thermometer = ""
# time = ""
# toggle_off = ""
# toggle_on = ""
# update = ""
# uptime = ""
volume_empty = " "
volume_full = " "
volume_half = " "
volume_muted = " "
# weather_clouds = ""
# weather_default = ""
# weather_rain = ""
# weather_snow = ""
# weather_sun = ""
# weather_thunder = ""
# xrandr = ""
[[block]]
block = "net"
''
(if device == "Dell-Laptop" then ''
device = "wlo1"
'' else "")
(if device == "AMD-Workstation" then ''
device = "enp9s0"
'' else "")
(if isLaptop then ''
[[block]]
block = "battery"
interval = 10
format = "{percentage}% {time}"
[[block]]
block = "music"
buttons = ["play", "next"]
[[block]]
block = "backlight"
'' else "")
''
[[block]]
block = "custom"
command = "${scripts.weather}"
interval = 600
[[block]]
block = "net"
''
(if device == "Dell-Laptop" then ''
device = "wlo1"
'' else "")
(if device == "AMD-Workstation" then ''
device = "enp9s0"
'' else "")
(if isLaptop then ''
[[block]]
block = "battery"
interval = 10
format = "{percentage}% {time}"
[[block]]
block = "music"
buttons = ["play", "next"]
[[block]]
block = "backlight"
'' else "")
''
[[block]]
block = "custom"
command = "${scripts.weather}"
interval = 600
[[block]]
block = "sound"
driver = "auto"
[[block]]
block = "sound"
driver = "auto"
[[block]]
block = "cpu"
interval = 1
format = "{utilization}% {frequency}GHz"
[[block]]
block = "cpu"
interval = 1
format = "{utilization}% {frequency}GHz"
[[block]]
block = "memory"
display_type = "memory"
format_mem = "{MAg}GiB"
format_swap = "{SFg}GiB"
[[block]]
block = "memory"
display_type = "memory"
format_mem = "{MAg}GiB"
format_swap = "{SFg}GiB"
[[block]]
block = "custom"
command = "${scripts.df}"
interval = 60
[[block]]
block = "custom"
command = "${scripts.df}"
interval = 60
[[block]]
block = "custom"
command = "${scripts.vpn-status}"
interval = 60
[[block]]
block = "custom"
command = "${scripts.vpn-status}"
interval = 60
[[block]]
block = "time"
interval = 1
format = "%a %Y/%m/%d %T"
''];
}
[[block]]
block = "time"
interval = 1
format = "%a %Y/%m/%d %T"
''];
};
}

View File

@ -130,12 +130,12 @@ in
General = {
ColorScheme = "Generated";
Name = "Generated";
fixed = "${thm.fontMono},11,-1,5,50,0,0,0,0,0";
font = "${thm.font},11,-1,5,50,0,0,0,0,0";
menuFont = "${thm.font},11,-1,5,50,0,0,0,0,0";
fixed = "${thm.fontMono},${thm.smallFontSize},-1,5,50,0,0,0,0,0";
font = "${thm.font},${thm.smallFontSize},-1,5,50,0,0,0,0,0";
menuFont = "${thm.font},${thm.smallFontSize},-1,5,50,0,0,0,0,0";
shadeSortColumn = true;
smallestReadableFont = "${thm.font},8,-1,5,57,0,0,0,0,0,Medium";
toolBarFont = "${thm.font},11,-1,5,50,0,0,0,0,0";
smallestReadableFont = "${thm.font},${thm.minimalFontSize},-1,5,57,0,0,0,0,0,Medium";
toolBarFont = "${thm.font},${thm.smallFontSize},-1,5,50,0,0,0,0,0";
};
KDE = {
DoubleClickInterval = 400;

View File

@ -1,7 +1,9 @@
{ config, pkgs, lib, ... }: {
programs.light.enable = config.deviceSpecific.isLaptop;
{ config, pkgs, lib, ... }:
with config.deviceSpecific;
{
programs.light.enable = isLaptop;
services.actkbd = {
enable = config.deviceSpecific.isLaptop;
enable = isLaptop;
bindings = map (x:
x // {
events = ["key"];

View File

@ -41,13 +41,13 @@
enable = true;
enableZshIntegration = true;
# enable use_flake support
# stdlib = ''
# use_flake() {
# watch_file flake.nix
# watch_file flake.lock
# eval "$(nix print-dev-env --profile "$(direnv_layout_dir)/flake-profile")"
# }
# '';
stdlib = ''
use_flake() {
watch_file flake.nix
watch_file flake.lock
eval "$(nix print-dev-env)"
}
'';
};
news.display = "silent";

View File

@ -0,0 +1,28 @@
{ config, lib, pkgs, ... }:
{
home-manager.users.alukard = {
services.picom = {
enable = true;
activeOpacity = "0.95";
inactiveOpacity = "0.95";
opacityRule = [
"100:class_i ?= 'vivaldi-stable'"
"100:class_i = 'mpv'"
"90:class_g = 'URxvt' && focused"
"70:class_g = 'URxvt' && !focused"
];
blur = true;
shadow = false;
vSync = true;
experimentalBackends = true;
extraOptions = ''
blur:
{
method = "gaussian";
size = 10;
deviation = 5.0;
};
'';
};
};
}

View File

@ -21,4 +21,16 @@ in {
RestartSec = 12;
};
};
# services.spotifyd = {
# enable = true;
# config = ''
# [global]
# username = ${config.secrets.spotify.user}
# password = ${config.secrets.spotify.password}
# use_keyring = false
# bitrate = 320
# volume_normalisation = false
# backend = pulseaudio
# '';
# };
}

View File

@ -1,10 +1,21 @@
{ pkgs, lib, config, ... }: {
# home-manager.users.alukard = {
# programs.ssh = {
# enable = true;
# };
# };
home-manager.users.alukard = {
# programs.ssh = {
# enable = true;
# forwardAgent = true;
# extraOptions = {
# # Host = "localhost";
# AddKeysToAgent = "ask";
# }
# };
home.file.".ssh/config".text = ''
Host localhost
ForwardAgent yes
AddKeysToAgent ask
Match host * exec "gpg-connect-agent UPDATESTARTUPTTY /bye"
'';
};
# services.openssh = {
# enable = true;
@ -26,4 +37,5 @@
# "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC+xd8ClJPvJuAdYC9HlNnjiubEtYfvnKjYr9ROV+UmPVvI3ZITF24OaMI+fxgR0EqGfcUzSGom8528IB53Q3aFMIAaA0vKjW+jrByyB2l/k/+ttpLbH75c9WyOpAcUDTen8BhHKPyXOHoJ1jLu7GFmtPZ+mZo8thFB/VIRrwECHd8DnF0drsSCorkRp1bZC7bAHgztaYHNBUoAVGgJ7nLwW7DotlgbUEDiPJHXOxd/c/ZlXIB/cfUUqF+L5ThbMPhMcwRMspLy+nQdmHhih9k6SkvYqJoNqHT5/XeShb0RkIzvUWT2CYTPop5kAY5mMnatVTOY1FZPhHzk3G8MhOQ3r/elM/ecZxmjL8uozMN9kRGf1IL4DgQZfVqQRILdNSQGb0tfeiyirNZe1RlDw9UvMnZJOw0EkiC9lSSRhBWXXxAmxRrbNFTPQSp+/kiIGDmp2AsGhD11CfTDEU3wcLEUPBUqp1FYSzHncJyEKGy2Dpa5xaUJ0cuyGL4W3WHDXa4sTfY+AIXbQTD88Ujdsbfzyd6lrikG4D/crCurXissrh7q9DuYKWRI24cp5bw9lG33U1EXisnZqFyZNwMAmSj2QEGsHCwSevn0FgyRa2WYXgpZ9hfgY4le+ZSMo2JTosQ6DjGyxMDyQAHJ/ismTTzL67Q2p6U+73toYm62Qqdspw== (none)"
# ];
# programs.ssh.askPassword = "${pkgs.plasma5.ksshaskpass}/bin/ksshaskpass";
}
}

View File

@ -3,8 +3,9 @@
{
home-manager.users.alukard = {
xresources.properties = with config.lib.base16.theme; {
"*background" = "#${base00-hex}";
"*foreground" = "#${base05-hex}";
"*background" = "#${base00-hex}";
"*cursorColor" = "#${base05-hex}";
"*color0" = "#${base00-hex}";
"*color1" = "#${base08-hex}";
"*color2" = "#${base0B-hex}";
@ -21,32 +22,6 @@
"*color13" = "#${base06-hex}";
"*color14" = "#${base0F-hex}";
"*color15" = "#${base07-hex}";
"*cursorColor" = "#${base05-hex}";
"URxvt.font" = "xft:${powerlineFont}:style=Regular:size=11";
"URxvt.boldFont" = "xft:${powerlineFont}:style=Bold:size=11";
"URxvt.italicFont" = "xft:${powerlineFont}:style=Italic:size=11";
"URxvt.boldItalicfont" = "xft:${powerlineFont}:style=Bold Italic:size=11";
"URxvt.letterSpace" = "0";
"URxvt.lineSpace" = "0";
"URxvt.geometry" = "92x24";
"URxvt.internalBorder" = "24";
"URxvt.cursorBlink" = "true";
"URxvt.cursorUnderline" = "false";
"URxvt.saveline" = "2048";
"URxvt.scrollBar" = "false";
"URxvt.scrollBar_right" = "false";
"URxvt.urgentOnBell" = "true";
"URxvt.depth" = "24";
"URxvt.iso14755" = "false";
"URxvt.keysym.Shift-Up" = "command:\\033]720;1\\007";
"URxvt.keysym.Shift-Down" = "command:\\033]721;1\\007";
"URxvt.keysym.Control-Up" = "\\033[1;5A";
"URxvt.keysym.Control-Down" = "\\033[1;5B";
"URxvt.keysym.Control-Right" = "\\033[1;5C";
"URxvt.keysym.Control-Left" = "\\033[1;5D";
};
};
}

View File

@ -26,6 +26,11 @@
src = inputs.zsh-you-should-use;
}
];
envExtra = ''
SHELL="${pkgs.zsh}/bin/zsh";
'';
shellAliases = {
"clr" = "clear";
"weather" = "curl wttr.in/Volzhskiy";
@ -50,6 +55,7 @@
"latree" = "exa -lahgFT@ --git";
};
initExtra = ''
nixify() {
if [ ! -e ./.envrc ]; then
echo 'use nix' > .envrc

View File

@ -5,6 +5,8 @@
* spotifyd + cli
* generate gtk icons
* overlay for my packages
* [vscode base16](https://github.com/golf1052/base16-vscode)
* config qbittorrent
* telegram theme
* mount music folder
xprop WM_CLASS