BBW Upgrading Jessie console image 2015-11-12 to current lxqt 2016-02-21 image?

I’ve been running bone-debian-8.2-tester-2gb-armhf-2015-11-12-2gb.img.xz since shortly after it was released with great success on my BBW. I’ve kept reasonably current with apt-get update ; apt-get upgrade, although there are 73 packages to be upgraded with c9-core-installer held back when I looked a few minutes ago. Its installed to an 8GB SD card so space is not an issue. This system has been running 24/7 since mid December doing an essential job, but the system is evolving with new features added incrementally, so I’d like to “roll” with Jessie as things progress.

~# cat /etc/dogtag
BeagleBoard.org Debian Image 2015-11-12

~# uname -a
Linux alarmbone 4.1.12-ti-r29 #1 SMP PREEMPT Mon Nov 9 22:46:19 UTC 2015 armv7l GNU/Linux

Before I do this much of an upgrade, I’ll shut the system down and “clone” the sdcard so I can quickly go back, should something go wrong, but before I start I’d like to know if I’m leaving out some packages that I don’t know the names of.

This part seem obvious and reasonably well documented, update kernel and dtb files, but is this the “correct” kernel to be tracking these Jessie Testing images?:
git clone https://github.com/beagleboard/bb.org-overlays cd ./bb.org-overlays
./dtc-overlay.sh
./install.sh
cd /opt/scripts/tools
git pull
sudo ./update_kernel.sh --lts-4_1 --ti-channel

Next I’d like to install the basic lxqt package so things like gedit would work over ssh -X

What packages are needed to upgrade the 2GB console image to the 4GB lxqt testing image?

I’m also concerned about the various “installer” packages I’ve seen mentioned in various threads, like:
bb-bonescript-installer-beta

bb-node-red-installer

What others might I be missing from my 2015-11-12 image?

Or is it not really a viable option to try and evolve with apt-get update ; apt-get upgrade?

Things don’t seem right with Jessie updates. I ended up with an unusable system (no ssh, no usb gadget) after trying apt-get update ; apt-get upgrade trying to move from 8.2 to 8.3. back in early December, so I’m being more careful this time.

Doing something that should be relatively “safe” (as I’m not sure I’ll really use it, so unless it does really bad things all I risk is wasting some SD card space) but it didtn’t work:

~# apt-get install bb-node-red-installer
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following extra packages will be installed:
bb-npm-installer
The following NEW packages will be installed:
bb-node-red-installer bb-npm-installer
0 upgraded, 2 newly installed, 0 to remove and 74 not upgraded.
Need to get 6,884 B of archives.
After this operation, 78.8 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://repos.rcn-ee.com/debian/ jessie/main bb-npm-installer all 3.7.5-0rcnee1~bpo80+20160224+1 [2,800 B]
Get:2 http://repos.rcn-ee.com/debian/ jessie/main bb-node-red-installer all 0.13.2-0rcnee1~bpo80+20160222+1 [4,084 B]
Fetched 6,884 B in 0s (40.7 kB/s)
Selecting previously unselected package bb-npm-installer.
(Reading database … 33721 files and directories currently installed.)
Preparing to unpack …/bb-npm-installer_3.7.5-0rcnee1~bpo80+20160224+1_all.deb …
Unpacking bb-npm-installer (3.7.5-0rcnee1~bpo80+20160224+1) …
Setting up bb-npm-installer (3.7.5-0rcnee1~bpo80+20160224+1) …
bb-npm-installer:npm: [1.4.21]
bb-npm-installer:node: [v0.10.41]
bb-npm-installer:Installing: npm-3.7.5 (for bb-npm-installer)
/usr/local/bin/npm → /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@3.7.5 /usr/local/lib/node_modules/npm
bb-npm-installer:Installed
Selecting previously unselected package bb-node-red-installer.
(Reading database … 33723 files and directories currently installed.)
Preparing to unpack …/bb-node-red-installer_0.13.2-0rcnee1~bpo80+20160222+1_all.deb …
Unpacking bb-node-red-installer (0.13.2-0rcnee1~bpo80+20160222+1) …
Setting up bb-node-red-installer (0.13.2-0rcnee1~bpo80+20160222+1) …
bb-node-red-installer:npm: [1.4.21]
bb-node-red-installer:node: [v0.10.41]
bb-node-red-installer:Installing: systemd-0.2.6 (for node-red)
systemd@0.2.6 /usr/local/lib/node_modules/systemd
bb-node-red-installer:Installing: node-red-0.13.2 (for node-red)

