feat: update files

This commit is contained in:
2023-12-30 20:16:14 +01:00
parent 4e301a71c7
commit d2f9104fe4
11 changed files with 7813 additions and 121 deletions

View File

@@ -1,15 +1,20 @@
// Import
import { App, Utils } from './imports.js';
import { App, Utils } from "./imports.js";
// Windows
import Bar from './windows/bar.js';
import Cheatsheet from './windows/cheatsheet.js';
import { CornerTopleft, CornerTopright, CornerBottomleft, CornerBottomright } from './windows/corners.js';
import Indicator from './windows/osd.js';
import Osk from './windows/osk.js';
import Overview from './windows/overview.js';
import Session from './windows/session.js';
import SideLeft from './windows/sideleft.js';
import SideRight from './windows/sideright.js';
import Bar from "./windows/bar.js";
import Cheatsheet from "./windows/cheatsheet.js";
import {
CornerTopleft,
CornerTopright,
CornerBottomleft,
CornerBottomright,
} from "./windows/corners.js";
import Indicator from "./windows/osd.js";
import Osk from "./windows/osk.js";
import Overview from "./windows/overview.js";
import Session from "./windows/session.js";
import SideLeft from "./windows/sideleft.js";
import SideRight from "./windows/sideright.js";
const CLOSE_ANIM_TIME = 150;
@@ -22,32 +27,32 @@ App.applyCss(`${App.configDir}/style.css`);
// Config object
export default {
style: `${App.configDir}/style.css`,
stackTraceOnError: true,
closeWindowDelay: {
// For animations
'sideright': CLOSE_ANIM_TIME,
'sideleft': CLOSE_ANIM_TIME,
'osk': CLOSE_ANIM_TIME,
// No anims, but allow menu service update
'session': 1,
'overview': 1,
'cheatsheet': 1,
},
windows: [
Bar(),
...Array.from({length: 3}, (_, i) => [
CornerTopleft(i),
CornerTopright(i),
CornerBottomleft(i),
CornerBottomright(i),
]),
Overview(),
Indicator(),
Cheatsheet(),
SideRight(),
SideLeft(),
Osk(), // On-screen keyboard
Session(),
],
style: `${App.configDir}/style.css`,
stackTraceOnError: true,
closeWindowDelay: {
// For animations
sideright: CLOSE_ANIM_TIME,
sideleft: CLOSE_ANIM_TIME,
osk: CLOSE_ANIM_TIME,
// No anims, but allow menu service update
session: 1,
overview: 1,
cheatsheet: 1,
},
windows: [
//Bar(),
...Array.from({ length: 3 }, (_, i) => [
CornerTopleft(i),
CornerTopright(i),
CornerBottomleft(i),
CornerBottomright(i),
]),
//Overview(),
Indicator(),
//Cheatsheet(),
SideRight(),
SideLeft(),
//Osk(), // On-screen keyboard
//Session(),
],
};

View File

@@ -1,40 +1,43 @@
import { Widget } from '../imports.js';
import { Widget } from "../imports.js";
import { RoundedCorner } from "../modules/lib/roundedcorner.js";
export const CornerTopleft = monitor => Widget.Window({
name: 'cornertl',
layer: 'top',
export const CornerTopleft = (monitor) =>
Widget.Window({
name: "cornertl",
layer: "top",
monitor,
anchor: ['top', 'left'],
anchor: ["top", "left"],
exclusive: false,
visible: true,
child: RoundedCorner('topleft', { className: monitor === 1 ? 'corner' : 'corner-black', }),
});
export const CornerTopright = monitor => Widget.Window({
name: 'cornertr',
layer: 'top',
child: RoundedCorner("topleft", { className: "corner-black" }),
});
export const CornerTopright = (monitor) =>
Widget.Window({
name: "cornertr",
layer: "top",
monitor,
anchor: ['top', 'right'],
anchor: ["top", "right"],
exclusive: false,
visible: true,
child: RoundedCorner('topright', { className: monitor === 1 ? 'corner' : 'corner-black', }),
});
export const CornerBottomleft = monitor => Widget.Window({
name: 'cornerbl',
layer: 'top',
child: RoundedCorner("topright", { className: "corner-black" }),
});
export const CornerBottomleft = (monitor) =>
Widget.Window({
name: "cornerbl",
layer: "top",
monitor,
anchor: ['bottom', 'left'],
anchor: ["bottom", "left"],
exclusive: false,
visible: true,
child: RoundedCorner('bottomleft', { className: 'corner-black', }),
});
export const CornerBottomright = monitor => Widget.Window({
name: 'cornerbr',
layer: 'top',
child: RoundedCorner("bottomleft", { className: "corner-black" }),
});
export const CornerBottomright = (monitor) =>
Widget.Window({
name: "cornerbr",
layer: "top",
monitor,
anchor: ['bottom', 'right'],
anchor: ["bottom", "right"],
exclusive: false,
visible: true,
child: RoundedCorner('bottomright', { className: 'corner-black', }),
});
child: RoundedCorner("bottomright", { className: "corner-black" }),
});

