Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ProjectCenter will not build projects when started from WindowMaker dock... #22

Closed
gcasa opened this issue Aug 17, 2021 · 10 comments
Closed
Assignees
Labels
bug an issue or problem using the software

Comments

@gcasa
Copy link
Member

gcasa commented Aug 17, 2021

ProjectCenter has an issue with running from the dock on versions of WindowMaker 0.95.8 and below.  This is because the wmaker executable sets the GNUSTEP_USER_ROOT variable in its environment which prevents make from running properly.

This doesn't present a problem with any other application except those which might run make.  One of them is, of course, Terminal (which can be fixed by putting unset GNUSTEP_USER_ROOT in your .zshrc/.profile/etc file) and the other is ProjectCenter.

This cannot be removed in any other way other than to fix the environment within PC somehow. The workaround is to start the application from the command line or some other environment which doesn't have the variable forcibly set.

This is a blocking issue and should prevent a release of PC.

@gcasa gcasa added the critical release blocking issue label Aug 17, 2021
@gcasa
Copy link
Member Author

gcasa commented Aug 17, 2021

The GNUSTEP_USER_ROOT environment setting is inherited by any process started by the dock. I can't even run ProjectCenter when started by GWorkspace. If you can find another way other than what I did, I would very much appreciate it.

@gcasa
Copy link
Member Author

gcasa commented Aug 17, 2021

https://www.windowmaker.org/news/ this shows that the variable was being set by wmaker and has changed.

@gcasa
Copy link
Member Author

gcasa commented Aug 17, 2021

@gcasa
Copy link
Member Author

gcasa commented Aug 17, 2021

@rmottola This is not an issue with my local setup. This will happen on EVERY SINGLE INSTANCE OF WMAKER before 0.95.9 unless we make a change to fix it. Yes, it's kludgy, but it's not something that can be fixed OTHERWISE and it is not good to release a version of PC which will not work when being started from the dock. Yes, you and I understand why it's a kludge, but an average user just wants it to work and unless something like this is done, it won't.

This is not an instance of me fixing my local environment by changing the app. As documented above, it is a problem with the wmaker executable.

@gcasa
Copy link
Member Author

gcasa commented Aug 17, 2021

I have created a PR with some updates to my previous changes and an informative comment. Once 0.95.9 (the version which uses WMAKER_USER_ROOT instead of GNUSTEP_USER_ROOT) is in common use, we should remove it.

@gcasa
Copy link
Member Author

gcasa commented Aug 17, 2021

There are only two other solutions to this problem.

  1. always start PC from the command line (this is untenable unless we document it and it's dumb since we are supposed to run also from the dock)
  2. wait years until Debian updates to the latest version of WindowMaker.

Both of these are not good answers to this issue right now.

@gcasa gcasa changed the title ProjectCenter will not build when started from WindowMaker dock... ProjectCenter will not build projects when started from WindowMaker dock... Aug 17, 2021
@rmottola
Copy link
Member

The problem is twofold: a spurious variable and copying over the environment. In your patch you copy over the whole environment and remove a variable.
This is not needed, since copying over the whole environment is not needed. As explained repeatedly, the GNUSTEP_USER_ROOT was just an indication of a bad patch, not the problem itself.

I am using WindowMaker 0.95.9. I docked ProjectCenter and I can launch it and build... without your patch, I mean your whole patch. This proves that copying over the environment is not needed at all and all is fine! This is why I refused the whole pull-request and did not request a single-line fix.

@rmottola
Copy link
Member

There are only two other solutions to this problem.

1. always start PC from the command line (this is untenable unless we document it and it's dumb since we are supposed to run also from the dock)

2. wait years until Debian updates to the latest version of WindowMaker.

Both of these are not good answers to this issue right now.

You must start from the command line - the patch is just a small fix of a big issue. With a "broken" windowmaker, just launch xterm when docked and it will contain the "bad" variable and a build on the command-line fails, without even invoking ProjectCenter. Once you have it, you can launch a second xterm from the first xterm and it will retain the broken environment. This is not only true for a dock, but also for menu-items.

So essentially, the old windowmaker is incompatible with "semi-recent" gnustep make. It has been finally resolved.

Depending on the way you configure and source GNUstep.sh you may not notice this, because GNUstep.sh cleans - so if you source it in xinit startup, you notice the issue, if not and start it manually at every shell, it is hidden (but then docking apps should not work for you either with the GNUstep-style library installation).

There is no solution to this problem specific to project center - the only solution is either debian updates or it at least backports the specific patch.

Broader said: old windowmaker is incompatible with any gnustep make launched from any dock, menu and any terminal used. Would you like to patch every single terminal? No.. so no patch fro ProjectCenter either.

@gcasa
Copy link
Member Author

gcasa commented Aug 18, 2021

I have updated to the latest windowmaker so i am good. The issue is as broad as you say. The issue is should we do something for existing users?

@gcasa gcasa added bug an issue or problem using the software and removed critical release blocking issue labels Aug 18, 2021
@gcasa
Copy link
Member Author

gcasa commented Jan 10, 2022

Wmaker changed to use WMAKER_USER_ROOT instead of GNUSTEP_USER_ROOT. This resolves the issue in the latest release of wmaker 0.95.9

@gcasa gcasa closed this as completed Jan 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug an issue or problem using the software
Development

No branches or pull requests

2 participants