Skip to content

about:changes

Jonathan Perkin edited this page Jan 8, 2024 · 38 revisions

Contents

  1. Introduction
  2. Changes in pkgsrc-2023Q4
  3. Changes in pkgsrc-2022Q4
  4. Changes in pkgsrc-2021Q4
  5. Changes in pkgsrc-2020Q4
  6. Changes in pkgsrc-2020Q3
  7. Changes in pkgsrc-2020Q2
  8. Changes in pkgsrc-2020Q1
  9. Changes in pkgsrc-2019Q4
  10. Changes in pkgsrc-2019Q3
  11. Changes in pkgsrc-2019Q2
  12. Changes in pkgsrc-2019Q1
  13. Changes in pkgsrc-2018Q4
  14. Changes in pkgsrc-2018Q3
  15. Changes in pkgsrc-2018Q2
  16. Changes in pkgsrc-2018Q1
  17. Changes in pkgsrc-2017Q4
  18. Changes in pkgsrc-2017Q3
  19. Changes in pkgsrc-2017Q2
  20. Changes in pkgsrc-2017Q1
  21. Changes in pkgsrc-2016Q4
  22. Changes in pkgsrc-2016Q3
  23. Changes in pkgsrc-2016Q2
  24. Changes in pkgsrc-2016Q1
  25. Changes in pkgsrc-2015Q4
  26. Changes in pkgsrc-2015Q3
  27. Changes in pkgsrc-2015Q2
  28. Changes in pkgsrc-2015Q1
  29. Changes in pkgsrc-2014Q4
  30. Changes in pkgsrc-2014Q3
  31. Changes in pkgsrc-2014Q2
  32. Changes in pkgsrc-2014Q1

Introduction

With over 24,000 packages being constantly updated and changed, producing a full changelog would not be practical or helpful. So instead we try to summarise the most important changes in each quarterly release.

While this page is primarily for the illumos quarterly package sets, the changes listed may be generic to pkgsrc and may not be available on illumos or enabled in our binary packages.

Changes in pkgsrc-2023Q4

Number of binary packages available:

  • Standard package set: Over 25,000
  • SmartOS GZ tools set: Over 750

Major infrastructure changes since 2022Q4:

  • pkgin internals were completely overhauled, resulting in a huge number of bug fixes, new features, and a performance improvement of 2,000x when running "pkgin -n upgrade" on a test system with over 12,000 packages installed.

  • pkgin is also now statically linked against all pkgsrc libraries it requires, helping to avoid potential upgrade issues.

  • GCC 13.2.0 is now the default compiler. In addition to the usual upstream improvements to performance, diagnostics, and language support, the pkgsrc packages now use stricter link flags to improve build reproducibility.

  • Remove the dependency on gcc-libs in bootstrap packages that do not require them. This reduces the size of the bootstrap tarball and the "minimal" zone image by over 50%.

  • Switch to the mozilla-rootcerts-openssl package. This automatically updates the set of certificates and the main ca-certificates.crt file whenever the package is upgraded, avoiding users having to perform the update manually.

  • libfetch now has enhanced HTTPS certificate validation.

  • Stack smashing protection (SSP) is now enabled for bootstrap and core packages. Previously when using libssp from GCC we had to build any package in the GCC bootstrap path without SSP to avoid circular dependencies.

  • While the build platform remains 20210826, the build sandboxes have been updated with fixes for illumos#15304, ld(1) version 5.11-1.1788, and a change to remove _CHAR_IS_SIGNED from int_types.h to fix various C++ packages.

  • Enhanced checks and fixes for indirect dependencies not being correctly registered. Under limited circumstances it was possible for users to install a package that did not pull in all of its required dependencies, causing runtime failures.

  • Switch to native strip(1) from GNU strip, fixing CTF userland argument types. This greatly improves the experience debugging package binaries.

  • OpenSSL now tracks the 3.1 branch after 1.1 was EOL'd.

  • OpenJDK 21 LTS is now available, and 11 and 17 LTS have been updated to their most recent versions. OpenJDK 17 LTS remains the default.

  • Switch to the native libutempter.

  • Default implementation version bumps for the following:

    • Go 1.19 -> 1.21
    • PHP 7.4 -> 8.1
    • Python 3.10 -> 3.11
    • Ruby On Rails 5.2 -> 6.1

The individual release announcements for the 2023 pkgsrc branches can be found here:

Commit stats since 2022Q4:

  • 970 packages added
  • 441 packages removed
  • 9,836 package updates (to 4,372 unique packages)
  • 23,147 commits from 93 contributors

Changes in pkgsrc-2022Q4

Number of binary packages available:

  • Standard package set: Over 24,000
  • SmartOS GZ tools set: Over 700

Major infrastructure changes since 2021Q4:

  • GCC 12.2.0 is now the default compiler. This brings in support for the latest C and C++ standards, improved diagnostics, performance enhancements, and native support for generating CTF debugging information, though we continue to use the illumos CTF tools for this for the time being.

  • OpenJDK 17 LTS is now available, as well as the latest OpenJDK 11 LTS. In collaboration with Peter Tribble there is now an illumos openjdk repository on GitHub, allowing us to keep our changes up-to-date with upstream releases.

  • Improvements to the CTF tools in illumos means many more binaries now include CTF debugging information by default. Compared to the 2021Q4 release with 13,200, there are now 26,500 binaries shipped with CTF enabled.

  • The Go compilers now default to GOOS=illumos, fixing builds of various packages that were unable to use native illumos features such as flock(3C).

  • Many performance improvements to the pkgsrc infrastructure, in many cases reducing build time overhead by 50%.

  • Switch to using the native versions of awk and sed.

  • Default implementation version bumps for the following:

    • Go 1.17 -> 1.19
    • Lua 5.3 -> 5.4
    • OpenJDK 11 -> 17
    • PostgreSQL 13 -> 14
    • Python 3.9 -> 3.10
    • Ruby 2.7 -> 3.1

While by no means exhaustive, and in no particular order, here is a selection of available packages.

Databases:

  • CouchDB 3.2.2
  • InfluxDB 1.8.4, 2.6.1
  • MariaDB 10.4.20, 10.5.18, 10.6.11
  • MySQL 5.6.51, 5.7.40, 8.0.31
  • Percona 5.6.42, 5.7.39, 8.0.30
  • Percona Cluster 5.7.36, 8.0.29
  • PostgreSQL 10.23, 11.18, 12.13, 13.9, 14.6, 15.1
  • SQLite 2.8.17, 3.40.0

Desktops:

  • Enlightenment16 1.0.27
  • Evilwm 1.4.2
  • KDE 4.14.38, 5.98.0, KDE gear 22.08.1
  • LXQt 1.2.0
  • Mate 1.26.0
  • X.org (apps 1.14.1.14, drivers 1.19.0, libs 1.12, server 21.1.6)
  • Xfce 4.16.0

