first commit
This commit is contained in:
167
configuration.nix
Normal file
167
configuration.nix
Normal file
@ -0,0 +1,167 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
||||
in
|
||||
{
|
||||
imports =
|
||||
[
|
||||
(import "${home-manager}/nixos")
|
||||
./hardware-configuration.nix
|
||||
./modules/nix/firefox.nix
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
|
||||
#boot.loader = {
|
||||
# grub = {
|
||||
# enable = true;
|
||||
# useOSProber = true;
|
||||
# device = "nodev";
|
||||
# efiSupport = true;
|
||||
# };
|
||||
#};
|
||||
|
||||
networking.hostName = "poggers";
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
time.timeZone = "Europe/Berlin";
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
useXkbConfig = true;
|
||||
};
|
||||
|
||||
services = {
|
||||
xserver = {
|
||||
enable = true;
|
||||
displayManager.startx.enable = true;
|
||||
windowManager.i3.enable = true;
|
||||
};
|
||||
pipewire = {
|
||||
enable = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
mullvad-vpn = {
|
||||
enable = true;
|
||||
};
|
||||
sdrplayApi = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
hardware = {
|
||||
bluetooth = {
|
||||
enable = true;
|
||||
};
|
||||
opengl = {
|
||||
enable = true;
|
||||
};
|
||||
rtl-sdr = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
nix-ld.enable = true;
|
||||
};
|
||||
|
||||
virtualisation = {
|
||||
docker = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
users.users.fabian = {
|
||||
isNormalUser = true;
|
||||
initialPassword = "1601";
|
||||
extraGroups = [ "wheel" "docker" "audio" "video" "dialout" "plugdev" ];
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
# sys
|
||||
unzip
|
||||
yt-dlp
|
||||
inetutils
|
||||
git
|
||||
wget
|
||||
curl
|
||||
dosfstools
|
||||
ntfs3g
|
||||
|
||||
# cli
|
||||
neofetch
|
||||
fastfetch
|
||||
onefetch
|
||||
neovim
|
||||
vim
|
||||
weechat
|
||||
ranger
|
||||
eza
|
||||
fzf
|
||||
|
||||
# dev
|
||||
rustup
|
||||
python3
|
||||
nodejs
|
||||
gccgo14
|
||||
go
|
||||
|
||||
# radio
|
||||
sdrplay
|
||||
sdrpp
|
||||
hackrf
|
||||
rtl-sdr
|
||||
gqrx
|
||||
noaa-apt
|
||||
rtl_433
|
||||
rtl-ais
|
||||
|
||||
# misc
|
||||
cava
|
||||
mumble
|
||||
discord
|
||||
|
||||
# hardware & shit
|
||||
libplist
|
||||
libimobiledevice
|
||||
usbmuxd
|
||||
pulseaudio
|
||||
qbittorrent
|
||||
|
||||
];
|
||||
|
||||
networking.firewall.allowedTCPPorts = [ 80 1337 8080 ];
|
||||
networking.firewall.enable = false;
|
||||
|
||||
security = {
|
||||
doas = {
|
||||
enable = true;
|
||||
extraRules = [{
|
||||
users = [ "fabian" ];
|
||||
noPass = true;
|
||||
keepEnv = true;
|
||||
}];
|
||||
};
|
||||
};
|
||||
|
||||
fonts.fontconfig.enable = true;
|
||||
fonts.fontDir.enable = true;
|
||||
fonts.packages = with pkgs; [
|
||||
noto-fonts
|
||||
noto-fonts-emoji
|
||||
liberation_ttf
|
||||
fira-code
|
||||
fira-code-symbols
|
||||
fantasque-sans-mono
|
||||
mplus-outline-fonts.githubRelease
|
||||
dina-font
|
||||
proggyfonts
|
||||
nerdfonts
|
||||
];
|
||||
|
||||
system.stateVersion = "unstable";
|
||||
|
||||
home-manager.users.fabian = import ./modules/home.nix;
|
||||
}
|
||||
|
26
flake.lock
generated
Normal file
26
flake.lock
generated
Normal file
@ -0,0 +1,26 @@
|
||||
{
|
||||
"nodes": {
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1730785428,
|
||||
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "nixpkgs",
|
||||
"ref": "nixos-unstable",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
19
flake.nix
Normal file
19
flake.nix
Normal file
@ -0,0 +1,19 @@
|
||||
{
|
||||
description = "My first flake!";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "nixpkgs/nixos-unstable";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, ... }:
|
||||
let
|
||||
lib = nixpkgs.lib;
|
||||
in {
|
||||
nixosConfigurations = {
|
||||
default = lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = [ ./configuration.nix ];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
40
hardware-configuration.nix
Normal file
40
hardware-configuration.nix
Normal file
@ -0,0 +1,40 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-label/NIXROOT";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-label/ESP";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wwp0s20f0u3i12.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
29
modules/home.nix
Normal file
29
modules/home.nix
Normal file
@ -0,0 +1,29 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports =
|
||||
[
|
||||
./nix/sway.nix
|
||||
./nix/user.nix
|
||||
];
|
||||
|
||||
home.enableNixpkgsReleaseCheck = false;
|
||||
home.stateVersion = "24.05";
|
||||
|
||||
home.packages = with pkgs; [
|
||||
waybar
|
||||
|
||||
];
|
||||
|
||||
home.file = {
|
||||
# WEZTERM
|
||||
".config/wezterm/wezterm.lua".source = ./raw/wezterm/wezterm.lua;
|
||||
# WAYBAR
|
||||
".config/waybar/style.css".source = ./raw/waybar/style.css;
|
||||
".config/waybar/config".source = ./raw/waybar/config;
|
||||
# ROFI
|
||||
".config/rofi/config.rasi".source = ./raw/rofi/config.rasi;
|
||||
# WP
|
||||
".wp/temple.png".source = ./raw/wp/temple.png;
|
||||
".wp/skull_purple.png".source = ./raw/wp/skull_purple.png;
|
||||
};
|
||||
}
|
66
modules/nix/firefox.nix
Normal file
66
modules/nix/firefox.nix
Normal file
@ -0,0 +1,66 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
let
|
||||
lock-false = {
|
||||
Value = false;
|
||||
Status = "locked";
|
||||
};
|
||||
lock-true = {
|
||||
Value = true;
|
||||
Status = "locked";
|
||||
};
|
||||
in
|
||||
{
|
||||
programs = {
|
||||
firefox = {
|
||||
enable = true;
|
||||
languagePacks = [ "en-US" ];
|
||||
policies = {
|
||||
DisableTelemetry = true;
|
||||
DisableFirefoxStudies = true;
|
||||
EnableTrackingProtection = {
|
||||
Value= true;
|
||||
Locked = true;
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
};
|
||||
DisablePocket = true;
|
||||
DisableFirefoxAccounts = true;
|
||||
DisableAccounts = true;
|
||||
DisableFirefoxScreenshots = true;
|
||||
OverrideFirstRunPage = "";
|
||||
OverridePostUpdatePage = "";
|
||||
DontCheckDefaultBrowser = true;
|
||||
DisplayBookmarksToolbar = "newtab";
|
||||
DisplayMenuBar = "default-off";
|
||||
SearchBar = "unified";
|
||||
ExtensionSettings = {
|
||||
"uBlock0@raymondhill.net" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
};
|
||||
};
|
||||
preferences = {
|
||||
"browser.contentblocking.category" = true;
|
||||
"extensions.pocket.enabled" = false;
|
||||
"extensions.screenshots.disabled" = true;
|
||||
"browser.topsites.contile.enabled" = false;
|
||||
"browser.formfill.enable" = false;
|
||||
"browser.search.suggest.enabled" = false;
|
||||
"browser.search.suggest.enabled.private" = false;
|
||||
"browser.urlbar.suggest.searches" = false;
|
||||
"browser.urlbar.showSearchSuggestionsFirst" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.snippets" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includePocket" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = false;
|
||||
"browser.newtabpage.activity-stream.showSponsored" = false;
|
||||
"browser.newtabpage.activity-stream.system.showSponsored" = false;
|
||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
109
modules/nix/sway.nix
Normal file
109
modules/nix/sway.nix
Normal file
@ -0,0 +1,109 @@
|
||||
{config, pkgs, ... }:
|
||||
{
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
xwayland = true;
|
||||
package = pkgs.swayfx-unwrapped;
|
||||
wrapperFeatures.gtk = true;
|
||||
checkConfig = false;
|
||||
extraSessionCommands = ''
|
||||
'';
|
||||
|
||||
config = rec {
|
||||
modifier = "Mod4";
|
||||
terminal = "${pkgs.wezterm}/bin/wezterm";
|
||||
menu = "${pkgs.rofi}/bin/rofi -show drun -c .config/rofi/config.rasi";
|
||||
startup = [
|
||||
{command = "${pkgs.swaybg}/bin/swaybg -i $HOME/.wp/skull_purple.png";}
|
||||
];
|
||||
bars = [{ command = "waybar"; }];
|
||||
gaps = {
|
||||
outer = 5;
|
||||
inner = 10;
|
||||
};
|
||||
|
||||
window = {
|
||||
border = 0;
|
||||
};
|
||||
|
||||
keybindings = {
|
||||
# IMPORTANT STUFF #
|
||||
"${modifier}+Return" = "exec ${terminal}";
|
||||
"${modifier}+F" = "exec firefox";
|
||||
"${modifier}+space" = "exec ${menu}";
|
||||
"${modifier}+D" = "exec discord";
|
||||
"${modifier}+C" = "exec code";
|
||||
"${modifier}+Q" = "kill";
|
||||
"${modifier}+Shift+R" = "reload";
|
||||
"${modifier}+Shift+S" = "grim -g '$(slurp)'";
|
||||
# WINDOW STUFF #
|
||||
"${modifier}+Shift+space" = "floating toggle";
|
||||
"${modifier}+Shift+F" = "fullscreen toggle";
|
||||
"${modifier}+Left" = "focus left";
|
||||
"${modifier}+Down" = "focus down";
|
||||
"${modifier}+Up" = "focus up";
|
||||
"${modifier}+Right" = "focus right";
|
||||
|
||||
"${modifier}+Ctrl+Right" = "resize shrink width 3 px or 3 ppt";
|
||||
"${modifier}+Ctrl+Down" = "resize grow height 3 px or 3 ppt";
|
||||
"${modifier}+Ctrl+Up" = "resize shrink height 3 px or 3 ppt";
|
||||
"${modifier}+Ctrl+Left" = "resize grow width 3 px or 3 ppt";
|
||||
|
||||
"${modifier}+Shift+Left" = "move left";
|
||||
"${modifier}+Shift+Down" = "move down";
|
||||
"${modifier}+Shift+Up" = "move up";
|
||||
"${modifier}+Shift+Right" = "move right";
|
||||
|
||||
# WORKSPACES #
|
||||
"${modifier}+1" = "workspace number 1";
|
||||
"${modifier}+2" = "workspace number 2";
|
||||
"${modifier}+3" = "workspace number 3";
|
||||
"${modifier}+4" = "workspace number 4";
|
||||
"${modifier}+5" = "workspace number 5";
|
||||
"${modifier}+6" = "workspace number 6";
|
||||
"${modifier}+7" = "workspace number 7";
|
||||
"${modifier}+8" = "workspace number 8";
|
||||
"${modifier}+9" = "workspace number 9";
|
||||
|
||||
# MOVE WINDOW TO OTHER WS #
|
||||
"${modifier}+Shift+1" = "move container to workspace number 1";
|
||||
"${modifier}+Shift+2" = "move container to workspace number 2";
|
||||
"${modifier}+Shift+3" = "move container to workspace number 3";
|
||||
"${modifier}+Shift+4" = "move container to workspace number 4";
|
||||
"${modifier}+Shift+5" = "move container to workspace number 5";
|
||||
"${modifier}+Shift+6" = "move container to workspace number 6";
|
||||
"${modifier}+Shift+7" = "move container to workspace number 7";
|
||||
"${modifier}+Shift+8" = "move container to workspace number 8";
|
||||
"${modifier}+Shift+9" = "move container to workspace number 9";
|
||||
|
||||
# Audio
|
||||
"XF86AudioRaiseVolume" = "exec pactl set-sink-volume @DEFAULT_SINK@ +10%";
|
||||
"XF86AudioLowerVolume" = "exec pactl set-sink-volume @DEFAULT_SINK@ -10%";
|
||||
"XF86AudioMute" = "exec set-volume toggle-mute";
|
||||
"XF86AudioStop" = "exec ${pkgs.playerctl}/bin/playerctl stop";
|
||||
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
|
||||
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
|
||||
"XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
|
||||
|
||||
"XF86MonBrightnessDown" = "exec brightnessctl set 15%-";
|
||||
"XF86MonBrightnessUp" = "exec brightnessctl set +15%";
|
||||
};
|
||||
};
|
||||
|
||||
extraConfig = ''
|
||||
shadows enable
|
||||
corner_radius 12
|
||||
blur_radius 7
|
||||
blur_passes 4
|
||||
default_dim_inactive 0.2
|
||||
|
||||
for_window [app_id="wezterm"] blur enable
|
||||
for_window [app_id="code"] blur enable
|
||||
for_window [app_id="rofi"] blur enable
|
||||
|
||||
default_border pixel 0px
|
||||
default_floating_border none
|
||||
titlebar_border_thickness 0
|
||||
'';
|
||||
};
|
||||
}
|
19
modules/nix/user.nix
Normal file
19
modules/nix/user.nix
Normal file
@ -0,0 +1,19 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs = {
|
||||
bash = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
bashrcExtra = ''
|
||||
PS1="\[\e[35m\][\u@\h:\w] % \[\e[0m\]"
|
||||
eval "$(${pkgs.fzf}/bin/fzf --bash)"
|
||||
alias rm="rm -rv"
|
||||
alias mv="mv -v"
|
||||
alias ls="${pkgs.eza}/bin/eza -l --icons --absolute"
|
||||
alias mkdir="mkdir -pv"
|
||||
alias http="python3 -m http.server 1337"
|
||||
alias update="doas nixos-rebuild switch"
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
76
modules/raw/rofi/config.rasi
Executable file
76
modules/raw/rofi/config.rasi
Executable file
@ -0,0 +1,76 @@
|
||||
configuration {
|
||||
display-drun: "Applications:";
|
||||
drun-display-format: "{icon} {name}";
|
||||
font: "JetBrainsMono Nerd Font Medium 10";
|
||||
show-icons: true;
|
||||
modi: "drun";
|
||||
}
|
||||
|
||||
@theme "/dev/null"
|
||||
|
||||
* {
|
||||
|
||||
opacity: 0.5;
|
||||
color0: #39305320;
|
||||
color1: #494d6420;
|
||||
color3: #d8dee9;
|
||||
color4: #7b68ee;
|
||||
color5: #cbe3e7;
|
||||
|
||||
|
||||
background-color: transparent;
|
||||
text-color: @color3;
|
||||
accent-color: @color5;
|
||||
|
||||
margin: 0px;
|
||||
border: 0px;
|
||||
padding: 0px;
|
||||
spacing: 0px;
|
||||
}
|
||||
|
||||
window {
|
||||
background-color: @color0;
|
||||
border-color: @accent-color;
|
||||
|
||||
width: 50%;
|
||||
border: 2px;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
padding: 10px 12px;
|
||||
spacing: 12px;
|
||||
children: [ prompt, entry ];
|
||||
}
|
||||
|
||||
prompt, entry, element-text, element-icon {
|
||||
vertical-align: 0.5;
|
||||
}
|
||||
|
||||
prompt {
|
||||
text-color: @accent-color;
|
||||
enabled: true;
|
||||
text-color: @color4;
|
||||
}
|
||||
|
||||
listview {
|
||||
lines: 8;
|
||||
columns: 2;
|
||||
|
||||
}
|
||||
|
||||
element {
|
||||
padding: 8px;
|
||||
spacing: 8px;
|
||||
}
|
||||
|
||||
element selected {
|
||||
text-color: @color4;
|
||||
}
|
||||
|
||||
element-icon {
|
||||
size: 20;
|
||||
}
|
||||
|
||||
element-text {
|
||||
text-color: inherit;
|
||||
}
|
189
modules/raw/waybar/config
Executable file
189
modules/raw/waybar/config
Executable file
@ -0,0 +1,189 @@
|
||||
[
|
||||
{
|
||||
"battery": {
|
||||
"format": "{icon} {capacity}%",
|
||||
"format-alt": "{icon} {time}",
|
||||
"format-charging": " {capacity}%",
|
||||
"format-icons": [
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
""
|
||||
],
|
||||
"format-plugged": " {capacity}% ",
|
||||
"states": {
|
||||
"critical": 15,
|
||||
"good": 95,
|
||||
"warning": 30
|
||||
}
|
||||
},
|
||||
"cava#left": {
|
||||
"autosens": 1,
|
||||
"bar_delimiter": 0,
|
||||
"bars": 18,
|
||||
"format-icons": [
|
||||
"<span foreground='#cba6f7'>▁</span>",
|
||||
"<span foreground='#cba6f7'>▂</span>",
|
||||
"<span foreground='#cba6f7'>▃</span>",
|
||||
"<span foreground='#cba6f7'>▄</span>",
|
||||
"<span foreground='#89b4fa'>▅</span>",
|
||||
"<span foreground='#89b4fa'>▆</span>",
|
||||
"<span foreground='#89b4fa'>▇</span>",
|
||||
"<span foreground='#89b4fa'>█</span>"
|
||||
],
|
||||
"framerate": 60,
|
||||
"higher_cutoff_freq": 10000,
|
||||
"input_delay": 2,
|
||||
"lower_cutoff_freq": 50,
|
||||
"method": "pulse",
|
||||
"monstercat": false,
|
||||
"reverse": false,
|
||||
"source": "auto",
|
||||
"stereo": true,
|
||||
"waves": false
|
||||
},
|
||||
"cava#right": {
|
||||
"autosens": 1,
|
||||
"bar_delimiter": 0,
|
||||
"bars": 18,
|
||||
"format-icons": [
|
||||
"<span foreground='#cba6f7'>▁</span>",
|
||||
"<span foreground='#cba6f7'>▂</span>",
|
||||
"<span foreground='#cba6f7'>▃</span>",
|
||||
"<span foreground='#cba6f7'>▄</span>",
|
||||
"<span foreground='#89b4fa'>▅</span>",
|
||||
"<span foreground='#89b4fa'>▆</span>",
|
||||
"<span foreground='#89b4fa'>▇</span>",
|
||||
"<span foreground='#89b4fa'>█</span>"
|
||||
],
|
||||
"framerate": 60,
|
||||
"higher_cutoff_freq": 10000,
|
||||
"input_delay": 2,
|
||||
"lower_cutoff_freq": 50,
|
||||
"method": "pulse",
|
||||
"monstercat": false,
|
||||
"reverse": false,
|
||||
"source": "auto",
|
||||
"stereo": true,
|
||||
"waves": false
|
||||
},
|
||||
"clock": {
|
||||
"format": " {:%a, %d %b, %I:%M %p}",
|
||||
"format-alt": " {:%d/%m}",
|
||||
"tooltip": "true",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"
|
||||
},
|
||||
"cpu": {
|
||||
"format": " {usage}%",
|
||||
"format-alt": " {avg_frequency} GHz",
|
||||
"interval": 5
|
||||
},
|
||||
"custom/launcher": {
|
||||
"format": "",
|
||||
"tooltip": "false"
|
||||
},
|
||||
"custom/playerctl#backward": {
|
||||
"format": " ",
|
||||
"on-click": "playerctl previous",
|
||||
"on-scroll-down": "playerctl volume .05-",
|
||||
"on-scroll-up": "playerctl volume .05+"
|
||||
},
|
||||
"custom/playerctl#foward": {
|
||||
"format": " ",
|
||||
"on-click": "playerctl next",
|
||||
"on-scroll-down": "playerctl volume .05-",
|
||||
"on-scroll-up": "playerctl volume .05+"
|
||||
},
|
||||
"custom/playerctl#play": {
|
||||
"exec": "playerctl -a metadata --format '{\"text\": \"{{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F",
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"Paused": "<span> </span>",
|
||||
"Playing": "<span> </span>",
|
||||
"Stopped": "<span> </span>"
|
||||
},
|
||||
"on-click": "playerctl play-pause",
|
||||
"on-scroll-down": "playerctl volume .05-",
|
||||
"on-scroll-up": "playerctl volume .05+",
|
||||
"return-type": "json"
|
||||
},
|
||||
"custom/playerlabel": {
|
||||
"exec": "playerctl -a metadata --format '{\"text\": \"{{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F",
|
||||
"format": "<span> {} </span>",
|
||||
"max-length": 40,
|
||||
"on-click": "",
|
||||
"return-type": "json"
|
||||
},
|
||||
"custom/randwall": {
|
||||
"format": ""
|
||||
},
|
||||
"height": 35,
|
||||
"layer": "top",
|
||||
"margin-bottom": 0,
|
||||
"margin-left": 0,
|
||||
"margin-right": 0,
|
||||
"margin-top": 0,
|
||||
"memory": {
|
||||
"format": " {}%",
|
||||
"format-alt": " {used}/{total} GiB",
|
||||
"interval": 5
|
||||
},
|
||||
"modules-center": [
|
||||
"custom/playerlabel",
|
||||
],
|
||||
"modules-left": [
|
||||
"cava#left",
|
||||
"custom/playerctl#backward",
|
||||
"custom/playerctl#play",
|
||||
"custom/playerctl#foward",
|
||||
],
|
||||
"modules-right": [
|
||||
"tray",
|
||||
"battery",
|
||||
"pulseaudio",
|
||||
"network",
|
||||
],
|
||||
|
||||
"network": {
|
||||
"format-disconnected": " 0% ",
|
||||
"format-ethernet": " 100% ",
|
||||
"format-linked": "{ifname} (No IP)",
|
||||
"format-wifi": " {signalStrength}%",
|
||||
"tooltip-format": "Connected to {essid} {ifname} via {gwaddr}"
|
||||
},
|
||||
"position": "top",
|
||||
"pulseaudio": {
|
||||
"format": "{icon} {volume}%",
|
||||
"format-icons": {
|
||||
"default": [
|
||||
"",
|
||||
"",
|
||||
""
|
||||
]
|
||||
},
|
||||
"format-muted": "",
|
||||
"on-click": "pavucontrol",
|
||||
"scroll-step": 5
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 20,
|
||||
"spacing": 8
|
||||
},
|
||||
"wlr/workspaces": {
|
||||
"active-only": false,
|
||||
"all-outputs": false,
|
||||
"disable-scroll": false,
|
||||
"format": "{name}",
|
||||
"format-icons": {
|
||||
"active": "",
|
||||
"default": "",
|
||||
"sort-by-number": true,
|
||||
"urgent": ""
|
||||
},
|
||||
"on-click": "activate",
|
||||
"on-scroll-down": "hyprctl dispatch workspace e+1",
|
||||
"on-scroll-up": "hyprctl dispatch workspace e-1"
|
||||
}
|
||||
}
|
||||
]
|
134
modules/raw/waybar/style.css
Normal file
134
modules/raw/waybar/style.css
Normal file
@ -0,0 +1,134 @@
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0px;
|
||||
font-family: RobotoMono Nerd Font;
|
||||
font-size: 14px;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
/* background: rgba(17,17,27,1); */
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
#cava.left, #cava.right {
|
||||
/* background: #25253a; */
|
||||
|
||||
/*background: #25253a;*/
|
||||
background: #010101;
|
||||
margin: 5px;
|
||||
padding: 8px 16px;
|
||||
color: #cba6f7;
|
||||
}
|
||||
#cava.left {
|
||||
border-radius: 24px 24px 24px 24px;
|
||||
}
|
||||
#cava.right {
|
||||
border-radius: 10px 24px 10px 24px;
|
||||
}
|
||||
#workspaces {
|
||||
background: #11111b;
|
||||
margin: 5px 5px;
|
||||
padding: 8px 5px;
|
||||
border-radius: 16px;
|
||||
color: #cba6f7
|
||||
}
|
||||
#workspaces button {
|
||||
padding: 0px 5px;
|
||||
margin: 0px 3px;
|
||||
border-radius: 16px;
|
||||
color: transparent;
|
||||
background: rgba(17,17,27,1);
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
background-color: #89b4fa;
|
||||
color: #11111B;
|
||||
border-radius: 16px;
|
||||
min-width: 50px;
|
||||
background-size: 400% 400%;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background-color: #f5f5f5;
|
||||
color: #11111B;
|
||||
border-radius: 16px;
|
||||
min-width: 50px;
|
||||
background-size: 400% 400%;
|
||||
}
|
||||
|
||||
#tray, #pulseaudio, #network, #battery,
|
||||
#custom-playerctl.backward, #custom-playerctl.play, #custom-playerctl.foward{
|
||||
background: #010101;
|
||||
font-weight: bold;
|
||||
margin: 5px 0px;
|
||||
opacity: 1;
|
||||
}
|
||||
#tray, #pulseaudio, #network, #battery{
|
||||
color: #f5f5f5;
|
||||
border-radius: 24px 24px 24px 24px;
|
||||
padding: 0 20px;
|
||||
margin-left: 7px;
|
||||
}
|
||||
#clock {
|
||||
color: #f5f5f5;
|
||||
background: #010101;
|
||||
border-radius: 0px 0px 0px 40px;
|
||||
padding: 10px 10px 15px 25px;
|
||||
margin-left: 7px;
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
}
|
||||
#custom-launcher {
|
||||
color: #89b4fa;
|
||||
background: #010101;
|
||||
border-radius: 0px 0px 40px 0px;
|
||||
margin: 0px;
|
||||
padding: 0px 35px 0px 15px;
|
||||
font-size: 28px;
|
||||
}
|
||||
|
||||
#custom-playerctl.backward, #custom-playerctl.play, #custom-playerctl.foward {
|
||||
background: #010101;
|
||||
font-size: 22px;
|
||||
}
|
||||
#custom-playerctl.backward:hover, #custom-playerctl.play:hover, #custom-playerctl.foward:hover{
|
||||
color: #f5f5f5;
|
||||
}
|
||||
#custom-playerctl.backward {
|
||||
color: #cba6f7;
|
||||
border-radius: 24px 0px 0px 24px;
|
||||
padding-left: 16px;
|
||||
margin-left: 7px;
|
||||
}
|
||||
#custom-playerctl.play {
|
||||
color: #89b4fa;
|
||||
padding: 0 5px;
|
||||
}
|
||||
#custom-playerctl.foward {
|
||||
color: #cba6f7;
|
||||
border-radius: 0px 24px 24px 0px;
|
||||
padding-right: 12px;
|
||||
margin-right: 7px
|
||||
}
|
||||
#custom-playerlabel {
|
||||
background: #010101;
|
||||
color: #f5f5f5;
|
||||
padding: 0 20px;
|
||||
border-radius: 24px 24px 24px 24px;
|
||||
margin: 5px 0;
|
||||
font-weight: bold;
|
||||
}
|
||||
#window{
|
||||
/*background: #25253a; */
|
||||
padding-left: 15px;
|
||||
padding-right: 15px;
|
||||
border-radius: 16px;
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
opacity: 0.1;
|
||||
}
|
139
modules/raw/wezterm/wezterm.lua
Executable file
139
modules/raw/wezterm/wezterm.lua
Executable file
@ -0,0 +1,139 @@
|
||||
local wezterm = require 'wezterm'
|
||||
local act = wezterm.action
|
||||
|
||||
mb = {
|
||||
}
|
||||
|
||||
for i = 1,99,1
|
||||
do
|
||||
table.insert(mb,
|
||||
{
|
||||
event = { Down = { streak = i, button = 'Middle' } },
|
||||
mods = 'NONE',
|
||||
action = act.PasteFrom("PrimarySelection")
|
||||
})
|
||||
table.insert(mb, {
|
||||
event = { Down = { streak = i, button = 'Right' } },
|
||||
mods = 'NONE',
|
||||
action = wezterm.action_callback(function(window, pane)
|
||||
local has_selection = window:get_selection_text_for_pane(pane) ~= ''
|
||||
if has_selection then
|
||||
window:perform_action(
|
||||
act.CopyTo 'ClipboardAndPrimarySelection',
|
||||
pane
|
||||
)
|
||||
|
||||
window:perform_action(act.ClearSelection, pane)
|
||||
else
|
||||
window:perform_action(act.PasteFrom("PrimarySelection"), pane)
|
||||
end
|
||||
end),
|
||||
})
|
||||
end
|
||||
|
||||
return {
|
||||
disable_default_key_bindings = true,
|
||||
pane_focus_follows_mouse = false,
|
||||
mouse_bindings = mb,
|
||||
-- leader = { key = 'VoidSymbol', timeout_milliseconds = 1000 },
|
||||
keys = {
|
||||
-- {
|
||||
-- key = 'c',
|
||||
-- mods = 'CTRL|SHIFT',
|
||||
-- action = wezterm.action.SpawnCommandInNewTab {
|
||||
-- args = { 'zsh' },
|
||||
-- cwd = '~'
|
||||
-- },
|
||||
-- },
|
||||
{
|
||||
key = 'v',
|
||||
mods = 'CTRL|SHIFT',
|
||||
action = act.PasteFrom("Clipboard"),
|
||||
},
|
||||
{
|
||||
key = 'c',
|
||||
mods = 'CTRL|SHIFT',
|
||||
action = act.CopyTo("Clipboard"),
|
||||
},
|
||||
{
|
||||
key = 't',
|
||||
mods = 'CTRL|SHIFT',
|
||||
action = wezterm.action.SpawnCommandInNewTab {
|
||||
args = { 'fish' },
|
||||
cwd = '~'
|
||||
},
|
||||
},
|
||||
{
|
||||
key = 'f',
|
||||
mods = 'CTRL',
|
||||
action = wezterm.action.TogglePaneZoomState,
|
||||
},
|
||||
-- {
|
||||
-- key = 'p',
|
||||
-- mods = 'LEADER',
|
||||
-- action = act.ActivateTabRelative(-1),
|
||||
-- },
|
||||
-- {
|
||||
-- key = 'n',
|
||||
-- mods = 'LEADER',
|
||||
-- action = act.ActivateTabRelative(1),
|
||||
-- },
|
||||
|
||||
},
|
||||
window_padding = {
|
||||
left = 2,
|
||||
right = 2,
|
||||
top = 0,
|
||||
bottom = 0,
|
||||
},
|
||||
window_frame = {
|
||||
border_left_width = '0.5cell',
|
||||
border_right_width = '0.5cell',
|
||||
},
|
||||
window_background_opacity = 0.50,
|
||||
window_decorations = "NONE",
|
||||
tab_bar_at_bottom = true,
|
||||
hide_tab_bar_if_only_one_tab = true,
|
||||
warn_about_missing_glyphs = false,
|
||||
use_fancy_tab_bar = true,
|
||||
scrollback_lines = 999999,
|
||||
enable_scroll_bar = false,
|
||||
adjust_window_size_when_changing_font_size=false,
|
||||
-- font = wezterm.font_with_fallback({"Hack", "Twemoji"}),
|
||||
font_size = 15,
|
||||
force_reverse_video_cursor = false,
|
||||
colors = {
|
||||
ansi = {
|
||||
'#1d1f21',
|
||||
'#cc6666',
|
||||
'#b5bd68',
|
||||
'#f0c674',
|
||||
'#81a2be',
|
||||
'#b294bb',
|
||||
'#8abeb7',
|
||||
'#c5c8c6'
|
||||
},
|
||||
background = '#010101',
|
||||
brights = {
|
||||
'#969896',
|
||||
'#cc6666',
|
||||
'#b5bd68',
|
||||
'#f0c674',
|
||||
'#81a2be',
|
||||
'#b294bb',
|
||||
'#8abeb7',
|
||||
'#ffffff'
|
||||
},
|
||||
foreground = '#c5c8c6',
|
||||
selection_bg = '#373b41',
|
||||
selection_fg = '#c5c8c6',
|
||||
cursor_bg = '#c5c8c6',
|
||||
cursor_border = '#c5c8c6',
|
||||
cursor_fg = '#1d1f21',
|
||||
},
|
||||
-- color_scheme = 'Catppuccin Macchiato',
|
||||
-- default_cursor_style = 'BlinkingBlock',
|
||||
-- cursor_blink_rate = 500,
|
||||
-- animation_fps = 100,
|
||||
-- front_end = "Software",
|
||||
}
|
BIN
modules/raw/wp/skull_purple.png
Normal file
BIN
modules/raw/wp/skull_purple.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.2 MiB |
BIN
modules/raw/wp/temple.png
Normal file
BIN
modules/raw/wp/temple.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 759 KiB |
Reference in New Issue
Block a user