| 1 | # Updating Information for DragonFly users. |
| 2 | # |
| 3 | # |
| 4 | # This file should warn you of any pitfalls which you might need to work around |
| 5 | # when trying to update your DragonFly system. The information below is |
| 6 | # in reverse-time order, with the latest information at the top. |
| 7 | # |
| 8 | # If you discover any problem, please contact the bugs@lists.dragonflybsd.org |
| 9 | # mailing list with the details. |
| 10 | |
| 11 | +-----------------------------------------------------------------------+ |
| 12 | + UPGRADING DRAGONFLY FROM 4.6 TO LATER VERSIONS + |
| 13 | +-----------------------------------------------------------------------+ |
| 14 | |
| 15 | COMPAT_43 KERNEL OPTION REMOVED |
| 16 | ------------------------------- |
| 17 | |
| 18 | It was commented out in our default configs for several years now, but |
| 19 | might still be present in custom configs created before Nov. 2011. |
| 20 | |
| 21 | OPENSSL REMOVED |
| 22 | --------------- |
| 23 | |
| 24 | OpenSSL has been removed from base and replaced with a private version of |
| 25 | LibreSSL. The previously installed OpenSSL libraries, headers, and man |
| 26 | pages will remain on the system unless the "make upgrade" command is |
| 27 | specifically instructed to remove them. To do this, define |
| 28 | REMOVE_OPENSSL_FILES for the upgrade command, e.g. |
| 29 | "make upgrade REMOVE_OPENSSL_FILES=yes" |
| 30 | |
| 31 | 28-Oct-2016: openssl has been replaced by ressl. It is recommended that any |
| 32 | stale OpenSSL files be removed to avoid configuration scripts from using |
| 33 | the stale and potentially vulnerable version, but all binaries that are |
| 34 | dynamically linked to the OpenSSL libraries should be rebuilt first to |
| 35 | avoid breakage. |
| 36 | |
| 37 | CS, EX AND VX DRIVERS REMOVED |
| 38 | ----------------------------- |
| 39 | |
| 40 | The cs(4), ex(4) and vx(4) drivers have been removed. They were very |
| 41 | old and its doubtful they ever worked properly in x86_64 but they were |
| 42 | in X86_64_GENERIC, so custom configurations derived from it have to be |
| 43 | adjusted. |
| 44 | |
| 45 | +-----------------------------------------------------------------------+ |
| 46 | + UPGRADING DRAGONFLY FROM 4.4 TO LATER VERSIONS + |
| 47 | +-----------------------------------------------------------------------+ |
| 48 | |
| 49 | AMD REMOVED |
| 50 | ----------- |
| 51 | |
| 52 | The am-utils automounter suite has been removed. It stopped working |
| 53 | at some point and was never fixed. autofs(5) and the associated |
| 54 | userland has been brought in from FreeBSD and replaces it. |
| 55 | |
| 56 | AN DRIVER REMOVED |
| 57 | ----------------- |
| 58 | |
| 59 | The an(4) driver has been removed. It was in the X86_64_GENERIC kernel |
| 60 | config file, so any configurations derived from it have to be adjusted. |
| 61 | |
| 62 | /DEV/DRI GROUP CHANGED |
| 63 | ---------------------- |
| 64 | |
| 65 | The default group assigned to /dev/dri entries has been changed |
| 66 | from 'wheel' to 'video' with the id of '44'. If you want to have |
| 67 | access to the dri devices please add yourself to the video group |
| 68 | with: |
| 69 | |
| 70 | # pw groupmod video -m $USER |
| 71 | |
| 72 | +-----------------------------------------------------------------------+ |
| 73 | + UPGRADING DRAGONFLY FROM 4.2 TO LATER VERSIONS + |
| 74 | +-----------------------------------------------------------------------+ |
| 75 | |
| 76 | DSCHED REMOVED |
| 77 | -------------- |
| 78 | |
| 79 | dsched(4) has been removed and one of its kernel options, DSCHED_FQ, was |
| 80 | in our default kernel config file. So the DSCHED_FQ option has been turned |
| 81 | into a no-op for now and can be removed from custom configurations. |
| 82 | |
| 83 | EST DRIVER REMOVED, COMPILE_ET AND LIBCOM_ERR TOO |
| 84 | ------------------------------------------------- |
| 85 | |
| 86 | The est(4) driver has been removed. All CPUs it supported (except one) |
| 87 | were 32 bits only. Those who are still using the Core 2 Duo T7500 should |
| 88 | report back if there are any issues with this CPU and our regular ACPI |
| 89 | P-state support. |
| 90 | |
| 91 | Also, compile_et(1) and com_err(3) have been removed as well. They |
| 92 | should have been removed along with kerberos support, back in 2009. |
| 93 | |
| 94 | SEVERAL LOCALES RENAMED |
| 95 | ----------------------- |
| 96 | |
| 97 | Several locales were using obsolete and misleading names, and thus have |
| 98 | been adjusted to current standards. Any users of the following locales |
| 99 | need to select alternates: |
| 100 | |
| 101 | DFLY 4.2 locale DFLY 4.4 alterative locale |
| 102 | --------------- ------------------------------------ |
| 103 | mn_MN.UTF-8 mn_Cyrl_MN.UTF-8 |
| 104 | no_NO.UTF-8 nb_NO.UTF-8 or nn_NO.UTF-8 |
| 105 | no_NO.ISO8859-1 nb_NO.ISO8869-1 or nn_NO.ISO8859-1 |
| 106 | no_NO.ISO8859-15 nb_NO.ISO8859-15 or nn_NO.ISO8859-15 |
| 107 | sr_YU.UTF-8 sr_Cyrl_RS.UTF-8 or sr_Latn_RS.UTF-8 |
| 108 | sr_YU.ISO8859-5 sr_Cyrl_RS.ISO8859-5 |
| 109 | sr_YU.ISO8859-2 sr_Latn_RS.ISO8859-2 |
| 110 | zh_CN.GBK zh_Hans_CN.GBK |
| 111 | zh_CN.UTF-8 zh_Hans_CN.UTF-8 |
| 112 | zh_CN.eucCN zh_Hans_CN.eucCN |
| 113 | zh_CN.GB2312 zh_Hans_CH.GB2312 |
| 114 | zh_CN.GB18030 zh_Hans_CH.GB18030 |
| 115 | zh_HK.Big5HKSCS zh_Hant_HK.Big5HKSCS |
| 116 | zh_HK.UTF_8 zh_Hant_HK.UTF-8 |
| 117 | zh_TW.Big5 zh_Hant_TW.Big5 |
| 118 | zh_TW.UTF-8 zh_Hant_TW.UTF-8 |
| 119 | |
| 120 | +-----------------------------------------------------------------------+ |
| 121 | + UPGRADING DRAGONFLY FROM 4.0 TO LATER VERSIONS + |
| 122 | +-----------------------------------------------------------------------+ |
| 123 | |
| 124 | BINUTILS 2.25 REPLACES 2.22, PRIMARY |
| 125 | ------------------------------------ |
| 126 | |
| 127 | The oldest of the two versions of Binutils, version 2.22, was removed |
| 128 | and replaced with Binutils 2.25. It becomes the primary version version |
| 129 | of binutils and version 2.24 becomes the alternate. There are 8 current |
| 130 | CVE written against 2.24, so for security reasons version 2.25 should |
| 131 | always be used. |
| 132 | |
| 133 | The accepted values of BINUTILSVER are now "binutils225" (default) and |
| 134 | "binutils224". The building of Binutils 2.24 can be prevented by setting |
| 135 | NO_ALTBINUTILS=yes in make.conf. |
| 136 | |
| 137 | LOADER OPTIONS CHANGED |
| 138 | ---------------------- |
| 139 | |
| 140 | Right after the development branch started, the Fred art accompanying the |
| 141 | loader menu was improved. The line between Fred and the menu was removed |
| 142 | by default (but can optionally be returned) and the placement shifted as |
| 143 | a result. The drawing was improved, and the colored version was improved, |
| 144 | changing the eyes and wing color from white to red. A new color version |
| 145 | of Fred was added, one with a blue scheme. |
| 146 | |
| 147 | The loader menu defaults have changed since release 4.0: The vertical |
| 148 | line was removed, the loader is displayed in color by default*, and the |
| 149 | blue scheme is used. |
| 150 | |
| 151 | The loader.conf changes are: |
| 152 | loader_color: option has been removed |
| 153 | loader_plain: option has been added, it changed menu to monochrome |
| 154 | fred_is_red: changes color scheme from blue to red |
| 155 | fred_is_blue: option existed only on 4.1, it has been removed |
| 156 | fred_separated: Adds line between Fred and menu (as seen previously) |
| 157 | |
| 158 | * If loader.conf defines "console" as "comconsole" or "console" is defined |
| 159 | in the environment as "comconsole" then color will not be displayed, |
| 160 | even if loader_plain value is "NO". |
| 161 | |
| 162 | SENDMAIL REMOVED FROM BASE |
| 163 | -------------------------- |
| 164 | |
| 165 | The only Mail Transfer Agent provided now is DragonFly Mail Agent (dma). |
| 166 | If the system being upgraded is still configured to use the sendmail |
| 167 | binaries from base, the "make upgrade" command will fail. |
| 168 | |
| 169 | The administrator must change /etc/mail/mailer.conf to switch the |
| 170 | mailwrapper to dma or a DPorts-based MTA prior to running the upgrade |
| 171 | command that permanently removes sendmail executables and could |
| 172 | potentially break a running mail server. |
| 173 | |
| 174 | Refer: http://www.dragonflybsd.com/docs/docs/newhandbook/mta/ for |
| 175 | detailed instructions on how to configure the MTA selection. |
| 176 | |
| 177 | _KPOSIX_VERSION and P1003_1B OPTIONS REMOVED |
| 178 | -------------------------------------------- |
| 179 | |
| 180 | The _KPOSIX_VERSION and P1003_1B kernel options have been changed to |
| 181 | no-ops. They can be removed from custom kernel configurations. |
| 182 | |
| 183 | SOUND SYSTEM UPDATED FROM FreeBSD 11-CURRENT |
| 184 | -------------------------------------------- |
| 185 | |
| 186 | Many more sound devices may be detected. |
| 187 | |
| 188 | If the default device choosen isn't to your liking, setting the sysctl |
| 189 | hw.snd.default_unit to a different number will change it. |
| 190 | |
| 191 | SCTP SUPPORT DROPPED |
| 192 | -------------------- |
| 193 | |
| 194 | Support for the SCTP protocol has been removed. |
| 195 | |
| 196 | OLD USB DRIVERS REMOVED |
| 197 | ----------------------- |
| 198 | |
| 199 | The old USB stack, along with the kernel config option "device oldusb" |
| 200 | and the make.conf variable "WANT_OLDUSB" have been removed. This means |
| 201 | that for custom kernel configuration files which were derived from a |
| 202 | GENERIC or X86_64_GENERIC file prior to making the usb4bsd stack default, |
| 203 | various (old USB stack specific) devices will now complain about being |
| 204 | unknown: |
| 205 | |
| 206 | * oldusb (obviously) |
| 207 | * natausb (not yet ported to usb4bsd) |
| 208 | * rue (not yet ported to usb4bsd) |
| 209 | * ugen (no longer needed in usb4bsd) |
| 210 | * urio (not yet ported to usb4bsd) |
| 211 | * uscanner (no longer needed in usb4bsd) |
| 212 | |
| 213 | They should be removed or commented out in such custom kernel configs. |
| 214 | |
| 215 | GCC 5 |
| 216 | ----- |
| 217 | |
| 218 | The GCC 4.4 compiler has been retired. It has been replaced by a GCC 5.1. |
| 219 | The following make.conf variables no longer work: NO_GCC44, NO_OBJC, and |
| 220 | NO_CXX. The latter was never documented and the latest versions of GCC are |
| 221 | partially written in C++ so a C++ compiler is no longer optional. In |
| 222 | practical terms it has not been optional for many years as other base |
| 223 | components are also written in C++. The resource savings by avoiding |
| 224 | building Objective-C compiler is so small, the complexity added by NO_OBJC |
| 225 | internally was deemed a bad tradeoff so that is the reason for its removal. |
| 226 | Also note that no "info" pages are installed with GCC 5. After this entry |
| 227 | was originally written, all info pages were removed from DragonFly. |
| 228 | |
| 229 | GCC 5.1 has been designated as the primary compiler. As such, there is a |
| 230 | new make.conf variable, NO_ALTCOMPILER. It will block the rebuilding of |
| 231 | the designated secondary compiler, GCC 4.7. However, while DPorts |
| 232 | primarily uses GCC 5 to build ports now, it still uses GCC 4.7 as well, so |
| 233 | if building ports from source is desired, don't block building of the |
| 234 | secondary compiler. |
| 235 | |
| 236 | +-----------------------------------------------------------------------+ |
| 237 | + UPGRADING DRAGONFLY FROM 3.8 TO LATER VERSIONS + |
| 238 | +-----------------------------------------------------------------------+ |
| 239 | |
| 240 | SMP AND DEVICE_POLLING OPTIONS MADE UNKNOWN |
| 241 | ------------------------------------------- |
| 242 | |
| 243 | DEVICE_POLLING was replaced by IFPOLL_ENABLE and the former SMP code is |
| 244 | the default now (even on single-core systems), both for, like, 21 months. |
| 245 | We kept the options around as no-ops as a convenience, to allow people |
| 246 | using the same config for the then current release and the then current |
| 247 | master. That period is now over, so any configs still having those |
| 248 | options have to be adjusted. |
| 249 | |
| 250 | SYSVIPC SYSCALLS MADE NON-OPTIONAL |
| 251 | ---------------------------------- |
| 252 | |
| 253 | The code related to the SYSVMSG, SYSVSEM and SYSVSHM kernel options is |
| 254 | now compiled in by default. The options are no-ops for now. |
| 255 | |
| 256 | DEFAULT DRIVER CHANGED FOR LSI "THUNDERBOLT" SERIES RAID CONTROLLERS |
| 257 | -------------------------------------------------------------------- |
| 258 | |
| 259 | The default driver for those controllers is now mrsas(4) due to reports |
| 260 | of file system corruption using the mfi(4) driver. The whole issue (and |
| 261 | how to deal with potential problems when switching) was explained here: |
| 262 | |
| 263 | http://lists.dragonflybsd.org/pipermail/users/2014-July/128703.html |
| 264 | |
| 265 | A tunable is provided for letting those controllers still attach via |
| 266 | the mfi(4) driver, hw.mrsas.mfi_enable (see mrsas(4) manual page). |
| 267 | |
| 268 | OLDER NETWORK DRIVERS MOVED TO I386 ONLY |
| 269 | ---------------------------------------- |
| 270 | |
| 271 | The following drivers have been made i386 only: ed(4), sr(4), ng_sync_ar |
| 272 | and ng_sync_sr. ed(4) used to be in X86_64_GENERIC, so it has to be |
| 273 | removed in kernel configs derived from X86_64_GENERIC. |
| 274 | |
| 275 | +-----------------------------------------------------------------------+ |
| 276 | + UPGRADING DRAGONFLY FROM 3.6 TO LATER VERSIONS + |
| 277 | +-----------------------------------------------------------------------+ |
| 278 | |
| 279 | UPDATE FROM MOST RECENT 3.6 |
| 280 | --------------------------- |
| 281 | |
| 282 | Versions of 3.6 built before June 25th have a bug where installworld might |
| 283 | crash during installation of the new initrd. Upgrade to the latest version |
| 284 | of 3.6 before updating to 3.8 or later. |
| 285 | |
| 286 | ATM, IPX, NCP AND NWFS SUPPORT DROPPED |
| 287 | -------------------------------------- |
| 288 | |
| 289 | Support for the IPX and NCP network protocols and for mouting NetWare |
| 290 | file systems has been dropped. Dito for ATM protocol support. |
| 291 | |
| 292 | INITRD IMAGES NOW INSTALLED BY DEFAULT |
| 293 | -------------------------------------- |
| 294 | |
| 295 | An initial ramdisk image is now installed in /boot/kernel/initrd.img.gz |
| 296 | |
| 297 | Older images installed under the file name of initrd.img will be removed |
| 298 | automatically by the make upgrade process. |
| 299 | |
| 300 | USB4BSD IS NOW THE DEFAULT USB STACK |
| 301 | ------------------------------------ |
| 302 | |
| 303 | To get back to the old stack, put "WANT_OLDUSB=yes" in /etc/make.conf and |
| 304 | replace "device usb" with "device oldusb" in the kernel configuration. |
| 305 | |
| 306 | MORE ISA SUPPORT DROPPED |
| 307 | ------------------------ |
| 308 | |
| 309 | ISA support has been dropped from the following drivers: adv(4), an(4), |
| 310 | ar(4), cs(4), digi(4), ed(4), ep(4), ex(4), fe(4), lnc(4), sbni(4), |
| 311 | si(4), sn(4), and stg(4). |
| 312 | |
| 313 | +-----------------------------------------------------------------------+ |
| 314 | + UPGRADING DRAGONFLY FROM 3.4 TO LATER VERSIONS + |
| 315 | +-----------------------------------------------------------------------+ |
| 316 | |
| 317 | ABI CHANGE |
| 318 | ---------- |
| 319 | |
| 320 | Installed third-party software (dports) will have to be rebuilt after upgrade, |
| 321 | or reinstalled from binary packages. |
| 322 | |
| 323 | UPDATING FROM 3.4 TO 3.6 |
| 324 | ------------------------ |
| 325 | |
| 326 | This only applies for this specific upgrade due to locale changes; it is |
| 327 | not needed for upgrades after 3.6. Please update in this order: |
| 328 | |
| 329 | make buildworld |
| 330 | make buildkernel |
| 331 | make installworld |
| 332 | make installkernel |
| 333 | *reboot* |
| 334 | make upgrade |
| 335 | |
| 336 | See this mailing list post for details: |
| 337 | http://lists.dragonflybsd.org/pipermail/users/2013-September/090163.html |
| 338 | |
| 339 | CYRIX OPTIONS REMOVED |
| 340 | --------------------- |
| 341 | |
| 342 | The following Cyrix related options have been removed: CPU_BTB_EN, |
| 343 | CPU_CYRIX_NO_LOCK, CPU_DIRECT_MAPPED_CACHE, CPU_DISABLE_5X86_LSSER, |
| 344 | CPU_FASTER_5X86_FPU, CPU_IORT, CPU_LOOP_EN, CPU_RSTK_EN, CPU_SUSP_HLT, |
| 345 | CYRIX_CACHE_WORKS, and CYRIX_CACHE_REALLY_WORKS |
| 346 | |
| 347 | ISA SUPPORT REMOVED FROM RP(4) |
| 348 | ------------------------------ |
| 349 | |
| 350 | ISA support has been removed from the rp(4) driver. It is now PCI only. |
| 351 | |
| 352 | +-----------------------------------------------------------------------+ |
| 353 | + UPGRADING DRAGONFLY FROM 3.2 TO LATER VERSIONS + |
| 354 | +-----------------------------------------------------------------------+ |
| 355 | |
| 356 | COMPAT_SUNOS OPTION REMOVED |
| 357 | --------------------------- |
| 358 | |
| 359 | The COMPAT_SUNOS option has been removed. It was meant to provide binary |
| 360 | compatibility with SunOS 4.x for the sparc32 port of 4.4BSD. |
| 361 | |
| 362 | ISA SOUND CARD SUPPORT REMOVED |
| 363 | ------------------------------ |
| 364 | |
| 365 | The following modules have been removed (all for ISA sound cards): |
| 366 | snd_ad1816.ko, snd_ess.ko, snd_mss.ko, snd_sb8.ko, snd_sb16.ko, snd_sbc.ko |
| 367 | |
| 368 | GCC 4.7 |
| 369 | ------- |
| 370 | |
| 371 | DragonFly has switched base compilers. GCC 4.7 is now the default |
| 372 | compiler and GCC 4.4 is the alternative compiler. The "NO_GCC47" make |
| 373 | variable ceases to work now. |
| 374 | |
| 375 | Users who wish to build only GCC 4.7 have to use NO_GCC44 in the |
| 376 | /etc/make.conf to prohibit GCC 4.4 from building. However, using it is |
| 377 | highly discouraged. There are a few packages in pkgsrc that do not build |
| 378 | with GCC 4.7 and the new "DPorts" system uses GCC 4.4 by default. At |
| 379 | this time, it is recommended to keep both compilers on the base system. |
| 380 | |
| 381 | SMP OPTION REMOVED |
| 382 | ------------------ |
| 383 | |
| 384 | The SMP kernel option has been made a no-op. All kernels now feature SMP |
| 385 | support. If you have 'options SMP' in your kernel config, you can as well |
| 386 | remove it. |
| 387 | |
| 388 | DEVICE_POLLING OPTION REPLACED BY IFPOLL_ENABLE OPTION, KTR_POLLING REMOVED |
| 389 | --------------------------------------------------------------------------- |
| 390 | |
| 391 | The DEVICE_POLLING kernel option has been made a no-op and it has been |
| 392 | replaced by IFPOLL_ENABLE. If you have 'options DEVICE_POLLING' in your |
| 393 | kernel config, you need to change it to IFPOLL_ENABLE. |
| 394 | |
| 395 | Also, the KTR_POLLING kernel option has been removed, so it must be |
| 396 | removed from kernel configs that have it. |
| 397 | |
| 398 | BUSLOGIC, CYCLADES AND STALLION ISA SUPPORT REMOVED |
| 399 | --------------------------------------------------- |
| 400 | |
| 401 | The bt(4) driver for Buslogic SCSI adapters has been made PCI only. ISA |
| 402 | cards will no longer be detected. |
| 403 | |
| 404 | The same has been done for Stallion multiport serial controllers. stli(4) |
| 405 | has been completely removed (along with the stlload(8) and stlstty(8) |
| 406 | utilities) and stl(4) was changed to support only PCI cards. Similarly, |
| 407 | ISA support was removed from cy(4) too. All these drivers are i386 only. |
| 408 | |
| 409 | COMPAT_OLDISA OPTION GONE |
| 410 | ------------------------- |
| 411 | |
| 412 | The i386 specific COMPAT_OLDISA kernel option has been removed, since |
| 413 | nothing needs it anymore. |
| 414 | |
| 415 | +-----------------------------------------------------------------------+ |
| 416 | + UPGRADING DRAGONFLY FROM 3.0 TO LATER VERSIONS + |
| 417 | +-----------------------------------------------------------------------+ |
| 418 | |
| 419 | APIC_IO OPTION REMOVED |
| 420 | ---------------------- |
| 421 | |
| 422 | The APIC_IO kernel option is no longer accepted after having been without |
| 423 | effect for a while. The hw.ioapic_enable tunable now serves its purpose. |
| 424 | If you have 'options APIC_IO' in your kernel config, you'll have to |
| 425 | remove it. |
| 426 | |
| 427 | WATCHDOG_ENABLE & HW_WDOG OPTIONS REMOVED |
| 428 | ----------------------------------------- |
| 429 | |
| 430 | The wdog framework is now compiled into our kernels by default, so the |
| 431 | options are no longer needed. |
| 432 | |
| 433 | DOSCMD(1) REMOVED |
| 434 | ----------------- |
| 435 | |
| 436 | doscmd(1) has been removed. It was i386 only. The doscmd(1) specific |
| 437 | NO_X make.conf option was removed too. |
| 438 | |
| 439 | GCC 4.7 |
| 440 | ------- |
| 441 | |
| 442 | GCC 4.7 has been brought in and replaces GCC 4.1 as DragonFly's non- |
| 443 | default compiler in base (default is still GCC 4.4). |
| 444 | |
| 445 | Users who wish to build only GCC 4.4 have to replace NO_GCC41 with |
| 446 | NO_GCC47 in /etc/make.conf. |
| 447 | |
| 448 | USB4BSD |
| 449 | ------- |
| 450 | |
| 451 | A new USB stack (from FreeBSD) has been brought in. The following |
| 452 | modules have been ported so far: usb, uhci, ohci, ehci, xhci, umass, |
| 453 | usfs, uether, if_axe, if_udav, ukbd, ums, uep, uhid, usb_quirk, |
| 454 | and uaudio. |
| 455 | |
| 456 | It is not yet the default. To activate it, WANT_USB4BSD=yes has to |
| 457 | be put in make.conf and device "usb4bsd" (quotes needed) has to |
| 458 | replace device usb in the kernel config. After that, a full |
| 459 | build/install/upgrade cycle is needed. |
| 460 | |
| 461 | Note that this is experimental and incomplete, but we are interested |
| 462 | in hearing about issues with it, of course. |
| 463 | |
| 464 | ISA SUPPORT REMOVED FROM AIC-6260/6360 DRIVER |
| 465 | --------------------------------------------- |
| 466 | |
| 467 | ISA adapter support was dropped from the aic(4) driver. |
| 468 | |
| 469 | +-----------------------------------------------------------------------+ |
| 470 | + UPGRADING DRAGONFLY FROM 2.10 TO LATER VERSIONS + |
| 471 | +-----------------------------------------------------------------------+ |
| 472 | |
| 473 | SEVERAL ISA DRIVERS REMOVED |
| 474 | --------------------------- |
| 475 | |
| 476 | The following ISA only drivers have been removed along with a couple of |
| 477 | associated userland tools: |
| 478 | |
| 479 | aha(4) |
| 480 | asc(4) & sasc(1) |
| 481 | ctx |
| 482 | dgb(4) |
| 483 | el(4) |
| 484 | gpib |
| 485 | gsc(4) & sgsc(1) |
| 486 | ie(4) |
| 487 | labpc(4) |
| 488 | le(4) |
| 489 | mse(4) |
| 490 | rc(4) |
| 491 | rdp(4) |
| 492 | spigot |
| 493 | tw(4) & xten(1) & xtend(8) |
| 494 | wl(4) & wlconfig(8) |
| 495 | wt(4) |
| 496 | |
| 497 | Note that two of these drivers (aha(4) and ie(4)) are in our GENERIC |
| 498 | config and one (aha(4)) is in our X86_64_GENERIC kernel configuration |
| 499 | file. |
| 500 | |
| 501 | If buildkernel complains about any of these drivers, just remove them |
| 502 | from your kernel configuration. |
| 503 | |
| 504 | BINUTILS 2.20 |
| 505 | ------------- |
| 506 | Binutils 2.20 has been removed in favor of Binutils 2.22. The accepted |
| 507 | values of BINUTILSVERS are now binutils221 and binutils222 (default). |
| 508 | |
| 509 | BUILDWORLD/-KERNEL PARALLELIZATION WORK |
| 510 | --------------------------------------- |
| 511 | Due to changes in the way we build with more than one make job, you |
| 512 | will have to update install(1) and mkdir(1) prior to buildworld if you |
| 513 | want to build with 'make -j': |
| 514 | |
| 515 | cd /usr/src/usr.bin/xinstall; make; make install; make clean |
| 516 | cd /usr/src/bin/mkdir; make; make install; make clean |
| 517 | |
| 518 | DMA(8) UPGRADE |
| 519 | -------------- |
| 520 | dma(8) has been upgraded to v0.7 which no longer supports the |
| 521 | /etc/dma/virtusertable. Some of its functionality has been replaced |
| 522 | with the MASQUERADE keyword and the EMAIL environment variable (see |
| 523 | the dma(8) manual page). |
| 524 | |
| 525 | +-----------------------------------------------------------------------+ |
| 526 | + UPGRADING DRAGONFLY FROM 2.8 TO LATER VERSIONS + |
| 527 | +-----------------------------------------------------------------------+ |
| 528 | |
| 529 | GCC 4.4 & BINUTILS 2.21 |
| 530 | ----------------------- |
| 531 | |
| 532 | GCC 4.4 has been made DragonFly's default compiler and Binutils 2.21 has |
| 533 | been made DragonFly's default Binutils. |
| 534 | |
| 535 | That means that any settings that set CCVER to 'gcc44' are not needed |
| 536 | anymore. Instead, CCVER can be set to 'gcc41' to go back to using |
| 537 | GCC 4.1. |
| 538 | |
| 539 | It also means that 'binutils221' as a value for BINUTILSVER has no |
| 540 | effect anymore. 2.17 has been removed and 'binutils220' is available |
| 541 | as an option. |
| 542 | |
| 543 | The NO_GCC44 option has been removed and will not affect the build |
| 544 | anymore. There is now a NO_GCC41 option that will prevent GCC 4.1 from |
| 545 | building in a similar fashion. |
| 546 | |
| 547 | Note that you must do a full buildworld/buildkernel for upgrading. |
| 548 | |
| 549 | pkg_radd settings |
| 550 | ----------------- |
| 551 | |
| 552 | The config file for pkg_radd has moved from /etc/settings.conf to |
| 553 | /etc/pkg_radd.conf. Save the contents of settings.conf before upgrading |
| 554 | if this is needed. This warning only applies if /etc/settings.conf |
| 555 | exists. pkg_radd will continue to work with defaults. |
| 556 | |
| 557 | +-----------------------------------------------------------------------+ |
| 558 | + 20100927 + |
| 559 | + UPGRADING DRAGONFLY FROM 2.6 to 2.8 or HEAD + |
| 560 | +-----------------------------------------------------------------------+ |
| 561 | |
| 562 | OpenSSL |
| 563 | -------- |
| 564 | |
| 565 | OpenSSL has been upgraded, and SHLIB_MAJOR was bumped for libssh and libcrypto. |
| 566 | This shouldn't break any 3rd-party software, but you'll need to recompile your |
| 567 | 3rd-party software if you want it to link against the new version of OpenSSL. |
| 568 | |
| 569 | Loader |
| 570 | ------- |
| 571 | |
| 572 | A new loader (dloader) has been added which better handles booting from |
| 573 | multiple kernel/module versions. |
| 574 | |
| 575 | To upgrade (Only for this upgrade, for post 2.8 upgrades see GENERAL below) |
| 576 | |
| 577 | cd /usr/src |
| 578 | make buildworld |
| 579 | make installworld |
| 580 | make upgrade |
| 581 | make buildkernel KERNCONF=<KERNELNAME> |
| 582 | make installkernel KERNCONF=<KERNELNAME> |
| 583 | |
| 584 | Note that you must installworld and run the 'upgrade' target before |
| 585 | installing the new kernel. |
| 586 | |
| 587 | BIND |
| 588 | ----- |
| 589 | |
| 590 | BIND has been removed from the base system. The ldns and drill tools have |
| 591 | been added for basic functionality. Use 'drill' where you would normally |
| 592 | use nslookup or dig, or install BIND from pkgsrc. It's available as |
| 593 | net/bind95, net/bind96, or net/bind97 as of this writing. |
| 594 | |
| 595 | This only affects older systems upgrading to 2.8. New 2.8+ installs |
| 596 | include BIND as a pkgsrc package. |
| 597 | |
| 598 | +-----------------------------------------------------------------------+ |
| 599 | + UPGRADING DRAGONFLY ON AN EXISTING DRAGONFLY SYSTEM + |
| 600 | + GENERAL + |
| 601 | +-----------------------------------------------------------------------+ |
| 602 | |
| 603 | Instructions on how to obtain and maintain DragonFly source code using git |
| 604 | are in the development(7) manual page. |
| 605 | |
| 606 | To upgrade a DragonFly system from sources you run the following sequence: |
| 607 | |
| 608 | cd /usr/src |
| 609 | make buildworld |
| 610 | make buildkernel KERNCONF=<KERNELNAME> |
| 611 | make installkernel KERNCONF=<KERNELNAME> |
| 612 | make installworld |
| 613 | |
| 614 | You will also want to run the 'upgrade' target to upgrade your /etc and the |
| 615 | rest of your system. The upgrade target is aware of stale files created by |
| 616 | older DragonFly installations and should delete them automatically. |
| 617 | |
| 618 | make upgrade |
| 619 | |
| 620 | See the build(7) manual page for further information. |
| 621 | |
| 622 | Once you've done a full build of the world and kernel you can do incremental |
| 623 | upgrades of either by using the 'quickworld' and 'quickkernel' targets |
| 624 | instead of 'buildworld' and 'buildkernel'. If you have any problems with |
| 625 | the quick targets, try updating your repo first, and then a full buildworld |
| 626 | and buildkernel as shown above, before asking for help. |
| 627 | |
| 628 | +-----------------------------------------------------------------------+ |
| 629 | + UPGRADING FROM DRAGONFLY <= 2.0 TO DRAGONFLY >= 2.1 + |
| 630 | +-----------------------------------------------------------------------+ |
| 631 | |
| 632 | In 2.1 kernel and modules has moved to boot directory. For most cases |
| 633 | this is handled automatically by 'make upgrade'. A few cases needs manual |
| 634 | intervention: |
| 635 | |
| 636 | * When installing a kernel without first doing a make buildworld, |
| 637 | installworld and upgrade to the same DESTDIR as kernel: |
| 638 | make DESTDIR/boot directory and move kernel and modules into this boot |
| 639 | directory; also move kernel.old and modules.old. |
| 640 | Typical example is vkernel(7), use (no modules used): |
| 641 | |
| 642 | cd /var/vkernel |
| 643 | mkdir boot |
| 644 | chflags noschg kernel |
| 645 | mv kernel kernel.old boot |
| 646 | chflags schg boot/kernel |
| 647 | |
| 648 | * When using a boot-only partition, /boot/loader.rc needs to be edited: |
| 649 | delete occurrences of '/boot/'. |
| 650 | These occurences can normally be deleted in any case, see loader(8). |
| 651 | |
| 652 | +-----------------------------------------------------------------------+ |
| 653 | + UPGRADING FROM DRAGONFLY <= 1.8 TO DRAGONFLY >= 1.9 + |
| 654 | +-----------------------------------------------------------------------+ |
| 655 | |
| 656 | In 1.9 major changes to the disk management infrastructure have taken |
| 657 | place. make upgrade may not catch all of your disk devices in /dev, |
| 658 | so after upgrading be sure to cd /dev; ./MAKEDEV <blah> where <blah> |
| 659 | are all of your disk devices. HOWEVER, from late 2.3 on we run devfs |
| 660 | and MAKEDEV no longer exists. |
| 661 | |
| 662 | The biggest changes in 1.9 are: |
| 663 | |
| 664 | (1) That whole-slice devices such as da0s1 no longer share the same device |
| 665 | id as partition c devices such as da0s1c. |
| 666 | |
| 667 | (2) The whole-disk device (e.g. da0) is full raw access to the disk, |
| 668 | with no snooping or reserved sectors. Consequently you cannot run |
| 669 | disklabel on this device. Instead you must run disklabel on a |
| 670 | whole-slice device. |
| 671 | |
| 672 | (3) The 'compatibility' partitions now use slice 0 in the device name, |
| 673 | so instead of da0a you must specify da0s0a. Also, as per (1) above, |
| 674 | accessing the disklabel for the compatibility partitions must be |
| 675 | done via slice 0 (da0s0). |
| 676 | |
| 677 | (4) Many device drivers that used to fake up labels, such as CD, ACD, VN, |
| 678 | and CCD now run through the disk management layer and are assigned |
| 679 | real disk management devices. VN and CCD in particular do not usually |
| 680 | use a MBR and disklabels must be accessed through the compatibility |
| 681 | slice 0. Your /etc/ccd.conf file still specifies 'ccd0', though, you |
| 682 | don't name it 'ccd0s0' in the config file. |
| 683 | |
| 684 | Generally speaking, you have to get used to running fdisk and disklabel on |
| 685 | the correctly specified device names. A lot of the wiggle, such as running |
| 686 | disklabel on a partition, has been removed. |
| 687 | |
| 688 | +-----------------------------------------------------------------------+ |
| 689 | + UPGRADING FROM OLDER VERSIONS OF DRAGONFLY OR FREEBSD + |
| 690 | +-----------------------------------------------------------------------+ |
| 691 | |
| 692 | > Kerberos IV |
| 693 | ------------- |
| 694 | |
| 695 | Kerberos IV (eBones) was removed from the tree, please consider moving to |
| 696 | Kerberos 5 (Heimdal). |
| 697 | |
| 698 | > Package Management System |
| 699 | --------------------------- |
| 700 | |
| 701 | Starting with the 1.4 release, DragonFly uses NetBSD's pkgsrc package |
| 702 | management system. The necessary tools to build and maintain packages |
| 703 | are provided in /usr/pkg/bin and /usr/pkg/sbin. Make sure that these |
| 704 | directories are in your PATH variable. |
| 705 | |
| 706 | In order to obtain a reasonably current snapshot of the pkgsrc tree, use |
| 707 | the tarball from NetBSD: |
| 708 | |
| 709 | fetch -o /tmp/pkgsrc.tar.gz ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc.tar.gz |
| 710 | cd /usr; tar -xzf /tmp/pkgsrc.tar.gz; chown -R root:wheel pkgsrc |
| 711 | |
| 712 | This tree can then be kept up to date with cvs update: |
| 713 | |
| 714 | cd /usr/pkgsrc; cvs up |
| 715 | |
| 716 | NOTE! If you upgraded from a pre-1.4 system to 1.4 or later, you need to |
| 717 | build and install the pkgsrc bootstrap manually: |
| 718 | |
| 719 | cd /usr/pkgsrc/bootstrap |
| 720 | ./bootstrap --pkgdbdir /var/db/pkg --prefix /usr/pkg |
| 721 | |
| 722 | +-----------------------------------------------------------------------+ |
| 723 | + UPGRADING DRAGONFLY ON AN EXISTING DRAGONFLY SYSTEM + |
| 724 | + UPDATING FROM PRE-1.2 SYSTEMS OR FreeBSD 4.x TO + |
| 725 | + DRAGONFLY 1.3+ (EITHER PREVIEW or HEAD) + |
| 726 | +-----------------------------------------------------------------------+ |
| 727 | |
| 728 | The compatibility shims for the build environment have been removed, you |
| 729 | have to update to DragonFly 1.2 release branch first. |
| 730 | |
| 731 | The default PAM configuration has moved from /etc/pam.conf to /etc/pam.d/. |
| 732 | The existing configuration can be converted using /etc/pam.d/convert.sh. |
| 733 | Entries in /etc/pam.d/ override entries in /etc/pam.conf. In addition |
| 734 | the pam_skey.so module was retired, you have to remove it manually from |
| 735 | your configuration, when you convert it. |
| 736 | |
| 737 | > Required user and group IDs when upgrading from either FreeBSD or DragonFly |
| 738 | --------------------- |
| 739 | |
| 740 | The following users may be missing from your password file. Use vipw and |
| 741 | add any that are missing: |
| 742 | |
| 743 | smmsp:*:25:25::0:0:Sendmail Submission User:/var/spool/clientmqueue:/sbin/nologin |
| 744 | _pflogd:*:64:64::0:0:pflogd privsep user:/var/empty:/sbin/nologin |
| 745 | |
| 746 | The following groups may be missing from your group file. Use vi /etc/group |
| 747 | and add any that are missing: |
| 748 | |
| 749 | smmsp:*:25: |
| 750 | authpf:*:63: |
| 751 | _pflogd:*:64: |
| 752 | |
| 753 | |
| 754 | > Upgrading to DragonFly from FreeBSD |
| 755 | --------------------- |
| 756 | |
| 757 | You can build the DragonFly world and DragonFly kernels on a FreeBSD-4.x or |
| 758 | FreeBSD-5.x machine and then install DragonFly over FreeBSD, replacing |
| 759 | FreeBSD. Note that the DragonFly buildworld target does not try to reuse |
| 760 | make depend information, it starts from scratch, so no pre-cleaning of the |
| 761 | object hierarchy is necessary. |
| 762 | |
| 763 | # get the CVS repository (it is placed in /home/dcvs, 500MB). |
| 764 | # Please use the -h option and a mirror site to pull the |
| 765 | # initial repository, but feel free to use the main repository |
| 766 | # machine to pull updates. |
| 767 | cvsup /usr/share/examples/cvsup/DragonFly-cvs-supfile |
| 768 | # install the source from the CVS hierarchy (remove preexisting |
| 769 | # FreeBSD src first) (500MB) |
| 770 | cd /usr |
| 771 | rm -rf src |
| 772 | cvs -R -d /home/dcvs checkout -P src |
| 773 | |
| 774 | # build it (500MB used in /usr/obj) |
| 775 | # |
| 776 | cd /usr/src |
| 777 | make buildworld |
| 778 | make buildkernel KERNCONF=<KERNELNAME> |
| 779 | |
| 780 | Once you have built DragonFly you have to install it over FreeBSD. Since |
| 781 | DragonFly does not track changes made by FreeBSD to its include file |
| 782 | hierarchy and include file pollution can cause all sorts of unexpected |
| 783 | compilation issues to come up, it is best to wipe your include hierarchy |
| 784 | prior to installing DragonFly. Note that you should not wipe any installed |
| 785 | FreeBSD header files or binaries until after you have successfully completed |
| 786 | the build steps above. |
| 787 | |
| 788 | rm -rf /usr/include |
| 789 | mkdir /usr/include |
| 790 | make installkernel KERNCONF=<KERNELNAME> |
| 791 | make installworld |
| 792 | |
| 793 | Then you need to upgrade your system. DragonFly's 'make upgrade' target |
| 794 | will unconditionally upgrade the /etc files that sysops do not usually |
| 795 | mess around with, such as the files in /etc/rc.d. It will also remove any |
| 796 | obsolete files such as utilities and manpages that have been removed from |
| 797 | the system since the version you're coming from. If you are unsure we |
| 798 | recommend that you make a backup of at least your /etc before applying |
| 799 | this step. Note that DragonFly's RC system is basically RCNG from |
| 800 | FreeBSD-5, but there are some differences in the contents of the RC files. |
| 801 | |
| 802 | make upgrade |
| 803 | |
| 804 | NOTE! Never do a 'make upgrade' before 'make installworld' has been run. |
| 805 | Doing so might leave your system in an unusable state. |
| 806 | |
| 807 | Finally we recommend that you do an 'ls -lta BLAH' for /bin, /sbin, /usr/bin, |
| 808 | /usr/bin, and /usr/lib, and remove any stale files that you find. Please |
| 809 | report these files to the DragonFly developers so that they can be added to |
| 810 | the 'upgrade' target. |
| 811 | |