Saturday, February 10, 2018

Solaris 11.4 Beta - GNU packages

It may be interesting and useful to know the out-of-the-box state of GNU packages for the upcoming Solaris 11.4 later this year. For Solaris 11.4 Beta we have:

(the little 'i' in front of the short-fmri a.k.a package name means installed)
(as much as possible, the branch and timestamp have been trimmed out)

  pkg:/SUNWgnu-automake-110@1.10
  pkg:/SUNWgnu-automake-19@1.9.6
  pkg:/SUNWgnu-coreutils@7.4
  pkg:/SUNWgnu-dbm@1.8.3
  pkg:/SUNWgnu-diffutils@2.8.7
  pkg:/SUNWgnu-emacs-el@23.1
  pkg:/SUNWgnu-emacs-gtk@23.1
  pkg:/SUNWgnu-emacs-nox@23.1
  pkg:/SUNWgnu-emacs-x@23.1
  pkg:/SUNWgnu-emacs@23.1
  pkg:/SUNWgnu-findutils@0.5.11
  pkg:/SUNWgnu-gettext@0.16.1
  pkg:/SUNWgnu-gperf@3.0.3
  pkg:/SUNWgnu-idn@1.9
  pkg:/SUNWgnu-libiconv@0.5.11
  pkg:/SUNWgnu-mc@4.6.1
  pkg:/SUNWgnu-mp@4.3.1
  pkg:/SUNWgnu-mpfr@2.4.1
  pkg:/SUNWgnu-nano@2.0.9
  pkg:/SUNWgnu-readline@5.2
  pkg:/SUNWgnu-which@2.16
  pkg:/SUNWgnupg@2.0.13
  pkg:/SUNWgnuplot@4.2.6
  pkg:/SUNWgnutls@0.5.11

i pkg:/archiver/gnu-tar@1.29
i pkg:/compress/gzip@1.8
  pkg:/crypto/gnupg@2.0.30
  pkg:/developer/build/autoconf-213@2.13
  pkg:/developer/build/autoconf/xorg-macros@1.19.0
  pkg:/developer/build/autoconf@2.69
  pkg:/developer/build/automake-110@1.10
  pkg:/developer/build/automake-111@1.11.2
  pkg:/developer/build/automake-115@1.15
  pkg:/developer/build/automake@1.15

i pkg:/developer/build/gnu-make@4.2.1
  pkg:/developer/build/libtool@2.4.6
  pkg:/developer/debug/gdb@8.0
  pkg:/developer/gcc-3@3.4.3
  pkg:/developer/gcc-4/gcc-c++-49@4.9.4
  pkg:/developer/gcc-4/gcc-c-49@4.9.4
  pkg:/developer/gcc-4/gcc-common-49@4.9.4
  pkg:/developer/gcc-4/gcc-gfortran-49@4.9.4
  pkg:/developer/gcc-4/gcc-gobjc-49@4.9.4
  pkg:/developer/gcc-49@4.9.4
  pkg:/developer/gcc-5@5.5.0
  pkg:/developer/gcc/gcc-c++-5@5.5.0
  pkg:/developer/gcc/gcc-c++@5.5.0
  pkg:/developer/gcc/gcc-c-5@5.5.0
  pkg:/developer/gcc/gcc-c@5.5.0
  pkg:/developer/gcc/gcc-common-5@5.5.0
  pkg:/developer/gcc/gcc-gfortran-5@5.5.0
  pkg:/developer/gcc/gcc-gfortran@5.5.0
  pkg:/developer/gcc/gcc-gobjc-5@5.5.0
  pkg:/developer/gcc/gcc-gobjc@5.5.0
  pkg:/developer/gcc@5.5.0
  pkg:/developer/gnu-binutils-cross-i386@2.29
  pkg:/developer/gnu-binutils-cross-sparc@2.29
  pkg:/developer/gnu-binutils@2.29
  pkg:/developer/gnu-indent@2.2.10
  pkg:/developer/gnu@0.5.11
  pkg:/developer/gperf@3.1
  pkg:/developer/llvm/clang-build@3.8.1
  pkg:/developer/llvm/clang@3.8.1
  pkg:/developer/llvm/llvm-build@3.8.1
  pkg:/developer/llvm/llvm@3.8.1
  pkg:/developer/macro/gnu-m4@1.4.18
  pkg:/developer/test/dejagnu@1.6
  pkg:/editor/gnu-emacs/gnu-emacs-gtk@25.2
  pkg:/editor/gnu-emacs/gnu-emacs-lisp@25.2
  pkg:/editor/gnu-emacs/gnu-emacs-no-x11@25.2
  pkg:/editor/gnu-emacs/gnu-emacs-x11@25.2
  pkg:/editor/gnu-emacs@25.2

i pkg:/editor/nano@2.8.6
i pkg:/file/gnu-coreutils@8.27
i pkg:/file/gnu-findutils@4.6.0
  pkg:/file/mc@4.8.17
  pkg:/group/feature/developer-gnu@11.4
  pkg:/image/gnuplot@5.0.3