Languages:

  • Clang/LLVM 15.0.6
  • Erlang 21.3.6, 25.1.2
  • Ghc 7.10.3, 8.8.4, 8.10.4, 9.2.1
  • Go 1.18.9, 1.19.4
  • NodeJS 14.21.1, 16.18.1, 18.12.1, 19.2.0
  • Ocaml 4.14.0
  • OpenJDK 8u342, 11.0.17, 17.0.5
  • PHP 5.6.40, 7.4.33, 8.0.27, 8.1.14, 8.2.1
  • Perl 5.36.0
  • Python 2.7.18, 3.7.15, 3.8.16, 3.9.16, 3.10.9, 3.11.1
  • QT 4.8.7, 5.15.7, 6.4.1
  • R 4.2.0
  • Ruby 2.7.7, 3.0.5, 3.1.3
  • Rust 1.66.0

Misc:

  • Emacs 25.3, 26.3, 27.2, 28.2
  • Ffmpeg 2.8.20, 3.4.11, 4.4.3, 5.1.2
  • Helix 22.12
  • Mutt 2.2.9
  • NextCloud 25.0.2
  • OpenSSL 1.1.1s
  • pkgin 22.10.0
  • Qemu 7.1.0
  • TeX Live 2022
  • Vim 9.0.0960
  • Vlc 3.0.17.4

Networking:

  • Bind 9.16.35, 9.18.9
  • Caddy 2.6.2
  • DNSdist 1.7.2
  • Exim 4.96
  • Gitea 1.18.0
  • Grafana 9.2.5
  • HAproxy 2.7.0
  • ISC DHCP 4.4.3
  • Netatalk 2.2.6, 3.1.13
  • NSD 4.6.0
  • Nginx 1.22.1
  • Postfix 3.7.3
  • Prometheus 2.40.5
  • Rspamd 3.3
  • Samba 4.17.3
  • Tailscale 1.34.2
  • Unbound 1.17.0

The individual release announcements for the 2022 pkgsrc branches can be found here:

Commit stats since 2021Q4:

  • 973 packages added
  • 281 packages removed
  • 8,310 package updates (to 4,024 unique packages)
  • 19,810 commits from 99 contributors

Changes in pkgsrc-2021Q4

  • Number of binary packages available:
    • x86_64: ~24,000

After the release of pkgsrc-2020Q4 we stopped producing our non-LTS quarterly releases that were only supported for 3 months, to instead focus on our yearly LTS releases. As such, there are a huge number of changes in pkgsrc-2021Q4, and rather than list them all here, we simply link to each of the quarterly release announcements since 2020Q4:

Major infrastructure changes since 2020Q4:

  • The required platform has been bumped to 20210826. Up until now our build platform has been 20161222, which has ensured our packages will run pretty much anywhere, but also means we are now missing out on many fixes and improvements to illumos since then. Building on 20210826 means we can use a number of newer libc features (for example native support for stack smashing protection instead of having to rely on GCC libraries), and we would encourage users to keep their version of SmartOS up-to-date in any case to ensure they are fully patched against recent exploits.

  • GCC 10.3.0 is now the default compiler. Many thanks to the OmniOS folks who continue to maintain the illumos patches for GCC, our package uses the source code from their repository.

  • The following package version defaults have been updated (newer versions are available to install in many cases, these are simply the default versions):

    • MariaDB 10.6.5 (was MySQL 5.7.x)
    • PostgreSQL 13.5 (was 12.x)
    • PHP 7.4.27 (was 7.3.x)
    • OpenJDK 11.0.10 (was 8.x)
    • Python 3.9.9 (was 3.8.x)
    • Ruby 2.7.5 (was 2.6.x)
  • Commit stats since 2020Q4:

    • 984 packages added
    • 307 packages removed
    • 8,267 package updates (to 4,018 unique packages)
    • 19,276 commits from 97 contributors

Changes in pkgsrc-2020Q4

  • Number of binary packages available:

    • x86_64: 21,500+
    • tools: 700+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • cmake 3.19.2
    • collectd plugins (many)
    • DeepState 0.1
    • Firefox 78.6.0 (as an ESR), 84.0
    • frr 7.5
    • fvwm3 1.0.1
    • gnome-shell 3.30.1
    • Go 1.14.12, 1.15.3, 1.16beta1
    • LibreOffice 7.0.3.1
    • LXQt 0.16.0
    • mpv-0.33.0
    • Nextcloud 20.0.4
    • nginx 1.18.0 and 1.19.6 (-devel)
    • Node.js 12.20.1, 14.15.4
    • ocaml 4.11.1
    • openblas 0.3.7
    • PHP 7.2.34, 7.3.25, 7.4.13
    • PostGIS 3.1.0
    • PostgreSQL 9.5.24, 9.6.20, 10.15, 11.10, 12.5, 13.1
    • PostgreSQL-timescaledb 1.7.4
    • pulseaudio 13.0
    • Python 3.7.9, 3.8.6, 3.9.1
    • qemu 5.1.0
    • Qt 5.15.2
    • Rust 1.49.0
    • spotify-qt 2.12
    • SQLite 3.34.0
    • Syncthing 1.12.0
    • Thunderbird 78.5.1
    • tor 0.4.4.6
    • Tor Browser 10.0.5
    • vlc-3.0.11.1
    • WebKitGTK 2.30.4
  • Package removals include:

    • spidermonkey52
  • Infrastructure changes:

    • The default version of Python was switched to 3.8.
  • Commit stats since 2020Q3:

    • 216 packages added
    • 21 packages removed
    • 1,583 package updates (to 1,075 unique packages)
    • 4,125 commits from 77 contributors

Changes in pkgsrc-2020Q3

  • Number of binary packages available:

    • x86_64: 19,500+
    • tools: 800+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • Blender 2.90.0 and 2.83.5 (LTS)
    • FileZilla 3.50.0
    • Firefox 68.12.0, 78.3.0 (as an ESR), 80.0.1
    • Go 1.15.1
    • gnuradio 3.8.1.0
    • Inkscape 1.0.1
    • LibreOffice 7.0.1.2
    • matrix-synapse 1.20.1
    • ncspot 0.2.2
    • MAME 0.224
    • Node.js 12.18.3, 14.10.1
    • OpenJDK 11.0.9rc9, 12.0.2, 13.0.4, 14.0.2, 15.0.0rc24
    • Perl 5.32.0
    • PHP 7.2.33, 7.3.22, 7.4.10
    • pkgin 20.8.0
    • PostgreSQL 9.5.23, 9.6.19, 10.14, 11.9, 12.4
    • PowerDNS 4.3.1
    • Python 3.6.12, 3.7.9, 3.8.4
    • Qt 5.15.1
    • qutebrowser 1.13.1
    • Rust 1.46.0
    • SQLite 3.33.0
    • Syncthing 1.8.0
    • tor 0.4.4.5
    • WebKitGTK 2.30.02
    • nearly all perl packages are up to date
    • many new Lua libraries
    • 46 new R packages
  • Package removals include:

    • xenkernel, xentools 4.2, 4.5, 4.6, 4.8
  • Infrastructure changes:

    • The default version of Go is now 1.15.
    • Many perl packages that were superfluous because their content is included in perl itself have been removed.
    • OpenJDK 12 through 15 packages are now available, and all support the optional Shenandoah GC. The OpenJDK 11 package has also been updated to support it.
  • Commit stats since 2020Q2:

    • 241 packages added
    • 115 packages removed
    • 1,717 package updates (to 1,274 unique packages)
    • 4,685 commits from 80 contributors

