diff --git a/.luarc.json b/.luarc.json new file mode 100644 index 0000000..62faf36 --- /dev/null +++ b/.luarc.json @@ -0,0 +1,10 @@ +{ + "workspace": { + "library": [ + "/usr/share/hypr/stubs" + ] + }, + "diagnostics": { + "globals": ["hl"] + } +} diff --git a/config.py b/config.py new file mode 100644 index 0000000..85ca74d --- /dev/null +++ b/config.py @@ -0,0 +1,5 @@ +grub_theme = "/usr/share/grub/themes/monterey-grub-theme/theme.txt" +grub_os_prober = True +kernel_args_all = "" +kernel_args_debug_only = "" +kernel_args_normal_only = "" diff --git a/config/hypr/hyprland.lua b/config/hypr/hyprland.lua new file mode 100644 index 0000000..5ab4bd2 --- /dev/null +++ b/config/hypr/hyprland.lua @@ -0,0 +1,11 @@ +-- TODO: Laptop vs desktop vs docked config +local swap_escape = false +require("hyprland.core.general") +require("hyprland.core.input")(swap_escape) + +require("colors") + +hl.device({ + name = "pnp0c50:00-093a:0255-touchpad", + enabled = true, +}) diff --git a/config/hypr/hyprland/binds/device.lua b/config/hypr/hyprland/binds/device.lua new file mode 100644 index 0000000..df93d9f --- /dev/null +++ b/config/hypr/hyprland/binds/device.lua @@ -0,0 +1,10 @@ +local function exit_submap() + hl.dispatch(hl.dsp.submap("reset")) +end + +hl.define_submap("launch", function() + hl.bind("l", function() + hl.dispatch(hl.dsp.exec_cmd("librewolf")) + exit_submap() + end) +end) diff --git a/config/hypr/hyprland/binds/launch.lua b/config/hypr/hyprland/binds/launch.lua new file mode 100644 index 0000000..88259ba --- /dev/null +++ b/config/hypr/hyprland/binds/launch.lua @@ -0,0 +1,91 @@ +local function exit_submap() + hl.dispatch(hl.dsp.submap("reset")) +end + +hl.define_submap("launch", function() + -- Librewolf + hl.bind("l", function() + hl.dispatch(hl.dsp.exec_cmd("librewolf")) + exit_submap() + end) + + -- Steam + hl.bind("s", function() + hl.dispatch(hl.dsp.exec_cmd("steam")) + exit_submap() + end) + + -- Discord + hl.bind("d", function() + hl.dispatch(hl.dsp.exec_cmd("vesktop")) + exit_submap() + end) + + -- Kitty + hl.bind("k", function() + hl.dispatch(hl.dsp.exec_cmd("kitty")) + exit_submap() + end) + hl.bind("Return", function() + hl.dispatch(hl.dsp.exec_cmd("kitty")) + exit_submap() + end) + + -- Filezilla + hl.bind("f", function() + hl.dispatch(hl.dsp.exec_cmd("filezilla")) + exit_submap() + end) + + -- Thunderbird + hl.bind("t", function() + hl.dispatch(hl.dsp.exec_cmd("thunderbird")) + exit_submap() + end) + + -- Zathura + hl.bind("z", function() + hl.dispatch(hl.dsp.exec_cmd("zathura")) + exit_submap() + end) + + -- Brave + hl.bind("Shift + B", function() + hl.dispatch(hl.dsp.exec_cmd("brave")) + exit_submap() + end) + + -- bsmanager + hl.bind("b", function() + hl.dispatch(hl.dsp.exec_cmd("/opt/bs-manager/bs-manager")) + exit_submap() + end) + + -- ALVR + hl.bind("p", function() + hl.dispatch(hl.dsp.exec_cmd("alvr_dashboard")) + exit_submap() + end) + + -- Qalculate + hl.bind("c", function() + hl.dispatch(hl.dsp.exec_cmd("qalculate-qt")) + exit_submap() + end) + + -- AirPlay + hl.bind("a", function() + hl.dispatch(hl.dsp.exec_cmd("notify-send 'AirPlay server is starting...' --app-name='AirPlay Video'")) + hl.dispatch( + hl.dsp.exec_cmd( + "terminator -T 'hiddent'terminator' -e 'systemctl start avahi-daemon' && sleep 5 && uxplay -n LinuxVideoplay -nh" + ) + ) + exit_submap() + end) + + -- Escape + hl.bind("Escape", function() + exit_submap() + end) +end) diff --git a/config/hypr/hyprland/core/general.lua b/config/hypr/hyprland/core/general.lua new file mode 100644 index 0000000..4d808ce --- /dev/null +++ b/config/hypr/hyprland/core/general.lua @@ -0,0 +1,10 @@ +hl.config({ + general = { + gaps_in = 3, + gaps_out = 4, + border_size = 2, + no_focus_fallback = true, + + layout = "dwindle", + }, +}) diff --git a/config/hypr/hyprland/core/group.lua b/config/hypr/hyprland/core/group.lua new file mode 100644 index 0000000..365e30f --- /dev/null +++ b/config/hypr/hyprland/core/group.lua @@ -0,0 +1 @@ +-- TODO: Check out what this does (pretty sure as in i3) diff --git a/config/hypr/hyprland/core/input.lua b/config/hypr/hyprland/core/input.lua new file mode 100644 index 0000000..0842c8d --- /dev/null +++ b/config/hypr/hyprland/core/input.lua @@ -0,0 +1,51 @@ +--- @param swap_escape boolean +return function(swap_escape) + hl.config({ + inputs = { + kb_options = swap_escape and "caps:swapescape" or "", + kb_layout = "us", + kb_variant = "altgr-intl", + natural_scroll = "true", + + numlock_by_default = true, + repeat_delay = 400, + + follow_mouse = 2, + mouse_refocus = true, + scroll_factor = 2, + accel_profile = "flat", + + touchpad = { + disable_while_typing = true, + natural_scroll = true, + scroll_factor = 4, + }, + + focus_on_close = 1, + + sensitivity = 0, + }, + gestures = { + workspace_swipe_distance = 200, + workspace_swipe_cancel_ratio = 0.3, + workspace_swipe_forever = true, + workspace_swipe_direction_lock = false, + }, + }) + + hl.gesture({ + fingers = 3, + direction = "horizontal", + action = "workspace", + }) + hl.gesture({ + fingers = 3, + direction = "down", + action = "close", + }) + hl.gesture({ + fingers = 3, + direction = "up", + action = "fullscreen", + }) +end diff --git a/config/hypr/hyprland/core/misc.lua b/config/hypr/hyprland/core/misc.lua new file mode 100644 index 0000000..b87c2c8 --- /dev/null +++ b/config/hypr/hyprland/core/misc.lua @@ -0,0 +1,23 @@ +hl.config({ + xwayland = { + force_zero_scaling = true, + }, + misc = { + disable_hyprland_logo = true, + disable_splash_rendering = true, + vrr = 3, + allow_session_lock_restore = true, + }, + dwindle = { + pseudotile = true, + force_split = 2, + preserve_split = true, + }, + binds = { + workspace_back_and_forth = true, + }, + cursor = { + no_warps = false, + inactive_timeout = 5, + }, +}) diff --git a/config/hypr/hyprland/core/style.lua b/config/hypr/hyprland/core/style.lua new file mode 100644 index 0000000..85fe37f --- /dev/null +++ b/config/hypr/hyprland/core/style.lua @@ -0,0 +1,26 @@ +hl.config({ + decoration = { + inactive_opacity = 1, + rounding = 10, + + shadow = { + enabled = true, + range = 4, + }, + + blur = { + enabled = true, + xray = true, + new_optimizations = true, + size = 1, + passes = 2, + }, + + dim_inactive = true, + dim_strength = 0.1, + -- TODO: Consider adding glow? + }, + animations = { + enabled = true, + }, +}) diff --git a/config/hypr/hyprland/execs.lua b/config/hypr/hyprland/execs.lua new file mode 100644 index 0000000..279dccb --- /dev/null +++ b/config/hypr/hyprland/execs.lua @@ -0,0 +1,6 @@ +hl.on("hyprland.start", function() + -- hl.exec_cmd("~/.config/hypr/xdg-portal-hyprland") + -- hl.exec_cmd("dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XAUTHORITY DISPLAY") + -- hl.exec_cmd("systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP") + hl.exec_cmd("systemctl --user start hyprpolkitagent") +end) diff --git a/config/hypr/hyprland/layout/init.lua b/config/hypr/hyprland/layout/init.lua new file mode 100644 index 0000000..e69de29 diff --git a/config/hypr/hyprland/monitors.lua b/config/hypr/hyprland/monitors.lua new file mode 100644 index 0000000..b88e026 --- /dev/null +++ b/config/hypr/hyprland/monitors.lua @@ -0,0 +1,44 @@ +return function(is_laptop, is_docked) + if is_laptop then + hl.monitor({ + output = "", + mode = "preferred", + position = "auto", + scale = 1, + }) + if is_docked then + hl.monitor({ + output = "eDP-1", + disabled = true, + }) + else + hl.monitor({ + output = "eDP-1", + mode = "2880x1800@240", + position = "0x0", + scale = 1.5, + }) + end + elseif is_laptop and is_docked then + hl.monitor({ + output = "DP-1", + mode = "1920x1080@144", + position = "0x0", + scale = 1, + }) + else + hl.monitor({ + output = "DP-1", + mode = "1920x1080@144", + position = "0x0", + scale = 1, + vrr = 2 + }) + hl.monitor({ + output = "DP-2", + mode = "1920x1080@75", + position = "1920x0", + scale = 1, + }) + end +end diff --git a/config/matugen/README.md b/config/matugen/README.md index 4a4e04e..352835b 100644 --- a/config/matugen/README.md +++ b/config/matugen/README.md @@ -5,5 +5,5 @@ Shamelessly copied from [End-4's dotfiles](https://github.com/end-4/dots-hyprlan # TODOs - [ ] Custom yazi theme - [ ] Qt theme -- [ ] Remove unneeded elements +- [X] Remove unneeded elements - [ ] Quickshell stuff diff --git a/config/matugen/config.toml b/config/matugen/config.toml index ca3ffb0..d8edf7c 100644 --- a/config/matugen/config.toml +++ b/config/matugen/config.toml @@ -20,11 +20,3 @@ output_path = '~/.config/gtk-3.0/gtk.css' [templates.gtk4] input_path = '~/.config/matugen/templates/gtk-4.0/gtk.css' output_path = '~/.config/gtk-4.0/gtk.css' - -[templates.kde_colors] -input_path = '~/.config/matugen/templates/kde/color.txt' -output_path = '~/.local/state/quickshell/user/generated/color.txt' - -[templates.wallpaper] -input_path = '~/.config/matugen/templates/wallpaper.txt' -output_path = '~/.local/state/quickshell/user/generated/wallpaper/path.txt' diff --git a/config/matugen/templates/ags/_material.scss b/config/matugen/templates/ags/_material.scss deleted file mode 100644 index 81acbfe..0000000 --- a/config/matugen/templates/ags/_material.scss +++ /dev/null @@ -1,70 +0,0 @@ -$darkmode: False; -$transparent: False; -$background: {{colors.background.default.hex}}; -$onBackground: {{colors.on_background.default.hex}}; -$surface: {{colors.surface.default.hex}}; -$surfaceDim: {{colors.surface_dim.default.hex}}; -$surfaceBright: {{colors.surface_bright.default.hex}}; -$surfaceContainerLowest: {{colors.surface_container_lowest.default.hex}}; -$surfaceContainerLow: {{colors.surface_container_low.default.hex}}; -$surfaceContainer: {{colors.surface_container.default.hex}}; -$surfaceContainerHigh: {{colors.surface_container_high.default.hex}}; -$surfaceContainerHighest: {{colors.surface_container_highest.default.hex}}; -$onSurface: {{colors.on_surface.default.hex}}; -$surfaceVariant: {{colors.surface_variant.default.hex}}; -$onSurfaceVariant: {{colors.on_surface_variant.default.hex}}; -$inverseSurface: {{colors.inverse_surface.default.hex}}; -$inverseOnSurface: {{colors.inverse_on_surface.default.hex}}; -$outline: {{colors.outline.default.hex}}; -$outlineVariant: {{colors.outline_variant.default.hex}}; -$shadow: {{colors.shadow.default.hex}}; -$scrim: {{colors.scrim.default.hex}}; -$primary: {{colors.primary.default.hex}}; -$onPrimary: {{colors.on_primary.default.hex}}; -$primaryContainer: {{colors.primary_container.default.hex}}; -$onPrimaryContainer: {{colors.on_primary_container.default.hex}}; -$inversePrimary: {{colors.inverse_primary.default.hex}}; -$secondary: {{colors.secondary.default.hex}}; -$onSecondary: {{colors.on_secondary.default.hex}}; -$secondaryContainer: {{colors.secondary_container.default.hex}}; -$onSecondaryContainer: {{colors.on_secondary_container.default.hex}}; -$tertiary: {{colors.tertiary.default.hex}}; -$onTertiary: {{colors.on_tertiary.default.hex}}; -$tertiaryContainer: {{colors.tertiary_container.default.hex}}; -$onTertiaryContainer: {{colors.on_tertiary_container.default.hex}}; -$error: {{colors.error.default.hex}}; -$onError: {{colors.on_error.default.hex}}; -$errorContainer: {{colors.error_container.default.hex}}; -$onErrorContainer: {{colors.on_error_container.default.hex}}; -$primaryFixed: {{colors.primary_fixed.default.hex}}; -$primaryFixedDim: {{colors.primary_fixed_dim.default.hex}}; -$onPrimaryFixed: {{colors.on_primary_fixed.default.hex}}; -$onPrimaryFixedVariant: {{colors.on_primary_fixed_variant.default.hex}}; -$secondaryFixed: {{colors.secondary_fixed.default.hex}}; -$secondaryFixedDim: {{colors.secondary_fixed_dim.default.hex}}; -$onSecondaryFixed: {{colors.on_secondary_fixed.default.hex}}; -$onSecondaryFixedVariant: {{colors.on_secondary_fixed_variant.default.hex}}; -$tertiaryFixed: {{colors.tertiary_fixed.default.hex}}; -$tertiaryFixedDim: {{colors.tertiary_fixed_dim.default.hex}}; -$onTertiaryFixed: {{colors.on_tertiary_fixed.default.hex}}; -$onTertiaryFixedVariant: {{colors.on_tertiary_fixed_variant.default.hex}}; -$success: #B5CCBA; -$onSuccess: #213528; -$successContainer: #374B3E; -$onSuccessContainer: #D1E9D6; -$term0: #0D1C20; -$term1: #8383FF; -$term2: #63DFD4; -$term3: #75FCDD; -$term4: #76B4BD; -$term5: #7AAEEA; -$term6: #81D8D7; -$term7: #CCDBD5; -$term8: #B1BCB5; -$term9: #BCB9FF; -$term10: #F6FFFD; -$term11: #FFFFFF; -$term12: #BEE3E5; -$term13: #C8DAFF; -$term14: #E5FFFE; -$term15: #ADEDF6; diff --git a/config/matugen/templates/ags/sourceviewtheme-light.xml b/config/matugen/templates/ags/sourceviewtheme-light.xml deleted file mode 100644 index d501c31..0000000 --- a/config/matugen/templates/ags/sourceviewtheme-light.xml +++ /dev/null @@ -1,95 +0,0 @@ - - - end_4 - <_description>Catppuccin port but very random - -