summaryrefslogtreecommitdiff
path: root/raveos-hyprland-theme/PKGBUILD
blob: 99ff33849ff791f17de3d51013533b4cc5d0492d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Maintainer: RaveOS Team
#
# raveos-hyprland-theme
# ---------------------
# Hyprland DE téma csomag: Lua konfig, DankMaterialShell (DMS) shell, hyprshell
# ablakváltó, SDDM téma, kitty, fastfetch, GTK/ikontémák.
#
# Az install script (raveos-hyprland-apply.service) egyszer fut boot-kor és
# bemásolja a theme-data tartalmát /etc/skel-be és minden meglévő user home-jába.

pkgname=raveos-hyprland-theme
pkgver=0.0.0
pkgrel=49
pkgdesc="RaveOS Hyprland theme payload and installer (includes DankMaterialShell)"
arch=('any')
url="https://raveos.local"
license=('custom')
conflicts=('raveos-cosmic-theme' 'raveos-gnome-theme')

# Futáshoz szükséges csomagok
depends=(
    'dms-shell-hyprland'  # DankMaterialShell - a fő panel/shell + wallpaper
    'matugen'             # wallpaper-alapú színséma generátor (matugen image ...)
    'socat'               # hyprshell socket kommunikációhoz (keybinds)
    'hyprshell'           # Alt+Tab ablakváltó overlay
    'polkit-gnome'        # polkit auth agent (GUI sudo kérések)
)

# Opcionális csomagok
optdepends=(
    'fastfetch: terminál üdvözlő (profile.d script indítja)'
    'wl-clipboard: wl-paste (clipboard pipeline)'
    'cliphist: clipboard history store'
    'kitty: alapértelmezett terminál'
)

install="${pkgname}.install"
source=()
sha256sums=()

# Build könyvtárak az src mellé, ne a makepkg alapértelmezettbe
BUILDDIR="${startdir}/build"
PKGDEST="${startdir}/build"
SRCDEST="${startdir}/build"
SRCPKGDEST="${startdir}/build"
LOGDEST="${startdir}/build"

package() {
    # theme-data payload: hypr konfig, DMS config, kitty, fastfetch, SDDM conf, GTK, stb.
    install -dm755 "${pkgdir}/usr/share/raveos/hyprland-theme"
    cp -r --no-preserve=ownership "${startdir}/theme-data" \
        "${pkgdir}/usr/share/raveos/hyprland-theme/"

    # SDDM téma: rendszerszintű telepítés, SDDM innen olvassa
    install -dm755 "${pkgdir}/usr/share/sddm/themes/sddm-rave-theme"
    find "${startdir}/theme-data/sddm/sddm-rave-theme" -type f | while read -r f; do
        rel="${f#${startdir}/theme-data/sddm/sddm-rave-theme/}"
        dir=$(dirname "$rel")
        install -dm755 "${pkgdir}/usr/share/sddm/themes/sddm-rave-theme/${dir}"
        install -Dm644 "$f" "${pkgdir}/usr/share/sddm/themes/sddm-rave-theme/${rel}"
    done

    # SDDM konfig: NEM itt telepítjük, hanem post_install/post_upgrade hook-ból,
    # mert ha az unowned fájl már létezik, a pacman ütközés-ellenőrzése ELŐBB fut
    # mint a pre_upgrade() hook, és blokkolja a tranzakciót.

    # apply script: boot-kor futó installer (systemd service hívja)
    install -Dm755 "${startdir}/raveos-hyprland-apply.sh" \
        "${pkgdir}/usr/lib/raveos-hyprland-theme/auto-apply.sh"

    # systemd system service: egyszer fut (ConditionPathExists=!.applied guard)
    install -Dm644 "${startdir}/raveos-hyprland-theme-apply.service" \
        "${pkgdir}/usr/lib/systemd/system/raveos-hyprland-theme-apply.service"

    # session init script: első login-kor beállítja a háttérképet a DMS-ben
    install -Dm755 "${startdir}/raveos-session-init.sh" \
        "${pkgdir}/etc/profile.d/raveos-session-init.sh"
}