bcrypt@0.8.5 install /usr/local/lib/node_modules/node-red/node_modules/bcrypt
node-gyp rebuild

make: Entering directory ‘/usr/local/lib/node_modules/node-red/node_modules/bcrypt/build’
CXX(target) Release/obj.target/bcrypt_lib/src/blowfish.o
CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt.o
CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt_node.o
Killed
dpkg: error processing package bb-node-red-installer (–configure):
subprocess installed post-installation script returned error exit status 137
Errors were encountered while processing:
bb-node-red-installer
E: Sub-process /usr/bin/dpkg returned an error code (1)

Any ideas as to what is wrong?
Do I need a kernel update first? or something else? if so, then it seems by definition some dependencies are broken.

I won’t be doing anything else with this system until I’ve had time to shutdown and clone the current SD card.

dpkg: error processing package bb-node-red-installer (–configure):

subprocess installed post-installation script returned error exit status 137

My understanding is that exit status 137 == exit status 128 + n where n here would seem to be 9. So . . . SIGKILL 9 . . .

Quite possibly this is the oomkiller killing your process because it thinks, or knows it’s using too much memory.

Well, bb-node-red-installer/bb-npm-installer is something i packaged
in the last couple of weeks.. So if you have '74' other updates
pending..

Yeah, that's not something i've tested for yet..

So let's see what happens with the base image:

bone-debian-8.2-tester-2gb-armhf-2015-11-12-2gb.img.xz

Regards,

Wally, so . . . I probably should have put this in my last post, but I just now thought of it so . . .

You have two options here.

First, you can setup a swap disk using external media temporarily while running the upgrade processes and see if that fixes it. This will only work if in fact this is a problem with the oomkiller.

Second, you can run strace on your executable to see whats going on when it erroneously exits. And you’ll probably want to pipe the output to a file. Such as strace > filename

I've been running bone-debian-8.2-tester-2gb-armhf-2015-11-12-2gb.img.xz
since shortly after it was released with great success on my BBW. I've kept
reasonably current with apt-get update ; apt-get upgrade, although there are
73 packages to be upgraded with c9-core-installer held back when I looked a
few minutes ago. Its installed to an 8GB SD card so space is not an issue.
This system has been running 24/7 since mid December doing an essential job,
but the system is evolving with new features added incrementally, so I'd
like to "roll" with Jessie as things progress.

~# cat /etc/dogtag
BeagleBoard.org Debian Image 2015-11-12

~# uname -a
Linux alarmbone 4.1.12-ti-r29 #1 SMP PREEMPT Mon Nov 9 22:46:19 UTC 2015
armv7l GNU/Linux

Before I do this much of an upgrade, I'll shut the system down and "clone"
the sdcard so I can quickly go back, should something go wrong, but before I
start I'd like to know if I'm leaving out some packages that I don't know
the names of.

This part seem obvious and reasonably well documented, update kernel and dtb
files, but is this the "correct" kernel to be tracking these Jessie Testing
images?:
git clone https://github.com/beagleboard/bb.org-overlays cd
./bb.org-overlays
./dtc-overlay.sh
./install.sh
cd /opt/scripts/tools
git pull
sudo ./update_kernel.sh --lts-4_1 --ti-channel

Next I'd like to install the basic lxqt package so things like gedit would
work over ssh -X
What packages are needed to upgrade the 2GB console image to the 4GB lxqt
testing image?

