NethServer 7 kickstart

Install NethServer 7. Refer to Administrator manual.

If you want to create a developer environment, first install mock configuration:

  # yum install nethserver-mock

Create a normal user, member of the mock group:

useradd filippo
usermod -a -G mock filippo
passwd filippo

Fork a repository from NethServer on GitHub. For instance, nethserver-directory.

After a logout and login as a normal user, clone locally your freshly forked repository:

git config --global credential.helper cache
git clone https://github.com:filippo/nethserver-directory.git

Enter the nethserver-directory dir, review the specfile looking for common issues and try to build the RPM.

 $ cd nethserver-directory
 $ make-rpms nethserver-directory.spec

If everything is OK, you obtain two (or more) RPMs in the current directory:

 $ ls -1 *.rpm
nethserver-directory-2.2.0-1.1.ga90636c.ns7.noarch.rpm
nethserver-directory-2.2.0-1.1.ga90636c.ns7.src.rpm

Switch to the root account and try to install the “noarch” RPM.

 # yum localinstall ~davidep/nethserver-directory/nethserver-directory-2.2.0-1.1.ga90636c.ns7.noarch.rpm

As usual, if an error occurs during the RPM build or installation, check if the problem has been reported:

If you are sure the problem has never been found, file a new issue on
https://github.com/NethServer/dev/issues/new

  • Build errors are usually written to build.log file, in your current working directory. Search for relevant error messages inside build.log.
  • Installation/Dependency errors are written to standard output
[TODO add example]

If you found the solution for a bug, share it! First of all, check if the git repository has a v7 pacakge:

 $ cd nethserver-directory
 $ git branch
* master

If the v7 branch has not been created yet, simply ignore the next step. Otherwise checkout it:

 $ git branch
* master
  v7
 $ git checkout v7

Then you're ready to write down the bug solution. Commit, push to your fork repository then create a pull request for the v7 branch (not master). Remeber to add a reference to the issue in the pull request description. For instance

The bug was caused by this and that

Refs NethServer/dev#5000

When editing the .spec file

When running make-rpms, mock complains of localtime and prints the following line:

IOError: [Errno 21] Is a directory: '/etc/localtime'

To fix this issue, run:

rm -f /etc/localtime
ln -sf /usr/share/zoneinfo/Europe/Rome /etc/localtime