View File

@@ -9,7 +9,6 @@
wayland.windowManager.hyprland = {
enable = true;
enableNvidiaPatches = true;
settings = {
env = [
"LIBVA_DRIVER_NAME,nvidia"
@@ -29,16 +28,16 @@
];
exec-once = [
"swww init"
"swww img ~/.local/state/wallpaper.jpg"
"ags"
"waybar"
"systemctl --user import-environment DISPLAY WAYLAND_DISPLAY XAUTHORITY"
"dbus-update-activation-environment DISPLAY WAYLAND_DISPLAY XAUTHORITY"
"gnome-keyring-daemon --start --components=secrets"
"${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"
];
general = {
gaps_in = 4;
gaps_out = 5;
gaps_in = 16;
gaps_out = 16;
border_size = 1;
"col.active_border" = "rgba(0DB7D4FF)";
@@ -61,22 +60,13 @@
];
monitor = import ./monitors.nix;
workspace = [
"1,monitor:DP-1"
"2,monitor:DP-1"
"3,monitor:DP-1"
"4,monitor:HDMI-A-1"
"5,monitor:HDMI-A-1"
"6,monitor:HDMI-A-1"
"7,monitor:DP-3"
"8,monitor:DP-3"
"9,monitor:DP-3"
"100,monitor:DP-1,default:true"
"200,monitor:HDMI-A-1,default:true"
"300,monitor:DP-3:default:true"
"special:calc,border:false,gapsout:200,on-created-empty:[noanim;silent] kitty -e qalc"
];
windowrule = [
"pseudo,^(discord)$"
"pseudo,^(Slack)$"
"pseudo,^(steam)$"
"monitor DP-3,^(discord)$"
];
windowrulev2 = [
# Games
@@ -135,7 +125,7 @@
"fade,1,1,default"
];
decoration = {
rounding = 20;
rounding = 8;
blur = {
enabled = true;
xray = false;
@@ -159,11 +149,20 @@
programs.kitty = import ./kitty.nix {inherit pkgs;};
programs.anyrun = import ./anyrun.nix {inherit pkgs;};
programs.waybar = import ./waybar.nix {inherit pkgs;};
programs.foot.enable = true;
services.udiskie.enable = true;
services.udiskie.tray = "never";
fonts.fontconfig.enable = true;
home.packages = with pkgs; [
(callPackage ../../../overlays/wezterm {
Cocoa = pkgs.Cocoa;
CoreGraphics = pkgs.CoreGraphics;
Foundation = pkgs.Foundation;
System = pkgs.System;
UserNotifications = pkgs.UserNotifications;
})
libsForQt5.konsole
# fonts
noto-fonts
# essentials
@@ -228,6 +227,17 @@
platformTheme = "gtk";
};
programs.fish.loginShellInit =
/*
fish
*/
''
Hyprland && echo "goodbye" && exit 0 \
|| echo "$status couldn't launch Hyprland" && tty | grep tty1 \
&& echo "refusing to autologin without Hyprland on tty1" && exit 0 \
|| echo "not on tty1, letting in"
'';
home = {
pointerCursor = {
gtk.enable = true;
@@ -235,24 +245,14 @@
name = "capitaine-cursors";
};
file.profile = {
enable = true;
target = ".zprofile"; # change to .profile if you're not using zsh
text =
/*
sh
*/
''
Hyprland && echo "goodbye" && exit 0 \
|| echo "$? couldn't launch Hyprland" && tty | grep tty1 \
&& echo "refusing to autologin without Hyprland on tty1" && exit 0 \
|| echo "not on tty1, letting in"
'';
};
file.".config/hypr/shaders" = {
source = ./hypr/shaders;
recursive = true;
};
file.".config/wezterm" = {
source = ./wezterm;
recursive = true;
};
};
}

View File

@@ -1,10 +1,19 @@
{pkgs}: {
enable = true;
/*
package = pkgs.kitty.overrideAttrs (prev: {
src = pkgs.lib.fetchFromGitHub {
owner = "nightuser";
repo = "kitty";
rev = ""
};
});
*/
shellIntegration.enableFishIntegration = true;
font = {
package = pkgs.jetbrains-mono;
name = "JetBrains Mono";
size = 11;
size = 13;
};
extraConfig = ''
symbol_map U+23FB-U+23FE,U+2665,U+26A1,U+2B58,U+E000-U+E00A,U+E0A0-U+E0A3,U+E0B0-U+E0D4,U+E200-U+E2A9,U+E300-U+E3E3,U+E5FA-U+E6AA,U+E700-U+E7C5,U+EA60-U+EBEB,U+F000-U+F2E0,U+F300-U+F32F,U+F400-U+F4A9,U+F500-U+F8FF,U+F0001-U+F1AF0 Symbols Nerd Font Mono

View File

@@ -3,41 +3,127 @@
settings = {
mainBar = {
layer = "top";
position = "left";
width = 16;
position = "top";
modules-left = ["hyprland/workspaces"];
modules-center = ["clock"];
modules-right = ["custom/weather"];
modules-right = ["tray" "group/power"];
"clock" = {
format = "<b>{%H}</b>\n{%M}";
format = "{:%H:%M}";
};
"custom/weather" = {
format = "{}";
tooltip = true;
interval = 3600;
exec = "wttrbar --location Berlin";
exec = "${pkgs.wttrbar}/bin/wttrbar --location Berlin --custom-indicator \"{ICON}{temp_C}°\"";
return-type = "json";
};
"group/power" = {
orientation = "inherit";
drawer = {
transition-duration = 500;
children-class = "not-power";
transition-left-to-right = false;
};
modules = [
"custom/launcher"
"custom/power"
#"custom/quit"
#"custom/lock"
"custom/reboot"
];
};
"custom/launcher" = {
format = " ";
tooltip = false;
on-click = "anyrun";
};
"custom/quit" = {
format = "󰗼 ";
tooltip = false;
on-click = "hyprctl dispatch exit";
};
"custom/lock" = {
format = "󰍁 ";
tooltip = false;
on-click = "swaylock";
};
"custom/reboot" = {
format = "󰜉 ";
tooltip = false;
on-click = "reboot";
};
"custom/power" = {
format = " ";
tooltip = false;
on-click = "shutdown now";
};
"hyprland/workspaces" = {
format = "{windows}";
format-window-separator = "\n";
format-window-separator = " ";
window-rewrite-default = "";
window-rewrite = {
"title<.*youtube.*>" = "";
"class<firefox>" = "";
"title<nvim.*>" = "";
"class<kitty>" = "";
"title<htop.*>" = "";
"title<p?npm.*>" = "󰢩";
"class<firefox>" = "";
"class<chromium-browser>" = "";
"class<lutris>" = "󰺵";
"class<.gimp.*>" = "";
"class<org.inkscape.Inkscape>" = "";
"class<kitty>" = "󰆍";
"class<blender>" = "󰂫";
"class<steam>" = "󰓓";
"class<libreoffice.*>" = "󰏆";
"class<Element>" = "󰭹";
"class<brave-browser>" = "";
"class<Jellyfin Media Player>" = "󰼁";
"class<VencordDesktop>" = "󰙯";
"class<org.gnome.Nautilus>" = "󰝰";
};
};
};
};
style = ''
window#waybar {
background: black;
}
'';
style =
/*
css
*/
''
* {
font-weight: bold;
}
window#waybar {
background: black;
}
#workspaces {
}
#workspaces button {
opacity: 0.5;
padding: 0;
border-radius: 0;
border-width: 0;
font-size: 16px;
padding-left: 2px;
padding-right: 2px;
border-top: 2px solid transparent;
transition: all 250ms ease;
}
#workspaces button.active {
opacity: 1;
}
#workspaces button.visible {
border-top-color: currentcolor;
}
'';
}

View File

@@ -0,0 +1,14 @@
local wezterm = require("wezterm")
local config = {
font = wezterm.font("JetBrains Mono"),
enable_tab_bar = false,
display_pixel_geometry = "BGR",
freetype_load_target = "HorizontalLcd",
freetype_load_flags = "NO_HINTING",
freetype_render_target = "HorizontalLcd",
font_size = 13.0,
default_prog = { "/run/current-system/sw/bin/fish" },
}
return config