Open zjp opened 6 years ago
so, first of all, which software is missing?
for example for flatpak distribution, where inkscape dep is not available and where spotify plugin doesn't make any sense i've just disabled those two plugins. mb it's something what we can make in the gentoo packaging?
btw you can add PYTHON_COMPAT 3.6 since that python version is covered by travis
and also i think the main problem is what you're missing a call to install script, see this usage examples,
arch: https://github.com/themix-project/oomox/blob/master/packaging/arch/PKGBUILD#L85
ubuntu: https://github.com/themix-project/oomox/blob/master/packaging/ubuntu/create_ubuntu_package.sh#L16
also i am trying to write a makefile right now, it should make things even easier for packaging
now you can use make DESTDIR=..... PREFIX=..... install
instead of install.sh script (usage links above updated)
Still setting up the house. In any case, I'm glad that you mentioned python because I had meant to ask anyway. As for the missing software, none of your dependencies -- for any module/addon/plugin/whathaveyou -- are missing. I was saying that the intent of my overlay is to provide software that hasn't been found on gentoo before, like pywal
.
I might have to call the install script but if you look at the pywal
ebuild it isn't called... I wonder what makes the difference between needing to call it and not.
so i think when you will add make DESTDIR=${DESTDIR} install
to your current ebuild it gonna work
i think because pywal is a python library it's being installed using some pre-defined template for python packages in ebuild (https://wiki.gentoo.org/wiki/Project:Python/Eclasses)
but it doesn't make sense to package oomox as standard python package, because python part -- is just a useless gui which depends on plugins
and plugins are not python packages (plugin interfaces, ie oomox_plugin.py are python but it's just an interface for calling some shell script)
there is also an open discussion about packaging plugins as separate packages: https://github.com/themix-project/oomox/issues/129
I'll make those changes when I can and then get back to you with an update on whether or not the installation was successful and whether the program worked after that. I'll have to keep up-to-date on that thread so that when your move is complete I can update this package. At least on my end it may make more sense to keep those packages under this single installer and use USE flags to call them.
Also, per #73 should Python v3.4 be dropped from PYTHON_COMPAT?
python 3.4 probably will stay at least til end of the year, so better leave it in the ebuild (the biggest reason i wanna drop it is to use modern type annotations which available starting from 3.5)
Thanks for this ticket as I was searching for an ebuild. Is the ebuild ready? Can't digest it:
# ebuild oomox-1.6.1.ebuild digest
Error(s) in metadata for 'x11-misc/oomox-1.6.1':
DEPEND: expected: '(', got: '(sys-devel/bc', token 19
REQUIRED_USE: malformed syntax: 'spotify? ( || (polkit gksu) ) || ( python_targets_python3_4 python_targets_python3_5 )'
However starting the gui from a repo clone is also failing:
$ ./gui.sh
** (__main__.py:12070): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Traceback (most recent call last):
File "/usr/lib64/python3.6/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib64/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/mb/src/other/oomox/oomox_gui/__main__.py", line 1, in <module>
from .main import main
File "/home/mb/src/other/oomox/oomox_gui/main.py", line 17, in <module>
from .theme_file_parse import read_colorscheme_from_path
File "/home/mb/src/other/oomox/oomox_gui/theme_file_parse.py", line 1, in <module>
from .theme_model import THEME_MODEL
File "/home/mb/src/other/oomox/oomox_gui/theme_model.py", line 4, in <module>
from .plugin_loader import (
File "/home/mb/src/other/oomox/oomox_gui/plugin_loader.py", line 46, in <module>
init_plugins()
File "/home/mb/src/other/oomox/oomox_gui/plugin_loader.py", line 29, in init_plugins
os.path.join(plugin_path, "oomox_plugin.py")
File "/home/mb/src/other/oomox/oomox_gui/helpers.py", line 23, in get_plugin_module
spec.loader.exec_module(module)
File "<frozen importlib._bootstrap_external>", line 674, in exec_module
File "<frozen importlib._bootstrap_external>", line 780, in get_code
File "<frozen importlib._bootstrap_external>", line 832, in get_data
FileNotFoundError: [Errno 2] No such file or directory: '/home/mb/src/other/oomox/oomox_gui/../plugins/oomoxify/oomox_plugin.py'
$ python --version
Python 3.6.6
I also tried with a Python 3.5 and 2.7... The path of that file not found seems to be wrong:
$ find -name oomox_plugin.py
./plugins/icons_archdroid/oomox_plugin.py
./plugins/icons_gnomecolors/oomox_plugin.py
./plugins/import_base16/oomox_plugin.py
./plugins/import_pil/oomox_plugin.py
./plugins/theme_arc/oomox_plugin.py
./plugins/theme_materia/oomox_plugin.py
./plugins/theme_oomox/oomox_plugin.py
By the way, I was looking for a way to adapt Gtk theme colors, found https://github.com/satya164/gtk-theme-config, but that was archived and also the many forks are unmaintained. Then I can change some of the colors, but not some important applications highlight colors or the decoration title bar color. Then I found this oomox which seems to be a sophisticated theme editor.
in first case it explicitly saying about syntax error in ebuild, nuff said
in second: you're missing oomoxify submodule for some reason but its directory exists (and is blank/have missing files), so either fix the git submodule or completely remove that dir from ./plugins/ (i guess you just skipped the README.md and made normal clone instead of recursive)
and also it's not gonna to work with python 2
It's on my testing branch for a reason. I'm very new at this, but I thank you for your patience as I finish setting my house up and get back to work on it.
For what it's worth, I put this together: https://github.com/Jesse-Millwood/oomox-overlay
@Jesse-Millwood thanks a lot! i'll add a link to the readme after few other gentoo users with different setups will confirm it works for them
@Jesse-Millwood thanks a lot! i'll add a link to the readme after few other gentoo users with different setups will confirm it works for them
Sounds good! I am new to writing ebuilds but "it works on my machine" TM. So if anyone has an issue feel free to open an issue. It basically uses git to grab the repo because then it'll automatically do the recursive fetching for submodules. I don't know if it is necessarily idiomatic gentoo ebuild style since I'm not sure if the version is necessarily locked down for the submodules and I don't have package versions defined. But it does target the 1.11 version.
i just see what above there were some questionable topics and also i remember how many problems it was while people there trying to write a void-linux ebuild so i suggest at least one pair of eyes just double-check it :-)
i mean i could check if it's buildable under calculate-linux, but i have not enough gentoo background myself to see if the ebuild compliant to USE flags and other gentoo ecosystem packaging traditions
I tested the ebuild, and it's working. Thank you very much.
However it leaves a huge installation of
530M /opt/oomox/
with all the theme repo involved.
Then it also depended on huge media-gfx/inkscape being built:
# emerge -atv oomox
These are the packages that would be merged, in reverse order:
Calculating dependencies... done!
* Manifest not found for '/usr/local/portage/x11-misc/oomox/oomox-1.6.1.ebuild'
[ebuild N ] x11-misc/oomox-1.11::oomox-overlay 0 KiB
[ebuild N ] sys-process/parallel-20190122::gentoo 1.752 KiB
[ebuild N ] dev-perl/Devel-Size-0.820.0::gentoo USE="-test" 72 KiB
[ebuild N ] media-gfx/inkscape-0.92.4::gentoo USE="cdr dbus exif jpeg lcms nls openmp spell -dia -gnome -imagemagick -inkjar -latex -postscript -static-libs -visio -wpg" PYTHON_TARGETS="python2_7" 31.182 KiB
[ebuild N ] media-gfx/uniconvertor-2.0_pre379-r2::gentoo PYTHON_TARGETS="python2_7" 1.802 KiB
[ebuild N ] dev-libs/boehm-gc-8.0.4::gentoo USE="cxx threads -static-libs" ABI_X86="(64) -32 (-x32)" 1.134 KiB
[ebuild N ] media-gfx/potrace-1.15::gentoo USE="-metric -static-libs" 636 KiB
[ebuild N ] media-gfx/scour-0.36::gentoo PYTHON_TARGETS="python2_7 python3_6 -python3_4 -python3_5" 90 KiB
[ebuild N ] dev-python/pyyaml-3.13::gentoo USE="-examples -libyaml" PYTHON_TARGETS="python2_7 python3_6 -pypy -pypy3 -python3_4 -python3_5 -python3_7" 265 KiB
[ebuild N ] dev-python/pystache-0.5.4::gentoo USE="-test" PYTHON_TARGETS="python2_7 python3_6 -pypy -python3_4 -python3_5" 74 KiB
Total: 10 packages (10 new), Size of downloads: 37.003 KiB
Would you like to merge these packages? [Yes/No]
@Massimo-B thank you for testing it out! I was looking at the arch pkgbuild and it depended on inkscape too. Since most other gentoo builds break things up, I'll try to break things up too. I realize /opt/ probably isn't the best place for everything. Maybe I can make the different themes different iuse flags?
Also this is my first ebuild I've really shared so if you have any other recommendations, I'd like to hear them.
arch pkgbuild currently depends on resvg instead of inkscape (both would work but resvg does the job faster)
but i think what resvg is not packaged for gentoo yet
mb it could be the right thing to be addressed by USE-flags or some other sort of option
It looks like there is some cargo support in gentoo ebuilds, I'll look at making a resvg ebuild and making it an option to use either inkscape or resvg
@Jesse-Millwood thanks ,working .
@Jesse-Millwood @ilnanny which link/instructions should i put to the readme?
and thanks a lot for packaging and testing :)
It still depends on inkscape and I haven't gotten resvg to build in an ebuild yet. I havn't broken things up with the use flags yet either. I got kind of bogged down with resvg and haven't revisited it in a little while.
If you want, you can link to my repo and say the instructions are there and maybe mention that it depends on inkscape and isn't as full featured as the other packaged versions?
inkscape the same functional as resvg, just 2-20x times slower when using with oomox
actionless i used the Jesse-Millwood overlay (I have already installed inkscape because I use it a lot.)
arc-built themes do not work, but they have also removed them from other packages like in void linux, I think it is a question of incompatibility with the arc theme. I do not know . If you are interested you can use the script of Erik Dubois ,Arc Theme Colora, search in erik repo.
but what the error do you have with oomox arc theme? and if you're using the correct submodule revision or just some random/latest version of arc gtk theme?
warns me that two scripts are missing to correctly export the arc theme. Now I'm on the work computer and I don't have gentoo here. But have you created the ebuild or are you using the overlay?
mb in ebuild arc revision need to be updated, please try replacing revision to this one:
https://github.com/NicoHood/arc-theme/tree/2e3feaa0451ad45ff40235ea90ffe98588b3f6e0
Thank you @actionless Now work fine!
@ilnanny so, after @Jesse-Millwood will update arc submodule in his ebuild it gonna be good enough for adding link to the readme?
yeah I'll try and fix the arc-theme thing this week. One of the issues is that the .gitsubmodule points to a branch that doesn't exist in the repo. I'm not entirely sure what the git3 ebuild commands are doing because the commit that the oomox repo is pointing at is correct.
Actually, I'm updating it to 1.12.2 and the build has gotten farther.
I manually copied the folder downloaded from the new link you posted to me and everything works fine. But I believe that the version installed on archlinux (git) is more up to date, the first theme concerns Mother's Day, while the version I installed on gentoo, has as its first theme, Valentine's Day. why .? Can you tell me which output should I post to you to check which is the most updated version ?.@actionless
@Jesse-Millwood now I update the repository and let you know. do you say I should uninstall the old version to check for proper operation?
I just removed the 1.11 ebuild and added the 1.12.2 ebuild. It did merge on my machine. I am going to have to look at splitting it up though I think in the future as this was reported:
* Final size of build directory: 1034992 KiB (1010.7 MiB)
* Final size of installed tree: 502368 KiB ( 490.5 MiB)
I think the increased size is because of all of the icon themes, which shouldn't all be included in an ebuild I suppose.
Yes is very big .
...an extraction of the repo update output.
`Readme.org | 1 + x11-misc/oomox/Manifest | 3 ++- x11-misc/oomox/oomox-1.11.ebuild | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) === Sync completed for oomox-overlay q: Updating ebuild cache for /usr/local/portage/oomox-overlay
`
I think an emerge oomox should update it.
I don't see the new one in your sync. In mine I got:
Fast-forward
x11-misc/oomox/Manifest | 3 ++-
x11-misc/oomox/{oomox-1.11.ebuild => oomox-1.12.2.ebuild} | 0
2 files changed, 2 insertions(+), 1 deletion(-)
rename x11-misc/oomox/{oomox-1.11.ebuild => oomox-1.12.2.ebuild} (100%)
=== Sync completed for oomox-overlay
you're right, I've updated to the new version. o.t. this I created with oomox, mixing arc and matter and adjusting openbox by hand. What do you think about it ?
I'll be upset if I don't see that on https://reddit.com/r/unixporn
all right, so is it working good enough now to put it into readme? :)
@actionless I would say so. It could be better in terms of flexibility but right now it pulls in all of the themes so that you can use oomox to it's full extent.
work fine now
@Jesse-Millwood should i just leave a link to https://github.com/Jesse-Millwood/oomox-overlay or also leave some text around it?
@actionless You can just leave a link to my repo since that way seems to work.
I'll look at getting it added so the layman tool can use it, then it'll be easier.
Actually it looks like you'd be able to just do:
layman -o https://raw.github.com/Jesse-Millwood/oomox-overlay/layman.xml -f -a oomox-overlay
emerge --sync
emerge -av oomox
It seemed to work for me but it'd be nice to have some more input
required : app-portage/layman
Hello,
Because of the fact that Gentoo is lacking some software that can be found in the AUR and since software availability is one of the main drivers that keeps a distro's install base wide, I've been working on an overlay to fill in some of the gaps.
I have part of an ebuild written here in the testing branch of my overlay repo, but I'd like some help writing it since it's the first one I've written "de novo" -- others are cannibalized from dead overlays.
Here is the link: https://github.com/zjpxshade/gentoo-zjpxshade/blob/testing/x11-misc/oomox/oomox-1.6.1.ebuild
If any are interested, I appreciate the help!
Thank you,
-Z