-
Notifications
You must be signed in to change notification settings - Fork 70
Build Guide
Disclaimer: NEXTSPACE is still in active development. Some steps in this guide may end with error on your setup. You have 2 choices:
- Help me to make project better by opening issue.
- Wait for release and install everything from tested packages.
Stay tuned, patient and hungry. :)
NOTE: this guide describes build process of NEXTSPACE starting from 0.90 release. You may find old document here.
You don’t need to have any installed NEXTSPACE packages to be able to build it. In other words: you can install NEXTSPACE on fresh system.
Follow the the steps descibed below to build install and run NEXTSPACE:
- Install
git
tool:# yum -y install git
- Fetch sources from github:
# git clone https://github.com/trunkmaster/nextspace.git
# cd nextspace
- Build NEXTSPACE with commands:
# ~/nextspace/Packaging/RedHat/0.build_libraries.sh ~/nextspace
# ~/nextspace/Packaging/RedHat/1.build_frameworks.sh ~/nextspace
# ~/nextspace/Packaging/RedHat/2.build_applications.sh ~/nextspace
These commands install required dependencies, build and install NEXTSPACE RPM packages.
Built RPMs are placed into directory named by Linux distribution version (for example, “centos-7” for CentOS 7) under two subdirectories: NSDeveloper and NSUser. NSUser subdirectory conatains packages for NEXTSPACE desktop, NSDeveloper - packages that are needed for development of NEXTSPACE targeted applications.
- Disable SELinux
Edit file `/etc/sysconfig/selinux` and replace line `SELINUX=enforcing` with `SELINUX=disabled`. Reboot to apply SELinux settings change.
- Start login panel service
# systemctl start loginwindow
Xorg will be started and you should see Login panel. If not check your Xorg log (you may lack some drivers for your hardware). If you need to start login panel automatically at system start, run the following command:
# systemctl set-default graphical.target
- libdispatch - Grand Central Dispatch multithreading library from Apple. Compiled sources from Apple Swift repository.
- libfoundation - Apple Core Foundation library. Used by Workspace for WM data management, X11 events processing and notifications.
- libobjc2 - GNUstep Objective-C runtime with support of Objective-C 2.0.
- libwraster - raster image manipulation library. Used by Workspace and GNUstep Back.
- nextspace-core - contains system related configuration files:
- OS configuration - Xorg, linker (ld.so.conf.d), user shell profile (profile.d), UDisks2 (polkit and udev), home directory skeleton for newly created user;
- Default GNUstep configuration files;
- Additional files for ‘root’ user. Essential for running Login application;
- Initial NEXTSPACE directory hierarchy with some configuration files;
- GNUstep services helper script;
- Boot screen theme (Plymouth);
- Mouse cursor theme.
- nextspace-core-devel - NEXTSPACE-configured GNUstep Make.
- nextspace-gnustep - contains GNUstep libraries optimized for NEXTSPACE use and GORM. Version of GNUstep components represented in package name. For example, package nextspace-gnustep- 1.24.8 _ 0.24.1 -10.el7.centos.x86_64.rpm contains GNUstep Base 1.24.8, GNUstep GUI and Back 0.24.1.
Copyright (c) Sergii Stoian