Panther03's Nodes

Hi,

I promised to help out. so I try to setup two types of nodes setups for people.


1)  I am packging NIS and NCC and made .deb packages for Ubuntu 14.04 Long Term Support (LTS). This is used for on your own Linux.

2) Full installed nodes, ready to use. User only needs to  register a VM somewhere and run a script which can be grabbed from my server.
    One command, and the server will be installed. No technical steps involved.


When progress is made, I will update here!

that is pretty awesome!

One question: when the package is installed, does it download the latest version from bob.nem.ninja? If not, people might be scared that they install a version that does not come directly from bob.nem.ninja.

Hi.

It's a matter of trust. But I have the following solutions for this:

1) Do not use it.

2) After the package has been installed, you can run a script which  loops through all the installed files and compares the md5sums with the files as they are originally supplied via bob.nem.ninja. That script should be easy to read, so you can see how it works. Or better, the script can be provided from bob.nem.ninja.
They have to list their md5sums too. Or the script downloads source to your machine to compare it.

3) I transfer the .deb files to the developers, and they setup the ppa repo and protect it themselves. They can open the .deb packages to see for them selves if all is fine. As users trust the devs, default package signing of the .deb suffices.

4) I transfer the build server to the devs so they can see and maintain the build process and host the created .deb packages on their own repo.


So, i have packaged all three of them now. When fully tested, one can install ncc, or nis, or both. The nem-common package contains the nem-core which is used both by nis and ncc.


After adding the repositories, three extra packages are available

root@Ubuntu-1404-trusty-64-minimal ~ # apt-cache search nem-
nem-common - nem service common files and libs
nem-ncc - nem ncc service daemon
nem-nis - nem nis service daemon


So, In this example I install a NIS server here:

root@Ubuntu-1404-trusty-64-minimal ~ # apt-get install nem-nis
Reading package lists… Done
Building dependency tree     
Reading state information… Done
The following extra packages will be installed:
  binutils gsfonts gsfonts-x11 java-common libfontenc1 libxfont1 nem-common
  oracle-java8-installer oracle-java8-set-default x11-common xfonts-encodings
  xfonts-utils
Suggested packages:
  binutils-doc default-jre equivs binfmt-support visualvm ttf-baekmuk
  ttf-unfonts ttf-unfonts-core ttf-kochi-gothic ttf-sazanami-gothic
  ttf-kochi-mincho ttf-sazanami-mincho ttf-arphic-uming firefox firefox-2
  iceweasel mozilla-firefox iceape-browser mozilla-browser epiphany-gecko
  epiphany-webkit epiphany-browser galeon midbrowser moblin-web-browser
  xulrunner xulrunner-1.9 konqueror chromium-browser midori google-chrome
The following NEW packages will be installed:
  binutils gsfonts gsfonts-x11 java-common libfontenc1 libxfont1 nem-common
  nem-nis oracle-java8-installer oracle-java8-set-default x11-common
  xfonts-encodings xfonts-utils
0 upgraded, 13 newly installed, 0 to remove and 6 not upgraded.
Need to get 34.6 MB of archives.
After this operation, 53.0 MB of additional disk space will be used.
Do you want to continue? [Y/n]


<snip>


Then , after a while, we reach the post config:


update-alternatives: using /usr/lib/jvm/java-8-oracle/bin/xjc to provide /usr/bin/xjc (xjc) in auto mode
Oracle JDK 8 installed
update-alternatives: using /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libnpjp2.so to provide /usr/lib/mozilla/plugins/libjavaplugin.so (mozilla-javaplugin.so) in auto mode
Oracle JRE 8 browser plugin installed
Setting up gsfonts (1:8.11+urwcyr1.0.7~pre44-4.2ubuntu1) …
Setting up x11-common (1:7.7+1ubuntu8.1) …
* Setting up X socket directories…                                                                                                            [ OK ]
Setting up oracle-java8-set-default (8u40+8u33arm-1~webupd8~0) …
Setting up nem-common (0.5.18-7) …
Setting group 'nem' … done
Setting user for NIS … done
Setting user for NCC … done
Setting ownership and permissions … done
Setting up nem-nis (0.5.18-7) …
Entering configure phase
========================
Node name is set to = z1cJlGC15dqD, you can change it later at NIS configs
Setting config files … done
Updating permissions … done
Processing triggers for ureadahead (0.100.0-16) …
Setting up xfonts-encodings (1:1.0.4-1ubuntu1) …
Setting up xfonts-utils (1:7.7+1) …
Setting up gsfonts-x11 (0.22) …
Processing triggers for libc-bin (2.19-0ubuntu6.6) …
root@Ubuntu-1404-trusty-64-minimal ~ #


Back at the prompt.

Next step is to setup upstart scripts, so daemons are respawned and it adheres to the new method of stopping and starting services (instead of System V init.d)

Great job. I really like that progress!

This panther is on the prowl! Great job.

Really nice :slight_smile:

It is being tested now :slight_smile:

You can do some tests if you want. plz contact me if you want to

Hey

coming from https://forum.ournem.com/vps-nodes/how-to-easily-configure-and-install-nem-on-an-amazon-ec2-vps/15/ I am also curious on the state of the package files.

Eventually it would be possible to combine some efforts and create further startup/shutdown scripts etc

Would be great to do so - or any other versioning system.

It would be great if we can setup an easy build process for packages for common distributions. So we only need to pull changes into a common repository and when the build-processes and tests are passed new packages will be released autom(agic)ally.

Never done this with packages for linux distributions, so need to research if that is possible. But I am sure there is something (travis maybe?)