Tweaks, added obs, neovim and foot
This commit is contained in:
parent
0ca2472785
commit
12e6ffc364
23 changed files with 482 additions and 78 deletions
12
flake.lock
12
flake.lock
|
@ -49,11 +49,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1638959036,
|
||||
"narHash": "sha256-d75Ow/rV3nq4penfTJz9H3/OlIHttoKoJUDEfink/8k=",
|
||||
"lastModified": 1639506187,
|
||||
"narHash": "sha256-6wcFhEaA14bHbbr7xgpMv2QEXOEp1vleW7pB6siJXrQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "829e89a16f4f96428d1b94e68d4c06107b5491c0",
|
||||
"rev": "c61fc1c288bd1fdf96261ba5574a12cf8f9be70b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -84,11 +84,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1638986258,
|
||||
"narHash": "sha256-OceRdctKZRSgqQxVRvvNB0MaEnFMzQqjUffecoDE9eI=",
|
||||
"lastModified": 1639525045,
|
||||
"narHash": "sha256-z4GXFNzO+5V4CAUm2DDMAryLOWUKEbQif2ifvv1Ypg4=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "581d2d6c9cd5c289002203581d8aa0861963a933",
|
||||
"rev": "a2e281f5770247855b85d70c43454ba5bff34613",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -144,6 +144,7 @@
|
|||
|
||||
devShell = with pkgs; mkShell {
|
||||
nativeBuildInputs = [ sops ssh-to-pgp ];
|
||||
packages = [ sops ];
|
||||
};
|
||||
}
|
||||
);
|
||||
|
|
|
@ -2,6 +2,14 @@
|
|||
with lib;
|
||||
let
|
||||
cfg = config.eboskma.programs.alacritty;
|
||||
importYAML = name: yamlFile: (lib.importJSON ((pkgs.runCommandNoCC name { } ''
|
||||
mkdir -p $out
|
||||
${pkgs.yaml2json}/bin/yaml2json < ${yamlFile} | ${pkgs.jq}/bin/jq -a '.' > $out/tmp.json
|
||||
'').outPath + "/tmp.json"));
|
||||
theme = importYAML "theme" (builtins.fetchurl {
|
||||
url = "https://raw.githubusercontent.com/dracula/alacritty/05faff15c0158712be87d200081633d9f4850a7d/dracula.yml";
|
||||
sha256 = "1366rvvni2shbqlcrbypjv4f7p7ccdr6bvr685jnj8ipwqjjb6rn";
|
||||
});
|
||||
in
|
||||
{
|
||||
options.eboskma.programs.alacritty.enable = mkEnableOption "Enable alacritty";
|
||||
|
@ -26,64 +34,66 @@ in
|
|||
};
|
||||
size = 10.0;
|
||||
};
|
||||
colors = {
|
||||
primary = {
|
||||
background = "#2e3440";
|
||||
foreground = "#d8dee9";
|
||||
dim_foreground = "#a5abb6";
|
||||
};
|
||||
cursor = {
|
||||
text = "#2e3440";
|
||||
cursor = "#d8dee9";
|
||||
};
|
||||
vi_mode_cursor = {
|
||||
text = "#2e3440";
|
||||
cursor = "#d8dee9";
|
||||
};
|
||||
selection = {
|
||||
text = "CellForeground";
|
||||
background = "#4c566a";
|
||||
};
|
||||
search = {
|
||||
matches = {
|
||||
foreground = "CellBackground";
|
||||
background = "#88c0d0";
|
||||
};
|
||||
bar = {
|
||||
background = "#434c5e";
|
||||
foreground = "#d8dee9";
|
||||
};
|
||||
};
|
||||
normal = {
|
||||
black = "#3b4252";
|
||||
red = "#bf616a";
|
||||
green = "#a3be8c";
|
||||
yellow = "#ebcb8b";
|
||||
blue = "#81a1c1";
|
||||
magenta = "#b48ead";
|
||||
cyan = "#88c0d0";
|
||||
white = "#e5e9f0";
|
||||
};
|
||||
bright = {
|
||||
black = "#4c566a";
|
||||
red = "#bf616a";
|
||||
green = "#a3be8c";
|
||||
yellow = "#ebcb8b";
|
||||
blue = "#81a1c1";
|
||||
magenta = "#b48ead";
|
||||
cyan = "#8fbcbb";
|
||||
white = "#eceff4";
|
||||
};
|
||||
dim = {
|
||||
black = "#373e4d";
|
||||
red = "#94545d";
|
||||
green = "#809575";
|
||||
yellow = "#b29e75";
|
||||
blue = "#68809a";
|
||||
magenta = "#8c738c";
|
||||
cyan = "#6d96a5";
|
||||
white = "#aeb3bb";
|
||||
};
|
||||
inherit (theme) colors;
|
||||
# colors = {
|
||||
# primary = {
|
||||
# background = "#2e3440";
|
||||
# foreground = "#d8dee9";
|
||||
# dim_foreground = "#a5abb6";
|
||||
# };
|
||||
# cursor = {
|
||||
# text = "#2e3440";
|
||||
# cursor = "#d8dee9";
|
||||
# };
|
||||
# vi_mode_cursor = {
|
||||
# text = "#2e3440";
|
||||
# cursor = "#d8dee9";
|
||||
# };
|
||||
# selection = {
|
||||
# text = "CellForeground";
|
||||
# background = "#4c566a";
|
||||
# };
|
||||
# search = {
|
||||
# matches = {
|
||||
# foreground = "CellBackground";
|
||||
# background = "#88c0d0";
|
||||
# };
|
||||
# bar = {
|
||||
# background = "#434c5e";
|
||||
# foreground = "#d8dee9";
|
||||
# };
|
||||
# };
|
||||
# normal = {
|
||||
# black = "#3b4252";
|
||||
# red = "#bf616a";
|
||||
# green = "#a3be8c";
|
||||
# yellow = "#ebcb8b";
|
||||
# blue = "#81a1c1";
|
||||
# magenta = "#b48ead";
|
||||
# cyan = "#88c0d0";
|
||||
# white = "#e5e9f0";
|
||||
# };
|
||||
# bright = {
|
||||
# black = "#4c566a";
|
||||
# red = "#bf616a";
|
||||
# green = "#a3be8c";
|
||||
# yellow = "#ebcb8b";
|
||||
# blue = "#81a1c1";
|
||||
# magenta = "#b48ead";
|
||||
# cyan = "#8fbcbb";
|
||||
# white = "#eceff4";
|
||||
# };
|
||||
# dim = {
|
||||
# black = "#373e4d";
|
||||
# red = "#94545d";
|
||||
# green = "#809575";
|
||||
# yellow = "#b29e75";
|
||||
# blue = "#68809a";
|
||||
# magenta = "#8c738c";
|
||||
# cyan = "#6d96a5";
|
||||
# white = "#aeb3bb";
|
||||
# };
|
||||
# };
|
||||
background_opacity = 0.9;
|
||||
live_config_reload = true;
|
||||
mouse = {
|
||||
|
@ -93,5 +103,4 @@ in
|
|||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -62,16 +62,17 @@ in
|
|||
urgency_low = {
|
||||
background = "#282a36";
|
||||
foreground = "#6272a4";
|
||||
timeout = 3;
|
||||
timeout = 10;
|
||||
};
|
||||
urgency_normal = {
|
||||
background = "#282a36";
|
||||
foreground = "#bd93f9";
|
||||
timeout = 3;
|
||||
timeout = 10;
|
||||
};
|
||||
urgency_high = {
|
||||
background = "#ff5555";
|
||||
foreground = "#f8f8f2";
|
||||
frame_color = "#ff5555";
|
||||
timeout = 0;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -13,6 +13,9 @@ let
|
|||
"privacy.webrtc.allowSilencingNotifications" = true;
|
||||
"privacy.webrtc.legacyGlobalIndicator" = false;
|
||||
"browser.shell.checkDefaultBrowser" = false;
|
||||
"security.tls.enable_0rtt_data" = false;
|
||||
"media.ffmpeg.vaapi.enabled" = true;
|
||||
"media.rdd-ffmpeg.enabled" = true;
|
||||
};
|
||||
|
||||
nonDefaultDesktop = pkgs.makeDesktopItem {
|
||||
|
|
|
@ -31,6 +31,18 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
plugins = [
|
||||
{
|
||||
name = "dracula";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "dracula";
|
||||
repo = "fish";
|
||||
rev = "28db361b55bb49dbfd7a679ebec9140be8c2d593";
|
||||
sha256 = "07kz44ln75n4r04wyks1838nhmhr7jqmsc1rh7am7glq9ja9inmx";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
shellAliases = {
|
||||
# code = "${pkgs.vscode}/bin/code --enable-features=UseOzonePlatform --ozone-platform=wayland";
|
||||
ls = "${pkgs.exa}/bin/exa -Fb";
|
||||
|
|
55
home-manager/modules/foot/default.nix
Normal file
55
home-manager/modules/foot/default.nix
Normal file
|
@ -0,0 +1,55 @@
|
|||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.eboskma.programs.foot;
|
||||
in
|
||||
{
|
||||
options.eboskma.programs.foot = {
|
||||
enable = mkEnableOption "activate foot";
|
||||
server = mkEnableOption "enable foot server";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
programs.foot = {
|
||||
enable = true;
|
||||
server.enable = cfg.server;
|
||||
|
||||
settings = {
|
||||
main = {
|
||||
font = "Iosevka Nerd Font:size=10";
|
||||
dpi-aware = "yes";
|
||||
};
|
||||
|
||||
mouse = {
|
||||
hide-when-typing = "yes";
|
||||
};
|
||||
|
||||
cursor = {
|
||||
color = "282a36 f8f8f2";
|
||||
};
|
||||
|
||||
colors = {
|
||||
alpha = 0.9;
|
||||
foreground = "f8f8f2";
|
||||
background = "282a36";
|
||||
regular0 = "000000"; # black
|
||||
regular1 = "ff5555"; # red
|
||||
regular2 = "50fa7b"; # green
|
||||
regular3 = "f1fa8c"; # yellow
|
||||
regular4 = "bd93f9"; # blue
|
||||
regular5 = "ff79c6"; # magenta
|
||||
regular6 = "8be9fd"; # cyan
|
||||
regular7 = "bfbfbf"; # white
|
||||
bright0 = "4d4d4d"; # bright black
|
||||
bright1 = "ff6e67"; # bright red
|
||||
bright2 = "5af78e"; # bright green
|
||||
bright3 = "f4f99d"; # bright yellow
|
||||
bright4 = "caa9fa"; # bright blue
|
||||
bright5 = "ff92d0"; # bright magenta
|
||||
bright6 = "9aedfe"; # bright cyan
|
||||
bright7 = "e6e6e6"; # bright white
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
23
home-manager/modules/neovim/default.nix
Normal file
23
home-manager/modules/neovim/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.eboskma.programs.neovim;
|
||||
in
|
||||
{
|
||||
options.eboskma.programs.neovim = { enable = mkEnableOption "activate neovim"; };
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
|
||||
# Enable some aliases
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
vimdiffAlias = true;
|
||||
|
||||
withNodeJs = true;
|
||||
withPython3 = true;
|
||||
withRuby = true;
|
||||
};
|
||||
};
|
||||
}
|
19
home-manager/modules/obs-studio/default.nix
Normal file
19
home-manager/modules/obs-studio/default.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
{ lib, pkgs, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.eboskma.programs.obs-studio;
|
||||
in
|
||||
{
|
||||
options.eboskma.programs.obs-studio = { enable = mkEnableOption "activate obs-studio"; };
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
programs.obs-studio = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
pkgs.obs-studio-plugins.wlrobs
|
||||
pkgs.obs-studio-plugins.obs-gstreamer
|
||||
pkgs.obs-backgroundremoval
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -26,6 +26,47 @@ in
|
|||
command = "${pkgs.waybar}/bin/waybar";
|
||||
}
|
||||
];
|
||||
|
||||
# Dracula theme
|
||||
colors = {
|
||||
background = "#f8f8f2";
|
||||
focused = {
|
||||
border = "#6272a4";
|
||||
background = "#6272A4";
|
||||
text = "#f8f8f2";
|
||||
indicator = "#6272a4";
|
||||
childBorder = "#6272a4";
|
||||
};
|
||||
focusedInactive = {
|
||||
border = "#44475a";
|
||||
background = "#44475a";
|
||||
text = "#f8f8f2";
|
||||
indicator = "#44475a";
|
||||
childBorder = "#44475a";
|
||||
};
|
||||
unfocused = {
|
||||
border = "#282a36";
|
||||
background = "#282a36";
|
||||
text = "#bfbfbf";
|
||||
indicator = "#282a36";
|
||||
childBorder = "#282a36";
|
||||
};
|
||||
urgent = {
|
||||
border = "#44475a";
|
||||
background = "#ff5555";
|
||||
text = "#f8f8f2";
|
||||
indicator = "#ff5555";
|
||||
childBorder = "#ff5555";
|
||||
};
|
||||
placeholder = {
|
||||
border = "#282a36";
|
||||
background = "#282a36";
|
||||
text = "#f8f8f2";
|
||||
indicator = "#282a36";
|
||||
childBorder = "#282a36";
|
||||
};
|
||||
};
|
||||
|
||||
left = "n";
|
||||
down = "e";
|
||||
up = "i";
|
||||
|
|
|
@ -10,11 +10,24 @@ in
|
|||
config = mkIf (cfg.enable) {
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
shortcut = "a";
|
||||
prefix = "C-a";
|
||||
terminal = "tmux-256color";
|
||||
clock24 = true;
|
||||
baseIndex = 1;
|
||||
keyMode = "vi";
|
||||
plugins = with pkgs.tmuxPlugins; [
|
||||
sensible
|
||||
tmux-fzf
|
||||
{
|
||||
plugin = dracula;
|
||||
extraConfig = ''
|
||||
set -g @dracula-show-battery false
|
||||
set -g @dracula-show-powerline true
|
||||
set -g @dracula-show-fahrenheit false
|
||||
set -g @dracula-refresh-rate 10
|
||||
'';
|
||||
}
|
||||
];
|
||||
|
||||
extraConfig = ''
|
||||
source ${pkgs.powerline}/share/tmux/powerline.conf
|
||||
|
@ -22,7 +35,7 @@ in
|
|||
|
||||
set -ag update-environment "SWAYSOCK"
|
||||
|
||||
bind-key r source ~/.tmux.conf \; display "Reloaded config."
|
||||
bind-key r source ~/.config/tmux/tmux.conf \; display "Reloaded config."
|
||||
|
||||
bind-key C-a send-prefix
|
||||
|
||||
|
|
|
@ -45,6 +45,7 @@ in
|
|||
# msaraiva.surface
|
||||
# pgourlain.erlang
|
||||
# phoenixframework.phoenix
|
||||
rubymaniac.vscode-paste-and-indent
|
||||
# surajbarkale.ninja
|
||||
timonwong.shellcheck
|
||||
# twxs.cmake
|
||||
|
|
|
@ -3,6 +3,7 @@ with lib;
|
|||
|
||||
let
|
||||
cfg = config.eboskma.base;
|
||||
qmkUdevRules = (builtins.readFile ./qmk.rules);
|
||||
in
|
||||
{
|
||||
options.eboskma.base = {
|
||||
|
@ -44,5 +45,9 @@ in
|
|||
usbutils
|
||||
ht-rust
|
||||
];
|
||||
|
||||
services.udev = {
|
||||
extraRules = qmkUdevRules;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
74
modules/base/qmk.rules
Normal file
74
modules/base/qmk.rules
Normal file
|
@ -0,0 +1,74 @@
|
|||
# Atmel DFU
|
||||
### ATmega16U2
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fef", TAG+="uaccess"
|
||||
### ATmega32U2
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff0", TAG+="uaccess"
|
||||
### ATmega16U4
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff3", TAG+="uaccess"
|
||||
### ATmega32U4
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", TAG+="uaccess"
|
||||
### AT90USB64
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff9", TAG+="uaccess"
|
||||
### AT90USB162
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffa", TAG+="uaccess"
|
||||
### AT90USB128
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", TAG+="uaccess"
|
||||
|
||||
# Input Club
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1c11", ATTRS{idProduct}=="b007", TAG+="uaccess"
|
||||
|
||||
# STM32duino
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1eaf", ATTRS{idProduct}=="0003", TAG+="uaccess"
|
||||
# STM32 DFU
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", TAG+="uaccess"
|
||||
|
||||
# BootloadHID
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05df", TAG+="uaccess"
|
||||
|
||||
# USBAspLoader
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", TAG+="uaccess"
|
||||
|
||||
# ModemManager should ignore the following devices
|
||||
# Atmel SAM-BA (Massdrop)
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="6124", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Caterina (Pro Micro)
|
||||
## pid.codes shared PID
|
||||
### Keyboardio Atreus 2 Bootloader
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2302", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
## Spark Fun Electronics
|
||||
### Pro Micro 3V3/8MHz
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9203", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
### Pro Micro 5V/16MHz
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9205", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
### LilyPad 3V3/8MHz (and some Pro Micro clones)
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9207", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
## Pololu Electronics
|
||||
### A-Star 32U4
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1ffb", ATTRS{idProduct}=="0101", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
## Arduino SA
|
||||
### Leonardo
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0036", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
### Micro
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0037", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
## Adafruit Industries LLC
|
||||
### Feather 32U4
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000c", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
### ItsyBitsy 32U4 3V3/8MHz
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000d", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
### ItsyBitsy 32U4 5V/16MHz
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000e", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
## dog hunter AG
|
||||
### Leonardo
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0036", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
### Micro
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0037", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# hid_listen
|
||||
KERNEL=="hidraw*", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl"
|
||||
|
||||
# hid bootloaders
|
||||
## QMK HID
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2067", TAG+="uaccess"
|
||||
## PJRC's HalfKay
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="0478", TAG+="uaccess"
|
|
@ -52,6 +52,7 @@ in
|
|||
work = config.eboskma.base.work;
|
||||
};
|
||||
fish.enable = true;
|
||||
foot.enable = true;
|
||||
git = {
|
||||
enable = true;
|
||||
name = "Erwin Boskma";
|
||||
|
@ -59,6 +60,8 @@ in
|
|||
signingKey = "EE7ADEFE1D943C7B";
|
||||
};
|
||||
gpg.enable = true;
|
||||
neovim.enable = true;
|
||||
obs-studio.enable = true;
|
||||
rofi.enable = true;
|
||||
vscode.enable = true;
|
||||
sway.enable = true;
|
||||
|
@ -77,10 +80,10 @@ in
|
|||
imv
|
||||
(jetbrains.clion.override { jdk = pkgs.jetbrains.jdk; })
|
||||
mpv
|
||||
neovim
|
||||
nomachine-client
|
||||
pamedia
|
||||
pass
|
||||
quintom-cursor-theme
|
||||
procs
|
||||
ripgrep
|
||||
signal-desktop
|
||||
|
@ -89,9 +92,10 @@ in
|
|||
steam-tui
|
||||
tdesktop
|
||||
unzip
|
||||
xdg-utils
|
||||
wl-clipboard
|
||||
] ++
|
||||
(with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-vaapi ]);
|
||||
(with gst_all_1; [ gstreamer gstreamer.dev gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-vaapi ]);
|
||||
|
||||
xdg = {
|
||||
enable = true;
|
||||
|
@ -111,6 +115,7 @@ in
|
|||
|
||||
gtk3.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = true;
|
||||
gtk-cursor-theme-name = "Quintom_Ink";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -129,8 +134,11 @@ in
|
|||
../../home-manager/modules/electron
|
||||
../../home-manager/modules/firefox
|
||||
../../home-manager/modules/fish
|
||||
../../home-manager/modules/foot
|
||||
../../home-manager/modules/git
|
||||
../../home-manager/modules/gpg
|
||||
../../home-manager/modules/neovim
|
||||
../../home-manager/modules/obs-studio
|
||||
../../home-manager/modules/rofi
|
||||
../../home-manager/modules/vscode
|
||||
../../home-manager/modules/sway
|
||||
|
@ -194,5 +202,9 @@ in
|
|||
AMD_VULKAN_ICD = "RADV";
|
||||
};
|
||||
|
||||
environment.etc = {
|
||||
"X11/xkb".source = "${pkgs.xkeyboard_config}/etc/X11/xkb";
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ in
|
|||
};
|
||||
};
|
||||
};
|
||||
environment.systemPackages = [ pkgs.greetd.gtkgreet ];
|
||||
environment.systemPackages = with pkgs; [ greetd.gtkgreet quintom-cursor-theme papirus-icon-theme arc-theme ];
|
||||
|
||||
environment.etc = {
|
||||
"greetd/sway-config" = {
|
||||
|
|
|
@ -2,4 +2,14 @@ exec "gtkgreet -l; swaymsg exit"
|
|||
|
||||
bindsym Mod4+shift+e exec swaynag -t warning -m 'What would you like to do?' -b 'Poweroff' 'systemctl poweroff' -b 'Reboot' 'systemctl reboot'
|
||||
|
||||
set $gnome-schema org.gnome.desktop.interface
|
||||
|
||||
exec_always {
|
||||
gsettings set $gnome-schema gtk-theme 'Arc-Dark'
|
||||
gsettings set $gnome-schema icon-theme 'Papirus-Dark'
|
||||
gsettings set $gnome-schema cursor-theme 'Quintom_Ink'
|
||||
gsettings set $gnome-schema font-name 'Recursive Sans Casual Static Medium'
|
||||
}
|
||||
|
||||
|
||||
include /etc/sway/config.d/*
|
||||
|
|
|
@ -14,6 +14,9 @@ in
|
|||
media-session.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
security.rtkit.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [ pavucontrol ];
|
||||
|
||||
users.extraUsers.${config.eboskma.var.mainUser}.extraGroups = [ "audio" ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
final: prev: {
|
||||
final: prev: rec {
|
||||
rofi-wayland = prev.pkgs.callPackage ../pkgs/rofi-wayland { };
|
||||
nix-plugins = prev.pkgs.callPackage ../pkgs/nix-plugins { };
|
||||
lunarvim = prev.pkgs.callPackage ../pkgs/lunarvim { };
|
||||
|
@ -6,4 +6,6 @@ final: prev: {
|
|||
{
|
||||
inherit (prev.pkgs) gcc cmake opencv curl stdenv git tensorflow-lite flatbuffers;
|
||||
};
|
||||
onnx-runtime = prev.pkgs.callPackage ../pkgs/onnx-runtime { inherit (prev.pkgs) stdenv; };
|
||||
obs-backgroundremoval = prev.pkgs.callPackage ../pkgs/obs-backgroundremoval { inherit (prev.pkgs) stdenv fetchFromGitHub cmake obs-studio opencv onnx-runtime; };
|
||||
}
|
||||
|
|
85
pkgs/obs-backgroundremoval/cmake_set_version.patch
Normal file
85
pkgs/obs-backgroundremoval/cmake_set_version.patch
Normal file
|
@ -0,0 +1,85 @@
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index c470020..c3849c7 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,7 +1,9 @@
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
+option(GIT_TAG "The current git tag")
|
||||
+
|
||||
include(external/MunkeiVersionFromGit.cmake)
|
||||
-version_from_git()
|
||||
+version_from_git(${GIT_TAG})
|
||||
|
||||
# Change obs-plugintemplate to your plugin's name in a machine-readable format
|
||||
# (e.g.: obs-myawesomeplugin) and set
|
||||
diff --git a/external/MunkeiVersionFromGit.cmake b/external/MunkeiVersionFromGit.cmake
|
||||
index 15ab0d2..48c48bd 100644
|
||||
--- a/external/MunkeiVersionFromGit.cmake
|
||||
+++ b/external/MunkeiVersionFromGit.cmake
|
||||
@@ -24,64 +24,8 @@ cmake_minimum_required( VERSION 3.0.0 )
|
||||
|
||||
include( CMakeParseArguments )
|
||||
|
||||
-function( version_from_git )
|
||||
+function( version_from_git git_tag )
|
||||
# Parse arguments
|
||||
- set( options OPTIONAL FAST )
|
||||
- set( oneValueArgs
|
||||
- GIT_EXECUTABLE
|
||||
- INCLUDE_HASH
|
||||
- LOG
|
||||
- TIMESTAMP
|
||||
- )
|
||||
- set( multiValueArgs )
|
||||
- cmake_parse_arguments( ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
|
||||
-
|
||||
- # Defaults
|
||||
- if( NOT DEFINED ARG_INCLUDE_HASH )
|
||||
- set( ARG_INCLUDE_HASH ON )
|
||||
- endif()
|
||||
-
|
||||
- if( DEFINED ARG_GIT_EXECUTABLE )
|
||||
- set( GIT_EXECUTABLE "${ARG_GIT_EXECUTABLE}" )
|
||||
- else ()
|
||||
- # Find Git or bail out
|
||||
- find_package( Git )
|
||||
- if( NOT GIT_FOUND )
|
||||
- message( FATAL_ERROR "[MunkeiVersionFromGit] Git not found" )
|
||||
- endif( NOT GIT_FOUND )
|
||||
- endif()
|
||||
-
|
||||
- # Git describe
|
||||
- execute_process(
|
||||
- COMMAND "${GIT_EXECUTABLE}" describe --tags
|
||||
- WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
- RESULT_VARIABLE git_result
|
||||
- OUTPUT_VARIABLE git_describe
|
||||
- ERROR_VARIABLE git_error
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
- ERROR_STRIP_TRAILING_WHITESPACE
|
||||
- )
|
||||
- if( NOT git_result EQUAL 0 )
|
||||
- message( FATAL_ERROR
|
||||
- "[MunkeiVersionFromGit] Failed to execute Git: ${git_error}"
|
||||
- )
|
||||
- endif()
|
||||
-
|
||||
- # Get Git tag
|
||||
- execute_process(
|
||||
- COMMAND "${GIT_EXECUTABLE}" describe --tags --abbrev=0
|
||||
- WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
- RESULT_VARIABLE git_result
|
||||
- OUTPUT_VARIABLE git_tag
|
||||
- ERROR_VARIABLE git_error
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
- ERROR_STRIP_TRAILING_WHITESPACE
|
||||
- )
|
||||
- if( NOT git_result EQUAL 0 )
|
||||
- message( FATAL_ERROR
|
||||
- "[MunkeiVersionFromGit] Failed to execute Git: ${git_error}"
|
||||
- )
|
||||
- endif()
|
||||
|
||||
if( git_tag MATCHES "^v(0|[1-9][0-9]*)[.](0|[1-9][0-9]*)[.](0|[1-9][0-9]*)(-[.0-9A-Za-z-]+)?([+][.0-9A-Za-z-]+)?$" )
|
||||
set( version_major "${CMAKE_MATCH_1}" )
|
18
pkgs/obs-backgroundremoval/default.nix
Normal file
18
pkgs/obs-backgroundremoval/default.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
{ fetchFromGitHub, stdenv, cmake, obs-studio, opencv, onnx-runtime, git }:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-backgroundremoval";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "royshil";
|
||||
repo = "obs-backgroundremoval";
|
||||
rev = "4f0348a15103cd4e516d94b629851208280cd4d4";
|
||||
sha256 = "oDgFCc9dpEhjAgpNnGINWgQkPCzUetGwnWbMW2ZbpXw=";
|
||||
};
|
||||
|
||||
cmakeFlags = [ "-DGIT_TAG=v${version}" ];
|
||||
patches = [ ./cmake_set_version.patch ];
|
||||
|
||||
nativeBuildInputs = [ cmake git ];
|
||||
buildInputs = [ opencv onnx-runtime obs-studio ];
|
||||
}
|
16
pkgs/onnx-runtime/default.nix
Normal file
16
pkgs/onnx-runtime/default.nix
Normal file
|
@ -0,0 +1,16 @@
|
|||
{ stdenv }:
|
||||
stdenv.mkDerivation {
|
||||
pname = "onnx-runtime";
|
||||
version = "1.7.0";
|
||||
# phases = [ "unpackPhase" "installPhase" ];
|
||||
|
||||
src = builtins.fetchTarball {
|
||||
url = "https://github.com/microsoft/onnxruntime/releases/download/v1.7.0/onnxruntime-linux-x64-1.7.0.tgz";
|
||||
sha256 = "1zzgxn6867g4l9814dgpkc3jsz1qq32j6pjfhn3zv0qyw9cdnvn4";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir $out
|
||||
cp -r include lib $out/
|
||||
'';
|
||||
}
|
1
pkgs/onnx-runtime/result
Symbolic link
1
pkgs/onnx-runtime/result
Symbolic link
|
@ -0,0 +1 @@
|
|||
/nix/store/fvn0n4aaj7w9r4xlaf8kg7nsvy1lqbwh-onnx-runtime-1.7.0
|
Loading…
Reference in a new issue