Changes in pkgsrc-2020Q2

  • Number of binary packages available:

    • x86_64: 19,000+
    • tools: 800
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • Blender 2.83
    • Firefox 68.9.0, 77.0.1
    • Go 1.13.11, 1.14.4
    • LibreOffice 6.4.4.2
    • LXQt-0.15.0
    • MATE 1.24.1
    • Mesa 20.0.6
    • Mutt 1.14.5
    • MySQL 5.7.30
    • NeoMutt 20200619
    • Nextcloud 19.0.0
    • Node.js 10.21.0, 12.18.0, 14.4.0
    • notqmail 1.0.8
    • OpenJDK 1.11.0.7.10
    • PHP 7.2.31, 7.3.19, 7.4.7
    • pkgin 20.5.1
    • pkglint 20.2.0
    • postgis 3.0.1
    • PostgreSQL 9.5.22, 9.6.18, 10.13, 11.8, 12.3
    • PowerDNS 4.2.2, PowerDNS Recursor 4.3.1
    • Python 2.7.18, 3.6.10, 3.7.7, 3.8.3
    • qgis 3.10.7
    • Ruby 2.7.1
    • Ruby On Rails 6.0.3.2
    • Rust 1.43.1/1.44.0
    • SQLite 3.32.3
    • Squid 4.12
    • TeX Live 2020
    • VLC 3.0.11
    • WebKitGTK 2.28.2
    • WeeChat 2.8
    • Xfce 4.14.2
  • Package removals include:

    • Many legacy GNOME2 packages
    • MySQL 5.5
    • OpenJDK 7
    • PostgreSQL 9.4
    • Ruby 2.4
    • Squid 3
  • Infrastructure changes:

    • Users can now select the type of rust compiler with RUST_TYPE. This defaults to "src" on most platforms for the traditional bootstrap process. For certain platform tiers, Rust publishes official binaries, which can be selected with "bin" to avoid the lengthy bootstrap process. This includes x86_64 Darwin, NetBSD, and Linux.
    • gfortran is now always the default Fortran compiler instead of g95. This is expected to work better on newer CPU architectures and support a wider range of software.
  • Commit stats since 2020Q1:

    • 442 packages added
    • 111 packages removed
    • 2,847 package updates (to 2,148 unique packages)
    • 6,801 commits from 80 contributors

Changes in pkgsrc-2020Q1

  • Number of binary packages available:

    • x86_64: 19,000+
    • tools: 850+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • Blender 2.82a
    • Firefox 68.6.0, 74.0
    • Go 1.13.9, 1.14.1
    • LibreOffice 6.4.1.2
    • MATE 1.22.2
    • Mesa 20.0.2
    • Mono 6.8.0.105
    • Mutt 1.13.4
    • MySQL 5.6.47, 5.7.29
    • NeoMutt 20200320
    • Nextcloud 18.0.2
    • Node.js 8.17.0, 10.19.0, 12.16.1, 13.11.0
    • PHP 7.2.29, 7.3.16, 7.4.4
    • pkgin 0.15.0
    • pkglint 20.1.1
    • PostgreSQL 9.4.26, 9.5.21, 9.6.17, 10.12, 11.7, 12.2
    • Python 3.6.10, 3.7.7, 3.8.2
    • Ruby 2.7.0
    • Ruby On Rails 6.0.2.2
    • Rust 1.42.0
    • SQLite 3.31.1
    • VLC 3.0.8
    • WebKitGTK 2.28.0
    • WeeChat 2.7.1
    • Xfce 4.14.2
  • Package removals include:

    • Go 1.11, 1.12
    • Many legacy GNOME2 packages
    • MySQL 5.1
    • Ruby 2.2
    • Ruby On Rails 4.2
  • Infrastructure changes:

    • The default GCC is now 9.3.0.
    • Overhaul Fortran selection, preferring gfortran where possible.
    • Stricter checks for SUBST_*, and expanded tests and performance improvements for portability checks.
    • Support virtualsize ulimits.
    • USE_PKG_ADMIN_DIGEST enables SHA256 digests for file identification rather than the $NetBSD$ CVS identifier.
    • Improvements and updates to the Haskell infrastructure.
  • Commit stats since 2019Q4:

    • 335 packages added
    • 163 packages removed
    • 2,323 package updates (to 1,762 unique packages)
    • 6,506 commits from 73 contributors

Changes in pkgsrc-2019Q4

New LTS release.

  • Number of binary packages available:

    • x86_64: 18,250+
    • tools: 700+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • Ansible 2.9.2
    • BIND 9.11.13 9.14.9
    • Clang/LLVM 9.0.0
    • Emacs 26.3, 27.0.50
    • Git 2.24.1
    • Go 1.10.8, 1.11.13, 1.12.14, 1.13.5
    • Grafana 6.3.4
    • InfluxDB 1.7.6
    • Irssi 1.2.2
    • Mesa 19.2.7
    • MySQL 8.0.16, 5.6.46, 5.7.28
    • Mutt 1.13.2
    • Nextcloud 17.0.0
    • Node.js 10.18.0, 12.14.1, 13.3.0
    • OpenSSL 1.1.1d
    • PHP 7.2.26, 7.3.13, 7.4.1
    • pkgin 0.14.0
    • PostgreSQL 9.4.25, 9.5.20, 9.6.16, 10.11, 11.6, 12.1
    • Prometheus 2.15.2
    • Python 2.7.17, 3.6.9, 3.7.5, 3.8.0
    • Ruby 2.4.9, 2.5.7, 2.6.5
    • Rust 1.40.0
    • SQLite 3.30.1
  • Package removals include:

    • BIND 9.12
    • Node.js 6
    • PHP 7.1
  • Infrastructure changes:

    • Binaries are no longer build with Spectre mitigation flags. It is unclear that they were providing any security enhancements, especially with newer CPUs containing related silicon changes, whilst they were definitely impacting performance, notably in Python.
  • Commit stats since 2019Q3:

    • 191 packages added
    • 96 packages removed
    • 1,872 package updates (to 1,390 unique packages)
    • 4,730 commits from 73 contributors