I'm also concerned about the various "installer" packages I've seen
mentioned in various threads, like:
bb-bonescript-installer-beta
bb-node-red-installer

What others might I be missing from my 2015-11-12 image?

Or is it not really a viable option to try and evolve with apt-get update ;
apt-get upgrade?

Things don't seem right with Jessie updates. I ended up with an unusable
system (no ssh, no usb gadget) after trying apt-get update ; apt-get upgrade
trying to move from 8.2 to 8.3. back in early December, so I'm being more
careful this time.

Doing something that should be relatively "safe" (as I'm not sure I'll
really use it, so unless it does really bad things all I risk is wasting
some SD card space) but it didtn't work:
~# apt-get install bb-node-red-installer
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  bb-npm-installer
The following NEW packages will be installed:
  bb-node-red-installer bb-npm-installer
0 upgraded, 2 newly installed, 0 to remove and 74 not upgraded.

Well, bb-node-red-installer/bb-npm-installer is something i packaged
in the last couple of weeks.. So if you have '74' other updates
pending..

Yeah, that's not something i've tested for yet..

So let's see what happens with the base image:

bone-debian-8.2-tester-2gb-armhf-2015-11-12-2gb.img.xz

eh it works fine: (should add nodejs-v0.12.x as a depend of
bb-node-red-installer thou..)

debian@beaglebone:~$ sudo cat /etc/dogtag
BeagleBoard.org Debian Image 2015-11-12
debian@beaglebone:~$ sudo apt-get install bb-node-red-installer
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  bb-npm-installer
The following NEW packages will be installed:
  bb-node-red-installer bb-npm-installer
0 upgraded, 2 newly installed, 0 to remove and 88 not upgraded.
Need to get 6,884 B of archives.
After this operation, 78.8 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://repos.rcn-ee.com/debian/ jessie/main bb-npm-installer all
3.7.5-0rcnee1~bpo80+20160224+1 [2,800 B]
Get:2 http://repos.rcn-ee.com/debian/ jessie/main
bb-node-red-installer all 0.13.2-0rcnee1~bpo80+20160222+1 [4,084 B]
Fetched 6,884 B in 0s (29.6 kB/s)
Selecting previously unselected package bb-npm-installer.
(Reading database ... 33086 files and directories currently installed.)
Preparing to unpack
.../bb-npm-installer_3.7.5-0rcnee1~bpo80+20160224+1_all.deb ...
Unpacking bb-npm-installer (3.7.5-0rcnee1~bpo80+20160224+1) ...
Setting up bb-npm-installer (3.7.5-0rcnee1~bpo80+20160224+1) ...
bb-npm-installer:npm: [1.4.21]
bb-npm-installer:node: [v0.10.38]
bb-npm-installer:Installing: npm-3.7.5 (for bb-npm-installer)
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@3.7.5 /usr/local/lib/node_modules/npm
bb-npm-installer:Installed
Selecting previously unselected package bb-node-red-installer.
(Reading database ... 33088 files and directories currently installed.)
Preparing to unpack
.../bb-node-red-installer_0.13.2-0rcnee1~bpo80+20160222+1_all.deb ...
Unpacking bb-node-red-installer (0.13.2-0rcnee1~bpo80+20160222+1) ...
Setting up bb-node-red-installer (0.13.2-0rcnee1~bpo80+20160222+1) ...
bb-node-red-installer:npm: [1.4.21]
bb-node-red-installer:node: [v0.10.38]
bb-node-red-installer:Installing: systemd-0.2.6 (for node-red)
systemd@0.2.6 /usr/local/lib/node_modules/systemd
bb-node-red-installer:Installing: node-red-0.13.2 (for node-red)

bcrypt@0.8.5 install /usr/local/lib/node_modules/node-red/node_modules/bcrypt
node-gyp rebuild

