On the 2016-04-03

NuTyX houaphan 8.1 available with cards 2.0

Introduction for the impatient

Six months after the first houaphan 8.0 version release, I am proud to announce the release of NuTyX 8.1. The code name remains Houaphan. Time's flying, Houaphan is already the 8th major release since the first public version of NuTyX in 2007.

This 8.1 version is available in 64 and 32 bits. Boths should have all the available packages.

What are the news

There have been so many updates since the first release of houaphan, we decide to recompile every single package to make sure all work fine.

This is then the second release of the houaphan NuTyX version. Following a list of somes upgraded packages:

You can consult the Packages list page for a complete list of available packages.

Upgrade from 8.0

An upgrade is possibible: from the 8.0 version it is possible to do it without reinstalling everything.

It is absolutly necessary to be in 'none graphic mode' to make the update so we stop the graphical interface server:

init 3

It's higly recommended to have a wired connection and start the upgrade after a:

cards base -r

command. Once you're done and ready, you just have to tell cards to switch from version 8.0 to 8.1

echo "name houaphan
version 8.1" > /var/lib/pkg/nutyx-version

You are now ready to finalise the upgrade:

cards sync
cards install -u cards
cards install -u nutyx
reboot

Before the reboot process, your NuTyX will download all the base packages and upgrade them, when your machine is up again, you will be under theNuTyX houaphan 8.1 version.

Last is to setup the proper locales again:

setup-nutyx -cl

You will reconnize the screen, choose your locale and you are done. You can now install what ever you like for a normal installation explained in the next chapter

Install 8.1

It has to be noted that all available graphic interfaces are accessible from the versatile connection manager lxdm, so remember to add it (and xorg) in your packages list whatever interface you choose to install.

An example of an installation with all the availables packages of gnome will therefore look like:

check
get xorg gnome gnome-extra lxdm
[Important]Even if the gdm package is include in the gnome collection, it is not possible to connect yourself via it. But it has to be installed to make gnome work properly..

To install the xfce graphical interface, we will simply replace gnome with xfce4

check
get xorg xfce4 xfce4-extra lxdm

If this is a new installation, remember to create at least one user with the command:

nu