Changes in pkgsrc-2019Q3

Due to a number of package updates resulting in failures that weren't able to be resolved prior to release, most notably MesaLib, the pkgsrc-2019Q3 wasn't particularly recommended, and as such a full set of changes is not listed.

  • Number of binary packages available:

    • x86_64: 16,500+
    • tools: 700+
  • Infrastructure changes:

    • The SmartOS platform used to build the packages has been bumped from 20141030 to 20161222. Packages are unlikely to continue working on systems older than that.
  • Commit stats since 2019Q2:

    • 303 packages added
    • 185 packages removed
    • 1,682 package updates (to 1,280 unique packages)
    • 4,297 commits from 74 contributors

Changes in pkgsrc-2019Q2

  • Number of binary packages available:

    • x86_64: 17,750+
    • tools: 700+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • BIND 9.11.8, 9.12.4pl2, 9.14.3
    • Emacs 26.2
    • Firefox 60.7.2, 67.0.4
    • GCC 8.3.0
    • Go 1.11.10, 1.12.5
    • gpsd 3.18.1
    • Irssi 1.2.1
    • LibreOffice 6.2.4.2
    • MATE 1.22.1
    • MySQL 8.0.16, 5.6.44, 5.7.26
    • Mutt 1.21.1
    • Nextcloud 16.0.1
    • Node.js 10.16.0
    • OpenSSL 1.0.2s
    • PHP 7.1.30, 7.2.19, 7.3.6
    • pkgin 0.12.0
    • PostgreSQL 9.4.23, 9.5.18, 9.6.14, 10.9, 11.4
    • Python 2.7.16, 3.6.8, 3.7.3
    • Ruby 2.4.6, 2.6.3
    • Ruby on Rails 4.2.11.1, 5.1.6.2, 5.2.3
    • Rust 1.35.0
    • SQLite 3.28.0
    • WebKitGTK 2.24.2
  • Package removals include:

    • BIND 9.10
    • Firefox 3.6, 45
    • PostgreSQL 9.3
    • Python 3.4, 3.5
    • Ruby 2.3
    • Sun JRE/JDK 6
  • Infrastructure changes:

    • Python 3.7 is now the default python, changing from 2.7.
    • Added support for LIBRSVG_TYPE that can be set to 'c' or 'rust' to respectively select librsvg C implementation (version 2.40.20) or Rust implementation (version 2.44.14, currently maintained version).
  • Commit stats since 2019Q1:

    • 84 packages added
    • 61 packages removed
    • 1,881 package updates (to 1,350 unique packages)
    • 3,574 commits from 73 contributors

Changes in pkgsrc-2019Q1

This release drops support for i386 and multiarch packages. For more information please see RFD 167

  • Number of binary packages available:

    • x86_64: 20,000+
    • tools: 641
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • BIND 9.11.5pl4, 9.12.3pl4
    • Dolphin Emulator 5.0
    • Firefox 60.6.1, 66.0.1
    • GCC 7.4.0
    • Gitea 1.7.4
    • Gnucash 3.4
    • Go 1.11.6, 1.12.1
    • LibreOffice 6.2.2.2
    • MATE 1.22.0
    • Midori 8.0
    • MySQL 5.6.43, 5.7.25
    • NPM 6.9.0
    • Nextcloud 15.0.5
    • Node.js 10.15.3
    • ownCloud 10.1.0
    • PHP 5.6.40, 7.1.27, 7.2.16, 7.3.3
    • pkgin 0.11.7
    • PostgreSQL 9.4.21, 9.5.16, 9.6.12, 10.7, 11.2
    • Python 2.7.16, 3.4.10, 3.5.7, 3.6.8, 3.7.3
    • Quassel 0.13.1
    • Ruby 2.5.5, 2.6.2
    • Ruby on Rails 5.2.2
    • Rust 1.33.0
    • SQLite 3.27.2
    • SWI-Prolog 8.0.2
    • Tor Browser 8.5
    • vim 8.1.1004
    • WebKitGTK 2.24.0
    • Xen 4.11.1
  • Package removals include:

    • PHP 7.0
    • Ruby on Rails 3.2
  • Infrastructure changes:

    • Go 1.12 is now the default.
    • MAKE_JOBS.pkgpath is now supported in mk.conf for per-package MAKE_JOBS.
  • Commit stats since 2018Q4:

    • 227 packages added
    • 47 packages removed
    • 2,174 package updates (to 1,561 unique packages)
    • 4,624 commits from 72 contributors

Changes in pkgsrc-2018Q4

  • Number of binary packages available:

    • x86_64: 20,000+
    • i386: 19,500+
    • multiarch: 14,500+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • BIND 9.11.5pl1, 9.12.3pl1
    • CHICKEN Scheme 5.0.0
    • Clang/LLVM 7.0.1
    • Firefox 60.4.0 / 64.0.2
    • GCC 6.5.0
    • IceWM 1.4.2
    • LÖVE 0.7.2 / 0.8.0 / 0.9.0 / 0.10.2
    • MesaLib 18.2.6
    • Mutt 1.11.1
    • MySQL 5.5.62 / 5.6.42 / 5.7.24
    • Nextcloud 15.0.0
    • Node.js 10.14.2
    • OpenJDK 1.8.192
    • PHP 5.6.40 / 7.0.33 / 7.1.26 / 7.2.14 / 7.3.1
    • Perl 5.28.1
    • PostgreSQL 9.3.25 / 9.4.20 / 9.5.15 / 9.6.11 / 10.6 / 11.1
    • PowerDNS 4.1.5
    • Python 3.6.7 / 3.7.1
    • Ruby on Rails 4.2.11 / 5.1.6.1
    • Rust 1.31.1
    • rc.d-boot
    • SQLite 3.26.0
    • Unbound 1.8.3
    • Xorg 1.20.3
  • Infrastructure changes:

    • All packages are now built with -fno-aggressive-loop-optimizations to avoid optimisation bugs related to undefined behaviour in GCC 7.
    • .eh_frame unwinding changes added to GCC 7 have been reverted, fixing various C++ exception failures.
  • Commit stats since 2018Q3:

    • 150 packages added
    • 13 packages removed
    • 1,438 package updates (to 1,061 unique packages)
    • 4,665 commits from 75 contributors

