From d2563e16d824cba455ee5485693b7811fe01cfb7 Mon Sep 17 00:00:00 2001
From: timoxa0 <tima012007@gmail.com>
Date: Wed, 20 Nov 2024 10:18:33 +0500
Subject: [PATCH] runner: Switch to hyprlauncher

---
 dot-config/hypr/bin/runner          |   1 -
 dot-config/hypr/hyprland.conf       |   2 +-
 dot-config/hyprlauncher/config.json |  65 +++++++++
 dot-config/rofi/runner.rasi         | 212 ----------------------------
 4 files changed, 66 insertions(+), 214 deletions(-)
 delete mode 100755 dot-config/hypr/bin/runner
 create mode 100644 dot-config/hyprlauncher/config.json
 delete mode 100644 dot-config/rofi/runner.rasi

diff --git a/dot-config/hypr/bin/runner b/dot-config/hypr/bin/runner
deleted file mode 100755
index 6893988..0000000
--- a/dot-config/hypr/bin/runner
+++ /dev/null
@@ -1 +0,0 @@
-rofi -show drun -theme ~/.config/rofi/runner.rasi
diff --git a/dot-config/hypr/hyprland.conf b/dot-config/hypr/hyprland.conf
index 0464ea5..8b25716 100644
--- a/dot-config/hypr/hyprland.conf
+++ b/dot-config/hypr/hyprland.conf
@@ -2,7 +2,7 @@ source = colors.conf
 
 $terminal    = alacritty
 $fileManager = nemo
-$menu        = ~/.config/hypr/bin/runner
+$menu        = ~/.cargo/bin/hyprlauncher
 $browser     = zen-browser
 $discord     = vesktop
 $telegram    = telegram-desktop
diff --git a/dot-config/hyprlauncher/config.json b/dot-config/hyprlauncher/config.json
new file mode 100644
index 0000000..e6b09fa
--- /dev/null
+++ b/dot-config/hyprlauncher/config.json
@@ -0,0 +1,65 @@
+{
+  "debug": {
+    "disable_auto_focus": false,
+    "enable_logging": false
+  },
+  "theme": {
+    "colors": {
+      "border": "#89b4fa",
+      "item_bg": "#181825",
+      "item_bg_hover": "#89b4fa",
+      "item_bg_selected": "#89b4fa",
+      "item_description": "#bac2de",
+      "item_description_selected": "#181825",
+      "item_name": "#cdd6f4",
+      "item_name_selected": "#1e1e2e",
+      "item_path": "#a6adc8",
+      "item_path_selected": "#181825",
+      "search_bg": "#181825",
+      "search_bg_focused": "#89b4fa",
+      "search_caret": "#cdd6f4",
+      "search_text": "#cdd6f4",
+      "window_bg": "#1e1e2e"
+    },
+    "corners": {
+      "list_item": 8,
+      "search": 8,
+      "window": 12
+    },
+    "spacing": {
+      "item_margin": 8,
+      "item_padding": 2,
+      "search_margin": 9,
+      "search_padding": 9
+    },
+    "typography": {
+      "item_description_size": 12,
+      "item_name_size": 14,
+      "item_path_font_family": "JetBrainsMono Nerd Font Mono",
+      "item_path_size": 12,
+      "search_font_size": 16
+    }
+  },
+  "window": {
+    "anchor": "bottom",
+    "border_width": 3,
+    "custom_navigate_keys": {
+      "delete_word": "h",
+      "down": "j",
+      "up": "k"
+    },
+    "height": 400,
+    "margin_bottom": 20,
+    "margin_left": 0,
+    "margin_right": 0,
+    "margin_top": 0,
+    "max_entries": 50,
+    "show_border": true,
+    "show_descriptions": true,
+    "show_icons": true,
+    "show_paths": true,
+    "show_search": true,
+    "use_gtk_colors": false,
+    "width": 600
+  }
+}
\ No newline at end of file
diff --git a/dot-config/rofi/runner.rasi b/dot-config/rofi/runner.rasi
deleted file mode 100644
index db7a3d7..0000000
--- a/dot-config/rofi/runner.rasi
+++ /dev/null
@@ -1,212 +0,0 @@
-/**
- *
- * Author : Aditya Shakya (adi1090x)
- * Github : @adi1090x
- * 
- * Rofi Theme File
- * Rofi Version: 1.7.3
- * Matugen colors
- **/
-
-@import "colors.rasi"
-
-/*****----- Configuration -----*****/
-configuration {
-	modi:                       "drun,filebrowser";
-    show-icons:                 true;
-    display-drun:               "Apps";
-    display-filebrowser:        "Files";
-	drun-display-format:        "{name}";
-	window-format:              "{w} · {c}";
-}
-
-/*****----- Global Properties -----*****/
-* {
-    font:                        "JetBrainsMono Nerd Font Mono 10";
-    background:                  @on-primary-fixed;
-    background-alt:              @on-primary-fixed-variant;
-    foreground:                  @primary-fixed;
-    selected:                    @primary-fixed-dim;
-    selected-fg:                 @on-primary-fixed;
-    active:                      @primary-fixed;
-    urgent:                      @error;
-}
-
-/*****----- Main Window -----*****/
-window {
-    /* properties for window widget */
-    transparency:                "real";
-    location:                    center;
-    anchor:                      center;
-    fullscreen:                  false;
-    width:                       1000px;
-    x-offset:                    0px;
-    y-offset:                    0px;
-
-    /* properties for all widgets */
-    enabled:                     true;
-    border-radius:               15px;
-    cursor:                      "default";
-    background-color:            @background;
-}
-
-/*****----- Main Box -----*****/
-mainbox {
-    enabled:                     true;
-    spacing:                     0px;
-    background-color:            transparent;
-    orientation:                 vertical;
-    children:                    [ "inputbar", "listbox" ];
-}
-
-listbox {
-    spacing:                     20px;
-    padding:                     20px;
-    background-color:            transparent;
-    orientation:                 vertical;
-    children:                    [ "message", "listview" ];
-}
-
-/*****----- Inputbar -----*****/
-inputbar {
-    enabled:                     true;
-    spacing:                     10px;
-    padding:                     100px 60px;
-    background-color:            transparent;
-    background-image:            url("~/.config/hypr/wallpaper.png", width);
-    text-color:                  @foreground;
-    orientation:                 horizontal;
-    children:                    [ "textbox-prompt-colon", "entry", "dummy", "mode-switcher" ];
-}
-textbox-prompt-colon {
-    enabled:                     true;
-    expand:                      false;
-    str:                         "";
-    padding:                     12px 15px;
-    border-radius:               100%;
-    background-color:            @background-alt;
-    text-color:                  inherit;
-}
-entry {
-    enabled:                     true;
-    expand:                      false;
-    width:                       300px;
-    padding:                     12px 16px;
-    border-radius:               100%;
-    background-color:            @background-alt;
-    text-color:                  inherit;
-    cursor:                      text;
-    placeholder:                 "Search";
-    placeholder-color:           inherit;
-}
-dummy {
-    expand:                      true;
-    background-color:            transparent;
-}
-
-/*****----- Mode Switcher -----*****/
-mode-switcher{
-    enabled:                     true;
-    spacing:                     10px;
-    background-color:            transparent;
-    text-color:                  @foreground;
-}
-button {
-    width:                       80px;
-    padding:                     12px;
-    border-radius:               100%;
-    background-color:            @background-alt;
-    text-color:                  inherit;
-    cursor:                      pointer;
-}
-button selected {
-    background-color:            @selected;
-    text-color:                  @selected-fg;
-}
-
-/*****----- Listview -----*****/
-listview {
-    enabled:                     true;
-    columns:                     6;
-    lines:                       3;
-    cycle:                       true;
-    dynamic:                     true;
-    scrollbar:                   false;
-    layout:                      vertical;
-    reverse:                     false;
-    fixed-height:                true;
-    fixed-columns:               true;
-    
-    spacing:                     10px;
-    background-color:            transparent;
-    text-color:                  @foreground;
-    cursor:                      "default";
-}
-
-/*****----- Elements -----*****/
-element {
-    enabled:                     true;
-    spacing:                     10px;
-    padding:                     10px;
-    border-radius:               15px;
-    background-color:            transparent;
-    text-color:                  @foreground;
-    cursor:                      pointer;
-    orientation:                 vertical;
-}
-element normal.normal {
-    background-color:            inherit;
-    text-color:                  inherit;
-}
-element normal.urgent {
-    background-color:            @urgent;
-    text-color:                  @foreground;
-}
-element normal.active {
-    background-color:            @active;
-    text-color:                  @foreground;
-}
-element selected.normal {
-    background-color:            @selected;
-    text-color:                  @selected-fg;
-}
-element selected.urgent {
-    background-color:            @urgent;
-    text-color:                  @selected-fg;
-}
-element selected.active {
-    background-color:            @urgent;
-    text-color:                  @selected-fg;
-}
-element-icon {
-    background-color:            transparent;
-    text-color:                  inherit;
-    size:                        64px;
-    cursor:                      inherit;
-}
-element-text {
-    background-color:            transparent;
-    text-color:                  inherit;
-    cursor:                      inherit;
-    vertical-align:              0.5;
-    horizontal-align:            0.5;
-}
-
-/*****----- Message -----*****/
-message {
-    background-color:            transparent;
-}
-textbox {
-    padding:                     15px;
-    border-radius:               15px;
-    background-color:            @background-alt;
-    text-color:                  @foreground;
-    vertical-align:              0.5;
-    horizontal-align:            0.0;
-}
-error-message {
-    padding:                     15px;
-    border-radius:               15px;
-    background-color:            @background;
-    text-color:                  @foreground;
-}