make: Entering directory
'/usr/local/lib/node_modules/node-red/node_modules/bcrypt/build'
  CXX(target) Release/obj.target/bcrypt_lib/src/blowfish.o
  CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt.o
  CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt_node.o
  SOLINK_MODULE(target) Release/obj.target/bcrypt_lib.node
  SOLINK_MODULE(target) Release/obj.target/bcrypt_lib.node: Finished
  COPY Release/bcrypt_lib.node
make: Leaving directory
'/usr/local/lib/node_modules/node-red/node_modules/bcrypt/build'

utf-8-validate@1.2.1 install /usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/utf-8-validate
node-gyp rebuild

make: Entering directory
'/usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/utf-8-validate/build'
  CXX(target) Release/obj.target/validation/src/validation.o
  SOLINK_MODULE(target) Release/obj.target/validation.node
  SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
  COPY Release/validation.node
make: Leaving directory
'/usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/utf-8-validate/build'
npm WARN engine cryptiles@2.0.5: wanted: {"node":">=0.10.40"}
(current: {"node":"0.10.38","npm":"1.4.21"})
npm WARN engine hoek@2.16.3: wanted: {"node":">=0.10.40"} (current:
{"node":"0.10.38","npm":"1.4.21"})
npm WARN engine boom@2.10.1: wanted: {"node":">=0.10.40"} (current:
{"node":"0.10.38","npm":"1.4.21"})

bufferutil@1.2.1 install /usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/bufferutil
node-gyp rebuild

make: Entering directory
'/usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/bufferutil/build'
  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
  SOLINK_MODULE(target) Release/obj.target/bufferutil.node
  SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
  COPY Release/bufferutil.node
make: Leaving directory
'/usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/bufferutil/build'
npm WARN engine hoek@2.16.3: wanted: {"node":">=0.10.40"} (current:
{"node":"0.10.38","npm":"1.4.21"})
npm WARN engine boom@2.10.1: wanted: {"node":">=0.10.40"} (current:
{"node":"0.10.38","npm":"1.4.21"})
npm WARN engine cryptiles@2.0.5: wanted: {"node":">=0.10.40"}
(current: {"node":"0.10.38","npm":"1.4.21"})
npm WARN deprecated i18next-client@1.10.3: you can use npm install
i18next from version 2.0.0
npm WARN engine escodegen@1.8.0: wanted: {"node":">=0.12.0"} (current:
{"node":"0.10.38","npm":"1.4.21"})
npm WARN engine hoek@2.16.3: wanted: {"node":">=0.10.40"} (current:
{"node":"0.10.38","npm":"1.4.21"})
npm WARN engine cryptiles@2.0.5: wanted: {"node":">=0.10.40"}
(current: {"node":"0.10.38","npm":"1.4.21"})
npm WARN engine boom@2.10.1: wanted: {"node":">=0.10.40"} (current:
{"node":"0.10.38","npm":"1.4.21"})

Thank you all for your help. I’ve cloned my SD card and did all the updates, there was a lot of warnings and at the end:

Processing triggers for systemd (215-17+deb8u3rcnee1~bpo80+20151222+1) …
Errors were encountered while processing:
bb-node-red-installer
E: Sub-process /usr/bin/dpkg returned an error code (1)

I’ve made a cut and paste log of all the warning and errors I’ll post (or Email) if it’d help anyone that is trying to track down
apt-get issues – especially if multiple upgrades might have been skipped. My last upgrade was late December or Early January.

Next I did apt-get update ; apt-get upgrade again:

Reading package lists… Done
Building dependency tree
Reading state information… Done
Calculating upgrade… Done
The following packages will be upgraded:
bb-node-red-installer
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 4,118 B of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] Y
.
.
.

utf-8-validate@1.2.1 install /usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/utf-8-validate
node-gyp rebuild

make: Entering directory ‘/usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/utf-8-validate/build’
CXX(target) Release/obj.target/validation/src/validation.o
SOLINK_MODULE(target) Release/obj.target/validation.node
COPY Release/validation.node
make: Leaving directory ‘/usr/local/lib/node_modules/node-red/node_modules/ws/node_modules/utf-8-validate/build’
npm WARN deprecated i18next-client@1.10.3: you can use npm install i18next from version 2.0.0