Changes in pkgsrc-2018Q3

  • Number of binary packages available:

    • x86_64: 19,500+
    • i386: 19,500+
    • multiarch: 14,500+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • Asterisk 15.4.1
    • BIND 9.11.4pl1, 9.12.2pl1
    • Firefox 62.0
    • GCC 8.2.0
    • Go 1.11
    • Lua 5.3.5
    • Many Libretro emulators
    • Mutt 1.10.1
    • MySQL 5.7.23
    • Nextcloud 13.0.5
    • Node.js 10.11.0, 8.12.0, 6.14.4 / npm 6.4.1
    • OpenJDK8 1.8.181 / OpenJDK7 1.7.141
    • ownCloud 10.0.9
    • Percona 5.6.41 / Cluster 5.7.22
    • Perl 5.28.0
    • PHP 7.2.10, 7.1.22, 7.0.32, 5.6.38
    • pkgin 0.11.6
    • PostgreSQL 10.5, 9.6.10, 9.5.14, 9.4.19, 9.3.24
    • PowerDNS 4.1.4
    • Python 3.7.0, 3.6.6, 3.5.6, 3.4.9
    • Ruby on Rails 5.1.6
    • Rust 1.29.1
    • SQLite 3.25.1
    • Unbound 1.8.0
    • vim 8.1.0390
    • Xen 4.11.0
    • Xorg 1.20.1
  • Package removals include:

    • Asterisk 1.8
    • BIND 9.9.13pl1
  • Infrastructure changes:

    • GCC 7.3.0 is now the default compiler, superceding GCC 4.9. Our local patches to 4.9 have been forward ported, and we have also brought in illumos patches for -fclone-functions, -fstrict-calling-conventions, and -msave-args.
    • Spectre mitigation options have been enabled for all builds, specifically -mindirect-branch=thunk-inline, -mfunction-return=thunk-inline, and -mindirect-branch-register. For the 64-bit package sets, -msave-args is also enabled.
    • Go packages are now versioned, allowing 1.9, 1.10, and 1.11 to be installed simultaneously. The default has been bumped to 1.11.
    • PHP pgsql packages now support multiple PostgreSQL versions.
  • Commit stats since 2018Q2:

    • 161 packages added
    • 25 packages removed
    • 1,321 package updates (to 996 unique packages)
    • 3,453 commits from 63 contributors

Changes in pkgsrc-2018Q2

  • Number of binary packages available:

    • x86_64: 18,500+
    • i386: 18,500+
    • multiarch: 14,500+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • Clang/LLVM 6.0.1
    • Emacs 26.1
    • Firefox 60.1.0 ESR, 61.0
    • GCC 8.1.0
    • Go 1.10.3
    • Mate 1.20
    • Mutt 1.10.0
    • MySQL 5.7.22
    • Nginx 1.13.12, 1.14.0
    • NodeJS 6.1431, 8.11.3, 10.5.0
    • OpenJDK8 1.8.172
    • PHP 5.6.36, 7.0.30, 7.1.19, 7.2.7
    • pkgin 0.11.4
    • Postfix 3.3.1
    • PostgreSQL 9.3.23, 9.4.18, 9.5.13, 9.6.9, 10.4
    • PowerDNS 4.1.2
    • Rust 1.27.0
    • SQLite 3.24.0
    • Xorg 1.20.0
  • Package removals include:

    • NodeJS 4.8.7
    • PostgreSQL 9.2.24
  • Infrastructure changes:

    • pkgin has received a large number of changes to improve reliability and performance, especially during upgrades.

    • Default package versions have been bumped for PHP (7.1, previous 5.6), Ruby (2.4 previous 2.3), and Emacs (26, previous 25).

    • NPM (the nodejs package manager) has been split from being bundled with the main nodejs packages into its own lang/npm package.

  • Commit stats since 2018Q1:

    • 181 packages added
    • 15 packages removed
    • 1,995 package updates (to 1,414 unique packages)
    • 4,225 commits from 70 contributors

Changes in pkgsrc-2018Q1

  • Number of binary packages available:

    • x86_64: 18,000+
    • i386: 18,000+
    • multiarch: 13,500+
  • Notable new packages and updates (not all necessarily available as binary packages) include:

    • Erlang 20.3
    • Firefox 52.7.3, 59.0.2
    • GCC 7.3.0
    • Go 1.10.1
    • Mutt 1.9.4
    • MySQL 5.5.59, 5.6.39, 5.7.21
    • NodeJS 6.13.1, 8.10.0, 9.8.0
    • OpenJDK8 1.8.162
    • PHP 5.6.35, 7.0.29, 7.1.16, 7.2.4
    • Postfix 3.3.0
    • PostgreSQL 9.3.22, 9.4.17, 9.5.12, 9.6.8, 10.3
    • Python 3.4.8, 3.5.5, 3.6.5
    • QT5 5.10.1
    • Ruby 2.2.10, 2.3.7, 2.4.4, 2.5.1
    • Ruby On Rails 4.2.10, 5.1.5
    • Rust 1.24.1
    • Xorgproto 2018.4
  • Package removals include:

    • Apache 2.2 and related modules
    • Various Xorg proto packages, unified by Xorgproto
  • Infrastructure changes:

    • Many more packages honour RELRO flags (not currently enabled on SmartOS/illumos).

    • MySQL 5.7 is now the default implementation (this was already the case for our SmartOS/illumos packages).

    • TEST_DEPENDS has been introduced, along with :test support for USE_TOOLS.

    • USE_LANGUAGES now supports gnu++03 and c++03 to explicitly set the standard and allow older packages to build with newer compilers. Many packages have additionally been fixed to use these.

  • Commit stats since 2017Q4:

    • 213 packages added
    • 76 packages removed
    • 1,979 package updates (to 1,355 unique packages)
    • 4,955 commits from 69 contributors

Changes in pkgsrc-2017Q4

New LTS branch, supported until the release of pkgsrc-2020Q4. This release marks the end of support for pkgsrc-2014Q4 and SmartOS 14.4.x images.

  • Number of binary packages available:

    • x86_64: 17,500+
    • i386: 17,000+
    • multiarch: 15,000+
  • New packages introduced (not all necessarily available as binary packages) include:

    • Many new perl, python, go and tex packages.
    • PostgreSQL 10
    • Rust 1.22.1
    • PHP 7.2
    • clang/llvm/lldb 5.0.0
    • Firefox 57.0.2
  • Package removals include:

    • Emacs 22, 23, and 24
    • Firefox 10 through 38
    • GDB 5 and 6
    • KDE 3
  • Infrastructure changes:

    • CTF is now enabled for all packages that support it. For the x86_64 set this translates to 22,708 binaries across 5,625 packages. CTF enables improved debugging and DTrace support, see Robert Mustacci's blog post http://dtrace.org/blogs/rm/2013/11/14/userland-ctf-in-dtrace/ for more information.
    • The STRIP_DEBUG infrastructure has been improved and enabled to ensure that packages aren't bloated by the addition of debug data. Packages that have CTF enabled will see a small increase (usually around 3%) in size, but those that don't (primarily those written in C++ or other languages not supported by CTF) may see a significant reduction. The net result is that the sizes of the bootstrap kits and images have been reduced since 2017Q3.
  • Commit stats since 2017Q3:

    • 222 packages added
    • 225 packages removed
    • 1,701 package updates (to 1,145 unique packages)
    • 4,089 commits from 67 contributors

