Compare commits
No commits in common. "b2326267ee07c8b848e5df2e661aabad0d1f7bf9" and "f381da581cd0b13efd09e65ae0e2c994d8ee3a00" have entirely different histories.
b2326267ee
...
f381da581c
7 changed files with 258 additions and 11 deletions
|
@ -1,6 +0,0 @@
|
||||||
_: {
|
|
||||||
programs.ags = {
|
|
||||||
enable = true;
|
|
||||||
configDir = ./js;
|
|
||||||
};
|
|
||||||
}
|
|
94
home/ironbar/default.nix
Normal file
94
home/ironbar/default.nix
Normal file
|
@ -0,0 +1,94 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
compileSCSS = name: source: "${pkgs.runCommandLocal name {} ''
|
||||||
|
mkdir -p $out
|
||||||
|
${lib.getExe pkgs.sassc} -t expanded '${source}' > $out/${name}.css
|
||||||
|
''}/${name}.css";
|
||||||
|
in {
|
||||||
|
programs.ironbar = {
|
||||||
|
enable = true;
|
||||||
|
systemd = true;
|
||||||
|
style = builtins.readFile (compileSCSS "style" ./style.scss);
|
||||||
|
config = let
|
||||||
|
nixlogo = rec {
|
||||||
|
type = "custom";
|
||||||
|
name = "nixlogo";
|
||||||
|
class = name;
|
||||||
|
bar = [
|
||||||
|
{
|
||||||
|
type = "image";
|
||||||
|
src = "https://files.artturin.com/files/nixoscolorful.svg";
|
||||||
|
size = 24;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
music = {
|
||||||
|
type = "music";
|
||||||
|
player_type = "mpris";
|
||||||
|
format = "{title} - {artist}";
|
||||||
|
show_status_icon = false;
|
||||||
|
icons.play = "";
|
||||||
|
icons.pause = "";
|
||||||
|
cover_image_size = 256;
|
||||||
|
truncate = {
|
||||||
|
mode = "end";
|
||||||
|
max_length = 36;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
music_img = rec {
|
||||||
|
type = "custom";
|
||||||
|
name = "music-img";
|
||||||
|
class = name;
|
||||||
|
bar = [
|
||||||
|
{
|
||||||
|
type = "image";
|
||||||
|
class = name + "-img";
|
||||||
|
src = ''{{poll:2000:playerctl metadata mpris:artUrl}}'';
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
spacer = {
|
||||||
|
type = "label";
|
||||||
|
label = "|";
|
||||||
|
};
|
||||||
|
focused = {
|
||||||
|
type = "focused";
|
||||||
|
show_icon = true;
|
||||||
|
icon_size = 24;
|
||||||
|
truncate = {
|
||||||
|
mode = "end";
|
||||||
|
max_length = 24;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
uptime = rec {
|
||||||
|
type = "sys_info";
|
||||||
|
name = "uptime";
|
||||||
|
class = name;
|
||||||
|
format = [" {uptime}"];
|
||||||
|
};
|
||||||
|
sys-info = {
|
||||||
|
type = "sys_info";
|
||||||
|
format = [
|
||||||
|
"{cpu_percent}% "
|
||||||
|
"{memory_percent}% "
|
||||||
|
"{net_up:enp2s0} {net_down:enp2s0}"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
tray = {type = "tray";};
|
||||||
|
clock = {type = "clock";};
|
||||||
|
in {
|
||||||
|
monitors = {
|
||||||
|
"DP-2" = {
|
||||||
|
position = "top";
|
||||||
|
anchor_to_edges = true;
|
||||||
|
start = [nixlogo];
|
||||||
|
center = [music spacer focused spacer uptime];
|
||||||
|
end = [sys-info clock tray];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
150
home/ironbar/style.scss
Normal file
150
home/ironbar/style.scss
Normal file
|
@ -0,0 +1,150 @@
|
||||||
|
$rosewater: #f5e0dc;
|
||||||
|
$flamingo: #f2cdcd;
|
||||||
|
$pink: #f5c2e7;
|
||||||
|
$mauve: #cba6f7;
|
||||||
|
$red: #f38ba8;
|
||||||
|
$maroon: #eba0ac;
|
||||||
|
$peach: #fab387;
|
||||||
|
$yellow: #f9e2af;
|
||||||
|
$green: #a6e3a1;
|
||||||
|
$teal: #94e2d5;
|
||||||
|
$sky: #89dceb;
|
||||||
|
$sapphire: #74c7ec;
|
||||||
|
$blue: #89b4fa;
|
||||||
|
$lavender: #b4befe;
|
||||||
|
|
||||||
|
$text: #cdd6f4;
|
||||||
|
$subtext1: #bac2de;
|
||||||
|
$subtext0: #a6adc8;
|
||||||
|
$overlay2: #9399b2;
|
||||||
|
$overlay1: #7f849c;
|
||||||
|
$overlay0: #6c7086;
|
||||||
|
|
||||||
|
$surface2: #585b70;
|
||||||
|
$surface1: #45475a;
|
||||||
|
$surface0: #313244;
|
||||||
|
|
||||||
|
$base: #1e1e2e;
|
||||||
|
$mantle: #181825;
|
||||||
|
$crust: #11111b;
|
||||||
|
|
||||||
|
* {
|
||||||
|
all: unset;
|
||||||
|
font-family: jost;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
#bar {
|
||||||
|
padding-top: 0.6rem;
|
||||||
|
padding-left: 1.4rem;
|
||||||
|
padding-right: 1.4rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
#bar {
|
||||||
|
#start {
|
||||||
|
background-color: $base;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 2px solid $sapphire;
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#bar {
|
||||||
|
#center {
|
||||||
|
background-color: $base;
|
||||||
|
border-radius: 18px;
|
||||||
|
border: 2px solid $pink;
|
||||||
|
padding-left: 1rem;
|
||||||
|
padding-right: 1rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#bar {
|
||||||
|
#end {
|
||||||
|
background-color: $base;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 2px solid $sapphire;
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.sys-info {
|
||||||
|
padding: 0.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.clock {
|
||||||
|
padding-left: 0.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popup-clock {
|
||||||
|
.calendar {
|
||||||
|
background-color: $base;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 1px solid $sapphire;
|
||||||
|
padding-left: 0.2rem;
|
||||||
|
padding-right: 0.2rem;
|
||||||
|
.header {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.calendar:selected {
|
||||||
|
background-color: $overlay1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.music {
|
||||||
|
padding-right: 0.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popup-music {
|
||||||
|
background-color: $base;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 1px solid $pink;
|
||||||
|
padding-left: 0.2rem;
|
||||||
|
padding-right: 0.2rem;
|
||||||
|
.album-art {
|
||||||
|
padding: 1.2rem;
|
||||||
|
}
|
||||||
|
.title {
|
||||||
|
padding-top: 0.8rem;
|
||||||
|
}
|
||||||
|
.volume * {
|
||||||
|
border-radius: 0;
|
||||||
|
background-color: transparent;
|
||||||
|
color: $base;
|
||||||
|
}
|
||||||
|
.controls * {
|
||||||
|
border-radius: 0;
|
||||||
|
background-color: transparent;
|
||||||
|
color: $base;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.music-img {
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.focused {
|
||||||
|
padding-left: 0.8rem;
|
||||||
|
padding-right: 0.8rem;
|
||||||
|
}
|
||||||
|
.uptime {
|
||||||
|
padding-left: 0.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tray {
|
||||||
|
padding-left: 0.8rem;
|
||||||
|
.item {
|
||||||
|
padding: 0.3rem;
|
||||||
|
}
|
||||||
|
.popup {
|
||||||
|
background-color: $base;
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 1px solid $sapphire;
|
||||||
|
}
|
||||||
|
}
|
|
@ -20,25 +20,31 @@
|
||||||
host all all all trust
|
host all all all trust
|
||||||
'';
|
'';
|
||||||
ensureUsers = [
|
ensureUsers = [
|
||||||
|
{
|
||||||
|
name = "postgres";
|
||||||
|
ensurePermissions = {
|
||||||
|
"ALL TABLES IN SCHEMA public" = "ALL PRIVILEGES";
|
||||||
|
};
|
||||||
|
}
|
||||||
{
|
{
|
||||||
name = "hedgedoc";
|
name = "hedgedoc";
|
||||||
ensureDBOwnership = true;
|
ensurePermissions."DATABASE hedgedoc" = "ALL PRIVILEGES";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "forgejo";
|
name = "forgejo";
|
||||||
ensureDBOwnership = true;
|
ensurePermissions."DATABASE forgejo" = "ALL PRIVILEGES";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "grafana";
|
name = "grafana";
|
||||||
ensureDBOwnership = true;
|
ensurePermissions."DATABASE grafana" = "ALL PRIVILEGES";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "authelia";
|
name = "authelia";
|
||||||
ensureDBOwnership = true;
|
ensurePermissions."DATABASE authelia" = "ALL PRIVILEGES";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "vaultwarden";
|
name = "vaultwarden";
|
||||||
ensureDBOwnership = true;
|
ensurePermissions."DATABASE vaultwarden" = "ALL PRIVILEGES";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
ensureDatabases = [
|
ensureDatabases = [
|
||||||
|
|
|
@ -3,9 +3,11 @@ inputs: let
|
||||||
sopsModule = inputs.sops-nix.nixosModules.sops;
|
sopsModule = inputs.sops-nix.nixosModules.sops;
|
||||||
hmModule = inputs.home-manager.nixosModules.home-manager;
|
hmModule = inputs.home-manager.nixosModules.home-manager;
|
||||||
hyprlandModule = inputs.hyprland.homeManagerModules.default;
|
hyprlandModule = inputs.hyprland.homeManagerModules.default;
|
||||||
|
ironbarModule = inputs.ironbar.homeManagerModules.default;
|
||||||
nix-index-Module = inputs.nix-index-database.hmModules.nix-index;
|
nix-index-Module = inputs.nix-index-database.hmModules.nix-index;
|
||||||
anyrunModule = inputs.anyrun.homeManagerModules.default;
|
anyrunModule = inputs.anyrun.homeManagerModules.default;
|
||||||
agsModule = inputs.ags.homeManagerModules.default;
|
agsModule = inputs.ags.homeManagerModules.default;
|
||||||
|
stylixModule = inputs.stylix.homeManagerModules.stylix;
|
||||||
inherit (inputs.nixpkgs.lib) nixosSystem;
|
inherit (inputs.nixpkgs.lib) nixosSystem;
|
||||||
in {
|
in {
|
||||||
tsuki = nixosSystem {
|
tsuki = nixosSystem {
|
||||||
|
@ -24,6 +26,7 @@ in {
|
||||||
imports = [
|
imports = [
|
||||||
./tsuki/home.nix
|
./tsuki/home.nix
|
||||||
hyprlandModule
|
hyprlandModule
|
||||||
|
ironbarModule
|
||||||
nix-index-Module
|
nix-index-Module
|
||||||
anyrunModule
|
anyrunModule
|
||||||
agsModule
|
agsModule
|
||||||
|
|
Loading…
Reference in a new issue