This commit is contained in:
Lilith 2024-06-12 23:12:19 +02:00
parent 7a4828af0d
commit eddf7cecb8
Signed by: lilith
GPG key ID: 8712A0F317C37175
6 changed files with 78 additions and 10 deletions

View file

@ -1,4 +1,4 @@
import Bar from modules/bar
import {Bar} from './modules/bar.js'
App.config({
style: "./style.css",

View file

@ -1,7 +1,7 @@
{
pkgs, ...
pkgs, ags, ...
}: {
imports = [ inputs.ags.homeManagerModules.default ];
imports = [ ags.homeManagerModules.default ];
programs.ags = {
enable = true;
@ -14,6 +14,16 @@
gtksourceview
webkitgtk
accountsservice
pavucontrol
networkmanager
gtk3
wf-recorder
wl-clipboard
brightnessctl
fzf
fd
dart-sass
bun
];
};
}

View file

@ -6,7 +6,7 @@ const battery = await Service.import("battery")
const systemtray = await Service.import("systemtray")
const date = Variable("", {
poll: [1000, 'date "+%H:%M:%S %b %e."'],
poll: [1000, 'date "+%a, %Y-%m-%d %H:%M:%S"'],
})
// widgets can be only assigned as a child in one container
@ -16,9 +16,11 @@ const date = Variable("", {
function Workspaces() {
const activeId = hyprland.active.workspace.bind("id")
const workspaces = hyprland.bind("workspaces")
.as(ws => ws.map(({ id }) => Widget.Button({
.as(ws => ws
.filter(({ id }) => id > 0)
.map(({ id, name }) => Widget.Button({
on_clicked: () => hyprland.messageAsync(`dispatch workspace ${id}`),
child: Widget.Label(`${id}`),
child: Widget.Label(`${name}`),
class_name: activeId.as(i => `${i === id ? "focused" : ""}`),
})))
@ -189,3 +191,18 @@ function Right() {
],
})
}
export function Bar(monitor = 0) {
return Widget.Window({
name: `bar-${monitor}`, // name has to be unique
class_name: "bar",
monitor,
anchor: ["top", "left", "right"],
exclusivity: "exclusive",
child: Widget.CenterBox({
start_widget: Left(),
center_widget: Center(),
end_widget: Right(),
}),
})
}

41
home/ags/style.css Normal file
View file

@ -0,0 +1,41 @@
window.bar {
/* background-color: @theme_bg_color; */
color: @theme_fg_color;
/* height: 5%; */
}
button {
min-width: 0;
padding-top: 0;
padding-bottom: 0;
background-color: transparent;
}
button:active {
background-color: @theme_selected_bg_color;
}
button:hover {
border-bottom: 3px solid @theme_fg_color;
}
/* label { */
/* font-weight: bold; */
/* } */
.workspaces button.focused {
border-bottom: 3px solid @theme_selected_bg_color;
}
.client-title {
color: @theme_selected_bg_color;
}
.notification {
color: yellow;
}
levelbar block,
highlight {
min-height: 10px;
}

View file

@ -2,8 +2,8 @@
user = [
# Graphical setup
# ./ags # ToDo: get codin :3
./waybar.nix
./ags # ToDo: get codin :3
# ./waybar
./hyprland
./rofi.nix
./dunst.nix

View file

@ -70,7 +70,7 @@
tooltip = false;
};
"battery" = {
battery = {
states = {
good = 90;
warning = 30;
@ -83,7 +83,7 @@
format-icons = ["󰂎" "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰂂" "󰁹"];
};
"tray": {
tray = {
"icon-size" = 18;
"spacing" = 18;
};