Changes in pkgsrc-2017Q3

  • Number of binary packages available:

    • x86_64: 17,000+
    • i386: 17,000+
    • multiarch: 14,500+
  • New packages introduced (not all necessarily available as binary packages) include:

    • 723 updates combined to packages for perl, python, and ruby
    • 47 new go packages
    • ocaml 4.05.0 and supporting packages
    • Firefox 55
    • gdb 8.0.1
    • qemu 2.10.0
  • Package removals include:

    • teTex 3 (in favor of texlive)
  • Infrastructure changes:

    • Additional SSP checks for consistent stack smashing protection support
    • New security features: PKGSRC_USE_STACK_CHECK and PKGSRC_MKPIE support for cwrappers.
  • Commit stats since 2017Q2:

    • 247 packages added
    • 74 packages removed
    • 1,617 package updates (to 1,224 unique packages)
    • 4,356 commits from 69 contributors

Changes in pkgsrc-2017Q2

  • Number of binary packages available:

    • x86_64: 16,500+
    • i386: 16,500+
    • multiarch: 14,500+
  • New packages introduced (not all necessarily available as binary packages) include:

    • Firefox 54
    • GCC 7.1
    • MATE 1.18
    • Ruby 2.4
    • Ruby on Rails 4.2
    • TeX Live 2017
    • Thunderbird 52.1
    • Xen 4.8
  • Package removals include:

    • Ruby 1.8
    • Ruby 2.1
  • Infrastructure changes:

    • Implement optional new pkgtasks and init infrastructure for pkginstall.
    • Various enhancements and fixes for building with ccache.
    • Add support to USE_LANGUAGES for newer C++ standards.
    • Enhanced support for security features: SSP, FORTIFY, and RELRO.
    • The official GitHub mirror of pkgsrc CVS has been migrated to https://github.com/NetBSD/pkgsrc, as a result our fork at https://github.com/TritonDataCenter/pkgsrc had to be reinitialised.
  • Commit stats since 2017Q1:

    • 210 packages added
    • 43 packages removed
    • 1,780 package updates
    • 4,198 commits from 74 contributors

Changes in pkgsrc-2017Q1

  • Number of binary packages available:

    • x86_64: 16,000+
    • i386: 16,000+
    • multiarch: 14,000+
  • New packages introduced (not all necessarily available as binary packages) include:

    • Python 3.6
    • Nextcloud 11
    • Firefox 45.8.0 and 52.0.1
    • Gradle 3.4
    • pkg_comp 2.0
    • qmail 1.03nb24 binary packages work, supporting common use cases
    • Many additional Python, Perl and Ruby modules
    • Many additional TeX Live 2016 packages
  • Package removals include:

    • GCC 4.5, 4.6, and 4.7
    • Xen 3.1, 3.3, and 4.1
  • Infrastructure changes:

    • Default version of Apache changed from 2.2 from 2.4 (this was already the case with our illumos packages).
    • Improvements to the curses.mk infrastructure with many more packages updated to support native curses/terminfo if available.
  • Commit stats since 2016Q4:

    • 192 packages added
    • 25 packages removed
    • 1,458 package updates
    • 3,901 commits from 68 contributors

Changes in pkgsrc-2016Q4

New LTS branch, supported until the release of pkgsrc-2019Q4.

  • Number of binary packages available:

    • x86_64: 15,000+
    • i386: 15,000+
    • multiarch: 14,000+
  • New packages introduced (not all necessarily available as binary packages) include:

    • Tryton 4.2.0
    • Firefox 50.1.0
    • Go 1.7.4
    • MySQL 5.7.17
    • PostgreSQL 9.5.5
    • PHP 7.1.0
  • Infrastructure changes:

    • cwrappers was enabled by default on Darwin, Linux, NetBSD, and SunOS. This replaces some a part of the infrastructure that was written in shell with a C implementation and speeds up the build.
  • Commit stats since 2016Q3:

    • 159 packages added
    • 1,359 package updates
    • 3,172 commits from 72 contributors

Changes in pkgsrc-2016Q3

  • Number of binary packages available:

    • x86_64: 15,000+
    • i386: 15,000+
    • multiarch: 13,500+
  • New packages introduced (not all necessarily available as binary packages) include:

    • Emacs 25.1
    • Firefox 49.0
    • GCC 6.2.0
    • Go 1.7.1
    • KDE Frameworks 5.25.0
    • MySQL 5.7.15
    • PHP 7.1.0rc2
    • Rust 1.11
    • Many more TeX Live 2016 packages
  • Package removals include:

    • Python 3.3
    • PHP 5.5
  • Infrastructure changes:

    • The pkg_install tools now support HTTPS, and both pkgin and pkg_add now fetch packages over HTTPS by default.
    • Dovecot plugins are now separate packages instead of compile-time options, providing more flexibility for binary package users.
    • The new GFORTRAN_VERSION variable allows the user to select which GCC package will supply the GNU Fortran implementation when PKGSRC_FORTRAN is set to gfortran. The default remains 48 (lang/gcc48).
    • Guile 2.0 is now the default, 1.8 is retained.
    • PHP modules are now automatically enabled at install time with per-module .ini files placed into the PKG_SYSCONFDIR/php.d directory.
    • PKGSRC_KEEP_BIN_PKGS is now set to yes by default, meaning that make install will now save/overwrite binary packages to PACKAGES. Users who prefer to retain a distinction between make install and make package, for example to avoid overwriting known-good binary packages during testing, should set this back to no in mk.conf.
    • pkg_tarup is no longer used for make replace in DESTDIR mode.
    • RUBY_VERSION_SUPPORTED is renamed _RUBY_VERSIONS_ACCEPTED to match other multi-version support, and *_VERSIONS_INCOMPATIBLE support is added to ruby and php.
  • Commit stats since 2016Q2:

    • 276 packages added
    • 1,520 package updates
    • 4,016 commits from 64 contributors

