Description
Dominique Michel
2020-12-14 14:31:08 UTC
Oops: the fvwm2 configurations are compatible with fvwm3, with no changes at all or with a few very minor changes. If we look how the few other distributions which have a package for fvwm3 integrate it, they made a new fvwm3 package: https://repology.org/project/fvwm3/versions. If wee look for fvwm, only one have fvwm3 and it integrate it like fvwm-3-1.0.1: https://repology.org/project/fvwm/versions Maybe the simplest in portage would be to name the package as fvwm-3.1.0.x. That way, in other packages, a depend like >=fvwm-2.6.x would work with both fvwm2 and fvwm3. Created attachment 678322 [details]
ebuild for fvwm3
It is a combined ebuild for fvwm-3.9999 and fvwm-3.1.0.1
When fvwm-3.1.0.2 will be released, it would be possible to simplify it a bit.
With fvwm-3.1.0.1 and USE=htmldoc, the html doc is installed into /usr/share/doc/fvwm3, but I prefer to wait until fvwm3-1.0.2 is released than to fix it.
Created attachment 678325 [details]
updated metadata with the go USE flag
Created attachment 678328 [details]
oops, make repoman happy
Created attachment 678331 [details]
ebuild for fvwm3
libstroke is not supported anymore by fvwm3.
Added KEYWORDS for non live versions.
Various fixes to make "repoman full" out of business.
Created attachment 678334 [details]
fixed metadata
Removed stroke use flag.
Fixed tab/space inconsistency.
Created attachment 678691 [details]
fix shebangs and simplify
This fix the python shebangs and make the ebuild ready for 3.1.0.2
Thomas Adam confirmed me than 3.1.0.2 will be out very soon. Anyway, 3.1.0.2 address several critical bugs and compatibility issues with the fvvwm2 configurations, the live version is very stable when 3.1.0.1 is not.
Created attachment 678694 [details]
fix dependencies
remove non needed dependency
Created attachment 678697 [details]
fix depends
remove non needed depend
I got the following error when trying the ebuild: Traceback (most recent call last): File "/usr/lib/portage/python3.7/doins.py", line 594, in <module> sys.exit(main(sys.argv[1:])) File "/usr/lib/portage/python3.7/doins.py", line 585, in main os.path.dirname(source)): File "/usr/lib/portage/python3.7/doins.py", line 434, in _doins return install_runner.install_file(source, os.path.dirname(dest)) File "/usr/lib/portage/python3.7/doins.py", line 370, in install_file return self._ins_runner.run(source, dest_dir) File "/usr/lib/portage/python3.7/doins.py", line 179, in run sstat = os.stat(source) FileNotFoundError: [Errno 2] No such file or directory: b'dev-docs/NEW-COMMANDS.md' * ERROR: x11-wm/fvwm-3.1.0.2::localrepo failed (install phase): * dodoc failed * * If you need support, post the output of `emerge --info '=x11-wm/fvwm-3.1.0.2::localrepo'`, * the complete build log and the output of `emerge -pqv '=x11-wm/fvwm-3.1.0.2::localrepo'`. * The complete build log is located at '/var/tmp/portage/x11-wm/fvwm-3.1.0.2/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/x11-wm/fvwm-3.1.0.2/temp/environment'. * Working directory: '/var/tmp/portage/x11-wm/fvwm-3.1.0.2/work/fvwm3-1.0.2' * S: '/var/tmp/portage/x11-wm/fvwm-3.1.0.2/work/fvwm3-1.0.2' * QA Notice: command not found: * * /var/tmp/portage/x11-wm/fvwm-3.1.0.2/temp/environment: line 3730: python_single-r1_pkg_setup: command not found Removing dev-docs/NEW-COMMANDS.md from DOCS solved this. $ emerge fvwm -vp [ebuild R ] x11-wm/fvwm-3.1.0.2::localrepo USE="png readline truetype -bidi -debug -doc -go -htmldoc -lock -netpbm -nls -perl -rplay -svg -tk -vanilla" PYTHON_SINGLE_TARGET="python3_7 (-python3_6) -python3_8 -python3_9" 0 KiB The attached ebuilds work great over here. Could those be released by any chance soon? That would be great. Thanks. Created attachment 713712 [details]
fix installation of dev-docs files
Created attachment 713796 [details]
fix maintainer
For now Go is optional, is there any way to make it optional in the ebuild too? The "go" use flag is useless because of the inherited "go-module" eclass. [ebuild N ] dev-lang/go-bootstrap-1.13.6::gentoo USE="(-big-endian)" 114,185 KiB [ebuild N ] dev-lang/go-1.16.5:0/1.16.5::gentoo CPU_FLAGS_X86="sse2" 20,432 KiB [ebuild U *] x11-wm/fvwm-3.9999::GEN2 [2.6.9::gentoo] USE="nls png svg truetype -bidi -debug -doc -go% -htmldoc% -lock -netpbm -perl -readline -rplay -tk -vanilla (-stroke%) (-xinerama%)" PYTHON_SINGLE_TARGET="python3_9%* -python3_8%" 0 KiB Also, dev-libs/libbson is not a dependency any more. Created attachment 744777 [details]
build.log
Using the attached ebuild building fvwm3 fails, build.log attached. @needle
Check GOFLAGS:
> go: parsing $GOFLAGS: unknown flag -w"
Hi Dominique, if you're interested in maintaining this, could you: - email me a 'git am'-able patch (git format-patch should do this, or git send-email), or - email the proxy-maint mailing list, or - make a github PR. Thanks! @sebaro. Thanks for the hint. I have been pointed to this fvwm3 commit, causes the issue: https://github.com/fvwmorg/fvwm3/commit/9bac03e442bcebd47db55946de840096fb04ce75 I try to write a patch for this. (In reply to sebaro from comment #18) > @needle > Check GOFLAGS: > > go: parsing $GOFLAGS: unknown flag -w" Patching the GOFLAGS in the Makefile.am is OK. Howerver it makes no difference if GOFLAGS is set to -s or left empty. The build breaks saying either "invalid value" for leaving empty or "unknown flag" if flags are set. This can not be solved this way. Someone with GO experienced would need to take a loo at this. (In reply to needle from comment #20) > @sebaro. > > Thanks for the hint. I have been pointed to this fvwm3 commit, causes the > issue: > > https://github.com/fvwmorg/fvwm3/commit/ > 9bac03e442bcebd47db55946de840096fb04ce75 > > I try to write a patch for this. > > (In reply to sebaro from comment #18) > > @needle > > Check GOFLAGS: > > > go: parsing $GOFLAGS: unknown flag -w" (In reply to needle from comment #21) > Patching the GOFLAGS in the Makefile.am is OK. Howerver it makes no > difference if GOFLAGS is set to -s or left empty. The build breaks saying > either "invalid value" for leaving empty or "unknown flag" if flags are set. > This can not be solved this way. Someone with GO experienced would need to > take a loo at this. I agree with you. I get the same error now, and if I go in $S and run "make", it compile without issue: make[3]: Entering directory '/var/tmp/portage/x11-wm/fvwm3-9999/work/fvwm3-9999/bin/FvwmPrompt' go build -mod=mod -ldflags="-s -w" -mod=vendor -o FvwmPrompt -v make[3]: Leaving directory '/var/tmp/portage/x11-wm/fvwm3-9999/work/fvwm3-9999/bin/FvwmPrompt' That imply it should be an issue with go in portage and into the ebuild. Created attachment 762823 [details]
remove libsson depend; add GO conditional
Can you please test the GO conditional and report how it work for you.
Created attachment 762824 [details]
build log
I can see 2 issues/warnings with go:
- In src_unpack:
* Tidying go.mod/go.sum
go: go.mod file not found in current directory or any parent directory; see 'go help modules'
I don't know if this can be ignored or if it should be fixed and how.
- In src_compile:
Making all in FvwmPrompt
make[3]: Entering directory '/var/tmp/portage/x11-wm/fvwm-3.9999/work/fvwm-3.9999/bin/FvwmPrompt'
go build -mod=mod -ldflags="-s -w" -mod=vendor -o FvwmPrompt -v
go: parsing $GOFLAGS: unknown flag -w"
make[3]: *** [Makefile:529: build] Error 1
I googled and try different things like setting the EGO_BUILD_FLAGS or GOFLAGS variables, but I found nothing that work and have no more clue. Even to use make instead of emake was not working.
Another issue I get with go in that ebuild is when I try, instead of maintaining a long list into EGO_SUM, to put the following: EGO_SUM=( "https://github.com/fvwmorg/fvwm3/blob/master/bin/FvwmPrompt/go.mod" ) which result into: ebuild fvwm-3.9999.ebuild digest ... !!! Couldn't download 'https:%2F%2Fgithub.com%2Ffvwmorg%2Ffvwm3%2Fblob%2Fmaster%2Fbin%2F!fvwm!prompt%2Fgo.mod%2F@v%2F.zip'. Aborting. !!! Fetch failed for https:%2F%2Fgithub.com%2Ffvwmorg%2Ffvwm3%2Fblob%2Fmaster%2Fbin%2F!fvwm!prompt%2Fgo.mod%2F@v%2F.zip, can't update Manifest Same issue if I try with the permalink: !!! Couldn't download 'https:%2F%2Fgithub.com%2Ffvwmorg%2Ffvwm3%2Fblob%2F42d9198c81d689b9c26a45ee1c5518df1b1d1f70%2Fbin%2F!fvwm!prompt%2Fgo.mod%2F@v%2F.zip'. Aborting (In reply to Dominique Michel from comment #26) > Same issue if I try with the permalink: > > !!! Couldn't download > 'https:%2F%2Fgithub. > com%2Ffvwmorg%2Ffvwm3%2Fblob%2F42d9198c81d689b9c26a45ee1c5518df1b1d1f70%2Fbin > %2F!fvwm!prompt%2Fgo.mod%2F@v%2F.zip'. Aborting [14:31:58] <@sam_> dominique_michel: as for the issue at the end of the bug, you have to put the contents of go.sum into that variable, _not_ the link to it [14:32:08] <@sam_> i do: cat /tmp/go.sum | cut -d" " -f1,2 | awk '{print "\t\"" $0 "\""}' [14:32:12] <@sam_> then i put the output into EGO_SUM (In reply to Dominique Michel from comment #24) > Making all in FvwmPrompt > make[3]: Entering directory > '/var/tmp/portage/x11-wm/fvwm-3.9999/work/fvwm-3.9999/bin/FvwmPrompt' > go build -mod=mod -ldflags="-s -w" -mod=vendor -o FvwmPrompt -v > go: parsing $GOFLAGS: unknown flag -w" > make[3]: *** [Makefile:529: build] Error 1 According to Thomas Adam on IRC #fvwm: - ... it'll be due to the golang version you're using. When I tell him I don't get that issue when running just "make", but only with portage, he answered: - Sounds like a Gentoo/Portage issue to me. Try asking them. I don't get that issue with the last released version: fvwm3-1.0.4. I am testing it and a patch for the live ebuild that fix that issue by removing these ldflags. But as the real issue seam to be in portage, that will be more a workaround than the real fix. Created attachment 762993 [details]
ebuild for the last released version
That version compile fine with portage and go version go1.17.6 linux/amd64
Created attachment 762994 [details, diff]
fix for the go ldflags portage issue
That patch works fine here with the live ebuild and go version go1.17.6 linux/amd64
Created attachment 762995 [details, diff]
use the build system to generate the html doc
fvwm documentation is so extensive than I really prefer to use the html version.
Created attachment 762996 [details]
live ebuild with fix for the go ldflags issue
Next step is a little bit more cleanup and, hopefully, a PR or an email with a portage patch.
Created attachment 763485 [details, diff]
Translucent Menus Patch
It works with some changes: * dev-libs/libbson is not needed any more, was replaced with internal cJSON * both doc and htmldoc flags require dev-ruby/asciidoctor * attached translucent menus patch from fvwm2 The ebuild 3.9999 works including the needed 2 patches: fvwm-3.9999-goflags.patch fvwm-3.9999-htmldoc.patch work now over here. Thanks for looking into this and fixing. OK, everything on the PR looks good to go now; Someone that actually has a fvwm2 configuration to migrate (or already uses fvwm3) should take a look and validate that functionality is working. The x11-wm/fvwm3 package has a weak blocker on x11-wm/fvwm to prevent collisions. I went with `x11-wm/fvwm3` to match upstream's naming convention. This will require some additional work by an actual fvwm3 user who can test (add '|| x11-wm/fvwm3' to deps). The most likely culprits are: x11-themes/fvwm-crystal x11-themes/fvwm_icons x11-themes/fvwm_sounds x11-themes/fvwm-themes-extra x11-themes/fvwm-themes I note that the majority of these packages are on EAPI 7, with one on 6 so they could probably use some love anyway - I've got a few other projects on at the moment and can't get to it right now, and an actual fvwm user is probably going to notice any issues - at the moment I'd only be able to go with 'it compiles and launches'. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=441413d3e25f69a370edd41ce25aad07f6803b86 commit 441413d3e25f69a370edd41ce25aad07f6803b86 Author: Matt Jolly <Matt.Jolly@footclan.ninja> AuthorDate: 2022-05-20 13:02:46 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-06-02 05:23:07 +0000 x11-wm/fvwm3: new package, add 1.0.4, 9999 Closes: https://bugs.gentoo.org/760012 Signed-off-by: Matt Jolly <Matt.Jolly@footclan.ninja> Closes: https://github.com/gentoo/gentoo/pull/25609 Signed-off-by: Sam James <sam@gentoo.org> x11-wm/fvwm3/Manifest | 3 + x11-wm/fvwm3/files/README.translucency | 94 ++++ x11-wm/fvwm3/files/fvwm3-1.0.4-htmldoc.patch | 70 +++ .../files/fvwm3-1.0.4-translucent-menus.patch | 487 ++++++++++++++++++++ x11-wm/fvwm3/files/fvwm3-9999-goflags.patch | 11 + x11-wm/fvwm3/files/fvwm3-9999-htmldoc.patch | 43 ++ .../fvwm3/files/fvwm3-9999-translucent-menus.patch | 489 +++++++++++++++++++++ x11-wm/fvwm3/fvwm3-1.0.4.ebuild | 200 +++++++++ x11-wm/fvwm3/fvwm3-9999.ebuild | 200 +++++++++ x11-wm/fvwm3/metadata.xml | 27 ++ 10 files changed, 1624 insertions(+) The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0676d323821ce5660feec809a9f8018a2ab58c3 commit e0676d323821ce5660feec809a9f8018a2ab58c3 Author: Matt Jolly <Matt.Jolly@footclan.ninja> AuthorDate: 2022-05-20 13:02:46 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-06-04 02:19:19 +0000 x11-wm/fvwm3: new package, add 1.0.4, 9999 Closes: https://bugs.gentoo.org/760012 Signed-off-by: Matt Jolly <Matt.Jolly@footclan.ninja> Signed-off-by: Sam James <sam@gentoo.org> x11-wm/fvwm3/Manifest | 3 + x11-wm/fvwm3/files/README.translucency | 94 ++++ x11-wm/fvwm3/files/fvwm3-1.0.4-htmldoc.patch | 70 +++ .../files/fvwm3-1.0.4-translucent-menus.patch | 487 ++++++++++++++++++++ x11-wm/fvwm3/files/fvwm3-9999-goflags.patch | 11 + x11-wm/fvwm3/files/fvwm3-9999-htmldoc.patch | 43 ++ .../fvwm3/files/fvwm3-9999-translucent-menus.patch | 489 +++++++++++++++++++++ x11-wm/fvwm3/fvwm3-1.0.4.ebuild | 204 +++++++++ x11-wm/fvwm3/fvwm3-9999.ebuild | 204 +++++++++ x11-wm/fvwm3/metadata.xml | 27 ++ 10 files changed, 1632 insertions(+) |