i pkg:/library/database/gdbm@1.8.3
i pkg:/library/gmp@6.1.2
i pkg:/library/gnutls-3@3.5.13
  pkg:/library/gnutls@2.8.6
  pkg:/library/json-glib@1.2.8
  pkg:/library/libgnuefi@3.0
  pkg:/library/libgsl@2.4
  pkg:/library/libiomp5@20151009

i pkg:/library/libmicrohttpd@0.9.52
i pkg:/library/libtool/libltdl@2.4.6
i pkg:/library/mpfr@3.1.5
  pkg:/library/pth@2.0.7
  pkg:/library/python/magnumclient-27@2.0.0
  pkg:/library/python/magnumclient@2.0.0

i pkg:/library/readline@6.3
  pkg:/library/security/gpgme@1.6.0
  pkg:/library/security/libassuan@2.4.3

i pkg:/library/security/libgpg-error@1.27
  pkg:/library/security/libksba@1.3.5
  pkg:/mail/mailman@2.1.24.1

i pkg:/media/xorriso@1.4.6
i pkg:/print/filter/a2ps@4.14
  pkg:/print/filter/enscript@1.6.6
  pkg:/print/filter/ghostscript/fonts/gnu-gs-fonts-other@6.0
  pkg:/print/filter/ghostscript/fonts/gnu-gs-fonts-std@6.0
  pkg:/security/pinentry-gtk@0.9.7
  pkg:/security/pinentry@0.9.7

i pkg:/shell/bash@4.4.12
i pkg:/shell/gnu-getopt@1.1.6
  pkg:/shell/parallel@0.2017.7.22
  pkg:/shell/watch@3.3.12

i pkg:/shell/which@2.21
  pkg:/source/network/pppdump@11.4
  pkg:/source/system/grub@1.99

i pkg:/system/boot/grub@1.99
  pkg:/system/font/truetype/freefont@20120503
  pkg:/system/library/gcc-3-runtime@3.4.3
  pkg:/system/library/gcc/gcc-c++-runtime-49@4.9.4
  pkg:/system/library/gcc/gcc-c++-runtime-5@5.5.0

i pkg:/system/library/gcc/gcc-c++-runtime@5.5.0
  pkg:/system/library/gcc/gcc-c-runtime-49@4.9.4
  pkg:/system/library/gcc/gcc-c-runtime-5@5.5.0

i pkg:/system/library/gcc/gcc-c-runtime@5.5.0
  pkg:/system/library/gcc/gcc-gfortran-runtime-49@4.9.4
  pkg:/system/library/gcc/gcc-gfortran-runtime-5@5.5.0
  pkg:/system/library/gcc/gcc-gfortran-runtime@5.5.0
  pkg:/system/library/gcc/gcc-gobjc-runtime-49@4.9.4
  pkg:/system/library/gcc/gcc-gobjc-runtime-5@5.5.0
  pkg:/system/library/gcc/gcc-gobjc-runtime@5.5.0
  pkg:/system/library/gcc/gcc-runtime-49@4.9.4
  pkg:/system/library/gcc/gcc-runtime-5@5.5.0
  pkg:/system/library/gcc/gcc-runtime@5.5.0

i pkg:/system/library/security/libgcrypt@1.7.9
i pkg:/system/network/ppp/pppdump@11.4
i pkg:/system/prerequisite/gnu@0.5.11
  pkg:/system/storage/parted@2.3.0

i pkg:/terminal/screen@4.6.1
  pkg:/text/aspell/dictionary/en@0.60.6.1
  pkg:/text/aspell@0.60.6.1
i pkg:/text/gawk@4.1.4
i pkg:/text/gnu-diffutils@3.6
i pkg:/text/gnu-gettext@0.19.8
i pkg:/text/gnu-grep@3.1
i pkg:/text/gnu-patch@2.7.5
i pkg:/text/gnu-sed@4.4
i pkg:/text/groff/groff-core@1.22.3
i pkg:/text/groff@1.22.3
i pkg:/text/less@487
i pkg:/text/texinfo@6.1
  pkg:/text/wdiff@1.2.2
i pkg:/web/wget@1.19.2


The above listing has been generated from the following script:

for package in \
  $( \
     pkg search -H -o pkg.shortfmri \
     *:set:pkg.fmri:*gnu* OR \
     *:set:info.classification:*GNU* OR \
     *:set:pkg.summary:*GNU* OR \
     *:set:pkg.description:*GNU* \
     |sort -u \
   )
do
  state=$(pkg info -r $package |grep 'Not installed')
  flag=$(if [[ -z $state ]]; then echo 'i'; else echo ' '; fi)

  name=$package
  name=$(echo $name |sed 's/-11.4.*//g')
  name=$(echo $name |sed 's/-5.12.*//g')
  name=$(echo $name |sed 's/-0.*//g')
  echo "$flag $name"
done


As seen on the listing, for a Solaris platform, it's pretty amazing to see that the userland team have updated virtually all packages to much newer versions although not the very latest.

In particular, it seems GCC is going to be 5.5.0 or, hopefully, even better.