Search Criteria
Package Details: tela-circle-icon-theme-all 2024.04.19-2
Package Actions
Git Clone URL: | https://aur.archlinux.org/tela-circle-icon-theme.git (read-only, click to copy) |
---|---|
Package Base: | tela-circle-icon-theme |
Description: | A flat colorful design icon theme (all variants) |
Upstream URL: | https://github.com/vinceliuice/Tela-circle-icon-theme |
Licenses: | GPL3 |
Provides: | tela-circle-icon-theme |
Submitter: | ogarcia |
Maintainer: | ogarcia (marmis) |
Last Packager: | marmis |
Votes: | 5 |
Popularity: | 0.139667 |
First Submitted: | 2022-11-05 11:32 (UTC) |
Last Updated: | 2024-04-23 01:19 (UTC) |
Dependencies (17)
- tela-circle-icon-theme-blackAUR
- tela-circle-icon-theme-blueAUR
- tela-circle-icon-theme-brownAUR
- tela-circle-icon-theme-draculaAUR
- tela-circle-icon-theme-greenAUR
- tela-circle-icon-theme-greyAUR
- tela-circle-icon-theme-manjaroAUR
- tela-circle-icon-theme-nordAUR
- tela-circle-icon-theme-orangeAUR
- tela-circle-icon-theme-pinkAUR
- tela-circle-icon-theme-purpleAUR
- tela-circle-icon-theme-redAUR
- tela-circle-icon-theme-standardAUR
- tela-circle-icon-theme-ubuntuAUR
- tela-circle-icon-theme-yellowAUR
- adwaita-icon-theme (adwaita-icon-theme-gitAUR, adwaita-icon-theme-41AUR) (optional) – for better GNOME integration
- breeze-icons (breeze-icons-gitAUR) (optional) – for better KDE integration
Required by (4)
- orchis-dracula-theme-git (requires tela-circle-icon-theme) (optional)
- orchis-nord-theme-git (requires tela-circle-icon-theme) (optional)
- orchis-theme (requires tela-circle-icon-theme) (optional)
- orchis-theme-git (requires tela-circle-icon-theme) (optional)
Latest Comments
ogarcia commented on 2024-04-22 15:17 (UTC)
@marmis done! ;-)
marmis commented on 2024-04-22 15:12 (UTC)
Okay, @ogarcia, that works for me. Thanks!
ogarcia commented on 2024-04-22 06:49 (UTC)
Hi @marmis How about if I make you a co-maintainer to the package (both this one and the git) and you upload the changes you propose? I think it would be the best thing to do since you have done a great job. What do you think?
marmis commented on 2024-04-22 00:06 (UTC)
Hi, @ogarcia. This package was taking too long to build (122 mins, in one of my tests) and too much space (had to move BUILDDIR out of
/tmp/makepkg
), so I decided to take a look and try to improve this situation. You can see all my change on gitlab: tela-circle-icon-theme and tela-circle-icon-theme-spl.The culprit: debug symbols
The
debug
option was enabled by default onmakepkg.conf
last year. I don't think it does anything special for assets packages, besides "copying source files needed for debug symbols...". However, this step takes 5 times more than everything else in makepkg. Removing it reduce build time to only 20 mins.Avoid unnecessary builds
Besides the
debug
option, another factor that increases build time, is that every user has to build each theme variant, and the*-all
with each theme again, even though you can only install one of them. So, every build takes at least twice the time and twice the space for every user.My solution for this is to turn
tela-circle-icon-theme-all
into a meta package that pulls every theme package as dependencies, but don't actually builds anything. This reduces build time to only 10 mins on my machine, and also reduces space and memory usage to be enough to useBUILDDIR=/tmp/makepkg
.Package dependencies
These changes don't improve build times, but I think the dependencies could be improved here.
gtk-update-icon-cache
This is not really a dependency, it is only needed for the
install.sh
script. However, I think it shouldn't even be a makedepend here.gtk-update-icon-cache
contains a pacman hook that updates the icon cache automatically, including whengtk-update-icon-cache
is itself updated, but icon packages are not. But this system only makes sense ificon-theme.cache
is NOT managed by pacman, that means it shouldn't be part of the package. Other packages does things this way, you can see how hicolor-icon-theme or adwaita-icon-theme's file list doesn't include any*.cache
file. Besides, this icon theme could be used in DEs not based on GTK, so this step is not useful for them.My solution for this is to export an alias
gtk-update-icon-cache
toinstall.sh
that don't do anything, ensuring the icon cache is NOT generated at build time.Optional dependencies
You can see at each themes index.theme that they inherit missing icons from Adwaita and Breeze, so I think it makes sense to declare adwaita-icon-theme and breeze-icons as optional dependencies.
Packages conflicts
I believe the
conflicts
section of these packages could be improved, based on community recommendations and usual PKGBUILDs you find around here.git packages
Each
PACKAGE-git
needs to conflict with its non-gitPACKAGE
base, but the other way should NOT be specified. That means thattela-circle-icon-theme-blue
shouldn't explicitly conflict withtela-circle-icon-theme-blue-git
.*-all
packagesWe don't need to (and shouldn't, actually) specify each theme variant as a conflict for
tela-circle-icon-theme-all
, nor should eachtela-circle-icon-theme-VARIANT
package conflict with the*-all
variant. Instead, we can use the virtual packagetela-circle-icon-theme
that each package provides to define conflicts. This is done by specifyingconflicts=(tela-circle-icon-theme)
fortela-circle-icon-theme-all
only, leaving the field empty fortela-circle-icon-theme-VARIANT
s. The same applies for*-git
packages. You can see more details about this on the Wiki page.We don't actually need to deal with this if
tela-circle-icon-theme-all
becomes a meta package.