colloid-nord-gtk-theme-fixed-git
CLEAN
maintainer gaougalos
0 votes
base
colloid-gtk-theme-fixed-git
scanned 2026-10-30 00:29:30.650963
Triggered rules
Clean
AI review downgraded a static finding
llm_review
The static rules flagged this LOW, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it CLEAN (confidence 95%): The package builds a GTK theme from a legitimate GitHub repository and applies harmless local fixes; no remote code execution or malicious behavior is present.
1 higher static finding superseded - not the current verdict (shown for transparency)
Low
Few votes, recently uploaded
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
PKGBUILD
1
# Maintainer: gaou-piou <i dot am dot piou at gmail dot com>
2
# Contributor: Mark Wagie <mark dot wagie at proton dot me>
3
pkgbase=colloid-gtk-theme-fixed-git
4
pkgname=('colloid-gtk-theme-fixed-git'
5
'colloid-catppuccin-gtk-theme-fixed-git'
6
'colloid-dracula-gtk-theme-fixed-git'
7
'colloid-everforest-gtk-theme-fixed-git'
8
'colloid-gruvbox-gtk-theme-fixed-git'
9
'colloid-nord-gtk-theme-fixed-git')
10
_name=colloid-gtk-theme
11
_fixes=colloid
12
pkgver=2026.08.08.r3.gfe11342.f7.0c09bae
13
pkgrel=1
14
pkgdesc="Colloid GTK theme, with GTK 3/4 geometry fixes (window buttons, headerbars, Nautilus, Electron/Chromium titlebars)"
15
arch=('any')
16
url='https://github.com/vinceliuice/Colloid-gtk-theme'
17
license=('GPL-3.0-or-later')
18
depends=('gnome-themes-extra')
19
makedepends=('git' 'sassc')
20
optdepends=('colloid-cursors: Matching cursor theme'
21
'colloid-icon-theme: Matching icon theme'
22
'gtk-engine-murrine: GTK 2 support')
23
options=('!strip' '!debug')
24
install=colloid-gtk-theme-fixed.install
25
source=("${_name}::git+https://github.com/vinceliuice/Colloid-gtk-theme.git")
26
sha256sums=('SKIP')
27
# The fixes follow the main branch of github.com/gaou-piou/gtk-theme-fixes, so a change there needs
28
# no package update; pkgver() records which commit a build took. local_build=true: they come from a
29
# gtk-theme-fixes/ working tree in a parent directory of this PKGBUILD instead (uncommitted changes
30
# included).
31
if [[ ${local_build:-} != true ]]; then
32
source+=('gtk-theme-fixes::git+https://github.com/gaou-piou/gtk-theme-fixes.git')
33
sha256sums+=('SKIP')
34
fi
35
36
_local_fixes() {
37
local d=$startdir
38
until [[ -d $d/gtk-theme-fixes/generic || $d == / ]]; do d=$(dirname "$d"); done
39
if [[ ! -d $d/gtk-theme-fixes/generic ]]; then
40
error "local_build: no gtk-theme-fixes/ in a parent directory of $startdir"
41
return 1
42
fi
43
printf '%s\n' "$d/gtk-theme-fixes"
44
}
45
46
# <theme version>.f<count>.<commit>: the commits of gtk-theme-fixes that change the files this
47
# package uses (generic/ and its own directory), so other themes' fixes leave the version alone
48
pkgver() {
49
local theme="$srcdir/${_name}" fixes="$srcdir/gtk-theme-fixes" v
50
if [[ ${local_build:-} == true ]]; then
51
fixes=$(_local_fixes) || return 1
52
fi
53
if v=$(git -C "$theme" describe --long --tags --abbrev=7 2>/dev/null); then
54
v=$(sed 's/\([^-]*-g\)/r\1/;s/-/./g' <<< "$v")
55
else
56
v=r$(git -C "$theme" rev-list --count HEAD).g$(git -C "$theme" rev-parse --short=7 HEAD)
57
fi
58
printf '%s.f%s.%s' "$v" "$(git -C "$fixes" rev-list --count HEAD -- generic "${_fixes}")" \
59
"$(git -C "$fixes" log -1 --format=%h --abbrev=7 HEAD -- generic "${_fixes}")"
60
}
61
62
prepare() {
63
local fx="$srcdir/gtk-theme-fixes"
64
if [[ ${local_build:-} == true ]]; then
65
local d
66
d=$(_local_fixes) || return 1
67
warning "local_build: fixes from $d (uncommitted changes included)"
68
rm -rf "$fx" && mkdir "$fx"
69
cp -r "$d/generic" "$d/${_fixes}" "$fx/"
70
fi
71
cd "${_name}"
72
73
# install the variants side by side: each package's install.sh run cleans the themes first
74
sed -i 's/clean_theme && install_theme/install_theme/g' install.sh
75
76
local sass=src/sass
77
cp "$fx/generic/fixes-3.0.scss" "$sass/_fixes-3.0.scss"
78
cp "$fx/generic/fixes-4.0.scss" "$sass/_fixes-4.0.scss"
79
cp "$fx/${_fixes}/local-fixes-4.0.scss" "$sass/_local-fixes-4.0.scss"
80
cp "$fx/${_fixes}/fixes-variables.scss" "$sass/_fixes-variables.scss"
81
82
# the fixes are imported near the end of each GTK entry file, after the theme's own partials,
83
# so they see its variables
84
local f
85
for f in src/main/gtk-3.0/*.scss; do
86
sed -i "$(awk 'END { print NR - 1 }' "$f") a @import '../../sass/fixes-3.0';" "$f"
87
sed -i "$(awk 'END { print NR - 6 }' "$f") a @import '../../sass/fixes-variables';" "$f"
88
done
89
for f in src/main/gtk-4.0/*.scss; do
90
sed -i "$(awk 'END { print NR - 1 }' "$f") a @import '../../sass/fixes-4.0';" "$f"
91
sed -i "$(awk 'END { print NR - 1 }' "$f") a @import '../../sass/local-fixes-4.0';" "$f"
92
sed -i "$(awk 'END { print NR - 6 }' "$f") a @import '../../sass/fixes-variables';" "$f"
93
done
94
}
95
96
# floating panels, no window border, normal (non-macOS) window buttons
97
_colloid() {
98
cd "${_name}"
99
install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
100
install -d "${pkgdir}/usr/share/themes"
101
# TERM: install.sh draws a spinner with tput, which fails without one (clean chroots)
102
TERM=${TERM:-dumb} ./install.sh -t all --tweaks "$@" float rimless normal -d "${pkgdir}/usr/share/themes"
103
}
104
105
package_colloid-gtk-theme-fixed-git() {
106
provides=('colloid-gtk-theme')
107
conflicts=('colloid-gtk-theme' 'colloid-gtk-theme-git')
108
_colloid
109
}
110
111
package_colloid-catppuccin-gtk-theme-fixed-git() {
112
pkgdesc="Colloid GTK theme, Catppuccin colors, with GTK 3/4 geometry fixes"
113
provides=('colloid-catppuccin-gtk-theme')
114
conflicts=('colloid-catppuccin-gtk-theme' 'colloid-catppuccin-gtk-theme-git')
115
_colloid catppuccin
116
}
117
118
package_colloid-dracula-gtk-theme-fixed-git() {
119
pkgdesc="Colloid GTK theme, Dracula colors, with GTK 3/4 geometry fixes"
120
provides=('colloid-dracula-gtk-theme')
121
conflicts=('colloid-dracula-gtk-theme' 'colloid-dracula-gtk-theme-git')
122
_colloid dracula
123
}
124
125
package_colloid-everforest-gtk-theme-fixed-git() {
126
pkgdesc="Colloid GTK theme, Everforest colors, with GTK 3/4 geometry fixes"
127
provides=('colloid-everforest-gtk-theme')
128
conflicts=('colloid-everforest-gtk-theme' 'colloid-everforest-gtk-theme-git')
129
_colloid everforest
130
}
131
132
package_colloid-gruvbox-gtk-theme-fixed-git() {
133
pkgdesc="Colloid GTK theme, Gruvbox colors, with GTK 3/4 geometry fixes"
134
provides=('colloid-gruvbox-gtk-theme')
135
conflicts=('colloid-gruvbox-gtk-theme' 'colloid-gruvbox-gtk-theme-git')
136
_colloid gruvbox
137
}
138
139
package_colloid-nord-gtk-theme-fixed-git() {
140
pkgdesc="Colloid GTK theme, Nord colors, with GTK 3/4 geometry fixes"
141
provides=('colloid-nord-gtk-theme')
142
conflicts=('colloid-nord-gtk-theme' 'colloid-nord-gtk-theme-git')
143
_colloid nord
144
}
145
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-30 00:29:30 | Clean | 2 |
| 2026-10-29 21:53:30 | Low | 1 |