trunkmaster / nextspace Goto Github PK
View Code? Open in Web Editor NEWNeXTSTEP-like desktop environment for Linux
Home Page: https://trunkmaster.github.io
License: GNU General Public License v3.0
NeXTSTEP-like desktop environment for Linux
Home Page: https://trunkmaster.github.io
License: GNU General Public License v3.0
Hi there!
After running the install, I am able to get loginwindow running, but entering in my creds, I get the following error.
Workspace Manager quit with error
I did get this during one of the steps
Resolving Dependencies
--> Running transaction check
---> Package gnustep-make.x86_64 0:2.7.0-1.el7 will be installed
--> Processing Dependency: gnustep-filesystem(x86-64) = 2.7.0-1.el7 for package: gnustep-make-2.7.0-1.el7.x86_64
--> Running transaction check
---> Package gnustep-filesystem.x86_64 0:2.7.0-1.el7 will be installed
--> Processing Conflict: nextspace-gnustep-1.24.8_0.24.1-10.el7.centos.x86_64 conflicts gnustep-filesystem
--> Finished Dependency Resolution
Error: nextspace-gnustep conflicts with gnustep-filesystem-2.7.0-1.el7.x86_64
This is what I have in /tmp/GnustepSecureXXX/console.log
[Workspace] === Starting Workspace Manager [4425cb6, 2018-10-06]... ===
[Workspace] === Initializing WindowMaker... ===
2018-10-06 15:58:30.096 Workspace[4804:4804] NXScreen: Apply automatic default display layout
2018-10-06 15:58:30.098 Workspace[4804:4804] LVDS-1: become main display.
2018-10-06 15:58:30.110 Workspace[4804:4804] LVDS-1: Set resolution {width = 1920; height = 1080} and origin {x = 0; y = 0}
/usr/NextSpace/Apps/Workspace.app/Workspace(check_defaults(WindowMaker/src/main.c:481)): warning: could not find user GNUstep directory (/home/pramodv/Library/Preferences/.WindowMaker/WindowMaker).
Installing WindowMaker 0.95.7 for current user...
Copying defaults database...
Default Backgrounds directory already exists. Skipping...
Default IconSets directory already exists. Skipping...
Default Pixmaps directory already exists. Skipping...
Installation Finished
/usr/NextSpace/Apps/Workspace.app/Workspace(check_defaults(WindowMaker/src/main.c:487)): warning: /home/pramodv/Library/Preferences/.WindowMaker/WindowMaker directory created with default configuration.
wmsetbg(getValueForKey(wmsetbg.c:1026)): warning: could not open domain file /home/pramodv/Library/Preferences/.WindowMaker/WindowMaker
wmsetbg(getValueForKey(wmsetbg.c:1026)): warning: could not open domain file /home/pramodv/Library/Preferences/.WindowMaker/WindowMaker
2018-10-06 15:58:30.658 Workspace[4804:4804] Recycler: attach
2018-10-06 15:58:30.658 Workspace[4804:4804] XRRScreenChangeNotify received, updating applications and WindowMaker...
[Workspace] === WindowMaker initialized! ===
[Workspace] === Starting Workspace application... ===
/usr/NextSpace/Apps/Workspace.app/Workspace(handle_inotify_events(WindowMaker/src/event.c:382)): warning: Inotify: Reading config files in defaults database.
2018-10-06 15:58:30.814 Workspace[4804:4804] Did not find correct version of backend (libgnustep-back-024.bundle), falling back to std (libgnustep-back.bundle).
2018-10-06 15:58:30.818 Workspace[4804:4804] NSApplication.m:304 Assertion failed in BOOL initialize_gnustep_backend(). Unable to find backend back
/usr/NextSpace/Apps/Workspace.app/Workspace: Uncaught exception NSInternalInconsistencyException, reason: NSApplication.m:304 Assertion failed in BOOL initialize_gnustep_backend(). Unable to find backend back
Stopping GNUstep services: gpbs gdnc.
Configuration of acceleration, double click time, wheel scroll behaviour (number of scrolled lines with and without Control key) implemeted and tested.
There's a scanning software gnustep application you might be interested in including?
https://github.com/poroussel/paperscan
Hello @trunkmaster , this error appears to me with your last arrangements.
Linking tool FileMover.tool ...
/usr/NextSpace/lib/libNXSystem.so: undefined reference to __objc_class_name_NSColor' /usr/NextSpace/lib/libNXSystem.so: undefined reference to
NSDeviceRGBColorSpace'
clang-3.8: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[5]: *** [obj/FileMover.tool] Error 1
gmake[4]: *** [internal-tool-all_] Error 2
gmake[3]: *** [FileMover.tool.all.tool.variables] Error 2
gmake[2]: *** [internal-all] Error 2
gmake[1]: *** [internal-all] Error 2
make: *** [internal-all] Error 2
Selecting the screen option automatically closes the preferences.
Console message is: "Workspace :error while loading shared librarie: libWUtils.so.5:cannot open shared object: No such file or directory".
great to see this..
how far can it go with those 'tear off menus' - could it be wired up such that any 'global-menu' friendly applications use those distinctive nextstep tear off menus.. or do applications have to specifically be adapted to use them
Font Preferences changes only GNUstep related font settings. That's why changing "Bold System Font" doesn't change font in window titlebar to the same as in menu titlebar.
Build LLVM/clang 7.0.1 packages
hello @trunkmaster, I have the following compilation error. 3c0e7c5
Compiling file Operations/BGOperation.m ...
Compiling file Operations/Mounter.m ...
Compiling file Operations/ProcessManager.m ...
Compiling file Operations/Sizer.m ...
Compiling file Operations/FileMover.m ...
Compiling file Processes/Processes.m ...
Compiling file Processes/FileMoverUI.m ...
Compiling file Processes/BGProcess.m ...
Linking app Workspace ...
./obj/Workspace.obj/WindowMaker/src/wsmap.c.o: In function workspace_map_realize': /home/usertest/nextspace/Applications/Workspace/WindowMaker/src/wsmap.c:219: undefined reference to
WMSetWidgetBackgroundPixmap'
/home/usertest/nextspace/Applications/Workspace/WindowMaker/src/wsmap.c:230: undefined reference to WMSetWidgetBackgroundPixmap' /home/usertest/nextspace/Applications/Workspace/WindowMaker/src/wsmap.c:233: undefined reference to
WMSetWidgetBackgroundPixmap'
./obj/Workspace.obj/WindowMaker/src/wsmap.c.o: In function selected_workspace_callback': /home/usertest/nextspace/Applications/Workspace/WindowMaker/src/wsmap.c:147: undefined reference to
WMGetButtonText'
./obj/Workspace.obj/WindowMaker/src/wsmap.c.o: In function update_mini_workspace': /home/usertest/nextspace/Applications/Workspace/WindowMaker/src/wsmap.c:456: undefined reference to
WMSetWidgetBackgroundPixmap'
/home/usertest/nextspace/Applications/Workspace/WindowMaker/src/wsmap.c:459: undefined reference to `WMSetWidgetBackgroundPixmap'
clang-3.8: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[4]: *** [Workspace.app/./Workspace] Error 1
gmake[3]: *** [internal-app-run-compile-submake] Error 2
gmake[2]: *** [Workspace.all.app.variables] Error 2
gmake[1]: *** [internal-all] Error 2
make: *** [internal-all] Error 2
Moving "Brightness" and "Contrast" sliders lead to application crash on real hardware. No crashes in virtual machine.
Workspace (WindowMaker) hides GNUstep application instead of sending _GNUSTEP_WM_HIDE_APP client message. How to reproduce:
Result: application hides with animation. No message "[WM] send WM_HIDE_APP protocol message to client." in Console. No "hidden dot" on appicon. Double-cllick on the appicon of hidden application may lead to crash of Workspace.
Problem: When user clicks on titlebar of GNUstep application GNUstep switch focus to main menu window. Main menu window created without support of _GNUSTEP_WM_HIDE_APP protocol.
Possible solutions:
Implement configuration of system level power management, display dimming, HDD APM.
Implement and test display layout management, enable/disable displays.
Folder viewer (opened with double-click on icon or menu File->Open as Folder) without existing .dir file opens with collapsed Shelf view.
GNUstep settings configuration of languages list, text encoding (used for conversion from C to Objective-C NSString object), measurement unit (used for printing) implemented and tested.
GNUstep fonts settings management implemented and tested.
The error cause located in -applyDisplayLayout at changing screen size. To reproduce bug, display layout in Login panel and in user session must be different. I can reproduce it with the following scenario: Login display layout is horizontal (Display-1 at left of Display-2); applied display layout is vertical (Display-1 is above of Display-2). Changing display layout with Preferences do not produce error.
Is there an IRC channel, mailing list or a similar platform on which one can work together?
I very much like the scope and goals that you have set and agree with them completely.
As I mentionned in my previous mail.
For the boot up plymouth theme or login.app in nextspace generally do you plan to add futura (like fonts), and use it in login.app? Or just a graphic of it?
I have a suggestion of the font League Spartan (however there's no italic, nor narrow version as of now):
https://github.com/sursly/league-spartan
I had packaged it for debian, but centos/fedora still doesn't have it:
https://repology.org/metapackage/fonts:league-spartan/versions
Helvetica also has a great clone, called Nimbus Sans L, albeit also not very complete like the original...
For reference: https://www.youtube.com/watch?v=2BsqgXsO9EE
Configuration of layouts, key repeate rate, numeric keypad and modifiers settings are implemeted and tested.
Implement rotation and reflection configuration.
Use NXAppKit NXClockView for Preferences application icon.
Implement and test changing password for current user.
hello I'm having the following problem when compiling Applications
Making all in Preferences/BrowserPrefs ...
Making all for bundle BrowserPrefs...
gmake[5]: Nothing to be done for internal-bundle-compile'. Copying localized resources into the bundle wrapper... Making all in Tools/FileMover ... Making all for tool FileMover.tool... Linking tool FileMover.tool ... /usr/NextSpace/lib/libNXSystem.so: undefined reference to
GSCurrentServer'
clang-3.8: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[5]: *** [obj/FileMover.tool] Error 1
gmake[4]: *** [internal-tool-all_] Error 2
gmake[3]: *** [FileMover.tool.all.tool.variables] Error 2
gmake[2]: *** [internal-all] Error 2
gmake[1]: *** [internal-all] Error 2
make: *** [internal-all] Error 2
I am not sure you are interested in this, but I wrote an "iselect" (http://www.ossp.org/pkg/tool/iselect/) based installer for the http://livecd.gnustep.org/
I would love to make it a GNUstep application... what do you think?
Here's the shell script:
#!/bin/bash
# this is the GNUSTEP installer
# using iselect
# use -m for multiple line options
# use special <s,result text> syntax for lines selectable
# and have everything on one page
PROD=GNUSTEP
VER=2.5.1
T="Install $PROD $VER"
# warn if not run as root
# partition target disk
echo "This will guide you through installing $PROD $VER to the selected disk."
echo
echo "Here is a list of available disks and partitions"
file -s /dev/sd*
echo
echo "Please create one partition for /boot (512 MB) and one for / (4+ GB)"
echo "You can choose XFS or BTRFS (compressed by default) for the /"
echo
echo "Press ENTER to continue."
read
DISK=`ls /dev/sd? | iselect -a -f -n "$T" -t "Select Disk to partition"`
cfdisk $DISK
#echo "The next step is to write a filesystem"
#echo "We will use ext4 for /boot and you can choose XFS or BTRFS for /"
FS=`echo -e "XFS\nBTRFS" | iselect -a -f -n "$T" -t "Select Filesystem to write"`
# mkfs.xfs ${DISK}
##echo "Select the OS you want" linux or kfreebsd (needs ufs)
## no more ufsutils for linux
##echo "Select the architecture you want" amd64 or i686
##ARCH=`echo -e "x86_64\ni686" | iselect -a -f -n "Install $PROD $VER" -t "Select Architecture"`
## we dont support i686 anymore
#echo "Select the distribution you want" debian or ubuntu
DIST=`echo -e "stretch\nsid\nxenial" | iselect -a -f -n "$T" -t "Select Distribution"`
## if ubuntu doesn't work, don't buggerer me
#echo "Select the init system you want" init or systemd
INIT=`echo -e "init\nsystemd" | iselect -a -f -n "$T" -t "Select Init System"`
# BIG FAT WARNING
# nethack msg of no return
echo "HERE BE DRAGONS"
echo "IF YOUR CAT NOW JUMPS TO THE ENTER KEY, YOU ARE SAFE"
echo "TYPE GNUSTEP IF YOU WANT TO CONTINUE."
#21:54 < aosdict> "You are standing at the gate to Gehennom. Unspeakable cruelty and harm lurk
down there. Are you sure you want to enter?"
#21:54 < aosdict> "So be it. You fall down the stairs."
read
#cdebootstrap $DIST /target http://ftp.ch.debian.org/debian/
#echo "Installing GRUB2"
#grub-install --root-directory=/target $DISK
echo "Installation of $PROD $VER to $DISK finished."
echo "Login as root, and use passwd to setup a password."
echo "Create a user with adduser USERNAME to create a user to work with."
echo "Press ENTER to reboot."
read
xrestop
shows constantly increasing value in column "Misc". Need to find and fix cause of possible memleak.
Configure sound for NSBeep.
there exists KDE marble, GNOME maps, but nothing for gnustep. or maybe once there's a webkit based gnustep webbrowser. i guess you're too busy to quickly write a gnustep-maps.app ? ;)
I got as far as make install
, then this error.
[luser@centos Frameworks]$ make && make install
GNUmakefile:4: /common.make: No such file or directory
GNUmakefile:14: /aggregate.make: No such file or directory
make: *** No rule to make target \/aggregate.make'. Stop.`
As was discussed a bit on the gnustep lists, I'm not sure if it is something you want to support or not, but I have always liked the behavior of the OpenStep "menu button",
however few window managers professing *step like behavior have ever behaved as such,
I made a video which shows how it behaves when clicking on various things for which wmaker
may bring up various menus.
I would summarize it as such:
when an event from the menu button is received by the window manager
the event is redirected to the currently active application (selected window?).
Integrating such behavior into the window manager is not terribly difficult,
but from the application side, few applications behave correctly when receiving a random button event outside of any of their window extents.
Integrating this behavior with non step X applications is a bit troublesome as well.
My general thought is that using an X property (to randomly make one up) _NEXTSPACE_MENU_EVENTS=1 for windows to opt in menu event redirection,
when a window with _NEXTSPACE_MENU_EVENTS=1 is the currently focused window,
all menu button events will be forwarded to that window.
This unfortunately means that behavior would change depending upon the currently selected window,
rather than being uniform. But allows one to avoid sending windows events which they will not understand.
What to do when the property is unset, or zero is up for debate, the options i see are:
that will probably be something that has to be played with to discover if any option is acceptable.
option 3 Seems the most consistent if it is feasible, but also probably the most difficult,
I'm guessing workspace would have to generate a rather dynamic menu and populate it for each window group
If this is something that is agreeable to you, perhaps I could look into it more.
as I have written a window manager which implements the first part (event redirection), somewhere..
Test display management on real hardware (relayout, enable/disable, open/close laptop lid).
Hi Sergii
Glad to see you back :) have you tried https://github.com/ericwa/TextEdit (which is an updated version than the one you use)? Screenshot: https://twitter.com/aieidotch/status/860148123108245504
Implement "Advanced Sound Preferences" - Mixer to adjust sound properties (mute and volume) on per application basis (PulseAudio).
Hello! I followed the build and install guide in the Wiki and stumbled upon some issues; ultimately, installation finally failed.
Here's what I did:
Precautions:
Installed Centos 7 (x86_64) minimal installation.
Followed the instructions as given in the Wiki.
Skipped step 2.5 for 3.5
Solvable issues:
On the Centos standard installation the following tools are missing (and can be installed using yum):
Issues I have not been able to solve:
make (step 3.5) fails:
Functions.m:30:41: fatal error: Foundation/NSAutoreleasePool.h: no such file or directory
indeed the file is missing.
Subsequently reverting to step 2.5 I encountered the following issue:
Installation fails:
Error: nextspace-gnustep conflicts with gnustep-filesystem-2.7.0-1.3l7.x86_64
Thank you for your good work
Implement backlight control for display (if supported).
Steps to reproduce the event:
1). Minimize File Viewer.
2). Click on the File Viewer icon to restore it.
Note: to play in event, you should not have any other application open.
I was trying to install nextspace following "Build and install guide"
I encountered following error :
--> Processing Conflict: nextspace-gnustep-1.24.8_0.24.1-10.el7.centos.x68_64 conflicts gnustep-filesystem
--> Finished Dependency Resolution
Error: nextspace-gnustep conflicts with gnustep-filesystem-2.7.0-1.el7.x86_64
It was at the end of :
# yum install grep "BuildRequires" nextspace-gnustep.spec | awk -c '{print $2}'
Any suggestion how to resolve this ?
It is possible to configure the screens and set the main and secondary screen, but when the session is closed the configuration is lost and the screens have to be reconfigured.
I have a problem with the icons of the dock, those of the project are only displayed when I have the applications open, when closing they disappear, but the applications like firefox or Gorm (that compile) if they are viewed open or closed.
Appreciate that you are currently focused on this as a personal project, but are open to patches. Love the aim of the project. It is simple and valuable: something equivalent to the pre-Rhapsody GUI, as it was.
The workspace project looks like an area where you have lots of small batches of straightforward but fiddly work. Expect this to be an area where you could get support from a community, to allow you to focus on concerns requiring more focus (e.g. structuring frameworks).
To get a community going, this project could use a Getting Started doc. It would cover these items,
Setting up an environment.
Building the components.
Running it, as far as possible in its current state.
I have made a first-pass at this, will attach as a comment to this post.
You probably want to also point to https://github.com/nickhutchinson/libdispatch for people that want to build everything from source.
It's really cool how you added the localisation thing into Preferences (with fall backs (by order)).
However you miss some languages. I had done something similar using wmaker menu integration:
http://www.aiei.ch/gnustep/gnustep-language/
You might want to add some more of the missing languages?
I've tried to build your NX frameworks on a vanilla GNUstep system to test the apps without scrumbling my installation. NXFoundation and NXSystem build and install fine but there is an issue with NXAppkit on installation. The compiler says :
ln -s /usr/NextSpace/Frameworks/NXAppKit.framework/Versions/Current/Resources/Images /usr/NextSpace/Images ln: impossible de créer le lien symbolique « /usr/NextSpace/Images »: Aucun fichier ou dossier de ce type
which means "impossible to create symbolic link...... No exiting file or folder"
In fact :NXAppkit is installed in my System domain which is : /usr/GNUstep/System and not /usr/NextSpace.
This is hardcoded in your NXAppkit GNUMakeFile.postamble.
`after-install::
ln -s $(DESTDIR)/usr/NextSpace/Frameworks/NXAppKit.framework/Versions/Current/Resources/Images /usr/NextSpace/Images
ln -s $(DESTDIR)/usr/NextSpace/Frameworks/NXAppKit.framework/Versions/Current/Resources/Fonts /Library/Fonts
I know your first goal is not compatibility with a vanilla GNUstep installation, but could you find a way to correct this issue ?
Providing your enhanced Preferences; Terminal and other applications to vanilla GNUstep would be nice.
You choose not to use stock GNUstep icons for folders and places. As a consequence of this, they are not themable. See the attached screenshot of GWorkspace and Workspace side by side with the rik theme.
I think your icons should be provided by a theme (Nextspace theme ?), and not hard-codded in Workspace. This way, Workspace could be coherent with any theme. This theme, I think I could contribute, by collecting the icons and putting them together in the theme.
Steps to reproduce the event:
1). Minimize File Viewer.
2). Workspace -> Hide.
3). Click on the Screen.
Implement timed saving of Display.config if Brightness and Contrast were changed with slider by user.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.