feat: add tailscale widget

This commit is contained in:
tux
2025-05-31 17:36:47 +05:30
parent e2698653e9
commit ece15c40d1
2 changed files with 27 additions and 1 deletions

View File

@@ -2,6 +2,7 @@ import { App, Astal, Gdk } from "astal/gtk4";
import { FocusedClient, WorkspaceButton } from "./workspace"; import { FocusedClient, WorkspaceButton } from "./workspace";
import { Battery } from "./battery"; import { Battery } from "./battery";
import { Launcher } from "./launcher"; import { Launcher } from "./launcher";
import { Tailscale } from "./tailscale";
export const WINDOW_NAME = "bar"; export const WINDOW_NAME = "bar";
@@ -41,5 +42,10 @@ const Center = () => {
}; };
const End = () => { const End = () => {
return <Battery />; return (
<box spacing={15}>
<Tailscale />
<Battery />
</box>
);
}; };

20
widget/bar/tailscale.tsx Normal file
View File

@@ -0,0 +1,20 @@
import { bind, Variable } from "astal";
export const Tailscale = () => {
const tailscale = Variable("").poll(5000, [
"bash",
"-c",
"tailscale ping vega",
]);
return (
<box cssClasses={["tailscale"]}>
<label
label={bind(tailscale).as((val) => {
const data = val.split(" ");
return data[data.length - 1];
})}
/>
</box>
);
};