xref: /dflybsd-src/UPDATING (revision e19e3c77407840afdd02e70d76f400caadaac591)
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+-----------------------------------------------------------------------+
12*e19e3c77SSascha Wildner+         UPGRADING DRAGONFLY FROM 3.6 to later versions                +
13*e19e3c77SSascha Wildner+-----------------------------------------------------------------------+
14*e19e3c77SSascha Wildner
15*e19e3c77SSascha WildnerMORE ISA SUPPORT DROPPED
16*e19e3c77SSascha Wildner------------------------
17*e19e3c77SSascha Wildner
18*e19e3c77SSascha WildnerISA support has been dropped from the following drivers: adv(4), an(4),
19*e19e3c77SSascha Wildnerar(4), cs(4), digi(4), ed(4), ep(4), ex(4), fe(4), lnc(4), sbni(4),
20*e19e3c77SSascha Wildnersi(4), sn(4), and stg(4).
21*e19e3c77SSascha Wildner
22*e19e3c77SSascha Wildner+-----------------------------------------------------------------------+
239332798aSSascha Wildner+         UPGRADING DRAGONFLY FROM 3.4 to later versions                +
249332798aSSascha Wildner+-----------------------------------------------------------------------+
259332798aSSascha Wildner
26c04df145SJustin C. SherrillABI CHANGE
27c04df145SJustin C. Sherrill----------
28c04df145SJustin C. Sherrill
29c04df145SJustin C. SherrillInstalled third-party software (dports) will have to be rebuilt after upgrade,
30c04df145SJustin C. Sherrillor reinstalled from binary packages.
31c04df145SJustin C. Sherrill
322b455b95SJustin C. SherrillUPDATING FROM 3.4 TO 3.6
332b455b95SJustin C. Sherrill------------------------
342b455b95SJustin C. Sherrill
352b455b95SJustin C. SherrillThis only applies for this specific upgrade due to locale changes; it is
362b455b95SJustin C. Sherrillnot needed for upgrades after 3.6.  Please update in this order:
372b455b95SJustin C. Sherrill
382b455b95SJustin C. Sherrillmake buildworld
392b455b95SJustin C. Sherrillmake buildkernel
402b455b95SJustin C. Sherrillmake installworld
412b455b95SJustin C. Sherrillmake installkernel
422b455b95SJustin C. Sherrill*reboot*
432b455b95SJustin C. Sherrillmake upgrade
442b455b95SJustin C. Sherrill
452b455b95SJustin C. SherrillSee this mailing list post for details:
462b455b95SJustin C. Sherrillhttp://lists.dragonflybsd.org/pipermail/users/2013-September/090163.html
472b455b95SJustin C. Sherrill
489332798aSSascha WildnerCYRIX OPTIONS REMOVED
499332798aSSascha Wildner---------------------
509332798aSSascha Wildner
519332798aSSascha WildnerThe following Cyrix related options have been removed: CPU_BTB_EN,
529332798aSSascha WildnerCPU_CYRIX_NO_LOCK, CPU_DIRECT_MAPPED_CACHE, CPU_DISABLE_5X86_LSSER,
539332798aSSascha WildnerCPU_FASTER_5X86_FPU, CPU_IORT, CPU_LOOP_EN, CPU_RSTK_EN, CPU_SUSP_HLT,
549332798aSSascha WildnerCYRIX_CACHE_WORKS, and CYRIX_CACHE_REALLY_WORKS
559332798aSSascha Wildner
569332798aSSascha WildnerISA SUPPORT REMOVED FROM RP(4)
579332798aSSascha Wildner------------------------------
589332798aSSascha Wildner
599332798aSSascha WildnerISA support has been removed from the rp(4) driver. It is now PCI only.
609332798aSSascha Wildner
619332798aSSascha Wildner+-----------------------------------------------------------------------+
6264aeb497SSascha Wildner+         UPGRADING DRAGONFLY FROM 3.2 to later versions                +
6364aeb497SSascha Wildner+-----------------------------------------------------------------------+
6464aeb497SSascha Wildner
65d88b9605SSascha WildnerCOMPAT_SUNOS OPTION REMOVED
66d88b9605SSascha Wildner---------------------------
67d88b9605SSascha Wildner
68d88b9605SSascha WildnerThe COMPAT_SUNOS option has been removed. It was meant to provide binary
69d88b9605SSascha Wildnercompatibility with SunOS 4.x for the sparc32 port of 4.4BSD.
70d88b9605SSascha Wildner
7143f215d7SSascha WildnerISA SOUND CARD SUPPORT REMOVED
7243f215d7SSascha Wildner------------------------------
7343f215d7SSascha Wildner
7443f215d7SSascha WildnerThe following modules have been removed (all for ISA sound cards):
7543f215d7SSascha Wildnersnd_ad1816.ko, snd_ess.ko, snd_mss.ko, snd_sb8.ko, snd_sb16.ko, snd_sbc.ko
7643f215d7SSascha Wildner
776100d1deSJohn MarinoGCC 4.7
786100d1deSJohn Marino-------
796100d1deSJohn Marino
806100d1deSJohn MarinoDragonFly has switched base compilers.  GCC 4.7 is now the default
816100d1deSJohn Marinocompiler and GCC 4.4 is the alternative compiler.  The "NO_GCC47" make
826100d1deSJohn Marinovariable ceases to work now.
836100d1deSJohn Marino
846100d1deSJohn MarinoUsers who wish to build only GCC 4.7 have to use NO_GCC44 in the
856100d1deSJohn Marino/etc/make.conf to prohibit GCC 4.4 from building.  However, using it is
866100d1deSJohn Marinohighly discouraged.  There are a few packages in pkgsrc that do not build
876100d1deSJohn Marinowith GCC 4.7 and the new "DPorts" system uses GCC 4.4 by default.  At
886100d1deSJohn Marinothis time, it is recommended to keep both compilers on the base system.
896100d1deSJohn Marino
902089bb7cSSascha WildnerSMP OPTION REMOVED
912089bb7cSSascha Wildner------------------
922089bb7cSSascha Wildner
932089bb7cSSascha WildnerThe SMP kernel option has been made a no-op. All kernels now feature SMP
942089bb7cSSascha Wildnersupport. If you have 'options SMP' in your kernel config, you can as well
952089bb7cSSascha Wildnerremove it.
962089bb7cSSascha Wildner
971c297ed0SSascha WildnerDEVICE_POLLING OPTION REPLACED BY IFPOLL_ENABLE OPTION, KTR_POLLING REMOVED
981c297ed0SSascha Wildner---------------------------------------------------------------------------
99640dc18fSSepherosa Ziehau
100640dc18fSSepherosa ZiehauThe DEVICE_POLLING kernel option has been made a no-op and it has been
101640dc18fSSepherosa Ziehaureplaced by IFPOLL_ENABLE.  If you have 'options DEVICE_POLLING' in your
102640dc18fSSepherosa Ziehaukernel config, you need to change it to IFPOLL_ENABLE.
103640dc18fSSepherosa Ziehau
1041c297ed0SSascha WildnerAlso, the KTR_POLLING kernel option has been removed, so it must be
1051c297ed0SSascha Wildnerremoved from kernel configs that have it.
1061c297ed0SSascha Wildner
107558b0a0bSSascha WildnerBUSLOGIC, CYCLADES AND STALLION ISA SUPPORT REMOVED
108558b0a0bSSascha Wildner---------------------------------------------------
109850c4634SSascha Wildner
110850c4634SSascha WildnerThe bt(4) driver for Buslogic SCSI adapters has been made PCI only. ISA
111850c4634SSascha Wildnercards will no longer be detected.
112850c4634SSascha Wildner
113e6f626a1SSascha WildnerThe same has been done for Stallion multiport serial controllers. stli(4)
114e6f626a1SSascha Wildnerhas been completely removed (along with the stlload(8) and stlstty(8)
115558b0a0bSSascha Wildnerutilities) and stl(4) was changed to support only PCI cards. Similarly,
116558b0a0bSSascha WildnerISA support was removed from cy(4) too. All these drivers are i386 only.
117e6f626a1SSascha Wildner
118e98bcb27SSascha WildnerCOMPAT_OLDISA OPTION GONE
119e98bcb27SSascha Wildner-------------------------
120e98bcb27SSascha Wildner
121e98bcb27SSascha WildnerThe i386 specific COMPAT_OLDISA kernel option has been removed, since
122e98bcb27SSascha Wildnernothing needs it anymore.
123e98bcb27SSascha Wildner
124640dc18fSSepherosa Ziehau+-----------------------------------------------------------------------+
125c691bb43SSascha Wildner+         UPGRADING DRAGONFLY FROM 3.0 to later versions                +
126c691bb43SSascha Wildner+-----------------------------------------------------------------------+
127c691bb43SSascha Wildner
128c691bb43SSascha WildnerAPIC_IO OPTION REMOVED
129c691bb43SSascha Wildner----------------------
130c691bb43SSascha Wildner
131c691bb43SSascha WildnerThe APIC_IO kernel option is no longer accepted after having been without
132c691bb43SSascha Wildnereffect for a while. The hw.ioapic_enable tunable now serves its purpose.
133c691bb43SSascha WildnerIf you have 'options APIC_IO' in your kernel config, you'll have to
134c691bb43SSascha Wildnerremove it.
135c691bb43SSascha Wildner
1366d488cc3SSascha WildnerWATCHDOG_ENABLE & HW_WDOG OPTIONS REMOVED
1376d488cc3SSascha Wildner-----------------------------------------
138cf03d6cdSSascha Wildner
139cf03d6cdSSascha WildnerThe wdog framework is now compiled into our kernels by default, so the
1406d488cc3SSascha Wildneroptions are no longer needed.
141cf03d6cdSSascha Wildner
142397ffc5cSSascha WildnerDOSCMD(1) REMOVED
143397ffc5cSSascha Wildner-----------------
144397ffc5cSSascha Wildner
145397ffc5cSSascha Wildnerdoscmd(1) has been removed. It was i386 only. The doscmd(1) specific
146397ffc5cSSascha WildnerNO_X make.conf option was removed too.
147397ffc5cSSascha Wildner
148a1404d4fSSascha WildnerGCC 4.7
149a1404d4fSSascha Wildner-------
150a1404d4fSSascha Wildner
151a1404d4fSSascha WildnerGCC 4.7 has been brought in and replaces GCC 4.1 as DragonFly's non-
152a1404d4fSSascha Wildnerdefault compiler in base (default is still GCC 4.4).
153a1404d4fSSascha Wildner
154a1404d4fSSascha WildnerUsers who wish to build only GCC 4.4 have to replace NO_GCC41 with
155a1404d4fSSascha WildnerNO_GCC47 in /etc/make.conf.
156a1404d4fSSascha Wildner
1572508820fSSascha WildnerUSB4BSD
1582508820fSSascha Wildner-------
1592508820fSSascha Wildner
1602508820fSSascha WildnerA new USB stack (from FreeBSD) has been brought in. The following
1612508820fSSascha Wildnermodules have been ported so far: usb, uhci, ohci, ehci, xhci, umass,
1622508820fSSascha Wildnerusfs, uether, if_axe, if_udav, ukbd, ums, uep, uhid, usb_quirk,
1632508820fSSascha Wildnerand uaudio.
1642508820fSSascha Wildner
1652508820fSSascha WildnerIt is not yet the default. To activate it, WANT_USB4BSD=yes has to
166c7200221SSascha Wildnerbe put in make.conf and device "usb4bsd" (quotes needed) has to
167c7200221SSascha Wildnerreplace device usb in the kernel config. After that, a full
168c7200221SSascha Wildnerbuild/install/upgrade cycle is needed.
1692508820fSSascha Wildner
1702508820fSSascha WildnerNote that this is experimental and incomplete, but we are interested
1712508820fSSascha Wildnerin hearing about issues with it, of course.
1722508820fSSascha Wildner
173ae0870a3SSascha WildnerISA SUPPORT REMOVED FROM AIC-6260/6360 DRIVER
174ae0870a3SSascha Wildner---------------------------------------------
175ae0870a3SSascha Wildner
176ae0870a3SSascha WildnerISA adapter support was dropped from the aic(4) driver.
177ae0870a3SSascha Wildner
178c691bb43SSascha Wildner+-----------------------------------------------------------------------+
17996386d4bSSascha Wildner+         UPGRADING DRAGONFLY FROM 2.10 to later versions               +
18096386d4bSSascha Wildner+-----------------------------------------------------------------------+
18196386d4bSSascha Wildner
18296386d4bSSascha WildnerSEVERAL ISA DRIVERS REMOVED
18396386d4bSSascha Wildner---------------------------
18496386d4bSSascha Wildner
18596386d4bSSascha WildnerThe following ISA only drivers have been removed along with a couple of
18696386d4bSSascha Wildnerassociated userland tools:
18796386d4bSSascha Wildner
18896386d4bSSascha Wildneraha(4)
18996386d4bSSascha Wildnerasc(4) & sasc(1)
19096386d4bSSascha Wildnerctx
19196386d4bSSascha Wildnerdgb(4)
19296386d4bSSascha Wildnerel(4)
19396386d4bSSascha Wildnergpib
19496386d4bSSascha Wildnergsc(4) & sgsc(1)
19596386d4bSSascha Wildnerie(4)
19696386d4bSSascha Wildnerlabpc(4)
19796386d4bSSascha Wildnerle(4)
19896386d4bSSascha Wildnermse(4)
19996386d4bSSascha Wildnerrc(4)
20096386d4bSSascha Wildnerrdp(4)
20196386d4bSSascha Wildnerspigot
20296386d4bSSascha Wildnertw(4) & xten(1) & xtend(8)
20396386d4bSSascha Wildnerwl(4) & wlconfig(8)
20496386d4bSSascha Wildnerwt(4)
20596386d4bSSascha Wildner
20696386d4bSSascha WildnerNote that two of these drivers (aha(4) and ie(4)) are in our GENERIC
20796386d4bSSascha Wildnerconfig and one (aha(4)) is in our X86_64_GENERIC kernel configuration
20896386d4bSSascha Wildnerfile.
20996386d4bSSascha Wildner
21096386d4bSSascha WildnerIf buildkernel complains about any of these drivers, just remove them
21196386d4bSSascha Wildnerfrom your kernel configuration.
21296386d4bSSascha Wildner
213919eb219SJohn MarinoBINUTILS 2.20
214919eb219SJohn Marino-------------
21537c5a0dbSJohn MarinoBinutils 2.20 has been removed in favor of Binutils 2.22.  The accepted
216e685772eSJohn Marinovalues of BINUTILSVERS are now binutils221 and binutils222 (default).
217919eb219SJohn Marino
21883bc1e2aSSascha WildnerBUILDWORLD/-KERNEL PARALLELIZATION WORK
21983bc1e2aSSascha Wildner---------------------------------------
22083bc1e2aSSascha WildnerDue to changes in the way we build with more than one make job, you
22183bc1e2aSSascha Wildnerwill have to update install(1) and mkdir(1) prior to buildworld if you
22283bc1e2aSSascha Wildnerwant to build with 'make -j':
22383bc1e2aSSascha Wildner
22483bc1e2aSSascha Wildnercd /usr/src/usr.bin/xinstall; make; make install; make clean
22583bc1e2aSSascha Wildnercd /usr/src/bin/mkdir; make; make install; make clean
22683bc1e2aSSascha Wildner
227eca86bd9SSascha WildnerDMA(8) UPGRADE
228eca86bd9SSascha Wildner--------------
229eca86bd9SSascha Wildnerdma(8) has been upgraded to v0.7 which no longer supports the
230eca86bd9SSascha Wildner/etc/dma/virtusertable. Some of its functionality has been replaced
231eca86bd9SSascha Wildnerwith the MASQUERADE keyword and the EMAIL environment variable (see
232eca86bd9SSascha Wildnerthe dma(8) manual page).
233eca86bd9SSascha Wildner
23496386d4bSSascha Wildner+-----------------------------------------------------------------------+
2352443e96eSJustin C. Sherrill+         UPGRADING DRAGONFLY FROM 2.8 to later versions                +
236a4a39c94SJustin C. Sherrill+-----------------------------------------------------------------------+
237a4a39c94SJustin C. Sherrill
238b1242318SSascha WildnerGCC 4.4 & BINUTILS 2.21
239b1242318SSascha Wildner-----------------------
24030c91f0cSSascha Wildner
241b1242318SSascha WildnerGCC 4.4 has been made DragonFly's default compiler and Binutils 2.21 has
242b1242318SSascha Wildnerbeen made DragonFly's default Binutils.
24330c91f0cSSascha Wildner
24430c91f0cSSascha WildnerThat means that any settings that set CCVER to 'gcc44' are not needed
24530c91f0cSSascha Wildneranymore. Instead, CCVER can be set to 'gcc41' to go back to using
24630c91f0cSSascha WildnerGCC 4.1.
24730c91f0cSSascha Wildner
248b1242318SSascha WildnerIt also means that 'binutils221' as a value for BINUTILSVER has no
249b1242318SSascha Wildnereffect anymore. 2.17 has been removed and 'binutils220' is available
250b1242318SSascha Wildneras an option.
251b1242318SSascha Wildner
2525738210dSSascha WildnerThe NO_GCC44 option has been removed and will not affect the build
25330c91f0cSSascha Wildneranymore. There is now a NO_GCC41 option that will prevent GCC 4.1 from
25430c91f0cSSascha Wildnerbuilding in a similar fashion.
25530c91f0cSSascha Wildner
25680abb3beSSascha WildnerNote that you must do a full buildworld/buildkernel for upgrading.
25730c91f0cSSascha Wildner
258a4a39c94SJustin C. Sherrillpkg_radd settings
259c983d16eSSascha Wildner-----------------
260a4a39c94SJustin C. Sherrill
261a4a39c94SJustin C. SherrillThe config file for pkg_radd has moved from /etc/settings.conf to
262a4a39c94SJustin C. Sherrill/etc/pkg_radd.conf.  Save the contents of settings.conf before upgrading
263a4a39c94SJustin C. Sherrillif this is needed.  This warning only applies if /etc/settings.conf
264a4a39c94SJustin C. Sherrillexists.  pkg_radd will continue to work with defaults.
265a4a39c94SJustin C. Sherrill
266a4a39c94SJustin C. Sherrill+-----------------------------------------------------------------------+
26772fe41d3SPeter Avalos+         20100927							+
2681bb1cc14SMatthias Schmidt+         UPGRADING DRAGONFLY FROM 2.6 to 2.8 or HEAD			+
269b79f66ddSJoe Talbott+-----------------------------------------------------------------------+
270b79f66ddSJoe Talbott
27172fe41d3SPeter AvalosOpenSSL
272c983d16eSSascha Wildner--------
27372fe41d3SPeter Avalos
27472fe41d3SPeter AvalosOpenSSL has been upgraded, and SHLIB_MAJOR was bumped for libssh and libcrypto.
27572fe41d3SPeter AvalosThis shouldn't break any 3rd-party software, but you'll need to recompile your
27672fe41d3SPeter Avalos3rd-party software if you want it to link against the new version of OpenSSL.
27772fe41d3SPeter Avalos
2788eb0b612SJustin C. SherrillLoader
279c983d16eSSascha Wildner-------
2808eb0b612SJustin C. Sherrill
281b79f66ddSJoe TalbottA new loader (dloader) has been added which better handles booting from
282b79f66ddSJoe Talbottmultiple kernel/module versions.
283b79f66ddSJoe Talbott
284b79f66ddSJoe TalbottTo upgrade (Only for this upgrade, for post 2.8 upgrades see GENERAL below)
285b79f66ddSJoe Talbott
286b79f66ddSJoe Talbott	cd /usr/src
287b79f66ddSJoe Talbott	make buildworld
288b79f66ddSJoe Talbott	make installworld
289b79f66ddSJoe Talbott	make upgrade
290b79f66ddSJoe Talbott	make buildkernel KERNCONF=<KERNELNAME>
291b79f66ddSJoe Talbott	make installkernel KERNCONF=<KERNELNAME>
292b79f66ddSJoe Talbott
293b79f66ddSJoe TalbottNote that you must installworld and run the 'upgrade' target before
294b79f66ddSJoe Talbottinstalling the new kernel.
295b79f66ddSJoe Talbott
2968eb0b612SJustin C. SherrillBIND
297c983d16eSSascha Wildner-----
2988eb0b612SJustin C. Sherrill
2998eb0b612SJustin C. SherrillBIND has been removed from the base system.  The ldns and drill tools have
3008eb0b612SJustin C. Sherrillbeen added for basic functionality.  Use 'drill' where you would normally
3018eb0b612SJustin C. Sherrilluse nslookup or dig, or install BIND from pkgsrc.  It's available as
3028eb0b612SJustin C. Sherrillnet/bind95, net/bind96, or net/bind97 as of this writing.
3038eb0b612SJustin C. Sherrill
3048eb0b612SJustin C. SherrillThis only affects older systems upgrading to 2.8.  New 2.8+ installs
3058eb0b612SJustin C. Sherrillinclude BIND as a pkgsrc package.
3068eb0b612SJustin C. Sherrill
307b79f66ddSJoe Talbott+-----------------------------------------------------------------------+
308d2a0deccSMatthew Dillon+         UPGRADING DRAGONFLY ON AN EXISTING DRAGONFLY SYSTEM		+
309d2a0deccSMatthew Dillon+				GENERAL					+
310d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
311984263bcSMatthew Dillon
312a700883cSSascha WildnerInstructions on how to obtain and maintain DragonFly source code using git
313a700883cSSascha Wildnerare in the development(7) manual page.
314d2a0deccSMatthew Dillon
315d2a0deccSMatthew DillonTo upgrade a DragonFly system from sources you run the following sequence:
316d2a0deccSMatthew Dillon
317d2a0deccSMatthew Dillon	cd /usr/src
318d2a0deccSMatthew Dillon	make buildworld
319d2a0deccSMatthew Dillon	make buildkernel KERNCONF=<KERNELNAME>
320d2a0deccSMatthew Dillon	make installkernel KERNCONF=<KERNELNAME>
321d2a0deccSMatthew Dillon	make installworld
322d2a0deccSMatthew Dillon
323d2a0deccSMatthew DillonYou will also want to run the 'upgrade' target to upgrade your /etc and the
324d2a0deccSMatthew Dillonrest of your system.  The upgrade target is aware of stale files created by
325d2a0deccSMatthew Dillonolder DragonFly installations and should delete them automatically.
326d2a0deccSMatthew Dillon
327d2a0deccSMatthew Dillon	make upgrade
328d2a0deccSMatthew Dillon
329a700883cSSascha WildnerSee the build(7) manual page for further information.
330a700883cSSascha Wildner
331d2a0deccSMatthew DillonOnce you've done a full build of the world and kernel you can do incremental
332d2a0deccSMatthew Dillonupgrades of either by using the 'quickworld' and 'quickkernel' targets
333d2a0deccSMatthew Dilloninstead of 'buildworld' and 'buildkernel'.  If you have any problems with
334a700883cSSascha Wildnerthe quick targets, try updating your repo first, and then a full buildworld
335d2a0deccSMatthew Dillonand buildkernel as shown above, before asking for help.
3364523a2c0SThomas Nikolajsen
3374523a2c0SThomas Nikolajsen+-----------------------------------------------------------------------+
3384523a2c0SThomas Nikolajsen+         UPGRADING FROM DRAGONFLY <= 2.0 TO DRAGONFLY >= 2.1		+
3394523a2c0SThomas Nikolajsen+-----------------------------------------------------------------------+
3404523a2c0SThomas Nikolajsen
3414523a2c0SThomas NikolajsenIn 2.1 kernel and modules has moved to boot directory.  For most cases
3424523a2c0SThomas Nikolajsenthis is handled automatically by 'make upgrade'.  A few cases needs manual
3434523a2c0SThomas Nikolajsenintervention:
3444523a2c0SThomas Nikolajsen
3454523a2c0SThomas Nikolajsen * When installing a kernel without first doing a make buildworld,
3464523a2c0SThomas Nikolajsen   installworld and upgrade to the same DESTDIR as kernel:
3474523a2c0SThomas Nikolajsen   make DESTDIR/boot directory and move kernel and modules into this boot
3484523a2c0SThomas Nikolajsen   directory; also move kernel.old and modules.old.
3494523a2c0SThomas Nikolajsen   Typical example is vkernel(7), use (no modules used):
3504523a2c0SThomas Nikolajsen
3514523a2c0SThomas Nikolajsen	cd /var/vkernel
3524523a2c0SThomas Nikolajsen	mkdir boot
3534523a2c0SThomas Nikolajsen	chflags noschg kernel
3544523a2c0SThomas Nikolajsen	mv kernel kernel.old boot
3554523a2c0SThomas Nikolajsen	chflags schg boot/kernel
3564523a2c0SThomas Nikolajsen
3574523a2c0SThomas Nikolajsen * When using a boot-only partition, /boot/loader.rc needs to be edited:
3584523a2c0SThomas Nikolajsen   delete occurrences of '/boot/'.
3594523a2c0SThomas Nikolajsen   These occurences can normally be deleted in any case, see loader(8).
360d2a0deccSMatthew Dillon
361d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
362d2a0deccSMatthew Dillon+         UPGRADING FROM DRAGONFLY <= 1.8 TO DRAGONFLY >= 1.9		+
363d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
364d2a0deccSMatthew Dillon
365d2a0deccSMatthew DillonIn 1.9 major changes to the disk management infrastructure have taken
366d2a0deccSMatthew Dillonplace.  make upgrade may not catch all of your disk devices in /dev,
367d2a0deccSMatthew Dillonso after upgrading be sure to cd /dev; ./MAKEDEV <blah> where <blah>
36845e80934SMatthew Dillonare all of your disk devices.  HOWEVER, from late 2.3 on we run devfs
36945e80934SMatthew Dillonand MAKEDEV no longer exists.
370d2a0deccSMatthew Dillon
371d2a0deccSMatthew DillonThe biggest changes in 1.9 are:
372d2a0deccSMatthew Dillon
373d2a0deccSMatthew Dillon(1) That whole-slice devices such as da0s1 no longer share the same device
374d2a0deccSMatthew Dillon    id as partition c devices such as da0s1c.
375d2a0deccSMatthew Dillon
376d2a0deccSMatthew Dillon(2) The whole-disk device (e.g. da0) is full raw access to the disk,
377d2a0deccSMatthew Dillon    with no snooping or reserved sectors.  Consequently you cannot run
378d2a0deccSMatthew Dillon    disklabel on this device.  Instead you must run disklabel on a
379d2a0deccSMatthew Dillon    whole-slice device.
380d2a0deccSMatthew Dillon
381d2a0deccSMatthew Dillon(3) The 'compatibility' partitions now use slice 0 in the device name,
382d2a0deccSMatthew Dillon    so instead of da0a you must specify da0s0a.  Also, as per (1) above,
383d2a0deccSMatthew Dillon    accessing the disklabel for the compatibility partitions must be
384d2a0deccSMatthew Dillon    done via slice 0 (da0s0).
385d2a0deccSMatthew Dillon
386d2a0deccSMatthew Dillon(4) Many device drivers that used to fake up labels, such as CD, ACD, VN,
387d2a0deccSMatthew Dillon    and CCD now run through the disk management layer and are assigned
388d2a0deccSMatthew Dillon    real disk management devices.   VN and CCD in particular do not usually
389d2a0deccSMatthew Dillon    use a MBR and disklabels must be accessed through the compatibility
390d2a0deccSMatthew Dillon    slice 0.  Your /etc/ccd.conf file still specifies 'ccd0', though, you
391d2a0deccSMatthew Dillon    don't name it 'ccd0s0' in the config file.
392d2a0deccSMatthew Dillon
393d2a0deccSMatthew DillonGenerally speaking, you have to get used to running fdisk and disklabel on
394d2a0deccSMatthew Dillonthe correctly specified device names.  A lot of the wiggle, such as running
395d2a0deccSMatthew Dillondisklabel on a partition, has been removed.
396d2a0deccSMatthew Dillon
397d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
398d2a0deccSMatthew Dillon+         UPGRADING FROM OLDER VERSIONS OF DRAGONFLY OR FREEBSD		+
399d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
400d2a0deccSMatthew Dillon
401d2a0deccSMatthew Dillon> Kerberos IV
402d2a0deccSMatthew Dillon-------------
403d2a0deccSMatthew Dillon
404d2a0deccSMatthew DillonKerberos IV (eBones) was removed from the tree, please consider moving to
405d2a0deccSMatthew DillonKerberos 5 (Heimdal).
406d2a0deccSMatthew Dillon
407d2a0deccSMatthew Dillon> Package Management System
408d2a0deccSMatthew Dillon---------------------------
409d2a0deccSMatthew Dillon
410d2a0deccSMatthew DillonStarting with the 1.4 release, DragonFly uses NetBSD's pkgsrc package
411d2a0deccSMatthew Dillonmanagement system.  The necessary tools to build and maintain packages
412d2a0deccSMatthew Dillonare provided in /usr/pkg/bin and /usr/pkg/sbin.  Make sure that these
413d2a0deccSMatthew Dillondirectories are in your PATH variable.
414d2a0deccSMatthew Dillon
415d2a0deccSMatthew DillonIn order to obtain a reasonably current snapshot of the pkgsrc tree, use
416d2a0deccSMatthew Dillonthe tarball from NetBSD:
417d2a0deccSMatthew Dillon
418d2a0deccSMatthew Dillon	fetch -o /tmp/pkgsrc.tar.gz ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc.tar.gz
419d2a0deccSMatthew Dillon	cd /usr; tar -xzf /tmp/pkgsrc.tar.gz; chown -R root:wheel pkgsrc
420d2a0deccSMatthew Dillon
421d2a0deccSMatthew DillonThis tree can then be kept up to date with cvs update:
422d2a0deccSMatthew Dillon
423d2a0deccSMatthew Dillon	cd /usr/pkgsrc; cvs up
424d2a0deccSMatthew Dillon
425d2a0deccSMatthew DillonNOTE! If you upgraded from a pre-1.4 system to 1.4 or later, you need to
426d2a0deccSMatthew Dillonbuild and install the pkgsrc bootstrap manually:
427d2a0deccSMatthew Dillon
428d2a0deccSMatthew Dillon	cd /usr/pkgsrc/bootstrap
429d2a0deccSMatthew Dillon	./bootstrap --pkgdbdir /var/db/pkg --prefix /usr/pkg
430d2a0deccSMatthew Dillon
431d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
432d2a0deccSMatthew Dillon+         UPGRADING DRAGONFLY ON AN EXISTING DRAGONFLY SYSTEM		+
433d2a0deccSMatthew Dillon+         UPDATING FROM PRE-1.2 SYSTEMS OR FreeBSD 4.x TO               +
434d2a0deccSMatthew Dillon+         DRAGONFLY 1.3+ (EITHER PREVIEW or HEAD)                       +
435d2a0deccSMatthew Dillon+-----------------------------------------------------------------------+
43658116288SJoerg Sonnenberger
437114580acSSascha WildnerThe compatibility shims for the build environment have been removed, you
43858116288SJoerg Sonnenbergerhave to update to DragonFly 1.2 release branch first.
43958116288SJoerg Sonnenberger
4401fcc7462SJoerg SonnenbergerThe default PAM configuration has moved from /etc/pam.conf to /etc/pam.d/.
4411fcc7462SJoerg SonnenbergerThe existing configuration can be converted using /etc/pam.d/convert.sh.
4421fcc7462SJoerg SonnenbergerEntries in /etc/pam.d/ override entries in /etc/pam.conf. In addition
4431fcc7462SJoerg Sonnenbergerthe pam_skey.so module was retired, you have to remove it manually from
4441fcc7462SJoerg Sonnenbergeryour configuration, when you convert it.
44558116288SJoerg Sonnenberger
446a3107071SMatthew Dillon> Required user and group IDs when upgrading from either FreeBSD or DragonFly
447a3107071SMatthew Dillon---------------------
448a3107071SMatthew Dillon
449a3107071SMatthew DillonThe following users may be missing from your password file.  Use vipw and
450a3107071SMatthew Dillonadd any that are missing:
451a3107071SMatthew Dillon
452a3107071SMatthew Dillonsmmsp:*:25:25::0:0:Sendmail Submission User:/var/spool/clientmqueue:/sbin/nologin
453dcf85892SJoerg Sonnenberger_pflogd:*:64:64::0:0:pflogd privsep user:/var/empty:/sbin/nologin
454a3107071SMatthew Dillon
455a3107071SMatthew DillonThe following groups may be missing from your group file.  Use vi /etc/group
456a3107071SMatthew Dillonand add any that are missing:
457a3107071SMatthew Dillon
458a3107071SMatthew Dillonsmmsp:*:25:
459a3107071SMatthew Dillonauthpf:*:63:
460dcf85892SJoerg Sonnenberger_pflogd:*:64:
461a3107071SMatthew Dillon
462a3107071SMatthew Dillon
463f419dacaSMatthew Dillon> Upgrading to DragonFly from FreeBSD
464984263bcSMatthew Dillon---------------------
465984263bcSMatthew Dillon
466f419dacaSMatthew DillonYou can build the DragonFly world and DragonFly kernels on a FreeBSD-4.x or
467f419dacaSMatthew DillonFreeBSD-5.x machine and then install DragonFly over FreeBSD, replacing
468f419dacaSMatthew DillonFreeBSD.  Note that the DragonFly buildworld target does not try to reuse
469f419dacaSMatthew Dillonmake depend information, it starts from scratch, so no pre-cleaning of the
470f419dacaSMatthew Dillonobject hierarchy is necessary.
471984263bcSMatthew Dillon
472466bbc10SHiten Pandya	# get the CVS repository (it is placed in /home/dcvs, 500MB).
473f419dacaSMatthew Dillon	# Please use the -h option and a mirror site to pull the
474f419dacaSMatthew Dillon	# initial repository, but feel free to use the main repository
475f419dacaSMatthew Dillon	# machine to pull updates.
4765010eeb3SSascha Wildner	cvsup /usr/share/examples/cvsup/DragonFly-cvs-supfile
477f419dacaSMatthew Dillon	# install the source from the CVS hierarchy (remove preexisting
478f419dacaSMatthew Dillon	# FreeBSD src first) (500MB)
479f419dacaSMatthew Dillon	cd /usr
480f419dacaSMatthew Dillon	rm -rf src
48150172b1cSDavid Rhodus	cvs -R -d /home/dcvs checkout -P src
482984263bcSMatthew Dillon
483f419dacaSMatthew Dillon	# build it (500MB used in /usr/obj)
484f419dacaSMatthew Dillon	#
485fb12f484SMatthew Dillon	cd /usr/src
486fb12f484SMatthew Dillon	make buildworld
487f419dacaSMatthew Dillon	make buildkernel KERNCONF=<KERNELNAME>
488f419dacaSMatthew Dillon
489f419dacaSMatthew DillonOnce you have built DragonFly you have to install it over FreeBSD.  Since
490f419dacaSMatthew DillonDragonFly does not track changes made by FreeBSD to its include file
491f419dacaSMatthew Dillonhierarchy and include file pollution can cause all sorts of unexpected
492f419dacaSMatthew Dilloncompilation issues to come up, it is best to wipe your include hierarchy
493f419dacaSMatthew Dillonprior to installing DragonFly.  Note that you should not wipe any installed
494f419dacaSMatthew DillonFreeBSD header files or binaries until after you have successfully completed
495f419dacaSMatthew Dillonthe build steps above.
496f419dacaSMatthew Dillon
497f419dacaSMatthew Dillon	rm -rf /usr/include
498f419dacaSMatthew Dillon	mkdir /usr/include
499f419dacaSMatthew Dillon	make installkernel KERNCONF=<KERNELNAME>
500fb12f484SMatthew Dillon	make installworld
501fb12f484SMatthew Dillon
502b8cbf045SSascha WildnerThen you need to upgrade your system.  DragonFly's 'make upgrade' target
503f419dacaSMatthew Dillonwill unconditionally upgrade the /etc files that sysops do not usually
504b8cbf045SSascha Wildnermess around with, such as the files in /etc/rc.d.  It will also remove any
505b8cbf045SSascha Wildnerobsolete files such as utilities and manpages that have been removed from
506b8cbf045SSascha Wildnerthe system since the version you're coming from.  If you are unsure we
507b8cbf045SSascha Wildnerrecommend that you make a backup of at least your /etc before applying
508b8cbf045SSascha Wildnerthis step.  Note that DragonFly's RC system is basically RCNG from
509b8cbf045SSascha WildnerFreeBSD-5, but there are some differences in the contents of the RC files.
510f419dacaSMatthew Dillon
511f419dacaSMatthew Dillon	make upgrade
512f419dacaSMatthew Dillon
513b8cbf045SSascha WildnerNOTE! Never do a 'make upgrade' before 'make installworld' has been run.
514b8cbf045SSascha WildnerDoing so might leave your system in an unusable state.
515b8cbf045SSascha Wildner
516f419dacaSMatthew DillonFinally we recommend that you do an 'ls -lta BLAH' for /bin, /sbin, /usr/bin,
517b8cbf045SSascha Wildner/usr/bin, and /usr/lib, and remove any stale files that you find.  Please
518b8cbf045SSascha Wildnerreport these files to the DragonFly developers so that they can be added to
519b8cbf045SSascha Wildnerthe 'upgrade' target.
520f419dacaSMatthew Dillon
521