= [Draft] Haiku R1/beta2 Release Notes This page is intended as a draft for the release notes. Eventually these should be formatted for and published on the main website. == Sources Use [https://dev.haiku-os.org/query?status=closed&type=%5Eenhancement&resolution=fixed&milestone=%5ER1%2Fbeta2&group=component&col=id&col=summary&col=type&col=status&col=priority&col=milestone&col=component&order=priority this query] to get all closed enhancement tickets with resolution type fixed between September 28 2018 and April 13 2020, to find a list of enhancements. Haiku Activity Reports: * [https://www.haiku-os.org/blog/pulkomandy/2020-03-22-haiku_activity_report_feb_mar_2020/ Feb/Mar 2020] * [https://www.haiku-os.org/blog/pulkomandy/2020-02-15-haiku_field_trip_report_jan_2020/ Jan 2020] * [https://www.haiku-os.org/blog/reds/2020-01-14_haiku_monthly_activity_report_-_012019/ Dec 2019] * [https://www.haiku-os.org/blog/pulkomandy/2019-12-05_haiku_monthly_activity_report_-_november_2019/ Oct/Nov 2019] * [https://www.haiku-os.org/blog/pulkomandy/2019-10-03_haiku_monthly_activity_report_-_september_2019/ Sep 2019] * [https://www.haiku-os.org/blog/pulkomandy/2019-09-07_haiku_monthly_activity_report_august_2019/ Aug 2019] * [https://www.haiku-os.org/blog/pulkomandy/2019-07-11_haiku_monthly_activity_report_june_2019/ Jun 2019] * [https://www.haiku-os.org/blog/pulkomandy/2019-05-01_haiku_monthly_activity_report_april_2019/ Mar/Apr 2019] * [https://www.haiku-os.org/blog/pulkomandy/2019-03-02_haiku_monthly_activity_report_february_2019/ Feb 2019] * [https://www.haiku-os.org/blog/pulkomandy/2019-01-03_haiku_monthly_activity_report_december_2018/ Dec 2018] * [https://www.haiku-os.org/blog/pulkomandy/2018-12-02_haiku_monthly_activity_report_november_2018/ Nov 2018] == System requirements Minimum: * Pentium II or AMD Athlon processor (the MMX instruction set is required) * 256MB of memory (TODO confirm the minimal amount needed) * 800x600 display * 2GB of disk space (TODO confirm install size with all optional packages disabled) SSE2 support is required to use the WebPositive web browser. On machines where this is not available, it is recommended to install the NetSurf browser instead. Haiku takes advantage of modern hardware and will run faster on newer machines. == Upgrade instructions It is possible to update your Haiku install from Beta 1 to Beta 2. You need at least XXX megabytes of free space on your system partition and a reliable internet access for downloading the packages. Alternatively you may download the beta 2 disk image and extract the updated packages from there if your Haiku system does not have sufficiently reliable internet access (XXX explain how to do this). The folowing procedure should be followed: === Updating to the latest version of beta1 {{{ pkgman update }}} === Updating the EFI bootloader The EFI bootloader must be updated manually. Download the new bootloader from XXX and replace the old one in your EFI system partition. (XXX should this be done before or after updating the system?) If you boot your computer using BIOS and MBR, no manual bootloader update is needed. XXX explain how to check which bootloader is used. === Switching to the new repositories {{{ pkgman add-repo https://eu.hpkg.haiku-os.org/haiku/r1beta2/$(getarch)/current pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/r1beta2/$(getarch)/current }}} === Updating to beta2 {{{ pkgman full-sync shutdown -r }}} == Some highlights - New Input preferences, support for more than 3 mouse buttons as well as horizontal scroll wheel - Driver fixes: xHCI (much better USB3 compatibility), hda, intel_extreme, NVMe (experimental and broken, we may disable it by default), network?, i2c touchpads/touchscreens if that gets merged in time - Installation smoothening: better EFI integration (still incomplete), optional packages in Installer, improved DriveSetup (shows partition used space, shows encrypted volumes, etc) - Probably something about haikuports and stats about new and updated packages too? - DeskBar improvements (new mini mode, better scaling, ...) - HiDPI displays compatibility (did we make some progress on that since beta1?) - Lowered memory requirements (to be checked - how low can we go now?) - Security fixes (syscall audit, smap/smep violations fixing, ...) - #15294 Meta key in Terminal - has a great description of what it does. - #5126 Improvements to the Tracker API == Applications === Deskbar - #4971 Resize Deskbar from the Deskbar settings, our by using the CTRL-ALT-right click drag - #8537 In menus, the size of the icon will now always be the same size as your chosen font size - #8691 The icons of replicants are running in the Deskbar, will scale according to the settings - #13304 Auto-raised deskbar will now also auto-unraise === DriveSetup - #10098 Encrypted disks will actually display that they are encrypted instead of empty === HaikuDepot - #10358 When a package is queued for download and installation, it will now have the status 'queued' in the interface. - #11652 When showing all packages, the installed packages are part of the list by default. Before they were hidden by default. - #12198 HaikuDepot can now display multiple screenshots, when the package has multiple to show. - #12428 It is possible to switch between a view with all tabs, and a view with featured packages, by using the tabs at the top of the window. - #13806 The application will now clearly show when it is downloading screenshots for the packages you are looking at. - #13808 Overall, it is more clear when HaikuDepot is contacting the web to retrieve information or updates. === Installer - #14310 The installer now supports the user showing and selecting optional packages, when they are available on the installation medium === Launchbox - #11237 Launchbox will now start automatically at boot, when that has been configured in its settings. - #13835 Icons of 96x96 and 128x128 pixels are now supported. === MediaPlayer - #6628 When MediaPlayer is opened by opening a media file from Tracker, there will be a mark at the timestamp at the point where the user last stopped listening/viewing that file. === People - #9397 It is possible to quickly create a new Person file from Tracker, with the 'Create new...' feature === SoftwareUpdate - #14002 When updating the system packages itself, SoftwareUpdater will now display a 'Restart' button to inform the user that a restart is necessary. === Terminal - #15294 Support for an emulated Meta key === Tracker - #1264 multi-range selection in Tracker and list views - #3011 Directories with a large number of files are now loaded quicker - #5126 Improvements to the Tracker API - #10529 For files that are part of a package, show information about that package in the info window. === WebPositive - #14845 Allow selecting any font size (was previously limited to 18pt). === Command Line Utilities - #10288 `uname` now shows which specific Haiku nightly revision is built - #12665 the built in `ftp` is now replaced with [https://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/net/tnftp/README.html tnftp] == Drivers === Audio The `hda` driver has had some improvements, that will allow it to work properly on more devices. If you had problem in R1/beta1, then it is worth a shot to try it again. === Other notes - #9910 NVMe device support - #5056 Intel Extreme: support X4500HD - #12723 Intel Extreme: support hardware panel scaling for chipsets that support it - #13987 FreeBSD Network Drivers: upgrade network drivers to FreeBSD 11.1 == Preferences - #10171 Support configuration of advanced mice and trackballs == System - #10139 Add UEFI Loader (the Beta 1 DVD image shipped with an EFI loader, but it was added manually to the release image) == Translator Improvements - #10354 WebP images now support images with an alpha channel. = Localization Haiku is available in 26 languages, and the User Guide is available in 20 languages. - Friulan translation added. - Turkish translation added. - (to complete with the list of added and removed translation) = For Developers and Porters == POSIX - [https://git.haiku-os.org/haiku/commit?id=38ce902686b9b6d4d19bfde134b18f997192ba01 fcntl.h] A non-functioning version of `posix_fadvice()` has been added, to make it easier to port software. - [https://git.haiku-os.org/haiku/commit/headers/posix/net/if_tun.h?id=b110fce124c8603201228da1b67119b56e41cf7e net/if_tun.h] A public API for the tun/tap device compatible with the Linux API has been added. - [https://git.haiku-os.org/haiku/commit/?h=hrev53087 net/if_types.h] Add some constants for `IFT_LOCALTALK`, `IFT_TUN`, `IFT_L2VLAN` and `IFT_BRIDGE` - [https://git.haiku-os.org/haiku/commit/?h=hrev52972&id=901c3d44b047f83b914f7a3cd1f532964255771a pthread.h] Implement `pthread_attr_[get|set]stack()` - [https://git.haiku-os.org/haiku/commit/?h=hrev52840&id=af615399189deeec8d412ec165ab638326471ab1 spawn.h] Add `POSIX_SPAWN_SETSID` - [https://git.haiku-os.org/haiku/commit/?h=hrev53281&id=e1a822a95f318ca23e41a93d1416322dce439421 stdlib.h] Make `putenv()` conform to POSIX standard (no source/binary change) - [https://git.haiku-os.org/haiku/commit/?id=8ae2e95643ee7ba3f46b0e8a73df1466f23aa7be sys/resource.h] Add `[gs]etpriority()` from the POSIX-1.2013 standard. - [https://git.haiku-os.org/haiku/commit/?h=hrev53464&id=af0281a8c20afe53d805b5f3f14935a59b214bdb unistd.h] Add the `_SC_HOST_NAME_MAX`, `_SC_REGEXP`, `_SC_SYMLOOP_MAX`, and `_SC_SHELL` for `sysconf()` - [https://git.haiku-os.org/haiku/commit/?h=hrev52776&id=b9c25b0d0ec7bb16d72dca4b6f529af604e66df6 unistd.h] Add `nice()` from the POSIX.1-2008 standard. == Game Kit - [https://git.haiku-os.org/haiku/commit/?h=hrev53625&id=69f814cded60c5f977a61a2ab747e4456323e6f2 FileGameSound.h] Allow initialisation of the `BFileGameSound` from a `DataIO` object, to allow for opening game sound files from sources other than files. == Interface Kit - [https://git.haiku-os.org/haiku/commit/?h=hrev52499&id=efafab643ce980e3f3c916795ed302599f6b4f66 Deskbar.h] Add MaxItemWidth() and MaxItemHeight() as part of the work to support variable size icons for Deskbar replicants. - [https://git.haiku-os.org/haiku/commit/headers/os/interface/View.h?id=5bbf7f1be073d376e37da34681c8e6c7acfcf198 View.h] New `B_MOUSE_BUTTON` macro that helps you identify which mouse button was clicked on a mouse with more than three buttons. - [https://git.haiku-os.org/haiku/commit/headers/os/interface/View.h?id=47102c074278637c3b33935b451d53f7ad176658 View.h] Add a the new `B_TRANSPARENT_BACKGROUND`, to identify views that have a transparant background (i.e. the background will not be drawn for those views). - [https://git.haiku-os.org/haiku/commit/headers/os/interface/View.h?id=c67dde0f2ccb45d550af410cf6d73fee39d10504 View.h] Add Tiled Background methods to `BView` objects to asynchronously draw bitmaps as background tiles for the view, using the overloaded `DrawTiledBitmapAsync()` method. == Locale Kit - [https://git.haiku-os.org/haiku/commit/headers/os/locale/Country.h?id=70cdd7d4f5fc62e8b3e220646f84235ec3d444d5 Country.h] Add a `SetTo()` and an `InitCheck()` method to the `BCountry` class. == Package Kit - [https://git.haiku-os.org/haiku/commit/headers/os/package/PackageRoster.h?id=e2c7bb900cf83fe0a3834ad2189577687ffaa03f PackageRoster.h] Add a `IsRebootNeeded()` method to the `BPackageRoster` class. - [https://git.haiku-os.org/haiku/commit/headers/os/package/PackageRoster.h?id=b711002d345e2e9e0075be46a37492624f73ccdd PackageRoster.h] Add a `IsPackageActive()` method to the `BPackageRoster` class.