/etc/systemd/system/sockets.target.wants/node-red.socket to
/lib/systemd/system/node-red.socket.
bb-node-red-installer:Installed

I rebooted and all seems well, Presumably I next need to do :
npm install i18next
although I'm not sure what the "from version 2.0.0" is trying to tell me.

That message isn't for you... It's for the npm maintainer of
"node-red"... I haven't found a good way to keep npm shut up yet,
still show some progress..

Cloning my 8GB SD card went a lot faster doing these upgrades, which brings
up the question:
Can I make an SD card of the latest "Jessie testing" image on one BB, say a
BBB install and setup my "extras" and then clone it and boot it on a
different BB, say a BBG?

That works fine, i do it in the lab here all the time with the Black/Green..

I've BBW,BBB, & BBG, in other words, is there any "first boot" code in the
images that change things based on what system its booted on initially?

u-boot can correctly detect the board... Just don't force a "white"
*.dtb on a black, as you'll burn out hdmi..

I initially got my first BBG to be a hardware backup in case a hardware
interface blunder killed my BBW, once the initial run able version of my
application was working, I cloned the SD card, edited /boot/uEnv.txt to
disable eMMC and booted it on the BBG. My application appeared to run (uses
essentially all the GPIO on P8), without the external hardware connected I
couldn't be 100% sure. but all the /sys/class/gpio/gpio* matched the P8 ones
from the BBW

Regards,

Thanks so much, this is very useful, nice to know not to worry about the npm nags.

I’m having a lot of confusion as to what various dtb files do. Offhand, I’ve no idea which ones would “force a “white”
*.dtb on a black”.

I just updated my kernel:
cd /opt/scripts/tools
git pull
sudo ./update_kernel.sh --lts-4_1 --ti-channel

What about:

Suggested packages:
linux-firmware-image-4.1.18-ti-r49

Should I install it?

I’m having trouble with the BB-UART1 overlay (I started another thread with the details) so I’m trying the latest kernel and overlays in lieu of any suggestions yet from that thread.

Thanks again!

–wally.

Thanks so much, this is very useful, nice to know not to worry about the npm
nags.

I'm having a lot of confusion as to what various dtb files do. Offhand,
I've no idea which ones would "force a "white"
*.dtb on a black".

In /boot/uEnv.txt if you manually set:

dtb=am335x-bone.dtb

Then boot on the Black with an microSD inserted, you'd fry the hdmi
chip ins a few reboots...

I just updated my kernel:
cd /opt/scripts/tools
git pull
sudo ./update_kernel.sh --lts-4_1 --ti-channel

What about:
Suggested packages:
  linux-firmware-image-4.1.18-ti-r49

Should I install it?

Nah, nothing in that is useful, just a few generic firmware blobs that
always get built by default...

I'm having trouble with the BB-UART1 overlay (I started another thread with
the details) so I'm trying the latest kernel and overlays in lieu of any
suggestions yet from that thread.

In that thread you were using "cape-universal" & BB-UART1..

Pick "one"...

With cape-universal, you can set the usart pins to "usart".. no need
for the additional BB-UART1

root@beaglebone:~# config-pin -l P9.24
default gpio gpio_pu gpio_pd uart can i2c pruin

root@beaglebone:~# config-pin -l P9.26
default gpio gpio_pu gpio_pd uart can i2c pruin

root@beaglebone:~# config-pin P9.24 uart

root@beaglebone:~# config-pin P9.26 uart

and now /dev/ttyS1 should be working as a usart :wink:

Regards,

I’m having a lot of confusion as to what various dtb files do. Offhand,
I’ve no idea which ones would “force a “white”
*.dtb on a black”.

In /boot/uEnv.txt if you manually set:

dtb=am335x-bone.dtb