Changes in pkgsrc-2016Q2

  • Number of binary packages available:

    • x86_64: 15,000+
    • i386: 15,000+
    • multiarch: 12,500+
  • New packages introduced (not all necessarily available as binary packages) include:

    • Ansible 2.1.0.0
    • Ardour 4.7
    • Code::Blocks 16.01
    • CodeLite 9.1
    • CoreCLR 1.0.0
    • Firefox 45.1.0
    • KDE Frameworks 5
    • LXDE 1.0
    • MATE 1.14.0
    • PostgreSQL Contrib
    • TeX Live 2016
  • Infrastructure changes:

    • The tools package set has the beginnings of RFD 42 support, allowing packages to install without useradd failures in the SmartOS Global Zone.
    • The default OpenJDK has been switched back to OpenJDK 7 for 32-bit, due to Oracle's deprecation of 32-bit support in OpenJDK 8. 64-bit will continue to default to OpenJDK 8.
    • OCaml is now available for 32-bit.
    • A new postgresql-contrib package has been introduced which includes all of the additional contrib PostgreSQL utilities.
  • Commit stats since 2016Q1:

    • 301 packages added
    • 1,727 package updates
    • 3,861 commits from 73 contributors

Changes in pkgsrc-2016Q1

The 50th quarterly pkgsrc branch!

  • Number of binary packages available:

    • x86_64: 15,000+
    • i386: 15,000+
    • multiarch: 13,000+
  • New packages introduced (not all necessarily available as binary packages) include:

    • LLDB 3.8
    • MATE 1.14.0 (included from pkgsrc-wip)
    • PostgreSQL 9.5
    • Rust 1.8.0-dev for testing
  • Infrastructure changes:

    • illumos packages are now built with -fstack-protector-strong to enable stack smashing protection for functions most at risk.
    • MANZ=yes has been enabled, ensuring manual pages are installed compressed.
  • Commit stats since 2015Q4:

    • 204 packages added
    • 15 packages removed
    • 1,477 package updates
    • 4,477 commits from 75 contributors

Changes in pkgsrc-2015Q4

New LTS branch, supported until the release of pkgsrc-2018Q4.

  • Number of binary packages available:

    • x86_64: 16,000+
    • i386: 15,000+
    • multiarch: 14,000+
  • New packages introduced (not all necessarily available as binary packages) include:

    • PHP 7.0
    • Python 3.5
  • Infrastructure changes:

    • The default illumos compiler is now GCC 4.9.3.
    • illumos packages are now built with "-gdwarf-2" to ensure debugging information is available, and the core set of bootstrap packages are no longer stripped.
    • clang-3.7.0 is provided as an optional compiler for illumos, and has been patched to build over 12,000 packages successfully.
    • The proftpd package has been split up into separate packages, allowing users to simply choose which backends to install instead of using compiled-in defaults.
  • Commit stats since 2015Q3:

    • 172 packages added
    • 58 packages removed, 7 with a successor
    • 1,185 packages updated
    • 3,418 commits from 73 contributors

Changes in pkgsrc-2015Q3

  • Number of binary packages available:

    • x86_64: 14,500+
    • i386: 14,500+
    • multiarch: 13,500+
  • New packages introduced (not all necessarily available as binary packages) include:

    • GCC 5.1
    • Various additional Xorg 1.17 packages
    • TeX Live 2015 additions and updates
  • Infrastructure changes:

    • Default package versions have been bumped for a number of core packages:
      • Lua 5.1 -> 5.2
      • PostgreSQL 9.3 -> 9.4
      • PHP 5.5 -> 5.6
      • Ruby 1.9.3 -> 2.0.0
    • The postfix package has been split up into separate packages, allowing users to simply choose which backends to install instead of using compiled-in defaults.
    • All platforms now contain the pkgin enhancements detailed in this blog post.
    • macOS users no longer show up in the login window.
  • Commit stats since 2015Q2:

    • 225 packages added
    • 27 packages removed, 8 with a successor
    • 1,392 packages updated
    • 3,696 commits from 71 contributors

Changes in pkgsrc-2015Q2

  • Number of binary packages available:

    • x86_64: 14,500+
    • i386: 14,500+
    • multiarch: 13,500+
  • New packages introduced (not all necessarily available as binary packages) include:

    • Boost 1.58.0
    • Emacs 24.5
    • MariaDB 5.5
    • Perl 5.22
    • TeX Live 2015
    • XFCE 4.12
  • Infrastructure changes:

    • Packages and bootstrap kits are now available over HTTPS from https://pkgsrc.smartos.org/.
    • pkgin on illumos has significantly reduced memory requirements (for more information see this blog post).
    • macOS packages are now installed under the /opt/pkg prefix instead of the previous /usr/pkg in order to be compatible with the "System Integrity Protection" feature introduced in El Capitan / 10.11.
    • macOS package defaults have been changed in order to provide fully-featured packages out of the box.
  • Commit stats since 2015Q2:

    • 1,155 packages have been added.
    • 27 packages removed, 12 with a successor.
    • 2,015 packages updated.
    • 4,135 commits from 68 contributors

Changes in pkgsrc-2015Q1

  • macOS packages are now PGP signed and verified by default.
  • macOS bootstraps now include the pkgsrc-gnupg-keys package for signature verification of the pkg-vulnerabilities file.
  • PostgreSQL 9.4 has been added, PHP 5.3 has been removed.
  • 216 packages have been added
  • 2 packages have been renamed
  • 46 packages removed, 11 with a successor
  • 2,007 packages updated

The main pkgsrc-2015Q1 announcement is here.

Changes in pkgsrc-2014Q4

  • This release introduces Long Term Support, PGP signed packages, and some other enhancements to our illumos sets. See this blog post for more details.
  • This release sees the first set of 64-bit macOS packages, built on macOS Mavericks using clang, in addition to our existing 32-bit set.
  • 156 packages have been added
  • 4 packages have been renamed
  • 48 packages removed, 9 with a successor
  • 1,575 packages updated

The main pkgsrc-2014Q4 announcement is here.

Changes in pkgsrc-2014Q3

  • Bootstrap kits now include mozilla-rootcerts and pkg_alternatives installed and configured by default.
  • 210 packages have been added
  • 3 packages have been renamed
  • 15 packages removed, 12 with a successor
  • 1,123 packages updated

The main pkgsrc-2014Q3 announcement is here.

Changes in pkgsrc-2014Q2

  • 244 packages have been added
  • 2 packages have been renamed
  • 18 packages removed, 1 with a successor
  • 1,085 packages updated

Changes in pkgsrc-2014Q1

Here are the major changes in the pkgsrc-2014Q1 release:

OpenSSL update

Everyone has heard of the Heartbleed attacks by now. 2014Q1 of course includes the latest OpenSSL (1.0.1g) to fix this issue.

Go 1.3beta1 for illumos 64-bit

Thanks to great work by Aram Hăvărneanu Go 1.3 will support illumos systems, and we've included the 1.3beta1 package in our illumos x86_64 repository. Please give it a spin and provide feedback so the main 1.3 release can be great!

Changes in pkgsrc-2013Q4

