xref: /dflybsd-src/UPDATING (revision e9b676f1b9a8c6353ea836c328fdaf5a25d4babf)
1d2a0deccSMatthew Dillon# Updating Information for DragonFly users.
2d2a0deccSMatthew Dillon#
3d2a0deccSMatthew Dillon#
4d2a0deccSMatthew Dillon# This file should warn you of any pitfalls which you might need to work around
5d2a0deccSMatthew Dillon# when trying to update your DragonFly system.  The information below is
6d2a0deccSMatthew Dillon# in reverse-time order, with the latest information at the top.
7d2a0deccSMatthew Dillon#
8d2a0deccSMatthew Dillon# If you discover any problem, please contact the bugs@lists.dragonflybsd.org
9d2a0deccSMatthew Dillon# mailing list with the details.
10984263bcSMatthew Dillon
1164aeb497SSascha Wildner+-----------------------------------------------------------------------+
122a617999SSascha Wildner+         UPGRADING DRAGONFLY FROM 4.0 TO LATER VERSIONS                +
132a617999SSascha Wildner+-----------------------------------------------------------------------+
142a617999SSascha Wildner
15a7ac1ee9SSascha Wildner_KPOSIX_VERSION and P1003_1B OPTIONS REMOVED
16a7ac1ee9SSascha Wildner--------------------------------------------
17a7ac1ee9SSascha Wildner
18a7ac1ee9SSascha WildnerThe _KPOSIX_VERSION and P1003_1B kernel options have been changed to
19a7ac1ee9SSascha Wildnerno-ops. They can be removed from custom kernel configurations.
20a7ac1ee9SSascha Wildner
21aa7c3d6bSFrançois TigeotSOUND SYSTEM UPDATED FROM FreeBSD 11-CURRENT
22aa7c3d6bSFrançois Tigeot--------------------------------------------
23aa7c3d6bSFrançois Tigeot
24aa7c3d6bSFrançois TigeotMany more sound devices may be detected.
25aa7c3d6bSFrançois Tigeot
26aa7c3d6bSFrançois TigeotIf the default device choosen isn't to your liking, setting the sysctl
27aa7c3d6bSFrançois Tigeothw.snd.default_unit to a different number will change it.
28aa7c3d6bSFrançois Tigeot
2960a260adSSascha WildnerSCTP SUPPORT DROPPED
3060a260adSSascha Wildner--------------------
3160a260adSSascha Wildner
3260a260adSSascha WildnerSupport for the SCTP protocol has been removed.
3360a260adSSascha Wildner
342a617999SSascha WildnerOLD USB DRIVERS REMOVED
352a617999SSascha Wildner-----------------------
362a617999SSascha Wildner
372a617999SSascha WildnerThe old USB stack, along with the kernel config option "device oldusb"
382a617999SSascha Wildnerand the make.conf variable "WANT_OLDUSB" have been removed. This means
392a617999SSascha Wildnerthat for custom kernel configuration files which were derived from a
402a617999SSascha WildnerGENERIC or X86_64_GENERIC file prior to making the usb4bsd stack default,
412a617999SSascha Wildnervarious (old USB stack specific) devices will now complain about being
422a617999SSascha Wildnerunknown:
432a617999SSascha Wildner
442a617999SSascha Wildner  * oldusb	(obviously)
452a617999SSascha Wildner  * natausb	(not yet ported to usb4bsd)
462a617999SSascha Wildner  * rue		(not yet ported to usb4bsd)
472a617999SSascha Wildner  * ugen	(no longer needed in usb4bsd)
482a617999SSascha Wildner  * urio	(not yet ported to usb4bsd)
492a617999SSascha Wildner  * uscanner	(no longer needed in usb4bsd)
502a617999SSascha Wildner
512a617999SSascha WildnerThey should be removed or commented out in such custom kernel configs.
522a617999SSascha Wildner
53*e9b676f1SJohn MarinoGCC 5.0
54*e9b676f1SJohn Marino-------
55*e9b676f1SJohn Marino
56*e9b676f1SJohn MarinoThe GCC 4.4 compiler has been retired.  It has been replaced by a
57*e9b676f1SJohn Marino[prerelease] version of GCC 5.0.  The following make.conf variables no
58*e9b676f1SJohn Marinolonger work: NO_GCC44, NO_OBJC, and NO_CXX.  The latter was never
59*e9b676f1SJohn Marinodocumented and the latest versions of GCC are partially written in C++
60*e9b676f1SJohn Marinoso a C++ compiler is no longer optional.  In practical terms it has not
61*e9b676f1SJohn Marinobeen optional for many years as other base components are also written in
62*e9b676f1SJohn MarinoC++.  The resource savings by avoiding building Objective-C compiler is
63*e9b676f1SJohn Marinoso small, the complexity added by NO_OBJC internally was deemed a bad
64*e9b676f1SJohn Marinotradeoff so that is the reason for its removal.  Also note that no "info"
65*e9b676f1SJohn Marinopages are installed with GCC 5.0.  This is intentional; they are available
66*e9b676f1SJohn Marinovia the internet if desired over the installed man pages.
67*e9b676f1SJohn Marino
68*e9b676f1SJohn MarinoCurrently, GCC 4.7 is still designated as the primary compiler.  After
69*e9b676f1SJohn MarinoGCC 5.0 is released, this may change and these update notes will be
70*e9b676f1SJohn Marinorevised accordingly.  DPorts will use GCC 5.0 on this release regardless.
71*e9b676f1SJohn MarinoIf GCC 5.0 is unwanted, the make.conf variable NO_GCC50 will block its
72*e9b676f1SJohn Marinobuilding and installation.
73*e9b676f1SJohn Marino
74*e9b676f1SJohn MarinoTo use GCC 5.0 to build world and kernel, set WORLD_CCVER=gcc50 in
75*e9b676f1SJohn Marinomake.conf before building those targets.
76*e9b676f1SJohn Marino
772a617999SSascha Wildner+-----------------------------------------------------------------------+
780055c35bSSascha Wildner+         UPGRADING DRAGONFLY FROM 3.8 TO LATER VERSIONS                +
790055c35bSSascha Wildner+-----------------------------------------------------------------------+
800055c35bSSascha Wildner
812a617999SSascha WildnerSMP AND DEVICE_POLLING OPTIONS MADE UNKNOWN
8239b3e0a1SSascha Wildner-------------------------------------------
8339b3e0a1SSascha Wildner
8439b3e0a1SSascha WildnerDEVICE_POLLING was replaced by IFPOLL_ENABLE and the former SMP code is
8539b3e0a1SSascha Wildnerthe default now (even on single-core systems), both for, like, 21 months.
8639b3e0a1SSascha WildnerWe kept the options around as no-ops as a convenience, to allow people
8739b3e0a1SSascha Wildnerusing the same config for the then current release and the then current
8839b3e0a1SSascha Wildnermaster. That period is now over, so any configs still having those
8939b3e0a1SSascha Wildneroptions have to be adjusted.
9039b3e0a1SSascha Wildner
9110ceb702SSascha WildnerSYSVIPC SYSCALLS MADE NON-OPTIONAL
9210ceb702SSascha Wildner----------------------------------
9310ceb702SSascha Wildner
9410ceb702SSascha WildnerThe code related to the SYSVMSG, SYSVSEM and SYSVSHM kernel options is
9510ceb702SSascha Wildnernow compiled in by default. The options are no-ops for now.
9610ceb702SSascha Wildner
9779a3e83fSSascha WildnerDEFAULT DRIVER CHANGED FOR LSI "THUNDERBOLT" SERIES RAID CONTROLLERS
9879a3e83fSSascha Wildner--------------------------------------------------------------------
9979a3e83fSSascha Wildner
10079a3e83fSSascha WildnerThe default driver for those controllers is now mrsas(4) due to reports
10179a3e83fSSascha Wildnerof file system corruption using the mfi(4) driver. The whole issue (and
10279a3e83fSSascha Wildnerhow to deal with potential problems when switching) was explained here:
10379a3e83fSSascha Wildner
10479a3e83fSSascha Wildnerhttp://lists.dragonflybsd.org/pipermail/users/2014-July/128703.html
10579a3e83fSSascha Wildner
10679a3e83fSSascha WildnerA tunable is provided for letting those controllers still attach via
10779a3e83fSSascha Wildnerthe mfi(4) driver, hw.mrsas.mfi_enable (see mrsas(4) manual page).
10879a3e83fSSascha Wildner
1090055c35bSSascha WildnerOLDER NETWORK DRIVERS MOVED TO I386 ONLY
1100055c35bSSascha Wildner----------------------------------------
1110055c35bSSascha Wildner
1120055c35bSSascha WildnerThe following drivers have been made i386 only: ed(4), sr(4), ng_sync_ar
1130055c35bSSascha Wildnerand ng_sync_sr. ed(4) used to be in X86_64_GENERIC, so it has to be
1140055c35bSSascha Wildnerremoved in kernel configs derived from X86_64_GENERIC.
1150055c35bSSascha Wildner
1160055c35bSSascha Wildner+-----------------------------------------------------------------------+
11762d4130dSSascha Wildner+         UPGRADING DRAGONFLY FROM 3.6 TO LATER VERSIONS                +
118e19e3c77SSascha Wildner+-----------------------------------------------------------------------+
119e19e3c77SSascha Wildner
120a6a7c140SJustin C. SherrillUPDATE FROM MOST RECENT 3.6
121a6a7c140SJustin C. Sherrill---------------------------
122a6a7c140SJustin C. Sherrill
123a6a7c140SJustin C. SherrillVersions of 3.6 built before June 25th have a bug where installworld might
124a6a7c140SJustin C. Sherrillcrash during installation of the new initrd.  Upgrade to the latest version
125a6a7c140SJustin C. Sherrillof 3.6 before updating to 3.8 or later.
126a6a7c140SJustin C. Sherrill
1277c87aae6SSascha WildnerATM, IPX, NCP AND NWFS SUPPORT DROPPED
1287c87aae6SSascha Wildner--------------------------------------
1296f25d555SSascha Wildner
1306f25d555SSascha WildnerSupport for the IPX and NCP network protocols and for mouting NetWare
1317c87aae6SSascha Wildnerfile systems has been dropped. Dito for ATM protocol support.
1326f25d555SSascha Wildner
1336f25d555SSascha WildnerINITRD IMAGES NOW INSTALLED BY DEFAULT
1346f25d555SSascha Wildner--------------------------------------
1356f25d555SSascha Wildner
1366f25d555SSascha WildnerAn initial ramdisk image is now installed in /boot/kernel/initrd.img.gz
1376f25d555SSascha Wildner
1386f25d555SSascha WildnerOlder images installed under the file name of initrd.img will be removed
1396f25d555SSascha Wildnerautomatically by the make upgrade process.
1406f25d555SSascha Wildner
141f0478b8bSSascha WildnerUSB4BSD IS NOW THE DEFAULT USB STACK
142f0478b8bSSascha Wildner------------------------------------
143f0478b8bSSascha Wildner
144f0478b8bSSascha WildnerTo get back to the old stack, put "WANT_OLDUSB=yes" in /etc/make.conf and
145f0478b8bSSascha Wildnerreplace "device usb" with "device oldusb" in the kernel configuration.
146f0478b8bSSascha Wildner
147e19e3c77SSascha WildnerMORE ISA SUPPORT DROPPED
148e19e3c77SSascha Wildner------------------------
149e19e3c77SSascha Wildner
150e19e3c77SSascha WildnerISA support has been dropped from the following drivers: adv(4), an(4),
151e19e3c77SSascha Wildnerar(4), cs(4), digi(4), ed(4), ep(4), ex(4), fe(4), lnc(4), sbni(4),
152e19e3c77SSascha Wildnersi(4), sn(4), and stg(4).
153e19e3c77SSascha Wildner
154e19e3c77SSascha Wildner+-----------------------------------------------------------------------+
15562d4130dSSascha Wildner+         UPGRADING DRAGONFLY FROM 3.4 TO LATER VERSIONS                +
1569332798aSSascha Wildner+-----------------------------------------------------------------------+
1579332798aSSascha Wildner
158c04df145SJustin C. SherrillABI CHANGE
159c04df145SJustin C. Sherrill----------
160c04df145SJustin C. Sherrill
161c04df145SJustin C. SherrillInstalled third-party software (dports) will have to be rebuilt after upgrade,
162c04df145SJustin C. Sherrillor reinstalled from binary packages.
163c04df145SJustin C. Sherrill
1642b455b95SJustin C. SherrillUPDATING FROM 3.4 TO 3.6
1652b455b95SJustin C. Sherrill------------------------
1662b455b95SJustin C. Sherrill
1672b455b95SJustin C. SherrillThis only applies for this specific upgrade due to locale changes; it is
1682b455b95SJustin C. Sherrillnot needed for upgrades after 3.6.  Please update in this order:
1692b455b95SJustin C. Sherrill
1702b455b95SJustin C. Sherrillmake buildworld
1712b455b95SJustin C. Sherrillmake buildkernel
1722b455b95SJustin C. Sherrillmake installworld
1732b455b95SJustin C. Sherrillmake installkernel
1742b455b95SJustin C. Sherrill*reboot*
1752b455b95SJustin C. Sherrillmake upgrade
1762b455b95SJustin C. Sherrill
1772b455b95SJustin C. SherrillSee this mailing list post for details:
1782b455b95SJustin C. Sherrillhttp://lists.dragonflybsd.org/pipermail/users/2013-September/090163.html
1792b455b95SJustin C. Sherrill
1809332798aSSascha WildnerCYRIX OPTIONS REMOVED
1819332798aSSascha Wildner---------------------
1829332798aSSascha Wildner
1839332798aSSascha WildnerThe following Cyrix related options have been removed: CPU_BTB_EN,
1849332798aSSascha WildnerCPU_CYRIX_NO_LOCK, CPU_DIRECT_MAPPED_CACHE, CPU_DISABLE_5X86_LSSER,
1859332798aSSascha WildnerCPU_FASTER_5X86_FPU, CPU_IORT, CPU_LOOP_EN, CPU_RSTK_EN, CPU_SUSP_HLT,
1869332798aSSascha WildnerCYRIX_CACHE_WORKS, and CYRIX_CACHE_REALLY_WORKS
1879332798aSSascha Wildner
1889332798aSSascha WildnerISA SUPPORT REMOVED FROM RP(4)
1899332798aSSascha Wildner------------------------------
1909332798aSSascha Wildner
1919332798aSSascha WildnerISA support has been removed from the rp(4) driver. It is now PCI only.
1929332798aSSascha Wildner
1939332798aSSascha Wildner+-----------------------------------------------------------------------+
19462d4130dSSascha Wildner+         UPGRADING DRAGONFLY FROM 3.2 TO LATER VERSIONS                +
19564aeb497SSascha Wildner+-----------------------------------------------------------------------+
19664aeb497SSascha Wildner
197d88b9605SSascha WildnerCOMPAT_SUNOS OPTION REMOVED
198d88b9605SSascha Wildner---------------------------
199d88b9605SSascha Wildner
200d88b9605SSascha WildnerThe COMPAT_SUNOS option has been removed. It was meant to provide binary
201d88b9605SSascha Wildnercompatibility with SunOS 4.x for the sparc32 port of 4.4BSD.
202d88b9605SSascha Wildner
20343f215d7SSascha WildnerISA SOUND CARD SUPPORT REMOVED
20443f215d7SSascha Wildner------------------------------
20543f215d7SSascha Wildner
20643f215d7SSascha WildnerThe following modules have been removed (all for ISA sound cards):
20743f215d7SSascha Wildnersnd_ad1816.ko, snd_ess.ko, snd_mss.ko, snd_sb8.ko, snd_sb16.ko, snd_sbc.ko
20843f215d7SSascha Wildner
2096100d1deSJohn MarinoGCC 4.7
2106100d1deSJohn Marino-------
2116100d1deSJohn Marino
2126100d1deSJohn MarinoDragonFly has switched base compilers.  GCC 4.7 is now the default
2136100d1deSJohn Marinocompiler and GCC 4.4 is the alternative compiler.  The "NO_GCC47" make
2146100d1deSJohn Marinovariable ceases to work now.
2156100d1deSJohn Marino
2166100d1deSJohn MarinoUsers who wish to build only GCC 4.7 have to use NO_GCC44 in the
2176100d1deSJohn Marino/etc/make.conf to prohibit GCC 4.4 from building.  However, using it is
2186100d1deSJohn Marinohighly discouraged.  There are a few packages in pkgsrc that do not build
2196100d1deSJohn Marinowith GCC 4.7 and the new "DPorts" system uses GCC 4.4 by default.  At
2206100d1deSJohn Marinothis time, it is recommended to keep both compilers on the base system.
2216100d1deSJohn Marino
2222089bb7cSSascha WildnerSMP OPTION REMOVED
2232089bb7cSSascha Wildner------------------
2242089bb7cSSascha Wildner
2252089bb7cSSascha WildnerThe SMP kernel option has been made a no-op. All kernels now feature SMP
2262089bb7cSSascha Wildnersupport. If you have 'options SMP' in your kernel config, you can as well
2272089bb7cSSascha Wildnerremove it.
2282089bb7cSSascha Wildner
2291c297ed0SSascha WildnerDEVICE_POLLING OPTION REPLACED BY IFPOLL_ENABLE OPTION, KTR_POLLING REMOVED
2301c297ed0SSascha Wildner---------------------------------------------------------------------------
231640dc18fSSepherosa Ziehau
232640dc18fSSepherosa ZiehauThe DEVICE_POLLING kernel option has been made a no-op and it has been
233640dc18fSSepherosa Ziehaureplaced by IFPOLL_ENABLE.  If you have 'options DEVICE_POLLING' in your
234640dc18fSSepherosa Ziehaukernel config, you need to change it to IFPOLL_ENABLE.
235640dc18fSSepherosa Ziehau
2361c297ed0SSascha WildnerAlso, the KTR_POLLING kernel option has been removed, so it must be
2371c297ed0SSascha Wildnerremoved from kernel configs that have it.
2381c297ed0SSascha Wildner
239558b0a0bSSascha WildnerBUSLOGIC, CYCLADES AND STALLION ISA SUPPORT REMOVED
240558b0a0bSSascha Wildner---------------------------------------------------
241850c4634SSascha Wildner
242850c4634SSascha WildnerThe bt(4) driver for Buslogic SCSI adapters has been made PCI only. ISA
243850c4634SSascha Wildnercards will no longer be detected.
244850c4634SSascha Wildner
245e6f626a1SSascha WildnerThe same has been done for Stallion multiport serial controllers. stli(4)
246e6f626a1SSascha Wildnerhas been completely removed (along with the stlload(8) and stlstty(8)
247558b0a0bSSascha Wildnerutilities) and stl(4) was changed to support only PCI cards. Similarly,
248558b0a0bSSascha WildnerISA support was removed from cy(4) too. All these drivers are i386 only.
249e6f626a1SSascha Wildner
250e98bcb27SSascha WildnerCOMPAT_OLDISA OPTION GONE
251e98bcb27SSascha Wildner-------------------------
252e98bcb27SSascha Wildner
253e98bcb27SSascha WildnerThe i386 specific COMPAT_OLDISA kernel option has been removed, since
254e98bcb27SSascha Wildnernothing needs it anymore.
255e98bcb27SSascha Wildner
256640dc18fSSepherosa Ziehau+-----------------------------------------------------------------------+
25762d4130dSSascha Wildner+         UPGRADING DRAGONFLY FROM 3.0 TO LATER VERSIONS                +
258c691bb43SSascha Wildner+-----------------------------------------------------------------------+
259c691bb43SSascha Wildner
260c691bb43SSascha WildnerAPIC_IO OPTION REMOVED
261c691bb43SSascha Wildner----------------------
262c691bb43SSascha Wildner
263c691bb43SSascha WildnerThe APIC_IO kernel option is no longer accepted after having been without
264c691bb43SSascha Wildnereffect for a while. The hw.ioapic_enable tunable now serves its purpose.
265c691bb43SSascha WildnerIf you have 'options APIC_IO' in your kernel config, you'll have to
266c691bb43SSascha Wildnerremove it.
267c691bb43SSascha Wildner
2686d488cc3SSascha WildnerWATCHDOG_ENABLE & HW_WDOG OPTIONS REMOVED
2696d488cc3SSascha Wildner-----------------------------------------
270cf03d6cdSSascha Wildner
271cf03d6cdSSascha WildnerThe wdog framework is now compiled into our kernels by default, so the
2726d488cc3SSascha Wildneroptions are no longer needed.
273cf03d6cdSSascha Wildner
274397ffc5cSSascha WildnerDOSCMD(1) REMOVED
275397ffc5cSSascha Wildner-----------------
276397ffc5cSSascha Wildner
277397ffc5cSSascha Wildnerdoscmd(1) has been removed. It was i386 only. The doscmd(1) specific
278397ffc5cSSascha WildnerNO_X make.conf option was removed too.
279397ffc5cSSascha Wildner
280a1404d4fSSascha WildnerGCC 4.7
281a1404d4fSSascha Wildner-------
282a1404d4fSSascha Wildner
283a1404d4fSSascha WildnerGCC 4.7 has been brought in and replaces GCC 4.1 as DragonFly's non-
284a1404d4fSSascha Wildnerdefault compiler in base (default is still GCC 4.4).
285a1404d4fSSascha Wildner
286a1404d4fSSascha WildnerUsers who wish to build only GCC 4.4 have to replace NO_GCC41 with
287a1404d4fSSascha WildnerNO_GCC47 in /etc/make.conf.
288a1404d4fSSascha Wildner
2892508820fSSascha WildnerUSB4BSD
2902508820fSSascha Wildner-------
2912508820fSSascha Wildner
2922508820fSSascha WildnerA new USB stack (from FreeBSD) has been brought in. The following
2932508820fSSascha Wildnermodules have been ported so far: usb, uhci, ohci, ehci, xhci, umass,
2942508820fSSascha Wildnerusfs, uether, if_axe, if_udav, ukbd, ums, uep, uhid, usb_quirk,
2952508820fSSascha Wildnerand uaudio.
2962508820fSSascha Wildner
2972508820fSSascha WildnerIt is not yet the default. To activate it, WANT_USB4BSD=yes has to
298c7200221SSascha Wildnerbe put in make.conf and device "usb4bsd" (quotes needed) has to
299c7200221SSascha Wildnerreplace device usb in the kernel config. After that, a full
300c7200221SSascha Wildnerbuild/install/upgrade cycle is needed.
3012508820fSSascha Wildner
3022508820fSSascha WildnerNote that this is experimental and incomplete, but we are interested
3032508820fSSascha Wildnerin hearing about issues with it, of course.
3042508820fSSascha Wildner
305ae0870a3SSascha WildnerISA SUPPORT REMOVED FROM AIC-6260/6360 DRIVER
306ae0870a3SSascha Wildner---------------------------------------------
307ae0870a3SSascha Wildner
308ae0870a3SSascha WildnerISA adapter support was dropped from the aic(4) driver.
309ae0870a3SSascha Wildner
310c691bb43SSascha Wildner+-----------------------------------------------------------------------+
31162d4130dSSascha Wildner+         UPGRADING DRAGONFLY FROM 2.10 TO LATER VERSIONS               +
31296386d4bSSascha Wildner+-----------------------------------------------------------------------+
31396386d4bSSascha Wildner
31496386d4bSSascha WildnerSEVERAL ISA DRIVERS REMOVED
31596386d4bSSascha Wildner---------------------------
31696386d4bSSascha Wildner
31796386d4bSSascha WildnerThe following ISA only drivers have been removed along with a couple of
31896386d4bSSascha Wildnerassociated userland tools:
31996386d4bSSascha Wildner
32096386d4bSSascha Wildneraha(4)
32196386d4bSSascha Wildnerasc(4) & sasc(1)
32296386d4bSSascha Wildnerctx
32396386d4bSSascha Wildnerdgb(4)
32496386d4bSSascha Wildnerel(4)
32596386d4bSSascha Wildnergpib
32696386d4bSSascha Wildnergsc(4) & sgsc(1)
32796386d4bSSascha Wildnerie(4)
32896386d4bSSascha Wildnerlabpc(4)
32996386d4bSSascha Wildnerle(4)
33096386d4bSSascha Wildnermse(4)
33196386d4bSSascha Wildnerrc(4)
33296386d4bSSascha Wildnerrdp(4)
33396386d4bSSascha Wildnerspigot
33496386d4bSSascha Wildnertw(4) & xten(1) & xtend(8)
33596386d4bSSascha Wildnerwl(4) & wlconfig(8)
33696386d4bSSascha Wildnerwt(4)
33796386d4bSSascha Wildner
33896386d4bSSascha WildnerNote that two of these drivers (aha(4) and ie(4)) are in our GENERIC
33996386d4bSSascha Wildnerconfig and one (aha(4)) is in our X86_64_GENERIC kernel configuration
34096386d4bSSascha Wildnerfile.
34196386d4bSSascha Wildner
34296386d4bSSascha WildnerIf buildkernel complains about any of these drivers, just remove them
34396386d4bSSascha Wildnerfrom your kernel configuration.
34496386d4bSSascha Wildner
345919eb219SJohn MarinoBINUTILS 2.20
346919eb219SJohn Marino-------------
34737c5a0dbSJohn MarinoBinutils 2.20 has been removed in favor of Binutils 2.22.  The accepted
348e685772eSJohn Marinovalues of BINUTILSVERS are now binutils221 and binutils222 (default).
349919eb219SJohn Marino
35083bc1e2aSSascha WildnerBUILDWORLD/-KERNEL PARALLELIZATION WORK
35183bc1e2aSSascha Wildner---------------------------------------
35283bc1e2aSSascha WildnerDue to changes in the way we build with more than one make job, you
35383bc1e2aSSascha Wildnerwill have to update install(1) and mkdir(1) prior to buildworld if you
35483bc1e2aSSascha Wildnerwant to build with 'make -j':
35583bc1e2aSSascha Wildner
35683bc1e2aSSascha Wildnercd /usr/src/usr.bin/xinstall; make; make install; make clean
35783bc1e2aSSascha Wildnercd /usr/src/bin/mkdir; make; make install; make clean
35883bc1e2aSSascha Wildner
359eca86bd9SSascha WildnerDMA(8) UPGRADE
360eca86bd9SSascha Wildner--------------
361eca86bd9SSascha Wildnerdma(8) has been upgraded to v0.7 which no longer supports the
362eca86bd9SSascha Wildner/etc/dma/virtusertable. Some of its functionality has been replaced
363eca86bd9SSascha Wildnerwith the MASQUERADE keyword and the EMAIL environment variable (see
364eca86bd9SSascha Wildnerthe dma(8) manual page).
365eca86bd9SSascha Wildner
36696386d4bSSascha Wildner+-----------------------------------------------------------------------+
36762d4130dSSascha Wildner+         UPGRADING DRAGONFLY FROM 2.8 TO LATER VERSIONS                +
368a4a39c94SJustin C. Sherrill+-----------------------------------------------------------------------+
369a4a39c94SJustin C. Sherrill
370b1242318SSascha WildnerGCC 4.4 & BINUTILS 2.21
371b1242318SSascha Wildner-----------------------
37230c91f0cSSascha Wildner
373b1242318SSascha WildnerGCC 4.4 has been made DragonFly's default compiler and Binutils 2.21 has
374b1242318SSascha Wildnerbeen made DragonFly's default Binutils.
37530c91f0cSSascha Wildner
37630c91f0cSSascha WildnerThat means that any settings that set CCVER to 'gcc44' are not needed
37730c91f0cSSascha Wildneranymore. Instead, CCVER can be set to 'gcc41' to go back to using
37830c91f0cSSascha WildnerGCC 4.1.
37930c91f0cSSascha Wildner
380b1242318SSascha WildnerIt also means that 'binutils221' as a value for BINUTILSVER has no
381b1242318SSascha Wildnereffect anymore. 2.17 has been removed and 'binutils220' is available
382b1242318SSascha Wildneras an option.
383b1242318SSascha Wildner
3845738210dSSascha WildnerThe NO_GCC44 option has been removed and will not affect the build
38530c91f0cSSascha Wildneranymore. There is now a NO_GCC41 option that will prevent GCC 4.1 from
38630c91f0cSSascha Wildnerbuilding in a similar fashion.
38730c91f0cSSascha Wildner
38880abb3beSSascha WildnerNote that you must do a full buildworld/buildkernel for upgrading.
38930c91f0cSSascha Wildner
390a4a39c94SJustin C. Sherrillpkg_radd settings
391c983d16eSSascha Wildner-----------------
392a4a39c94SJustin C. Sherrill
393a4a39c94SJustin C. SherrillThe config file for pkg_radd has moved from /etc/settings.conf to
394a4a39c94SJustin C. Sherrill/etc/pkg_radd.conf.  Save the contents of settings.conf before upgrading
395a4a39c94SJustin C. Sherrillif this is needed.  This warning only applies if /etc/settings.conf
396a4a39c94SJustin C. Sherrillexists.  pkg_radd will continue to work with defaults.
397a4a39c94SJustin C. Sherrill
398a4a39c94SJustin C. Sherrill+-----------------------------------------------------------------------+
39972fe41d3SPeter Avalos+         20100927							+
4001bb1cc14SMatthias Schmidt+         UPGRADING DRAGONFLY FROM 2.6 to 2.8 or HEAD			+
401b79f66ddSJoe Talbott+-----------------------------------------------------------------------+
402b79f66ddSJoe Talbott
40372fe41d3SPeter AvalosOpenSSL
404c983d16eSSascha Wildner--------
40572fe41d3SPeter Avalos
40672fe41d3SPeter AvalosOpenSSL has been upgraded, and SHLIB_MAJOR was bumped for libssh and libcrypto.
40772fe41d3SPeter AvalosThis shouldn't break any 3rd-party software, but you'll need to recompile your
40872fe41d3SPeter Avalos3rd-party software if you want it to link against the new version of OpenSSL.
40972fe41d3SPeter Avalos
4108eb0b612SJustin C. SherrillLoader
411c983d16eSSascha Wildner-------
4128eb0b612SJustin C. Sherrill
413b79f66ddSJoe TalbottA new loader (dloader) has been added which better handles booting from
414b79f66ddSJoe Talbottmultiple kernel/module versions.
415b79f66ddSJoe Talbott
416b79f66ddSJoe TalbottTo upgrade (Only for this upgrade, for post 2.8 upgrades see GENERAL below)
417b79f66ddSJoe Talbott
418b79f66ddSJoe Talbott	cd /usr/src
419b79f66ddSJoe Talbott	make buildworld
420b79f66ddSJoe Talbott	make installworld
421b79f66ddSJoe Talbott	make upgrade
422b79f66ddSJoe Talbott	make buildkernel KERNCONF=<KERNELNAME>
423b79f66ddSJoe Talbott	make installkernel KERNCONF=<KERNELNAME>
424b79f66ddSJoe Talbott
425b79f66ddSJoe TalbottNote that you must installworld and run the 'upgrade' target before
426b79f66ddSJoe Talbottinstalling the new kernel.
427b79f66ddSJoe Talbott
4288eb0b612SJustin C. SherrillBIND
429c983d16eSSascha Wildner-----
4308eb0b612SJustin C. Sherrill
4318eb0b612SJustin C. SherrillBIND has been removed from the base system.  The ldns and drill tools have
4328eb0b612SJustin C. Sherrillbeen added for basic functionality.  Use 'drill' where you would normally
4338eb0b612SJustin C. Sherrilluse nslookup or dig, or install BIND from pkgsrc.  It's available as
4348eb0b612SJustin C. Sherrillnet/bind95, net/bind96, or net/bind97 as of this writing.
4358eb0b612SJustin C. Sherrill
4368eb0b612SJustin C. SherrillThis only affects older systems upgrading to 2.8.  New 2.8+ installs
4378eb0b612SJustin C. Sherrillinclude BIND as a pkgsrc package.
4388eb0b612SJustin C. Sherrill
439b79f66ddSJoe Talbott+-----------------------------------------------------------------------+
440d2a0deccSMatthew Dillon+         UPGRADING DRAGONFLY ON AN EXISTING DRAGONFLY SYSTEM		+
441d2a0deccSMatthew Dillon+				GENERAL					+
442d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
443984263bcSMatthew Dillon
444a700883cSSascha WildnerInstructions on how to obtain and maintain DragonFly source code using git
445a700883cSSascha Wildnerare in the development(7) manual page.
446d2a0deccSMatthew Dillon
447d2a0deccSMatthew DillonTo upgrade a DragonFly system from sources you run the following sequence:
448d2a0deccSMatthew Dillon
449d2a0deccSMatthew Dillon	cd /usr/src
450d2a0deccSMatthew Dillon	make buildworld
451d2a0deccSMatthew Dillon	make buildkernel KERNCONF=<KERNELNAME>
452d2a0deccSMatthew Dillon	make installkernel KERNCONF=<KERNELNAME>
453d2a0deccSMatthew Dillon	make installworld
454d2a0deccSMatthew Dillon
455d2a0deccSMatthew DillonYou will also want to run the 'upgrade' target to upgrade your /etc and the
456d2a0deccSMatthew Dillonrest of your system.  The upgrade target is aware of stale files created by
457d2a0deccSMatthew Dillonolder DragonFly installations and should delete them automatically.
458d2a0deccSMatthew Dillon
459d2a0deccSMatthew Dillon	make upgrade
460d2a0deccSMatthew Dillon
461a700883cSSascha WildnerSee the build(7) manual page for further information.
462a700883cSSascha Wildner
463d2a0deccSMatthew DillonOnce you've done a full build of the world and kernel you can do incremental
464d2a0deccSMatthew Dillonupgrades of either by using the 'quickworld' and 'quickkernel' targets
465d2a0deccSMatthew Dilloninstead of 'buildworld' and 'buildkernel'.  If you have any problems with
466a700883cSSascha Wildnerthe quick targets, try updating your repo first, and then a full buildworld
467d2a0deccSMatthew Dillonand buildkernel as shown above, before asking for help.
4684523a2c0SThomas Nikolajsen
4694523a2c0SThomas Nikolajsen+-----------------------------------------------------------------------+
4704523a2c0SThomas Nikolajsen+         UPGRADING FROM DRAGONFLY <= 2.0 TO DRAGONFLY >= 2.1		+
4714523a2c0SThomas Nikolajsen+-----------------------------------------------------------------------+
4724523a2c0SThomas Nikolajsen
4734523a2c0SThomas NikolajsenIn 2.1 kernel and modules has moved to boot directory.  For most cases
4744523a2c0SThomas Nikolajsenthis is handled automatically by 'make upgrade'.  A few cases needs manual
4754523a2c0SThomas Nikolajsenintervention:
4764523a2c0SThomas Nikolajsen
4774523a2c0SThomas Nikolajsen * When installing a kernel without first doing a make buildworld,
4784523a2c0SThomas Nikolajsen   installworld and upgrade to the same DESTDIR as kernel:
4794523a2c0SThomas Nikolajsen   make DESTDIR/boot directory and move kernel and modules into this boot
4804523a2c0SThomas Nikolajsen   directory; also move kernel.old and modules.old.
4814523a2c0SThomas Nikolajsen   Typical example is vkernel(7), use (no modules used):
4824523a2c0SThomas Nikolajsen
4834523a2c0SThomas Nikolajsen	cd /var/vkernel
4844523a2c0SThomas Nikolajsen	mkdir boot
4854523a2c0SThomas Nikolajsen	chflags noschg kernel
4864523a2c0SThomas Nikolajsen	mv kernel kernel.old boot
4874523a2c0SThomas Nikolajsen	chflags schg boot/kernel
4884523a2c0SThomas Nikolajsen
4894523a2c0SThomas Nikolajsen * When using a boot-only partition, /boot/loader.rc needs to be edited:
4904523a2c0SThomas Nikolajsen   delete occurrences of '/boot/'.
4914523a2c0SThomas Nikolajsen   These occurences can normally be deleted in any case, see loader(8).
492d2a0deccSMatthew Dillon
493d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
494d2a0deccSMatthew Dillon+         UPGRADING FROM DRAGONFLY <= 1.8 TO DRAGONFLY >= 1.9		+
495d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
496d2a0deccSMatthew Dillon
497d2a0deccSMatthew DillonIn 1.9 major changes to the disk management infrastructure have taken
498d2a0deccSMatthew Dillonplace.  make upgrade may not catch all of your disk devices in /dev,
499d2a0deccSMatthew Dillonso after upgrading be sure to cd /dev; ./MAKEDEV <blah> where <blah>
50045e80934SMatthew Dillonare all of your disk devices.  HOWEVER, from late 2.3 on we run devfs
50145e80934SMatthew Dillonand MAKEDEV no longer exists.
502d2a0deccSMatthew Dillon
503d2a0deccSMatthew DillonThe biggest changes in 1.9 are:
504d2a0deccSMatthew Dillon
505d2a0deccSMatthew Dillon(1) That whole-slice devices such as da0s1 no longer share the same device
506d2a0deccSMatthew Dillon    id as partition c devices such as da0s1c.
507d2a0deccSMatthew Dillon
508d2a0deccSMatthew Dillon(2) The whole-disk device (e.g. da0) is full raw access to the disk,
509d2a0deccSMatthew Dillon    with no snooping or reserved sectors.  Consequently you cannot run
510d2a0deccSMatthew Dillon    disklabel on this device.  Instead you must run disklabel on a
511d2a0deccSMatthew Dillon    whole-slice device.
512d2a0deccSMatthew Dillon
513d2a0deccSMatthew Dillon(3) The 'compatibility' partitions now use slice 0 in the device name,
514d2a0deccSMatthew Dillon    so instead of da0a you must specify da0s0a.  Also, as per (1) above,
515d2a0deccSMatthew Dillon    accessing the disklabel for the compatibility partitions must be
516d2a0deccSMatthew Dillon    done via slice 0 (da0s0).
517d2a0deccSMatthew Dillon
518d2a0deccSMatthew Dillon(4) Many device drivers that used to fake up labels, such as CD, ACD, VN,
519d2a0deccSMatthew Dillon    and CCD now run through the disk management layer and are assigned
520d2a0deccSMatthew Dillon    real disk management devices.   VN and CCD in particular do not usually
521d2a0deccSMatthew Dillon    use a MBR and disklabels must be accessed through the compatibility
522d2a0deccSMatthew Dillon    slice 0.  Your /etc/ccd.conf file still specifies 'ccd0', though, you
523d2a0deccSMatthew Dillon    don't name it 'ccd0s0' in the config file.
524d2a0deccSMatthew Dillon
525d2a0deccSMatthew DillonGenerally speaking, you have to get used to running fdisk and disklabel on
526d2a0deccSMatthew Dillonthe correctly specified device names.  A lot of the wiggle, such as running
527d2a0deccSMatthew Dillondisklabel on a partition, has been removed.
528d2a0deccSMatthew Dillon
529d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
530d2a0deccSMatthew Dillon+         UPGRADING FROM OLDER VERSIONS OF DRAGONFLY OR FREEBSD		+
531d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
532d2a0deccSMatthew Dillon
533d2a0deccSMatthew Dillon> Kerberos IV
534d2a0deccSMatthew Dillon-------------
535d2a0deccSMatthew Dillon
536d2a0deccSMatthew DillonKerberos IV (eBones) was removed from the tree, please consider moving to
537d2a0deccSMatthew DillonKerberos 5 (Heimdal).
538d2a0deccSMatthew Dillon
539d2a0deccSMatthew Dillon> Package Management System
540d2a0deccSMatthew Dillon---------------------------
541d2a0deccSMatthew Dillon
542d2a0deccSMatthew DillonStarting with the 1.4 release, DragonFly uses NetBSD's pkgsrc package
543d2a0deccSMatthew Dillonmanagement system.  The necessary tools to build and maintain packages
544d2a0deccSMatthew Dillonare provided in /usr/pkg/bin and /usr/pkg/sbin.  Make sure that these
545d2a0deccSMatthew Dillondirectories are in your PATH variable.
546d2a0deccSMatthew Dillon
547d2a0deccSMatthew DillonIn order to obtain a reasonably current snapshot of the pkgsrc tree, use
548d2a0deccSMatthew Dillonthe tarball from NetBSD:
549d2a0deccSMatthew Dillon
550d2a0deccSMatthew Dillon	fetch -o /tmp/pkgsrc.tar.gz ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc.tar.gz
551d2a0deccSMatthew Dillon	cd /usr; tar -xzf /tmp/pkgsrc.tar.gz; chown -R root:wheel pkgsrc
552d2a0deccSMatthew Dillon
553d2a0deccSMatthew DillonThis tree can then be kept up to date with cvs update:
554d2a0deccSMatthew Dillon
555d2a0deccSMatthew Dillon	cd /usr/pkgsrc; cvs up
556d2a0deccSMatthew Dillon
557d2a0deccSMatthew DillonNOTE! If you upgraded from a pre-1.4 system to 1.4 or later, you need to
558d2a0deccSMatthew Dillonbuild and install the pkgsrc bootstrap manually:
559d2a0deccSMatthew Dillon
560d2a0deccSMatthew Dillon	cd /usr/pkgsrc/bootstrap
561d2a0deccSMatthew Dillon	./bootstrap --pkgdbdir /var/db/pkg --prefix /usr/pkg
562d2a0deccSMatthew Dillon
563d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
564d2a0deccSMatthew Dillon+         UPGRADING DRAGONFLY ON AN EXISTING DRAGONFLY SYSTEM		+
565d2a0deccSMatthew Dillon+         UPDATING FROM PRE-1.2 SYSTEMS OR FreeBSD 4.x TO               +
566d2a0deccSMatthew Dillon+         DRAGONFLY 1.3+ (EITHER PREVIEW or HEAD)                       +
567d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
56858116288SJoerg Sonnenberger
569114580acSSascha WildnerThe compatibility shims for the build environment have been removed, you
57058116288SJoerg Sonnenbergerhave to update to DragonFly 1.2 release branch first.
57158116288SJoerg Sonnenberger
5721fcc7462SJoerg SonnenbergerThe default PAM configuration has moved from /etc/pam.conf to /etc/pam.d/.
5731fcc7462SJoerg SonnenbergerThe existing configuration can be converted using /etc/pam.d/convert.sh.
5741fcc7462SJoerg SonnenbergerEntries in /etc/pam.d/ override entries in /etc/pam.conf. In addition
5751fcc7462SJoerg Sonnenbergerthe pam_skey.so module was retired, you have to remove it manually from
5761fcc7462SJoerg Sonnenbergeryour configuration, when you convert it.
57758116288SJoerg Sonnenberger
578a3107071SMatthew Dillon> Required user and group IDs when upgrading from either FreeBSD or DragonFly
579a3107071SMatthew Dillon---------------------
580a3107071SMatthew Dillon
581a3107071SMatthew DillonThe following users may be missing from your password file.  Use vipw and
582a3107071SMatthew Dillonadd any that are missing:
583a3107071SMatthew Dillon
584a3107071SMatthew Dillonsmmsp:*:25:25::0:0:Sendmail Submission User:/var/spool/clientmqueue:/sbin/nologin
585dcf85892SJoerg Sonnenberger_pflogd:*:64:64::0:0:pflogd privsep user:/var/empty:/sbin/nologin
586a3107071SMatthew Dillon
587a3107071SMatthew DillonThe following groups may be missing from your group file.  Use vi /etc/group
588a3107071SMatthew Dillonand add any that are missing:
589a3107071SMatthew Dillon
590a3107071SMatthew Dillonsmmsp:*:25:
591a3107071SMatthew Dillonauthpf:*:63:
592dcf85892SJoerg Sonnenberger_pflogd:*:64:
593a3107071SMatthew Dillon
594a3107071SMatthew Dillon
595f419dacaSMatthew Dillon> Upgrading to DragonFly from FreeBSD
596984263bcSMatthew Dillon---------------------
597984263bcSMatthew Dillon
598f419dacaSMatthew DillonYou can build the DragonFly world and DragonFly kernels on a FreeBSD-4.x or
599f419dacaSMatthew DillonFreeBSD-5.x machine and then install DragonFly over FreeBSD, replacing
600f419dacaSMatthew DillonFreeBSD.  Note that the DragonFly buildworld target does not try to reuse
601f419dacaSMatthew Dillonmake depend information, it starts from scratch, so no pre-cleaning of the
602f419dacaSMatthew Dillonobject hierarchy is necessary.
603984263bcSMatthew Dillon
604466bbc10SHiten Pandya	# get the CVS repository (it is placed in /home/dcvs, 500MB).
605f419dacaSMatthew Dillon	# Please use the -h option and a mirror site to pull the
606f419dacaSMatthew Dillon	# initial repository, but feel free to use the main repository
607f419dacaSMatthew Dillon	# machine to pull updates.
6085010eeb3SSascha Wildner	cvsup /usr/share/examples/cvsup/DragonFly-cvs-supfile
609f419dacaSMatthew Dillon	# install the source from the CVS hierarchy (remove preexisting
610f419dacaSMatthew Dillon	# FreeBSD src first) (500MB)
611f419dacaSMatthew Dillon	cd /usr
612f419dacaSMatthew Dillon	rm -rf src
61350172b1cSDavid Rhodus	cvs -R -d /home/dcvs checkout -P src
614984263bcSMatthew Dillon
615f419dacaSMatthew Dillon	# build it (500MB used in /usr/obj)
616f419dacaSMatthew Dillon	#
617fb12f484SMatthew Dillon	cd /usr/src
618fb12f484SMatthew Dillon	make buildworld
619f419dacaSMatthew Dillon	make buildkernel KERNCONF=<KERNELNAME>
620f419dacaSMatthew Dillon
621f419dacaSMatthew DillonOnce you have built DragonFly you have to install it over FreeBSD.  Since
622f419dacaSMatthew DillonDragonFly does not track changes made by FreeBSD to its include file
623f419dacaSMatthew Dillonhierarchy and include file pollution can cause all sorts of unexpected
624f419dacaSMatthew Dilloncompilation issues to come up, it is best to wipe your include hierarchy
625f419dacaSMatthew Dillonprior to installing DragonFly.  Note that you should not wipe any installed
626f419dacaSMatthew DillonFreeBSD header files or binaries until after you have successfully completed
627f419dacaSMatthew Dillonthe build steps above.
628f419dacaSMatthew Dillon
629f419dacaSMatthew Dillon	rm -rf /usr/include
630f419dacaSMatthew Dillon	mkdir /usr/include
631f419dacaSMatthew Dillon	make installkernel KERNCONF=<KERNELNAME>
632fb12f484SMatthew Dillon	make installworld
633fb12f484SMatthew Dillon
634b8cbf045SSascha WildnerThen you need to upgrade your system.  DragonFly's 'make upgrade' target
635f419dacaSMatthew Dillonwill unconditionally upgrade the /etc files that sysops do not usually
636b8cbf045SSascha Wildnermess around with, such as the files in /etc/rc.d.  It will also remove any
637b8cbf045SSascha Wildnerobsolete files such as utilities and manpages that have been removed from
638b8cbf045SSascha Wildnerthe system since the version you're coming from.  If you are unsure we
639b8cbf045SSascha Wildnerrecommend that you make a backup of at least your /etc before applying
640b8cbf045SSascha Wildnerthis step.  Note that DragonFly's RC system is basically RCNG from
641b8cbf045SSascha WildnerFreeBSD-5, but there are some differences in the contents of the RC files.
642f419dacaSMatthew Dillon
643f419dacaSMatthew Dillon	make upgrade
644f419dacaSMatthew Dillon
645b8cbf045SSascha WildnerNOTE! Never do a 'make upgrade' before 'make installworld' has been run.
646b8cbf045SSascha WildnerDoing so might leave your system in an unusable state.
647b8cbf045SSascha Wildner
648f419dacaSMatthew DillonFinally we recommend that you do an 'ls -lta BLAH' for /bin, /sbin, /usr/bin,
649b8cbf045SSascha Wildner/usr/bin, and /usr/lib, and remove any stale files that you find.  Please
650b8cbf045SSascha Wildnerreport these files to the DragonFly developers so that they can be added to
651b8cbf045SSascha Wildnerthe 'upgrade' target.
652f419dacaSMatthew Dillon
653