четверг, 23 июля 2015 г.
On attaching zones and linked images
OK, I've set the publishers according to this rule, but today was surprised by fact that I can't longer set openindiana.org publisher to be non-sticky in NGZ. I've set openindiana.org publisher to non-sticky in GZ, NGZ, but still IPS complains on "pkg install":
pkg install: Invalid child image publisher configuration. Child image publisher
configuration must be a superset of the parent image publisher configuration.
Please update the child publisher configuration to match the parent. If the
child image is a zone this can be done automatically by detaching and
attaching the zone.
The parent image has the following enabled publishers:
PUBLISHER 0: openindiana.org
PUBLISHER 1: userland (non-sticky)
The child image has the following enabled publishers:
PUBLISHER 0: openindiana.org (non-sticky)
PUBLISHER 1: userland (non-sticky)
PUBLISHER 2: hipster-encumbered
I've rechecked. Both GZ and NGZ had openindiana.org publisher set to non-sticky. I've followed IPS advice - detached and attached zone. And zone attach -u failed with the same error.
OK. Time for black magic. I've unset userland publisher. Set GZ and NGZ publisher list only to openindiana.org (non-sticky). The same issue - IPS doesn't see that GZ publisher is non-sticky now. So, I concluded that information about parent image is recorded or cached in some local zone configuration file. Looked at zone's /var/pkg and found /var/pkg/linked/linked_ppubs, which listed [["openindiana.org", true], [userland, false]]. I changed this file to [["openindiana.org", false]] and after that could attach zone.
I think I still doesn't understand as linked images work (or should work), but they are starting annoying me...
вторник, 31 марта 2015 г.
Hipster 2015.03 is here
We released our last snapshot ISO almost half a year ago. I believe, you want something new. You'll get it. New ISOs were just uploaded to dlc server. Let's see what has changed.
First of all, most evident changes were made in desktop area. We've updated Xorg server and libraries, which allowed us to incorporate some important security fixes from Oracle x-s12-clone and Debian Xorg. Also we've moved much more closely to Gnome 2.32. Most packages were updated to this level, excluding packages which either have a lot of specific patches (like gdm) or just dropped some significant functionality (like cheese, which dropped HAL support in version 2.32). Not everything has gone smoothly. We had to drop trusted desktop support during update. I believe nobody seriously used it under OI. The most annoying thing is that updated Xorg and Intel driver require some DRM updates, which are still not ready. So, if you have Intel video card, either pkg freeze X-incorporation and xorg, or use vesa driver.
General system changes
Desktop software and libraries
- A lot of desktop libraries were updated
- GTK2 is updated to 2.24.27
- libdrm is updated to 2.4.58
- libX11 is updated to 1.6.2, xcb support is enabled in libX11
- xf86-video-ati driver updated to 6.4.16
- nvidia proprietary driver was updated to 340.76
- Mesa is updated to 10.5.1
- Xorg is updated to 1.12.4. This requires updating xorg drivers and modules. OI-shipped modules will be updated automatically, but if you use VirtualBox, you'll have to update your guest additions to at least 4.3.22 version.
- Glib2 is updated to 2.43.4
- Enlightenment 0.19.3 is added as alternative desktop environment
- fontconfig was updated to 2.11.1
- libid3tag and libmtp were imported from SFE, gmtp is added
- rdesktop is updated to 1.8.3
- transmission is updated to 2.52
- XScreensaver is updated to 5.32
- gnome-commander is updated to 1.4.5
- QT 4.8.6 is added
- emacs is updated to 24.3
Input Method Selector was added from upstream input-method gate. Bug in svc:/application/desktop-cache/input-method-cache:default service preventing correct input methods functioning in recent OI was fixed. In fact, gtk input modules cache was moved from /etc/(amd64/)gtk-2.0/gtk.immodules to /usr/lib/(amd64/)gtk-2.0/2.10.0/immodules.cache and service has to regenerate these cache files in new locations . So, after update you can safely remove /etc/(amd64/)gtk-2.0/gtk.immodules.
Development tools
- Subversion is updated to 1.7.19
- SQLite is updated to 3.8.8.3
- Python 3.4 is updated to 3.4.3
- Binutils are updated to 2.25
- OpenBLAS 0.2.13 is added
- Mercurial is updated to 3.3
- Ruby 1.9.3 is added
- Ruby 1.8 is marked obsolete, all OI software is switched to Ruby 1.9.3
- Ruby 2.2.1 is added
- Curl is updated to 7.39
- libncurses.so links are moved to /usr/lib(/amd64)
- gawk is updated to 4.0.2, this fixes issues with pkgsrc bootstrap
- MPICH is updated to 3.1.3
- Sun Studio indent in /usr/bin was replaced by GNU indent. Old one is preserved in /opt/sunstudio12.1/prod/bin/indent
Server software
- A lot of packages were updated, including apache 2.4, php 5.4, php 5.5, postgresql 9.3, samba 3.6, mariadb 5.5
- PostgreSQL 9.4 is added
- PostgreSQL 8.4 is marked obsolete
- ISC dhcp server is updated to 4.2.7
- BIND DNS server is updated to 9.9.6-P2
- rsyslog is updated to 7.4.10
- NTP is updated to 4.2.8p1
понедельник, 17 ноября 2014 г.
Trip to Japan. Part one - Tokyo
Day 1
Day 2
Day 3
Day 4
Day 5
понедельник, 13 октября 2014 г.
There and back again
Once upon a time in a galaxy far far away there has been OpenSolaris distribution. This was the first Unix-like desktop which allowed me to completely replace Windows on my desktop. It wasn't perfect, but a magic of ZFS and IPS made it very attractive. As we now, the sun sets... So, with the end of OpenSolaris era I've moved to FreeBSD and has never regretted about it.
But I always liked illumos and was interested in OpenIndiana distribution. So, now, when I seem to be one of the last interested in it, I tried to go back. Really, migration was smooth. I've bought Nvidia GeForce 740-based video adapter, 4 more GB of RAM and after this I was sure that my hardware is supported by OI.
OI could recognize FreeBSD ZFS pool, so I've detached one disk from zpool, installed OI Hipster from October ISO, imported data and looked at software. As always, software choice for OI if you don't want to compile it yourself is not wast. Yes, there are pkgsrc builds, but they seems foreign in IPS world. So, I used sfe and sfe-encumbered repositories for OI /dev. I hope to use vlc, but vlc 1.1 from sfe-encumbered was a complete garbage. It didn't want to play anything or when it played something it was awful (like no sound or no video or no navigation in DVD menu...) So I stopped on totem/rhythmbox combination and used additional gstreamer codecs from sfe-encumbered. This works, however you should set sfe-encumbered before sfe in your publisher's list.
When speaking about OI one should mention IIMF/IIMD and other IIIM shit. Luckily, it can be turned off. I've finished just adding setxkbmap command to the list of startup applications.
Unfortunately, our Apache OpenOffice from /hipster is still buggy, so I had to use one from AdfinisSyGroup. VirtualBox 4.3.18 from Oracle for Solaris/x64 works fine. I was pleased with our Firefox 24.8.1. Adobe flash plugin 10.1 r85 sometimes crashes. Especially annoying is that it crashes on the flash games which I have to support. At least I've expected that it would not work - the application require Flash 11+. But for other use cases it works. Having working evince, xchm and FBreader seems enough to read documentation. zpool resilvering has completed by 50%. So, now I'm eating my own dog's food.
воскресенье, 12 октября 2014 г.
Hipster 2014.10 is finally out
General system changes
We performed migration from GCC 4.7.4 to GCC 4.8.3. New packages are compiled with GCC 4.8.4.Perl 5.10 is not compulsory now. All perl dependencies were updated to use Perl 5.16 or don't care about perl version. This includes changes to illumos-gate. /usr/perl5/bin/perl now is mediated symlink, pointing to perl 5.16 by default. However, if you would like to compile unmodified illumos gate, you should switch it back to perl 5.10:
pkg set-mediator system-perl=5.10Perl 5.10 modules which are required to compile illumos-gate are preserved. Other perl 5.10 modules are removed. If you have perl-510 installed on your system and don't need it, you can just remove runtime/perl-510, runtime/perl-510/extra and runtime/perl-510/module/sun-solaris.
During perl update version of perl-516/module/sun-solaris was DECREASED from 5.11 to 0.5.11 for consistency with other illumos-gate provided software. So if you have installed it, please, remove it BEFORE updating to new Hipster snapshot.
Perl 5.16 was recompiled without -Dperl_static_inline="static" flag to avoid creating one more patch for illumos-gate (this can affect perl ABI). So, if you had self-compiled perl modules, possibly, you have to recompile them.
Also, for consistency we renamed library/perl-5/xml-parser@5.12.1-0.151.1.8.1 to library/perl-5/xml-parser@2.41. So, if you have it installed (and every desktop system has it), please update it to library/perl-5/xml-parser@2.41,5.11-2014.1.2.0 (pkg update library/perl-5/xml-parser@2.41,5.11-2014.1.2.0). Also you'll have to update desktop/system-monitor/gnome-system-monitor if you have it installed.
Development tools and compilers
- OpenJDK was updated to 1.7.60. GCC 4.7 was updated to 4.7.4. GCC 4.8.3 and Clang 3.4 were added.
- GDB was updated to 7.6.2
- Mercurial was updated to 3.0.2
- MPICH was updated to 3.1.2
- ant was updated to 1.9.3
- python 2.7 was updated to 2.7.8
Common software
- bash was updated to fix latest bash CVEs, GNU coreutils were updated to 8.22, CUPS updated to 1.4.8, doxygen updated to 1.8.7, GNU grep was updated to 2.20, gnupg to 2.0.25
- Several packages to work with numerical data were added (datamash, hdf5)
Server software
- A lot of packages were updated, including apache 2.4, apache 2.2, nginx, php 5.4, php 5.5, squid 3.1, tomcat 6.0, postgresql 8.4/9.3
- Ldap backend was enabled for OpenLDAP server.
- Illumos-gate provided wu-ftpd was replaced with proftpd 1.3.5
- Barman was updated to 1.3.3
- NTP was updated to 4.2.7p453
- Bind was updated to 9.9.6
Desktop software
- Firefox and Thunderbird were updated to 24.8.1
- Packages from sic-team incorporation (notably, Mozilla nss and nspr) were updated.
- glib-networking, webkit were added
- Experimental package for Apache OpenOffice 4.1.1 was added. There is known issue with it - it can't create ODF documents. We are working on it.
- ntfsprogs were updated to 2014.2.15 version
- DJVU support was added to evince
- Gnome-pilot and Gnome-pilot-link packages are obsolete now as upstream is dead.
Also there were lot of other small fixes.
As always we ship the newest illumos-gate version, so you can leverage the great work of illumos developers.
Last time I blogged about Hipster I shared some plans. From things which were planned but not made I have to point to integration of new Perl version and 64-bit Perl version. Also we didn't add vlc and other multimedia software to oi-userland because of legal issues. We still miss fsvs. However, I hope we'll find decision for this problem soon.
Now I'd like to share my current plans, the things I'm interested in and the things I'm working on.
First of all, I'd like to look at OpenOffice issue with ODF files. It seriously bugs me, but I don't know if and when I'll be able to solve it.
One thing which annoys me in OpenIndiana desktop is lack of text search in gnome terminal. I have prepared update to gnome-terminal 2.32. It's coming soon.
Also I'd like to look at migration of some XNV components to oi-userland. This should allow us to enhance their packaging (so that it better correlates with oi-userland build system) and later I hope to update it.
I'm seriously annoyed by our out-of-date sendmail, coming from illumos-gate. I'd like to see postfix as a first-class OI MTA. Of course, we'll also need dovecot and perhaps some other mail server software.
Finding security patches for our squid 3.1 is becoming harder. Perhaps we have to update it to recent 3.4 version and also receive SMP support as a pleasant triffle.
PostgreSQL 9.4 release is coming. I want to have it in the gate. On other hand, I think we should remove PostgreSQL 8.4 once 9.4 is landed. PostgreSQL 8.4 has already reached its EOL.
PHP 5.6 is already out. I think, we'll get it soon. As always I hope to use EveryCity's work :)
Our Ruby is amazingly old. We have to migrate to at least ruby 1.9. Ruby 1.9 package is ready and just waiting for official snapshot announcement
I'd like to see some binary blobs disappearing from OI Hipster - like cpp (we can use Joyent version), also I hope once we'll have open source gcc-compiled dmake alternative.
Adding dpkg/apt tools and support for DilOS zones in OI seems attractive and perhaps even necessary thing if we want to better collaborate with DilOS on userland packages.
пятница, 30 мая 2014 г.
I hate Roskomnadzor
четверг, 17 апреля 2014 г.
rude hack to proceed on zoneadm attach error
# zoneadm -z zonename detach # zoneadm -z zonename attach -uand noticed that I detached build zone with repository. zoneadm launched pkg, pkg worked for a while, and then it said:
What a hell! NGZ and GZ were in sync... At least both of them were latest /hipster. So I removed all publishers served by this zone from host and zone config. The same reaction.Evaluation: Packages in zone zonename are out of sync with the global zone. To proceed, retry with the -u flag. Result: Attach Failed.
After grepping for this message in /usr/lib/brand/ipkg/attach I found that this message is produced in the following part of the script ($m_need_update message).
# # Bring the ngz entire incorporation into sync with the gz as follows: # - First compare the existence of entire in both global and non-global # zone and update the non-global zone accordingly. # - Then, if updates aren't allowed check if we can attach because no # updates are required. If we can, then we are finished. # - Finally, we know we can do updates and they are required, so update # all the non-global zone incorporations using the list we gathered # from the global zone earlier. # if [[ -z $gz_entire_fmri && -n $ngz_entire_fmri ]]; then if [[ $allow_update == 1 ]]; then LC_ALL=C $PKG uninstall entire || pkg_err_check "$f_update" else log "\n$m_need_update" "$ZONENAME" EXIT_CODE=$ZONE_SUBPROC_NOTCOMPLETE exit $EXIT_CODE fi fi if [[ $allow_update == 0 ]]; then LC_ALL=C $PKG install --accept --no-refresh -n $incorp_list if [[ $? == 0 ]]; then log "\n$m_complete" EXIT_CODE=$ZONE_SUBPROC_OK exit $EXIT_CODE else log "\n$m_need_update" "$ZONENAME" EXIT_CODE=$ZONE_SUBPROC_NOTCOMPLETE exit $EXIT_CODE fi fiI've just commented all these checks out and after this zone attach succeed. Zone is working now and I'm glad I don't have to reinstall my build zone....