Then boot on the Black with an microSD inserted, you’d fry the hdmi
chip ins a few reboots…

This is very good to know, but I’m still in the dark about why I’d ever consider setting dtb=am335x-bone.dtb

What about:
Suggested packages:
linux-firmware-image-4.1.18-ti-r49

Should I install it?

Nah, nothing in that is useful, just a few generic firmware blobs that
always get built by default…

Thanks, usually I’m not paying enough attention to notice these “suggested” packages as the upgrade proceeds, this one I saw and thought I’d ask about.

I’m having trouble with the BB-UART1 overlay (I started another thread with
the details) so I’m trying the latest kernel and overlays in lieu of any
suggestions yet from that thread.

In that thread you were using “cape-universal” & BB-UART1…

Pick “one”…

With cape-universal, you can set the usart pins to “usart”… no need
for the additional BB-UART1

root@beaglebone:~# config-pin -l P9.24
default gpio gpio_pu gpio_pd uart can i2c pruin

root@beaglebone:~# config-pin -l P9.26
default gpio gpio_pu gpio_pd uart can i2c pruin

root@beaglebone:~# config-pin P9.24 uart

root@beaglebone:~# config-pin P9.26 uart

and now /dev/ttyS1 should be working as a usart :wink:

Bingo the minicom loopback test now works along with my application, almost too easy, I was reading up on config-pin yesterday but got confused and thought it couldn’t be that simple :slight_smile:
I"m not sure I’ll need rts/ctr but I see uart1 rts/cts on P9 19&20 are “not modifyable”, guess they are now hardwired to /dev/i2c-2 in the kernel which I’m sure many people buying Beaglebones would prefer over a default interface to obsolete serial port equipment needing rts/cts hardware handshaking.

Y’all have been making really great progress behind the scenes, but the details aren’t getting out to where they can be easily found.
While config-pin may not be the most efficient way, it takes a lot less effort than trying to learn how to write or modify an overlay!

One, hopefully last, question about the boot up timing, if I wrote a script with a list of config-pin commands to setup what I need, could I run it with a root crontab @reboot? or would it be safer to run it via system() when my code is initializing the gpio via /sys/class/ file writes?

Thanks again for all your help.

–wally.

root@beaglebone:~# config-pin -l P9.24
default gpio gpio_pu gpio_pd uart can i2c pruin

root@beaglebone:~# config-pin -l P9.26
default gpio gpio_pu gpio_pd uart can i2c pruin

root@beaglebone:~# config-pin P9.24 uart

root@beaglebone:~# config-pin P9.26 uart

and now /dev/ttyS1 should be working as a usart :wink:

Bingo the minicom loopback test now works along with my application, almost
too easy, I was reading up on config-pin yesterday but got confused and
thought it couldn't be that simple :slight_smile:
I"m not sure I'll need rts/ctr but I see uart1 rts/cts on P9 19&20 are "not
modifyable", guess they are now hardwired to /dev/i2c-2 in the kernel which
I'm sure many people buying Beaglebones would prefer over a default
interface to obsolete serial port equipment needing rts/cts hardware
handshaking.

Y'all have been making really great progress behind the scenes, but the
details aren't getting out to where they can be easily found.
While config-pin may not be the most efficient way, it takes a lot less
effort than trying to learn how to write or modify an overlay!

One, hopefully last, question about the boot up timing, if I wrote a script
with a list of config-pin commands to setup what I need, could I run it with
a root crontab @reboot? or would it be safer to run it via system() when my
code is initializing the gpio via /sys/class/ file writes?

I'd watch the slots file and wait for the cape-universal to be loaded.
(within 10-15-ish seconds after power on)..

Then your script can use config-pin and modify away..

Regards,

This is very good to know, but I’m still in the dark about why I’d ever consider setting dtb=am335x-bone.dtb

Custom uEnv.txt files . . . in which case one may be inexperienced enough to load an improper board file. Is this something you personally are likely to do ? No idea . . .but it’s a possibility.