xref: /minix3/docs/UPDATING (revision 1dee92ebe9d36c122dd2fee6f8e8b3cb279ddbfc)
1*1dee92ebSDavid van Moolenbroek20170303:
2*1dee92ebSDavid van Moolenbroek	The entire network stack has been replaced.  This requires two updates.
3*1dee92ebSDavid van Moolenbroek	First, BEFORE rebooting, either before or after rebuilding the system,
4*1dee92ebSDavid van Moolenbroek	copy the following new configuration files from /usr/src/etc into /etc:
5*1dee92ebSDavid van Moolenbroek
6*1dee92ebSDavid van Moolenbroek		# cd /usr/src/etc
7*1dee92ebSDavid van Moolenbroek		# cp hosts inetd.conf named.conf nsswitch.conf /etc
8*1dee92ebSDavid van Moolenbroek
9*1dee92ebSDavid van Moolenbroek	Second, AFTER rebooting, set up a new network configuration for your
10*1dee92ebSDavid van Moolenbroek	system.  Run netconf(8) and and follow its instructions:
11*1dee92ebSDavid van Moolenbroek
12*1dee92ebSDavid van Moolenbroek		# netconf
13*1dee92ebSDavid van Moolenbroek
14*1dee92ebSDavid van Moolenbroek	If you previously configured your network statically and you forgot its
15*1dee92ebSDavid van Moolenbroek	settings, take a look at /etc/rc.network.  That file and /etc/inet.conf
16*1dee92ebSDavid van Moolenbroek	are no longer used now.  See the ifconfig.if(5) manual page for more
17*1dee92ebSDavid van Moolenbroek	information about how network settings are specified going forward.
18*1dee92ebSDavid van Moolenbroek
19325ce30bSDavid van Moolenbroek20170223:
20325ce30bSDavid van Moolenbroek	Edit your /etc/rc.conf to set rc_configured to YES.  If you do not,
21325ce30bSDavid van Moolenbroek	your system will refuse to enter multi-user mode after the next reboot.
22325ce30bSDavid van Moolenbroek	You can then still make the same edit from single user mode, but that
23325ce30bSDavid van Moolenbroek	is not as easy.
24325ce30bSDavid van Moolenbroek
25c58da9fbSDavid van Moolenbroek20170222:
26c58da9fbSDavid van Moolenbroek	Because of naming conflicts, the MINIX 3 service(8) utility has been
27c58da9fbSDavid van Moolenbroek	renamed to "minix-service".  After successfully rebuilding the system
28c58da9fbSDavid van Moolenbroek	*and* rebooting (no earlier!), remove the old service utility:
29c58da9fbSDavid van Moolenbroek
30c58da9fbSDavid van Moolenbroek		# rm /bin/service
31c58da9fbSDavid van Moolenbroek
32c58da9fbSDavid van Moolenbroek	Better yet, use the postinstall(8) command to remove all files marked
33c58da9fbSDavid van Moolenbroek	as obsolete.  It is not a bad idea to do this every now and then:
34c58da9fbSDavid van Moolenbroek
35c58da9fbSDavid van Moolenbroek		# postinstall fix obsolete
36c58da9fbSDavid van Moolenbroek
37c58da9fbSDavid van Moolenbroek	..but only ever after the reboot!  Either way, deleting the old service
38c58da9fbSDavid van Moolenbroek	tool will avoid conflicts with the same-named NetBSD utility later on.
39c58da9fbSDavid van Moolenbroek
4077e79d33SDavid van Moolenbroek20170218:
4177e79d33SDavid van Moolenbroek	Before starting a build, you will have to update your master.passwd and
4277e79d33SDavid van Moolenbroek	group files in /etc.  This is needed because we have switched over from
4377e79d33SDavid van Moolenbroek	the old set of MINIX users and groups to the new set of NetBSD users
4477e79d33SDavid van Moolenbroek	and groups, as needed by various imported tools.  Follow these steps.
4577e79d33SDavid van Moolenbroek
4677e79d33SDavid van Moolenbroek	1. Make a back-up copy of your old master.passwd and group files:
4777e79d33SDavid van Moolenbroek
4877e79d33SDavid van Moolenbroek		# cp /etc/master.passwd /etc/master.passwd~
4977e79d33SDavid van Moolenbroek		# cp /etc/group /etc/group~
5077e79d33SDavid van Moolenbroek
5177e79d33SDavid van Moolenbroek	2. Install /usr/src/etc/master.passwd to /etc/master.passwd, and
5277e79d33SDavid van Moolenbroek	   install /usr/src/etc/group to /etc/group.  If you have NOT created
5377e79d33SDavid van Moolenbroek	   any local user accounts yourself, for example because you are
5477e79d33SDavid van Moolenbroek	   upgrading a fresh MINIX 3 installation right away, all you need to
5577e79d33SDavid van Moolenbroek	   do is copy over those two files:
5677e79d33SDavid van Moolenbroek
5777e79d33SDavid van Moolenbroek		# cp /usr/src/etc/master.passwd /etc/master.passwd
5877e79d33SDavid van Moolenbroek		# cp /usr/src/etc/group /etc/group
5977e79d33SDavid van Moolenbroek
6077e79d33SDavid van Moolenbroek	   If you DO have custom user accounts or groups, you need to merge
6177e79d33SDavid van Moolenbroek	   their lines (and only those!) into the new master.passwd and group
6277e79d33SDavid van Moolenbroek	   files manually.  If you are unsure whether you have such custom
6377e79d33SDavid van Moolenbroek	   entries, you can use the following commands:
6477e79d33SDavid van Moolenbroek
6577e79d33SDavid van Moolenbroek		# cd /usr/src
6677e79d33SDavid van Moolenbroek		# git show 68804c2:etc/master.passwd | diff -u - /etc/master.passwd
6777e79d33SDavid van Moolenbroek		# git show 68804c2:etc/group | diff -u - /etc/group
6877e79d33SDavid van Moolenbroek
6977e79d33SDavid van Moolenbroek	   This should show any changes compared to the old two templates.  If
7077e79d33SDavid van Moolenbroek	   you have such changes, you need to reapply them after copying over
7177e79d33SDavid van Moolenbroek	   the new two templates.  The following procedure shows one approach:
7277e79d33SDavid van Moolenbroek
7377e79d33SDavid van Moolenbroek		# cd /usr/src
7477e79d33SDavid van Moolenbroek		# cp /etc/master.passwd /tmp/my-passwd
7577e79d33SDavid van Moolenbroek		# vi /tmp/my-passwd
7677e79d33SDavid van Moolenbroek		<remove any lines from /tmp/my-passwd that have no password>
7777e79d33SDavid van Moolenbroek		# cp /usr/src/etc/master.passwd /etc/master.passwd
7877e79d33SDavid van Moolenbroek		# cat /tmp/my-passwd >> /etc/master.passwd
7977e79d33SDavid van Moolenbroek		# rm /tmp/my-passwd
8077e79d33SDavid van Moolenbroek
8177e79d33SDavid van Moolenbroek	   ..and follow a similar procedure for /etc/group.
8277e79d33SDavid van Moolenbroek
8377e79d33SDavid van Moolenbroek	3. Once the new files are in place, update all derived password files:
8477e79d33SDavid van Moolenbroek
8577e79d33SDavid van Moolenbroek		# pwd_mkdb -p /etc/master.passwd
8677e79d33SDavid van Moolenbroek
8777e79d33SDavid van Moolenbroek	   If you did everything right so far, the following command:
8877e79d33SDavid van Moolenbroek
8977e79d33SDavid van Moolenbroek		# postinstall check uid gid
9077e79d33SDavid van Moolenbroek
9177e79d33SDavid van Moolenbroek	   ..should show "postinstall checks passed: uid gid" and no failures.
9277e79d33SDavid van Moolenbroek
9377e79d33SDavid van Moolenbroek	4. Now perform a full build as usual:
9477e79d33SDavid van Moolenbroek
9577e79d33SDavid van Moolenbroek		# cd /usr/src
9677e79d33SDavid van Moolenbroek		# make build
9777e79d33SDavid van Moolenbroek
9877e79d33SDavid van Moolenbroek	   As part of the build, all /dev files will get new proper ownership.
9977e79d33SDavid van Moolenbroek
10077e79d33SDavid van Moolenbroek	5. There may still be files that are owned by users and groups that now
10177e79d33SDavid van Moolenbroek	   have been renumbered.  It is advisable to run at least the following
10277e79d33SDavid van Moolenbroek	   three commands to apply the renumbering to the most common files:
10377e79d33SDavid van Moolenbroek
10477e79d33SDavid van Moolenbroek		# find / -user 2 -exec chown bin \{\} \;
10577e79d33SDavid van Moolenbroek		# find / -user 5 -exec chown uucp \{\} \;
10677e79d33SDavid van Moolenbroek		# find / -user 9998 -exec chown games \{\} \;
10777e79d33SDavid van Moolenbroek
10877e79d33SDavid van Moolenbroek	   If you have installed custom programs, you may want to check whether
10977e79d33SDavid van Moolenbroek	   they are not affected by the change.  This should be rare, though.
11077e79d33SDavid van Moolenbroek
11177e79d33SDavid van Moolenbroek	Until a subsequent reboot, various running services will show up in
11277e79d33SDavid van Moolenbroek	ps(1) output and /proc as owned by "postfix".  This is no problem.
11377e79d33SDavid van Moolenbroek
11472e11e27SJean-Baptiste Boric20170122:
11572e11e27SJean-Baptiste Boric	MINIX 3 did not import NetBSD's passwd.conf file, which makes the
11672e11e27SJean-Baptiste Boric	userland fall back by default to the old, broken UNIX password hashing
11772e11e27SJean-Baptiste Boric	algorithm. Among other problems, it truncates passwords to the first
11872e11e27SJean-Baptiste Boric	eight characters.
11972e11e27SJean-Baptiste Boric
12072e11e27SJean-Baptiste Boric	Please install /etc/passwd.conf and reset your passwords with passwd.
12172e11e27SJean-Baptiste Boric
12236dcc4a4SLionel Sambuc20160702:
12336dcc4a4SLionel Sambuc	Some tools are required to generate the locale resources which are
12436dcc4a4SLionel Sambuc	embedded into libintl, which is why you need to run the following:
12536dcc4a4SLionel Sambuc
12636dcc4a4SLionel Sambuc	for t in gencat locale mkcsmapper mkesdb mklocale
12736dcc4a4SLionel Sambuc	do
12836dcc4a4SLionel Sambuc		make -C /usr/src/usr.bin/${t} all install
12936dcc4a4SLionel Sambuc	done
13036dcc4a4SLionel Sambuc
13136dcc4a4SLionel Sambuc	Then the usual "make build".
13236dcc4a4SLionel Sambuc
133da21d850SDavid van Moolenbroek20150623:
134da21d850SDavid van Moolenbroek	In order to use the new Unix98 PTYs, and to ensure that the test set
135da21d850SDavid van Moolenbroek	continues to pass, please add the following line to your /etc/fstab:
136da21d850SDavid van Moolenbroek
137da21d850SDavid van Moolenbroek	"none	/dev/pts	ptyfs	rw,rslabel=ptyfs	0	0"
138da21d850SDavid van Moolenbroek
1398533943cSLionel Sambuc20140801:
1408533943cSLionel Sambuc	As the ABI went under heavy changes it is not possible to do a source
1418533943cSLionel Sambuc	upgrade (make build) between:
1428533943cSLionel Sambuc		commit 7ebdb97a28234e0181f93a8b786331dda507482
1438533943cSLionel Sambuc	        Date:   Sun Feb 16 20:08:20 2014 +0000
1448533943cSLionel Sambuc	and
1458533943cSLionel Sambuc		commit f1deff716ea30b28693c16f8e48ba1a369e2e922
1468533943cSLionel Sambuc		Date:   Thu Jul 31 18:36:24 2014 +0200
147c566d462SLionel Sambuc
1488533943cSLionel Sambuc	WARNING: Attempting to do so will break your system beyond repair, and
1498533943cSLionel Sambuc		 require a full reinstallation. You have been warned.
150