And finaly reboot your machine before trying anything else (it's the easiest way).

The news graphical interfaces

With houaphan 8.1 version, following graphical interfaces kde5, gnome, mate, lxde, xfce4, openbox are now available in binaries.

If you want to install another graphical interface you will need to compile it.

The new 2.0 cards features

Cards in 2.0 version can now make a full upgrade of your installation. A lot of internal reorganisation in the code to make cards more easy to maintain. You can always consult the changelog.

Together with the new NuTyX 8.1 startup script, cards is now able to make upgrades on its own. If there are some available upgrades, at the shutdown of the computer, cards will downloads and upgrade obsolet versions of your binaries.

This new cards version include a API library which will give the possibility to create an "easy" graphical interface. This graphical interface will depends on the libcards library only.

To be able to reuse (partially) existings ARCH-Linux recipes, new variables are now recognised, the 3 different valid Pkgfiles show possible variables:

# Description: My first package
# URL: http://downloads.nutyx.org
# Packager: tnut at nutyx dot org
# Depends on: glibc
name=mypackage
version=1.0
release=1
source=(http://downloads.nutyx.org/files/$name-$version.tar.xz)
build() {
cd ${name}-$version
./configure --prefix=/usr \
--disable-static
make
make DESTDIR=$PKG install
}
# Depends on: glibc
packager="tnut at nutyx dot org"
description="My first package"
url="http://downloads.nutyx.org"
name=mypackage
version=1.0
release=1
source=($url/files/$name-$version.tar.xz)
build() {
cd ${name}-$version
./configure --prefix=/usr \
--disable-static
make
make DESTDIR=$PKG install
}
                         
# Packager: tnut at nutyx dot org
# Depends on: glibc
pkgdesc="My first package"
url="http://downloads.nutyx.org"
pkgname=mypackage
pkgver=1.0
pkgrel=1
source=($url/files/$name-$version.tar.xz)
build() {
cd $pkgname-$pkgver
./configure --prefix=/usr \
--disable-static
make
make DESTDIR="$pkgdir" install
}
                         

A big thanks to peter1000 who made a big work of investigation, and track down a lot of bugs. We had the chance to exchange a lot of experience. peter1000 even started his own fork of cards.

peter1000 has start a pkgmk2 script with support of colors, NLS support, more source formats like git, bazard, svn etc. You are welcome to test this new script.

The difference between a <nnn> collection and a <nnn-extra> collection

There is a difference between, for example, the collection 'cli' and 'cli-extra': The ports and binary in the collection 'cli' are almost frozen in their version at the time of the release of NuTyX version, while ports and binary collections -extra can be updated at any time.

This technique isolates the 'central system' (ie collections 'base', 'cli' and 'gui') updates that may be on the "peripheral" applications contained in -extra collections.

Therefore, applications found in the 'base-extra' , 'cli-extra' or 'gui-extra' collections are completely independent from the 'central system', technically it means no dependence of the central system 'must s find there.

The new installation script

The bash script install-nutyx works now as a real application. It has the following options:

  • Intall NuTyX in a folder
    LFS=/mnt/lfs bash install-nutyx

    The script will analyse the /etc/install-nutyx.conf file if it exist and contains the following define variables, they are at the moment 4 configurables variables: the installation path define by the LFS variable, the url adress of the mirror where are the binaries located via the URL variable, the version to installed (8.1, stable or current) define by the VERSION variable and finaly the local path of the downloaded binaries define by the DEPOT variable. Here is a summary example of the /etc/install-nutyx.conf file:

    URL="http://localhost"
    DEPOT="/DEPOT"
    LFS="/mnt/lfs"
    VERSION="current"
  • At the moment the VERSION variable can have 3 values: "current", "stable" or "8.1" which is, by the way the one by default.

  • Using the configuration files located in the /etc/install-nutyx.conf.d/ folder when NuTyX is installed, here is the list:

    FILENAMEFULL PATHNAME of the FILE

    cards.conf/etc/cards.conf
    pkgmk.conf/etc/pkgmk.conf
    fstab/etc/fstab
    .bashrc/root/.bashrc and /home/<username>/.bashrc
    bashrc/etc/bashrc
    profile/etc/profile
    hosts/etc/hosts
    inputrc/etc/inputrc
    rc_site/etc/sysconfig/rc_site
    .bash_profile/root/.bash_profile and /home/<username>/.bash_profile
    .dmrc/etc/skel/.dmrc
    shells/etc/shells
    dircolors.sh/etc/profile.d/dircolors.sh
    extrapaths.sh/etc/profile.d/extrapaths.sh
    readline.sh/etc/profile.d/readline.sh
    umask.sh/etc/profile.d/umask.sh
    modules/etc/sysconfig/modules
    createfiles/etc/sysconfig/createfiles
    mouse/etc/sysconfig/mouse

  • Only installing the configuration files, need in case you want to build NuTyX from scratch:
    bash install-nutyx -ic
  • To enter a chroot, we use the -ec option
    bash install-nutyx -ec
  • Print the version of the script, the version will also specify which branch will be used for the installation:
    bash install-nutyx -v
  • Print a help of the script
    bash install-nutyx -h
  • The github website and the different projects

    You can find all the recipes, the installer code, the site, the documentation on the website github. You are welcome to fork them and propose pull request to improve the quality of the distribution

    The construction of NuTyX

    The construction method is now based on sources available at https://github.com/NuTyX/core

    The NuTyX construction thus follows the commits on the current branch of houaphan.

    To ensure the disponibility of the sources of all the packages need for a basic system, they are now available at sources.

    Thanks to all

    Thanks to Pierre for all the commits on kf5 - plasma, I think we have one of the best kf5 - plasma environment.

    Thanks to Fanch who has reinitiated the lxde, cinnamon, gnome, enlightenment and mate collections. Fanch is very active on some forks of the existing NuTyX collections. You can follow his work, fork or/ and do pull requets on any of the collection found on github

    I would like to thank berlius for his work on the building process of a NuTyX for the arm processor. There are still corners to round, but it's very promissing.

    Thanks to peter1000 for his work on cards (pkgmk2) and all his feedback that has permitted to improve the quality of cards.

    Thanks to mahmutov for the turkish translation of the web site, NuTyX becomes now really international.