Here are the major changes in the pkgsrc-2013Q4 release:

Default version changes

We have updated the default versions for a number of core packages, they are:

  • Apache 2.4 (was 2.2)
  • Lua 5.1 (was 5.2)
  • MySQL 5.6 (was 5.5)
  • PostgreSQL 9.3 (was 9.1)
  • PHP 5.5 (was 5.4)

The reason for the Lua default going backwards is that 5.2 is incompatible in a number of ways from 5.1, and there are still a reasonable number of modules which do not yet work with 5.2. We will revert back to 5.2 as default once support is comparable.

We try to provide multiple versions of each of these packages, and many modules are built for all versions, however some software can only be built against one version, so these version bumps will ensure those packages use the latest version.

In addition to these version defaults, we have changed the default implementation of JPEG to libjpeg-turbo, which is an optimised implementation of libjpeg using SIMD instructions.

Disabled -fomit-frame-pointer in GCC

We have disabled the -fomit-frame-pointer option globally in GCC 4.7 on illumos. This micro-optimisation creates binaries which are useless for debugging as the frame pointer is crucial for producing stack traces, and the potential performance gains are simply not worth the loss of observability.

All of the illumos packages produced in pkgsrc-2013Q4 are built with this compiler, so any packages which happened to use this option will now be built correctly.

Changes in pkgsrc-2013Q3

GHC 7.6 now available

For Haskell users, we are pleased to announce that ghc 7.6.3 is now available for all architectures. Previously we were only able to offer the older 6.8.3 release and only for 32-bit, but thanks to the efforts of those in our community, notably 'oddsignals' and Alain O'Dea we have a working bootstrap kit for the newer releases.

Changes in pkgsrc-2013Q2

Here are the major changes in the pkgsrc-2013Q2 release:

OpenJDK7 is now default

Thanks to the great work by SmartOS user 'jesse', we now have a working OpenJDK7 on illumos, built with GCC. This is now the default JRE/JDK, as we are unable to provide updated sun-{jre,jdk} packages due to Oracle's more restrictive redistribution policies.

The only user-visible change from this is that the Java binaries are prefixed with openjdk7-, so call e.g. openjdk7-java instead of java, or alternatively put /opt/local/java/openjdk7/bin at the front of your $PATH.

This allows co-existance with the legacy sun-{jre,jdk} packages.

Desktop support

Thanks to many Xorg updates from Richard Palo, Xorg is now functional on illumos, enabling many common desktop environments to now be used.

: Install the meta-package containing Xorg
$ pkgin in modular-xorg

: On OmniOS these are required on top of the basic install.
$ pkg install driver/x11/xsvc developer/macro/cpp

: Also on OmniOS 'od' is located in a different location
$ sed -i -e 's,/usr/bin/od,/usr/gnu/bin/od,' /opt/local/bin/startx

A selection of desktops that are available:

GNOME 2.32 with Evolution and Firefox 22

$ pkgin in gnome-session gnome-themes gnome-themes-extras \
           gnome-terminal gnome-backgrounds evolution

$ vi .xinitrc
#!/bin/sh
PATH=/opt/local/sbin:/opt/local/bin:$PATH
/opt/local/bin/gnome-session

$ startx

: Currently the pkgsrc firefox22 fails on startup, so for now use the
: pre-built binaries from Mozilla (with some library hacks).
$ curl -s http://releases.mozilla.org/pub/mozilla.org/firefox/releases/latest/contrib/solaris_tarball/firefox-22.0.en-US.opensolaris-i386.tar.bz2 \
    | bzcat | tar -xf -
$ ln -s /opt/local/lib/libX11.so firefox/libX11.so.4
$ ln -s /opt/local/lib/libXt.so firefox/libXt.so.4
$ env LD_LIBRARY_PATH=/opt/local/lib ./firefox/firefox

KDE 4.10.3

$ pkgin in kde-runtime4 kde-workspace4 kde-baseapps4 \
           kde-wallpapers4 kde-base-artwork konsole

$ vi .xinitrc
/opt/local/bin/startkde

XFCE 4.6 with Gnumeric and Abiword

$ pkgin in xfce4 gnumeric abiword

$ vi .xinitrc
/opt/local/bin/xfce4-session

Enlightenment 0.17 with GIMP

$ pkgin in enlightenment-0.17 gimp

$ vi .xinitrc
/opt/local/bin/enlightenment_start

Awesome 3.4.13

$ pkgin in awesome

$ vi .xinitrc
/opt/local/bin/awesome

Changes in pkgsrc-2013Q1

Here are the major changes in the pkgsrc-2013Q1 release:

OpenSSL 1.0.1 with AES-NI support

OpenSSL has been upgraded from the 0.9.8 series to the 1.0.1 series. The driving reason to pursue this upgrade was to take advantage of AES-NI support which significantly improves crypto performance on Intel CPUs which provide that feature.

On a macOS 10.7 Core i7 laptop the numbers below speak for themselves:

: /usr/bin/openssl 'OpenSSL 0.9.8r 8 Feb 2011'
$ openssl speed -evp aes-128-cbc
  type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
  aes-128-cbc     157297.05k   173874.73k   176805.45k   177719.17k   179441.78k

: pkgsrc openssl 'OpenSSL 1.0.1e 11 Feb 2013'
$ openssl speed -evp aes-128-cbc
  type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
  aes-128-cbc     643315.29k   685811.37k   696899.67k   699977.39k   693968.90k

A pretty significant 4x improvement for many hundreds of applications which use OpenSSL for crypto.

GCC Go support for SmartOS/illumos

Go is a reasonably new programming language from Google that a number of our users have asked us to support, so we are pleased to announce that beginning with pkgsrc-2013Q1 you will be able to use the gccgo front-end to compile and run Go applications on illumos.

You simply compile the go source code as you would for any other language that GCC supports, for example:

$ pkgin -y install gcc47

: /opt/pkg for the illumos package set, /opt/local for SmartOS datasets..
$ PATH=/opt/pkg/gcc47/bin:$PATH

$ gccgo app.go -o app
$ ./app

Networking utilities on SmartOS

Thanks to initial work by @postwait there is now proper Zone support in libpcap, which has opened up the possibility to run a number of networking utilities on SmartOS.

Yes, this means you can finally run tcpdump instead of snoop.

Changes in pkgsrc-2012Q4

Static UID/GID allocations

Up until this release, packages which require a user or group be created would choose the next available UID/GID on the target system. This meant that IDs would be different across a range of machines.

Starting in pkgsrc-2012Q4 we created a list of statically assigned UID and GID, using the range between 100-999, with a special _pkgsrc UID/GID taking 999. This means that the first useradd or groupadd done by the user will start at 1000 and avoid using the area reserved for pkgsrc.

Clone this wiki locally