uhh.. idk? stuff
This commit is contained in:
parent
a6fa6bc476
commit
0dc8d041f4
|
@ -18,5 +18,7 @@ in
|
|||
darkerbrown = "#5e454b";
|
||||
cream = "#fefcf3";
|
||||
aqua = "#689d6a";
|
||||
black = "#282828";
|
||||
white = "#ebdbb2";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -12,8 +12,8 @@
|
|||
};
|
||||
nur.url = "github:nix-community/nur";
|
||||
emacs-overlay = {
|
||||
url = "github:nix-community/emacs-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
url = "github:nix-community/emacs-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -6,7 +6,11 @@ in {
|
|||
./alacritty.nix
|
||||
./firefox.nix
|
||||
./sway.nix
|
||||
./hyprlock_idle.nix
|
||||
./wallpapers.nix
|
||||
./waybar.nix
|
||||
./udiskie.nix
|
||||
./mako.nix
|
||||
./zsh.nix
|
||||
./rofi.nix
|
||||
./libinput.nix
|
||||
|
@ -20,6 +24,8 @@ in {
|
|||
# flake = "/etc/nixos/config#laptop"
|
||||
};
|
||||
|
||||
xdg.systemDirs.data = ["${pkgs.nordvpn}/share"];
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = {
|
||||
|
|
|
@ -35,6 +35,12 @@
|
|||
hostname = "github.com";
|
||||
identityFile = "~/.ssh/duralumin_janis-github";
|
||||
};
|
||||
"github-janis-bhm" = {
|
||||
host = "github.com:janis-bhm";
|
||||
hostname = "github.com";
|
||||
user = "git";
|
||||
identityFile = "~/.ssh/id_ed25519_github_janis";
|
||||
};
|
||||
"noonebtw.github.com" = {
|
||||
host = "noonebtw.github.com";
|
||||
hostname = "github.com";
|
||||
|
|
9
home/hyprlock_idle.nix
Normal file
9
home/hyprlock_idle.nix
Normal file
|
@ -0,0 +1,9 @@
|
|||
{pkgs, ...}: {
|
||||
services.hypridle.enable = true;
|
||||
services.hyprpolkitagent.enable = true;
|
||||
programs.hyprlock.enable = true;
|
||||
|
||||
xdg.configFile."hypr" = {
|
||||
source = "${pkgs.dotfiles}/.config/hypr";
|
||||
};
|
||||
}
|
19
home/mako.nix
Normal file
19
home/mako.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
{pkgs, lib, config, ...}: let
|
||||
theme = import ../data/theme.nix {inherit config; };
|
||||
utils = import ../utils.nix { inherit lib; };
|
||||
in {
|
||||
services.mako = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default-timeout = 5000;
|
||||
border-size = 3;
|
||||
margin = "30";
|
||||
padding = "5";
|
||||
border-radius = 10;
|
||||
background-color = utils.rgbToRgba theme.background;
|
||||
border-color = utils.rgbToRgba theme.bright.blue;
|
||||
progress-color = utils.rgbToRgba theme.bright.cyan;
|
||||
text-color = utils.rgbToRgba theme.foreground;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
{pkgs, lib, config, super-config, inputs, ...}:
|
||||
{pkgs, lib, config, super-config, ...}:
|
||||
let
|
||||
mod = "Mod4";
|
||||
left = "h";
|
||||
|
@ -20,6 +20,7 @@ in {
|
|||
whitesur-cursors
|
||||
rofi-wayland
|
||||
];
|
||||
|
||||
wayland = {
|
||||
windowManager = {
|
||||
sway = {
|
||||
|
|
8
home/udiskie.nix
Normal file
8
home/udiskie.nix
Normal file
|
@ -0,0 +1,8 @@
|
|||
{...}: {
|
||||
services.udiskie = {
|
||||
enable = true;
|
||||
automount = true;
|
||||
notify = true;
|
||||
tray = "auto";
|
||||
};
|
||||
}
|
29
home/wallpapers.nix
Normal file
29
home/wallpapers.nix
Normal file
|
@ -0,0 +1,29 @@
|
|||
# home-manager module which installs wallpapers from dotfiles into .local/share/wallpapers
|
||||
{pkgs, config, ...}: {
|
||||
xdg.dataFile."wallpapers" = {
|
||||
source = "${pkgs.dotfiles}/.local/share/wallpapers";
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
wpaperd-patched
|
||||
];
|
||||
|
||||
xdg.dataFile."wallpapers/current" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.xdg.dataHome}/wallpapers/witch1.jpg";
|
||||
};
|
||||
|
||||
xdg.dataFile."wallpapers/current_lock" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.xdg.dataHome}/wallpapers/witch5.jpg";
|
||||
};
|
||||
|
||||
services.wpaperd = {
|
||||
enable = true;
|
||||
package = pkgs.wpaperd-patched;
|
||||
settings = {
|
||||
default = {
|
||||
path = "${config.xdg.dataHome}/wallpapers/current";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -8,7 +8,7 @@ in let
|
|||
module-descs = [
|
||||
{
|
||||
name = "custom/left-most";
|
||||
background = theme.background;
|
||||
background = "transparent";
|
||||
}
|
||||
{
|
||||
name = "pulseaudio";
|
||||
|
@ -122,7 +122,11 @@ SSID: {essid} {frequency}'';
|
|||
};
|
||||
background = theme.normal.black;
|
||||
}
|
||||
{name = "tray"; config = { spacing = 10; }; background = theme.background;}
|
||||
{
|
||||
name = "tray";
|
||||
config = { spacing = 10; };
|
||||
background = theme.normal.white;
|
||||
}
|
||||
];
|
||||
|
||||
# default style for modules
|
||||
|
@ -156,14 +160,12 @@ SSID: {essid} {frequency}'';
|
|||
# modules interlaced with spacers
|
||||
# [ModuleDesc] -> [Module]
|
||||
mkSpacedModules = descs: with builtins;
|
||||
let
|
||||
len = length descs;
|
||||
in lib.lists.flatten
|
||||
(lib.lists.imap0
|
||||
lib.lists.flatten
|
||||
(let list = utils.windows 2 descs; len = length list; in lib.lists.imap0
|
||||
(n: descs: let
|
||||
left = elemAt descs 0;
|
||||
right = elemAt descs 1;
|
||||
in if n == len then [
|
||||
in if n == (len - 1) then [
|
||||
(mkModule left)
|
||||
(mkSpacer n left right)
|
||||
(mkModule right)
|
||||
|
@ -171,7 +173,7 @@ SSID: {essid} {frequency}'';
|
|||
(mkModule left)
|
||||
(mkSpacer n left right)
|
||||
])
|
||||
(utils.windows 2 descs)
|
||||
list
|
||||
);
|
||||
|
||||
# Module -> {"name" = setting}
|
||||
|
@ -217,6 +219,59 @@ SSID: {essid} {frequency}'';
|
|||
position = "top";
|
||||
};
|
||||
};
|
||||
workspace-style = ''
|
||||
/* And now modules themselves in their respective order */
|
||||
.rounded_button {
|
||||
padding-left: 0.3em;
|
||||
padding-right: 0.3em;
|
||||
border-radius: 0.5em;
|
||||
margin-left: 0.2em;
|
||||
margin-right: 0.2em;
|
||||
margin-bottom: 0.2em;
|
||||
}
|
||||
|
||||
/* Workspaces stuff */
|
||||
#workspaces button {
|
||||
color: ${theme.extra.white};
|
||||
background: ${theme.background};
|
||||
|
||||
padding-left: 0.3em;
|
||||
padding-right: 0.3em;
|
||||
border-radius: 0.5em;
|
||||
margin-left: 0.2em;
|
||||
margin-right: 0.2em;
|
||||
margin-bottom: 0.2em;
|
||||
}
|
||||
|
||||
/* Inactive (on unfocused output) */
|
||||
#workspaces button.visible {
|
||||
color: ${theme.extra.white};
|
||||
background: ${theme.extra.purple};
|
||||
}
|
||||
|
||||
/* Active (on focused output) */
|
||||
#workspaces button.focused {
|
||||
color: ${theme.extra.black};
|
||||
background: ${theme.extra.aqua};
|
||||
}
|
||||
|
||||
/* Contains an urgent window */
|
||||
#workspaces button.urgent {
|
||||
color: ${theme.extra.black};
|
||||
background: ${theme.bright.red};
|
||||
}
|
||||
|
||||
/* Style when cursor is on the button */
|
||||
#workspaces button:hover {
|
||||
background: ${theme.extra.black};
|
||||
color: ${theme.extra.white};
|
||||
}
|
||||
|
||||
#window {
|
||||
margin-right: 10pt;
|
||||
margin-left: 10pt;
|
||||
}
|
||||
'';
|
||||
in {
|
||||
imports = [ ../options.nix ];
|
||||
|
||||
|
@ -234,9 +289,23 @@ in {
|
|||
};
|
||||
|
||||
style = ''
|
||||
* {border: none; border-radius: 0; min-height: 0; margin: 0; padding: 0; box-shadow: none; text-shadow: none;}
|
||||
#waybar { background: rgba(40, 40, 40, 0.3); color: #ffffff; font-family: "sans-serif"; font-size: 12pt; font-weight: 500; }
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
min-height: 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-shadow: none;
|
||||
text-shadow: none;
|
||||
}
|
||||
#waybar {
|
||||
background: rgba(40, 40, 40, 0.3);
|
||||
color: #ffffff;
|
||||
font-family: "sans-serif";
|
||||
font-size: 12pt;
|
||||
font-weight: 500;
|
||||
}
|
||||
''
|
||||
+ bar.style;
|
||||
+ workspace-style + bar.style;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
src = builtins.fetchGit {
|
||||
url = "git@git.nirgendwo.xyz:janis/dotfiles.git";
|
||||
rev = "56cf6dd4efac92527f465a864b2b155833b364ee";
|
||||
rev = "a5fcc6a741eb21e9a729b4c001ce069c485bccc1";
|
||||
ref = "main";
|
||||
};
|
||||
|
||||
|
|
|
@ -123,7 +123,7 @@ in stdenv.mkDerivation {
|
|||
mkdir -p $out/bin $out/share
|
||||
ln -s ${nordvpn}/bin/nordvpn $out/bin
|
||||
ln -s ${nordvpnd}/bin/nordvpnd $out/bin
|
||||
ln -s ${nordvpn}/share* $out/share
|
||||
ln -s ${nordvpn}/share/* $out/share
|
||||
ln -s ${nordvpn}/var $out
|
||||
runHook postInstall
|
||||
'';
|
||||
|
|
|
@ -4,4 +4,5 @@ final: prev: {
|
|||
screenshot = prev.callPackage ./screenshot.nix {};
|
||||
dotfiles = prev.callPackage ./dotfiles.nix {};
|
||||
tree-sitter-slang = prev.callPackage ./tree-sitter-slang.nix {};
|
||||
wpaperd-patched = prev.callPackage ./wpaperd.nix {};
|
||||
}
|
||||
|
|
40
pkgs/wpaperd.nix
Normal file
40
pkgs/wpaperd.nix
Normal file
|
@ -0,0 +1,40 @@
|
|||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
pkg-config,
|
||||
libxkbcommon,
|
||||
wayland,
|
||||
libGL,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "wpaperd-patched";
|
||||
version = "1.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "janis-bhm";
|
||||
repo = "wpaperd";
|
||||
rev = "main";
|
||||
hash = "sha256-bqsr4tOA2ZOoz8Y7m9A3O+gUIFsJ6gvP2wjUYExyuGI=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-Vz5x9V+q5OwRR/GdiM/kEEfENSQ+KyN3DKM35NHuzAk=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
buildInputs = [
|
||||
wayland
|
||||
libGL
|
||||
libxkbcommon
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Minimal wallpaper daemon for Wayland";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "wpaperd";
|
||||
};
|
||||
}
|
|
@ -17,4 +17,12 @@
|
|||
num-windows;
|
||||
|
||||
isEmptySet = set: with builtins; length (attrNames set) == 0;
|
||||
|
||||
# convert an rgb colour string from the form "#rrggbb" to "#rrggbbff"
|
||||
rgbToRgba = rgb: let
|
||||
hex = builtins.replaceStrings [ "#" ] [ "" ] rgb;
|
||||
r = builtins.substring 0 2 hex;
|
||||
g = builtins.substring 2 2 hex;
|
||||
b = builtins.substring 4 2 hex;
|
||||
in "#${r}${g}${b}ff";
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue