1 Commits

Author SHA1 Message Date
761b164285 chore(move): themes/ into a separate repo
basically this makes adding themes much more flexible and easier to
package themes separately from lidm
2026-02-07 23:21:10 +01:00
38 changed files with 11 additions and 844 deletions

3
.gitmodules vendored Normal file
View File

@@ -0,0 +1,3 @@
[submodule "themes"]
path = themes
url = https://github.com/javalsai/lidm-themes

View File

@@ -4,10 +4,6 @@
<!-- By "very relevant" I mean big features or something manual packagers should know, like leftover files -->
<!-- Once a release would be opened, group the last bunch of dangling changes, add release version as header and its date -->
# 2.0.2
- fix off-by-one error with launch state save
# 2.0.1
- source and header files can be nested in `src/` and `include/`

View File

@@ -1,4 +1,4 @@
VERSION := 2.0.2
VERSION := 2.0.1
.DEFAULT_GOAL := lidm
CDIR = src

View File

@@ -11,7 +11,7 @@ let
dmcfg = config.services.displayManager;
desktops = dmcfg.sessionData.desktops;
version = "2.0.1";
version = "2.0.0";
lidmPkg = pkgs.callPackage ./lidm.nix {
inherit pkgs;
config = {
@@ -21,7 +21,7 @@ let
owner = "javalsai";
repo = "lidm";
rev = "v${version}";
sha256 = "sha256-bpUqhD1JSiYRf7w7ylEMXHMvEpnSri1zZSxRQPdZWB4=";
sha256 = "sha256-dI1OGndbT6wFAhuGmsPZPqLFvtPREfO/3HqhmlSMpN4=";
};
xsessions = "${desktops}/share/xsessions";

View File

@@ -22,16 +22,16 @@ int read_launch_state(struct LaunchState* NNULLABLE state) {
size_t num = 0;
ssize_t chars = getline(&state->username, &num, state_fd);
if (chars <= 0) goto fail;
if (state->username[chars - 1] == '\n') state->username[chars - 1] = 0;
if (chars < 0) goto fail;
if (state->username[chars] == '\n') state->username[chars] = 0;
num = 0;
chars = getline(&state->session_opt, &num, state_fd);
if (chars <= 0) {
if (chars < 0) {
free(state->session_opt);
goto fail;
}
if (state->session_opt[chars - 1] == '\n') state->session_opt[chars - 1] = 0;
if (state->session_opt[chars] == '\n') state->session_opt[chars] = 0;
(void)fclose(state_fd);
return 0;

1
themes Submodule

Submodule themes added at 44681317ef

View File

@@ -1,61 +0,0 @@
# Themes
## catppuccin-frappe.ini
![catppuccin-frappe.ini theme](./screenshots/catppuccin-frappe.png)
## catppuccin-latte.ini
![catppuccin-latte.ini theme](./screenshots/catppuccin-latte.png)
## catppuccin-macchiato.ini
![catppuccin-macchiato.ini theme](./screenshots/catppuccin-macchiato.png)
## catppuccin-mocha.ini
![catppuccin-mocha.ini theme](./screenshots/catppuccin-mocha.png)
## cherry.ini
![cherry.ini theme](./screenshots/cherry.png)
## default.ini
![default.ini theme](./screenshots/default.png)
## kanagawa-dragon.ini
![kanagawa-dragon.ini theme](./screenshots/kanagawa-dragon.png)
## kanagawa-wave.ini
![kanagawa-wave.ini theme](./screenshots/kanagawa-wave.png)
## minimal.ini
![minimal.ini theme](./screenshots/minimal.png)
> [!WARNING]
> This theme **heavily** relies on terminal rendering. It's just to show
> customizability, a TTY won't render this properly
## nature.ini
![nature.ini theme](./screenshots/nature.png)
## nord.ini
![nord.ini theme](./screenshots/nord.png)
## old-blue.ini
![old-blue.ini theme](./screenshots/old-blue.png)
## nothing.ini
![nothing.ini theme](./screenshots/nothing.png)
## tasteless.ini
![tasteless.ini theme](./screenshots/tasteless.png)

View File

@@ -1,24 +0,0 @@
##############################################
# #
# Catppuccin Theme #
# #
##############################################
# Catppuccin Frappé
# This theme was created by: Catppuccin Org! <3
[colors]
bg = "23;24;25;48;2;48;52;70"
fg = "22;23;24;25;29;38;2;198;208;245"
err = "1;4;23;24;25;38;2;231;130;132"
s_wayland = "3;22;24;25;38;2;202;158;230"
s_xorg = "3;22;24;25;38;2;202;158;230"
s_shell = "3;22;24;25;38;2;244;184;228"
e_hostname = "1;3;24;25;29;38;2;242;213;207"
e_date = "3;22;24;25;29;38;2;165;173;206"
e_box = "1;23;24;25;29;38;2;115;121;148"
e_header = "1;3;24;25;29;38;2;239;159;118"
e_user = "3;22;24;25;29;38;2;140;170;238"
e_passwd = "1;23;24;25;29;38;2;166;209;137"
e_badpasswd = "1;9;23;24;25;38;2;231;130;132"
e_key = "22;23;24;25;38;2;129;200;190"

View File

@@ -1,24 +0,0 @@
##############################################
# #
# Catppuccin Theme #
# #
##############################################
# Catppuccin Latte
# This theme was created by: Catppuccin Org! <3
[colors]
bg = "23;24;25;48;2;239;241;245"
fg = "22;23;24;25;29;38;2;76;79;105"
err = "1;4;23;24;25;38;2;210;15;57"
s_wayland = "3;22;24;25;38;2;136;57;239"
s_xorg = "3;22;24;25;38;2;136;57;239"
s_shell = "3;22;24;25;38;2;234;118;203"
e_hostname = "1;3;24;25;29;38;2;220;138;120"
e_date = "3;22;24;25;29;38;2;108;111;133"
e_box = "1;23;24;25;29;38;2;156;160;176"
e_header = "1;3;24;25;29;38;2;254;100;11"
e_user = "3;22;24;25;29;38;2;30;102;245"
e_passwd = "1;23;24;25;29;38;2;64;160;43"
e_badpasswd = "1;9;23;24;25;38;2;210;15;57"
e_key = "22;23;24;25;38;2;23;146;153"

View File

@@ -1,24 +0,0 @@
##############################################
# #
# Catppuccin Theme #
# #
##############################################
# Catppuccin Macchiato
# This theme was created by: Catppuccin Org! <3
[colors]
bg = "23;24;25;48;2;36;39;58"
fg = "22;23;24;25;29;38;2;202;211;245"
err = "1;4;23;24;25;38;2;237;135;150"
s_wayland = "3;22;24;25;38;2;198;160;246"
s_xorg = "3;22;24;25;38;2;198;160;246"
s_shell = "3;22;24;25;38;2;245;189;230"
e_hostname = "1;3;24;25;29;38;2;244;219;214"
e_date = "3;22;24;25;29;38;2;165;173;203"
e_box = "1;23;24;25;29;38;2;110;115;141"
e_header = "1;3;24;25;29;38;2;245;169;127"
e_user = "3;22;24;25;29;38;2;138;173;244"
e_passwd = "1;23;24;25;29;38;2;166;218;149"
e_badpasswd = "1;9;23;24;25;38;2;237;135;150"
e_key = "22;23;24;25;38;2;139;213;202"

View File

@@ -1,24 +0,0 @@
##############################################
# #
# Catppuccin Theme #
# #
##############################################
# Catppuccin Mocha
# This theme was created by: Catppuccin Org! <3
[colors]
bg = "23;24;25;48;2;30;30;46"
fg = "22;23;24;25;29;38;2;205;214;244"
err = "1;4;23;24;25;38;2;243;139;168"
s_wayland = "3;22;24;25;38;2;203;166;247"
s_xorg = "3;22;24;25;38;2;203;166;247"
s_shell = "3;22;24;25;38;2;245;194;231"
e_hostname = "1;3;24;25;29;38;2;245;224;220"
e_date = "3;22;24;25;29;38;2;166;173;200"
e_box = "1;23;24;25;29;38;2;108;112;134"
e_header = "1;3;24;25;29;38;2;250;179;135"
e_user = "3;22;24;25;29;38;2;137;180;250"
e_passwd = "1;23;24;25;29;38;2;166;227;161"
e_badpasswd = "1;9;23;24;25;38;2;243;139;168"
e_key = "22;23;24;25;38;2;148;226;213"

View File

@@ -1,35 +0,0 @@
---
whiskers:
version: ^2.5.1
matrix:
- flavor
filename: catppuccin-{{ flavor.identifier }}.ini
---
{%- macro rgb(col) -%}
2;{{ col.rgb.r }};{{ col.rgb.g }};{{ col.rgb.b }}
{%- endmacro rgb -%}
##############################################
# #
# Catppuccin Theme #
# #
##############################################
# Catppuccin {{flavor.name}}
# This theme was created by: Catppuccin Org! <3
[colors]
bg = "23;24;25;48;{{ self::rgb(col=base) }}"
fg = "22;23;24;25;29;38;{{ self::rgb(col=text) }}"
err = "1;4;23;24;25;38;{{ self::rgb(col=red) }}"
s_wayland = "3;22;24;25;38;{{ self::rgb(col=mauve) }}"
s_xorg = "3;22;24;25;38;{{ self::rgb(col=mauve) }}"
s_shell = "3;22;24;25;38;{{ self::rgb(col=pink) }}"
e_hostname = "1;3;24;25;29;38;{{ self::rgb(col=rosewater) }}"
e_date = "3;22;24;25;29;38;{{ self::rgb(col=subtext0) }}"
e_box = "1;23;24;25;29;38;{{ self::rgb(col=overlay0) }}"
e_header = "1;3;24;25;29;38;{{ self::rgb(col=peach) }}"
e_user = "3;22;24;25;29;38;{{ self::rgb(col=blue) }}"
e_passwd = "1;23;24;25;29;38;{{ self::rgb(col=green) }}"
e_badpasswd = "1;9;23;24;25;38;{{ self::rgb(col=red) }}"
e_key = "22;23;24;25;38;{{ self::rgb(col=teal) }}"

View File

@@ -1,49 +0,0 @@
[colors]
bg = "48;2;77;33;55"
fg = "22;3;24;38;2;245;245;245"
# err = "1;31"
# s_wayland = "38;2;255;174;66"
# s_xorg = "38;2;37;175;255"
s_shell = "32"
e_hostname = "1;23;38;5;197"
e_date = "31"
e_box = "31"
e_header = "1;4;38;5;204"
e_user = "38;5;51"
e_passwd = "4;2;38;5;203"
e_badpasswd = "4;31"
e_key = "1;23;38;5;197"
[chars]
# hb = "─"
# vb = "│"
# ctl = "┌"
# ctr = "┐"
# cbl = "└"
# cbr = "┘"
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
[strings]
# f_poweroff = "poweroff"
# f_reboot = "reboot"
# f_refresh = "refresh"
# e_user = "user"
# e_passwd = "password"
# s_wayland = "wayland"
# s_xorg = "xorg"
# s_shell = "shell"
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
# timefmt = "%X %x"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,51 +0,0 @@
[colors]
# bg = "48;2;38;28;28"
# fg = "22;24;38;2;245;245;245"
# err = "1;31"
# s_wayland = "38;2;255;174;66"
# s_xorg = "38;2;37;175;255"
# s_shell = "38;2;34;140;34"
# e_hostname = "38;2;255;64;64"
# e_date = "38;2;144;144;144"
# e_box = "38;2;122;122;122"
# e_header = "4;38;2;0;255;0"
# e_user = "36"
# e_passwd = "4;38;2;245;245;205"
# e_badpasswd = "3;4;31"
# e_key = "38;2;255;174;66"
[chars]
# hb = "─"
# vb = "│"
# ctl = "┌"
# ctr = "┐"
# cbl = "└"
# cbr = "┘"
[functions]
# poweroff = F1
# reboot = F2
# fido = NONE
# refresh = F5
[strings]
# f_poweroff = "poweroff"
# f_reboot = "reboot"
# f_fido = "fido"
# f_refresh = "refresh"
# e_user = "user"
# e_passwd = "password"
# s_wayland = "wayland"
# s_xorg = "xorg"
# s_shell = "shell"
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
# timefmt = "%X %x"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,49 +0,0 @@
[colors]
bg = "48;2;24;22;22"
fg = "22;24;38;2;185;185;185"
# err = "1;31"
# s_wayland = "38;2;255;174;66"
# s_xorg = "38;2;37;175;255"
# s_shell = "38;2;34;140;34"
e_hostname = "38;2;208;189;156"
e_date = "38;2;144;144;144"
# e_box = "38;2;122;122;122"
e_header = "4;38;2;126;146;178"
e_user = "38;2;148;89;84"
# e_passwd = "4;38;2;245;245;205"
# e_badpasswd = "3;4;31"
# e_key = "38;2;255;174;66"
[chars]
# hb = "─"
# vb = "│"
# ctl = "┌"
# ctr = "┐"
# cbl = "└"
# cbr = "┘"
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
[strings]
# f_poweroff = "poweroff"
# f_reboot = "reboot"
# f_refresh = "refresh"
# e_user = "user"
# e_passwd = "password"
# s_wayland = "wayland"
# s_xorg = "xorg"
# s_shell = "shell"
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
timefmt = "%Y-%m-%d %H:%M:%S"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,49 +0,0 @@
[colors]
bg = "48;2;28;28;36"
fg = "22;24;38;2;168;168;168"
# err = "1;31"
# s_wayland = "38;2;255;174;66"
# s_xorg = "38;2;37;175;255"
# s_shell = "38;2;34;140;34"
e_hostname = "38;2;196;165;112"
e_date = "38;2;144;144;144"
# e_box = "38;2;122;122;122"
e_header = "4;38;2;114;133;162"
e_user = "38;2;211;137;88"
# e_passwd = "4;38;2;245;245;205"
# e_badpasswd = "3;4;31"
# e_key = "38;2;255;174;66"
[chars]
# hb = "─"
# vb = "│"
# ctl = "┌"
# ctr = "┐"
# cbl = "└"
# cbr = "┘"
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
[strings]
# f_poweroff = "poweroff"
# f_reboot = "reboot"
# f_refresh = "refresh"
# e_user = "user"
# e_passwd = "password"
# s_wayland = "wayland"
# s_xorg = "xorg"
# s_shell = "shell"
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
timefmt = "%Y-%m-%d %H:%M:%S"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,50 +0,0 @@
[colors]
# bg = "48;2;38;28;28"
# fg = "22;24;38;2;245;245;245"
# err = "1;31"
# s_wayland = "38;2;255;174;66"
# s_xorg = "38;2;37;175;255"
# s_shell = "38;2;34;140;34"
# e_hostname = "38;2;255;64;64"
# e_date = "38;2;144;144;144"
# e_box = "38;2;122;122;122"
e_header = "38;2;0;255;0"
# e_user = "36"
# e_passwd = "4;38;2;245;245;205"
# e_badpasswd = "3;4;31"
# e_key = "38;2;255;174;66"
[chars]
hb = " "
vb = " "
ctl = " "
ctr = " "
cbl = " "
cbr = " "
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
# EXCLUSIVE TO NERD FONTS
[strings]
f_poweroff = "\xef\x80\x91 "
f_reboot = "\xee\xab\x92 "
f_refresh = "\xf3\xb0\x91\x93 "
e_user = "\xee\xb4\xb5"
e_passwd = "\xef\x80\xa3"
s_wayland = "W"
s_xorg = "X"
s_shell = "$"
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
timefmt = "\xef\x80\x97 %X \xef\x84\xb3 %x"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,49 +0,0 @@
[colors]
bg = "48;2;15;22;15"
fg = "22;23;24;38;2;245;245;245"
# err = "1;31"
# s_wayland = "38;2;255;174;66"
# s_xorg = "38;2;37;175;255"
s_shell = "32"
e_hostname = "38;5;28"
e_date = "32"
e_box = "32"
e_header = "1;4;32"
e_user = "38;5;51"
e_passwd = "4;2;38;5;83"
e_badpasswd = "3;4;31"
e_key = "32"
[chars]
# hb = "─"
# vb = "│"
# ctl = "┌"
# ctr = "┐"
# cbl = "└"
# cbr = "┘"
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
[strings]
# f_poweroff = "poweroff"
# f_reboot = "reboot"
# f_refresh = "refresh"
# e_user = "user"
# e_passwd = "password"
# s_wayland = "wayland"
# s_xorg = "xorg"
# s_shell = "shell"
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
timefmt = "%Y-%m-%d %H:%M:%S"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,49 +0,0 @@
[colors]
bg = "48;2;19;19;22"
fg = "22;24;38;2;245;245;245"
# err = "1;31"
# s_wayland = "38;2;255;174;66"
# s_xorg = "38;2;37;175;255"
s_shell = "32"
e_hostname = "34"
e_date = "38;2;66;66;88"
# e_box = "38;2;122;122;122"
e_header = "1;4;36"
e_user = "38;5;51"
e_passwd = "4;2;38;5;80"
# e_badpasswd = "3;4;31"
e_key = "34"
[chars]
# hb = "─"
# vb = "│"
# ctl = "┌"
# ctr = "┐"
# cbl = "└"
# cbr = "┘"
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
[strings]
# f_poweroff = "poweroff"
# f_reboot = "reboot"
# f_refresh = "refresh"
# e_user = "user"
# e_passwd = "password"
# s_wayland = "wayland"
# s_xorg = "xorg"
# s_shell = "shell"
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
timefmt = "%Y-%m-%d %H:%M:%S"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,51 +0,0 @@
[colors]
# the '-' makes '\x1b[-m' which usually does nothing
bg = "-"
# you can even break out of the '\x1b...m' context like do, I wouldn't though
fg = "24;39m\x1b[?25l\x1b[-"
err = "-"
s_wayland = "-"
s_xorg = "-"
s_shell = "-"
e_hostname = "-"
e_date = "30"
e_box = "-"
e_header = "30"
e_user = "-"
e_passwd = "24;30"
e_badpasswd = "-"
e_key = "-"
[chars]
hb = " "
vb = " "
ctl = " "
ctr = " "
cbl = " "
cbr = " "
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
[strings]
# f_poweroff = "poweroff"
# f_reboot = "reboot"
# f_refresh = "refresh"
e_user = ""
e_passwd = ""
s_wayland = ""
s_xorg = ""
s_shell = ""
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
timefmt = " "
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,49 +0,0 @@
[colors]
bg = "48;2;0;0;255"
fg = "22;24;39;48;2;0;0;255"
# err = "1;31"
# s_wayland = "38;2;255;174;66"
# s_xorg = "38;2;37;175;255"
# s_shell = "38;2;34;140;34"
# e_hostname = "38;2;255;64;64"
e_date = "38;2;144;144;144"
e_box = "34"
e_header = "4;38;2;0;255;0"
e_user = "36"
e_passwd = "4;38;2;245;245;205"
# e_badpasswd = "3;4;31"
e_key = "1;31;48;2;255;174;66"
[chars]
hb = "█"
vb = "█"
ctl = "█"
ctr = "█"
cbl = "█"
cbr = "█"
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
[strings]
f_poweroff = "powewoff"
f_reboot = "rewoot"
f_refresh = "rewresh"
e_user = "wuser"
e_passwd = "passwd"
s_wayland = "waywand"
s_xorg = "xworg"
s_shell = "swell"
# opts_pre = "< "
# opts_post = " >"
# ellipsis = "…"
[behavior]
# include_defshell = true
timefmt = "%Y-%m-%d %H:%M:%S"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0704a1aadffee71bc0753c861d8ac8b8588aae76ad8cdcb4f2c2700b98ec095c
size 23814

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:58d56d6e16e14f0eddaa8a11e8bf238f2056e784b9c7c46d88aa8ff2d948355e
size 23110

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:225dba8cf87de1ae7118bfd98a1966fdb92cc826418dd9ef7dda5ee77ae8d0f3
size 23886

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0c8269cc55fdc26bfff240b3dccd94ffab6400b33c049af23912b74a62247943
size 23826

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:01f578e0727dcc8f9d2534e1a54ce493d0c4c446d8b7e2bff5116aecca1086f1
size 23782

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d67863994561214e611e4c284b74b64e41adf9350b21a595825d7abe229a998c
size 21052

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cac302d7469081f6e3eb411b82b059fdf3b820d83967754f079a6432ca578f54
size 20943

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3aa3756e8cb9a62d72930af1da781cb4272bcda046e159c9b240b34748fbe7fc
size 20496

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5d63f9b3f6bf514c7cd64d5c94dfff1f130e0eaca56e12db8c77b5e36aa519f3
size 18124

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fcae6be654c7e77415911797771842ebef130b210e8ea8e3c78c99e80488c0a0
size 21227

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:072bf1faf34c51ec153aae4aafdebf5fbafa3037d754f5a0d2fe0c0b95eedb08
size 21249

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:16059ea228e5ac63b1896a7142c07330fae11535af2e3dce8f7bf0c89e2a19f3
size 13876

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9d838314de5c2888ef971fecef91412915aacf6cf0b5cb6df82ef74f37980621
size 20133

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a45af03b3737539e8dcb397f495bcfe033c57e92afb2d41780011a70c7fc599e
size 16514

View File

@@ -1,85 +0,0 @@
#!/usr/bin/env bash
set -e
MYSELF=$(realpath "$0")
MYDIR=$(dirname "$MYSELF")
COLS=60
ROWS=35
if [[ -z "$IM_FLOATING" ]]; then
if [[ -z "$LIDM_SESSIONS_N" ]]; then
echo "Please set LIDM_SESSIONS_N" >&2;
exit 1;
fi
# 12 pts ≈ 16 px
exec hyprctl dispatch exec \
"[float; size $((COLS*16)) $((ROWS*16))]" \
"kitty --override font_size=12.0 --override background_opacity=1 --override cursor_trail=0 --override cursor_shape=beam --override cursor_blink_interval=0 bash -c 'cd \"$PWD\" && IM_FLOATING=1 LIDM_PATH=\"$LIDM_PATH\" LIDM_SCR_TTY=\"$(tty)\" LIDM_SESSIONS_N=\"$LIDM_SESSIONS_N\" bash -i \"$MYSELF\"'"
fi
LIDM_PATH=${LIDM_PATH:-$(command which lidm)}
echo "Using '$LIDM_PATH'"
[[ -e "$LIDM_PATH" ]] || {
echo "'$LIDM_PATH' is not executable" >&2;
sleep 2;
exit 1;
}
notify-send "also make sure this is not in the way either"
echo "Press enter when the window is clearly visible and nothing in the way"
echo "ONLY use this script if you are on hyprland and a \"normal\" kitty config"
echo "AND make sure you have rg, jq, grim, gifski and maybe a few more"
exec 2>"$LIDM_SCR_TTY"
echo "This should show on the original terminal" > "$LIDM_SCR_TTY"
echo "And this too" >&2
read -r
BG=$(rg '^background ' ~/.config/kitty/kitty.conf | cut -d'#' -f2)
printf '\033]4;0;rgb:%s\007' "${BG:0:2}/${BG:2:2}/${BG:4:2}"
PRAD=$(hyprctl getoption decoration:rounding | rg int | cut -d' ' -f2)
hyprctl keyword decoration:rounding 0
for theme in "$MYDIR"/*.ini; do
LIDM_CONF="$theme" "$LIDM_PATH" &
LIDM_PID=$!
(
sleep .2
for n in $(seq "$LIDM_SESSIONS_N"); do
GEOMETRY=$(
hyprctl -j activewindow | \
jq -r '(.at[0]|tostring) + "," + (.at[1]|tostring) + " " + (.size[0]|tostring) + "x" + (.size[1]|tostring)'
)
grim -g "$GEOMETRY" - > "$MYDIR/screenshots/$(basename "$theme" | cut -d. -f1)-$n.png"
notify-send "$n taken"
wtype -k right
sleep .5
done
kill -15 $LIDM_PID
) &
fg %-
sleep .5
done
gifski \
-Q 95 --fps 4 \
-W $((COLS*32)) \
-o "$MYDIR/../assets/media/lidm.gif" \
"$MYDIR"/screenshots/*-?.png &> "$LIDM_SCR_TTY"
for screenshot in "$MYDIR"/screenshots/*"-2.png"; do
# shellcheck disable=SC2001
mv "$screenshot" "$(sed 's/-[0-9]\.png/.png/' <<<"$screenshot")"
done
rm "$MYDIR"/screenshots/*"-"[0-9].png
printf '\033]104\007'
hyprctl keyword decoration:rounding "$PRAD"

View File

@@ -1,50 +0,0 @@
[colors]
# the '-' makes '\x1b[-m' which usually does nothing
bg = "-"
fg = "24"
err = "-"
s_wayland = "-"
s_xorg = "-"
s_shell = "-"
e_hostname = "-"
e_date = "-"
e_box = "-"
e_header = "-"
e_user = "-"
e_passwd = "-"
e_badpasswd = "-"
e_key = "-"
[chars]
# hb = "─"
# vb = "│"
# ctl = "┌"
# ctr = "┐"
# cbl = "└"
# cbr = "┘"
[functions]
# poweroff = F1
# reboot = F2
# refresh = F5
[strings]
f_poweroff = "off"
f_reboot = "reb"
f_refresh = "ref"
e_user = "user"
e_passwd = "pass"
s_wayland = "wayl"
s_xorg = "xorg"
s_shell = "sh"
opts_pre = "· "
opts_post = " "
ellipsis = "…"
[behavior]
# include_defshell = true
timefmt = "%Y-%m-%d %H:%M:%S"
# refresh_rate = 100
source = "/etc/lidm.env"
source = "/etc/locale.conf"
user_source = ".lidm.env"

View File

@@ -1,18 +0,0 @@
#!/usr/bin/env bash
set -e
MYSELF=$(realpath "$0")
MYDIR=$(dirname "$MYSELF")
LIDM_PATH=${LIDM_PATH:-$(command which lidm)}
echo "Using '$LIDM_PATH'"
[[ -e "$LIDM_PATH" ]] || { echo "'$LIDM_PATH' is not executable" >&2; exit 1; }
echo "Press \`Ctrl + C\` once you are done viewing the theme"
sleep 3
for theme in "$MYDIR/"*.ini; do
LIDM_CONF="$theme" "$LIDM_PATH" || :
echo "That was '$(basename "$theme")'"
sleep 2 || :
done