added rofi
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
# your system. Help is available in the configuration.nix(5) man page
|
||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||
|
||||
{ config, pkgs, pkgs-unstable, inputs, ... }:
|
||||
{ config, pkgs, pkgs-unstable, inputs, configPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
@@ -232,6 +232,7 @@
|
||||
home-manager = {
|
||||
extraSpecialArgs = {
|
||||
inherit
|
||||
configPath
|
||||
inputs
|
||||
pkgs-unstable
|
||||
;
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
}@inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
configPath = "/etc/nixos";
|
||||
pkgs-unstable = import nixpkgs-unstable {
|
||||
system = system;
|
||||
config.allowUnfree = true;
|
||||
@@ -42,7 +43,7 @@
|
||||
{
|
||||
nixosConfigurations = {
|
||||
eva-01 = nixpkgs.lib.nixosSystem {
|
||||
specialArgs = {inherit inputs pkgs-unstable;};
|
||||
specialArgs = {inherit inputs pkgs-unstable configPath;};
|
||||
system = system;
|
||||
modules = [
|
||||
./eva-01/configuration.nix
|
||||
@@ -52,7 +53,7 @@
|
||||
};
|
||||
|
||||
eva-03 = nixpkgs.lib.nixosSystem {
|
||||
specialArgs = {inherit inputs pkgs-unstable;};
|
||||
specialArgs = {inherit inputs pkgs-unstable configPath;};
|
||||
system = system;
|
||||
modules = [
|
||||
./eva-03/configuration.nix
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
./ghostty.nix
|
||||
./ghostty/ghostty.nix
|
||||
./rofi/rofi.nix
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
@@ -10,6 +11,7 @@
|
||||
# # "Hello, world!" when run.
|
||||
# pkgs.hello
|
||||
bambu-studio
|
||||
blender
|
||||
brave
|
||||
jellyfin-media-player
|
||||
kdePackages.bluedevil
|
||||
@@ -18,6 +20,7 @@
|
||||
kdePackages.kdeconnect-kde
|
||||
kdePackages.oxygen-sounds
|
||||
kdePackages.partitionmanager
|
||||
ladybird
|
||||
libreoffice-still
|
||||
librewolf
|
||||
localsend
|
||||
|
||||
@@ -0,0 +1,278 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
configPath,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
programs.rofi = {
|
||||
enable = true;
|
||||
terminal = "ghostty";
|
||||
package = pkgs.rofi-wayland.override {
|
||||
plugins = [ pkgs.rofi-emoji-wayland ];
|
||||
};
|
||||
font = "JetBrainsMono Nerd Font 12";
|
||||
plugins = [
|
||||
pkgs.rofi-emoji-wayland
|
||||
pkgs.rofi-calc
|
||||
pkgs.rofi-games
|
||||
pkgs.rofi-file-browser
|
||||
];
|
||||
extraConfig = {
|
||||
modi = "drun,run,filebrowser,emoji";
|
||||
show-icons = true;
|
||||
display-drun = "Apps";
|
||||
display-run = "Run";
|
||||
display-filebrowser = "Files";
|
||||
drun-display-format = "{name}";
|
||||
hover-select = true;
|
||||
me-select-entry = "MouseSecondary";
|
||||
me-accept-entry = "MousePrimary";
|
||||
window-format = "{w} · {c} · {t}";
|
||||
dpi = 1;
|
||||
};
|
||||
theme =
|
||||
let
|
||||
inherit (config.lib.formats.rasi) mkLiteral;
|
||||
in
|
||||
{
|
||||
"*" = {
|
||||
active-background = mkLiteral "#101C2F";
|
||||
active-foreground = mkLiteral "#D6CBD5";
|
||||
normal-background = mkLiteral "#030508";
|
||||
normal-foreground = mkLiteral "#D6CBD5";
|
||||
urgent-background = mkLiteral "#2B7F48";
|
||||
urgent-foreground = mkLiteral "#D6CBD5";
|
||||
alternate-active-background = mkLiteral "#11606B";
|
||||
alternate-active-foreground = mkLiteral "#D6CBD5";
|
||||
alternate-normal-background = mkLiteral "#030508";
|
||||
alternate-normal-foreground = mkLiteral "#D6CBD5";
|
||||
alternate-urgent-background = mkLiteral "#030508";
|
||||
alternate-urgent-foreground = mkLiteral "#D6CBD5";
|
||||
selected-active-background = mkLiteral "#101C2F";
|
||||
selected-active-foreground = mkLiteral "#D6CBD5";
|
||||
selected-normal-background = mkLiteral "#BCADBB";
|
||||
selected-normal-foreground = mkLiteral "#D6CBD5";
|
||||
selected-urgent-background = mkLiteral "#2B7F48";
|
||||
selected-urgent-foreground = mkLiteral "#D6CBD5";
|
||||
background-color = mkLiteral "#030508";
|
||||
background = mkLiteral "rgba(32,32,32,0.7)";
|
||||
foreground = mkLiteral "#BCADBB";
|
||||
border-color = mkLiteral "#101C2F";
|
||||
|
||||
background-alt = mkLiteral "@selected-active-background";
|
||||
selected = mkLiteral "@selected-urgent-background";
|
||||
active = mkLiteral "@selected-normal-background";
|
||||
urgent = mkLiteral "@selected";
|
||||
text-selected = mkLiteral "@background";
|
||||
text-color = mkLiteral "@foreground";
|
||||
};
|
||||
|
||||
"window" = {
|
||||
enabled = true;
|
||||
fullscreen = false;
|
||||
transparency = mkLiteral "\"real\"";
|
||||
cursor = mkLiteral "\"default\"";
|
||||
spacing = 0;
|
||||
border = mkLiteral "4px 0px 4px 0px";
|
||||
border-radius = 30;
|
||||
location = mkLiteral "center";
|
||||
anchor = mkLiteral "center";
|
||||
width = mkLiteral "50%";
|
||||
background-color = mkLiteral "@background";
|
||||
};
|
||||
|
||||
"mainbox" = {
|
||||
padding = 15;
|
||||
enabled = true;
|
||||
orientation = mkLiteral "vertical";
|
||||
children = map mkLiteral [
|
||||
"inputbar"
|
||||
"listbox"
|
||||
];
|
||||
background-color = mkLiteral "transparent";
|
||||
};
|
||||
|
||||
"inputbar" = {
|
||||
enabled = true;
|
||||
padding = mkLiteral "10px 10px 100px 10px";
|
||||
margin = 10;
|
||||
background-color = mkLiteral "transparent";
|
||||
border-radius = 25;
|
||||
orientation = mkLiteral "horizontal";
|
||||
children = map mkLiteral [
|
||||
"entry"
|
||||
"dummy"
|
||||
"mode-switcher"
|
||||
];
|
||||
background-image = mkLiteral "url(\"${configPath}/assets/background.png\", width)";
|
||||
};
|
||||
|
||||
"entry" = {
|
||||
enabled = true;
|
||||
expand = false;
|
||||
width = mkLiteral "20%";
|
||||
padding = 10;
|
||||
border-radius = 12;
|
||||
background-color = mkLiteral "@selected";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
cursor = mkLiteral "text";
|
||||
placeholder = mkLiteral "\"🖥️ Search \"";
|
||||
placeholder-color = mkLiteral "inherit";
|
||||
};
|
||||
|
||||
"listbox" = {
|
||||
spacing = 10;
|
||||
padding = 10;
|
||||
background-color = mkLiteral "transparent";
|
||||
orientation = mkLiteral "vertical";
|
||||
children = map mkLiteral [
|
||||
"message"
|
||||
"listview"
|
||||
];
|
||||
};
|
||||
|
||||
"listview" = {
|
||||
enabled = true;
|
||||
columns = 2;
|
||||
lines = 6;
|
||||
cycle = true;
|
||||
dynamic = true;
|
||||
scrollbar = true;
|
||||
layout = mkLiteral "vertical";
|
||||
reverse = false;
|
||||
fixed-height = false;
|
||||
fixed-columns = true;
|
||||
spacing = 10;
|
||||
background-color = mkLiteral "transparent";
|
||||
border = 0;
|
||||
};
|
||||
|
||||
"dummy" = {
|
||||
expand = true;
|
||||
background-color = mkLiteral "transparent";
|
||||
};
|
||||
|
||||
"mode-switcher" = {
|
||||
enabled = true;
|
||||
spacing = 10;
|
||||
background-color = mkLiteral "transparent";
|
||||
};
|
||||
|
||||
"button" = {
|
||||
width = mkLiteral "5%";
|
||||
padding = 12;
|
||||
border-radius = 12;
|
||||
background-color = mkLiteral "@text-selected";
|
||||
text-color = mkLiteral "@text-color";
|
||||
cursor = mkLiteral "pointer";
|
||||
};
|
||||
|
||||
"button selected" = {
|
||||
background-color = mkLiteral "@selected";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
};
|
||||
|
||||
"scrollbar" = {
|
||||
width = 4;
|
||||
border = 0;
|
||||
handle-color = mkLiteral "@border-color";
|
||||
handle-width = 8;
|
||||
padding = 0;
|
||||
};
|
||||
|
||||
"element" = {
|
||||
enabled = true;
|
||||
spacing = 10;
|
||||
padding = 10;
|
||||
border-radius = 12;
|
||||
background-color = mkLiteral "transparent";
|
||||
cursor = mkLiteral "pointer";
|
||||
};
|
||||
|
||||
"element normal.normal" = {
|
||||
background-color = mkLiteral "inherit";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
|
||||
"element normal.urgent" = {
|
||||
background-color = mkLiteral "@urgent";
|
||||
text-color = mkLiteral "@foreground";
|
||||
};
|
||||
|
||||
"element normal.active" = {
|
||||
background-color = mkLiteral "@active";
|
||||
text-color = mkLiteral "@foreground";
|
||||
};
|
||||
|
||||
"element selected.normal" = {
|
||||
border = mkLiteral "1px 6px 1px 6px";
|
||||
border-radius = 16;
|
||||
border-color = mkLiteral "@selected";
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "@selected";
|
||||
};
|
||||
|
||||
"element selected.urgent" = {
|
||||
background-color = mkLiteral "@urgent";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
};
|
||||
|
||||
"element selected.active" = {
|
||||
background-color = mkLiteral "@urgent";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
};
|
||||
|
||||
"element alternate.normal" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
|
||||
"element alternate.urgent" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
|
||||
"element alternate.active" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
|
||||
"element-icon" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
cursor = mkLiteral "inherit";
|
||||
};
|
||||
|
||||
"element-text" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
cursor = mkLiteral "inherit";
|
||||
vertical-align = mkLiteral "0.5";
|
||||
horizontal-align = mkLiteral "0.0";
|
||||
};
|
||||
|
||||
"message" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
border = 0;
|
||||
};
|
||||
|
||||
"textbox" = {
|
||||
padding = 12;
|
||||
border-radius = 10;
|
||||
background-color = mkLiteral "@background-alt";
|
||||
text-color = mkLiteral "@background";
|
||||
vertical-align = mkLiteral "0.5";
|
||||
horizontal-align = mkLiteral "0.0";
|
||||
};
|
||||
|
||||
"error-message" = {
|
||||
padding = 12;
|
||||
border-radius = 20;
|
||||
background-color = mkLiteral "@background-alt";
|
||||
text-color = mkLiteral "@background";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user