Drop main() prototype. Syncs with NetBSD-8
[minix.git] / docs / UPDATING
blobd2e4ce057a879dbac1d3452c808148cd858d917b
1 20170303:
2         The entire network stack has been replaced.  This requires two updates.
3         First, BEFORE rebooting, either before or after rebuilding the system,
4         copy the following new configuration files from /usr/src/etc into /etc:
6                 # cd /usr/src/etc
7                 # cp hosts inetd.conf named.conf nsswitch.conf /etc
9         Second, AFTER rebooting, set up a new network configuration for your
10         system.  Run netconf(8) and and follow its instructions:
12                 # netconf
14         If you previously configured your network statically and you forgot its
15         settings, take a look at /etc/rc.network.  That file and /etc/inet.conf
16         are no longer used now.  See the ifconfig.if(5) manual page for more
17         information about how network settings are specified going forward.
19 20170223:
20         Edit your /etc/rc.conf to set rc_configured to YES.  If you do not,
21         your system will refuse to enter multi-user mode after the next reboot.
22         You can then still make the same edit from single user mode, but that
23         is not as easy.
25 20170222:
26         Because of naming conflicts, the MINIX 3 service(8) utility has been
27         renamed to "minix-service".  After successfully rebuilding the system
28         *and* rebooting (no earlier!), remove the old service utility:
30                 # rm /bin/service
32         Better yet, use the postinstall(8) command to remove all files marked
33         as obsolete.  It is not a bad idea to do this every now and then:
35                 # postinstall fix obsolete
37         ..but only ever after the reboot!  Either way, deleting the old service
38         tool will avoid conflicts with the same-named NetBSD utility later on.
40 20170218:
41         Before starting a build, you will have to update your master.passwd and
42         group files in /etc.  This is needed because we have switched over from
43         the old set of MINIX users and groups to the new set of NetBSD users
44         and groups, as needed by various imported tools.  Follow these steps.
46         1. Make a back-up copy of your old master.passwd and group files:
48                 # cp /etc/master.passwd /etc/master.passwd~
49                 # cp /etc/group /etc/group~
51         2. Install /usr/src/etc/master.passwd to /etc/master.passwd, and
52            install /usr/src/etc/group to /etc/group.  If you have NOT created
53            any local user accounts yourself, for example because you are
54            upgrading a fresh MINIX 3 installation right away, all you need to
55            do is copy over those two files:
57                 # cp /usr/src/etc/master.passwd /etc/master.passwd
58                 # cp /usr/src/etc/group /etc/group
60            If you DO have custom user accounts or groups, you need to merge
61            their lines (and only those!) into the new master.passwd and group
62            files manually.  If you are unsure whether you have such custom
63            entries, you can use the following commands:
65                 # cd /usr/src
66                 # git show 68804c2:etc/master.passwd | diff -u - /etc/master.passwd
67                 # git show 68804c2:etc/group | diff -u - /etc/group
69            This should show any changes compared to the old two templates.  If
70            you have such changes, you need to reapply them after copying over
71            the new two templates.  The following procedure shows one approach:
73                 # cd /usr/src
74                 # cp /etc/master.passwd /tmp/my-passwd
75                 # vi /tmp/my-passwd
76                 <remove any lines from /tmp/my-passwd that have no password>
77                 # cp /usr/src/etc/master.passwd /etc/master.passwd
78                 # cat /tmp/my-passwd >> /etc/master.passwd
79                 # rm /tmp/my-passwd
81            ..and follow a similar procedure for /etc/group.
83         3. Once the new files are in place, update all derived password files:
85                 # pwd_mkdb -p /etc/master.passwd
87            If you did everything right so far, the following command:
89                 # postinstall check uid gid
91            ..should show "postinstall checks passed: uid gid" and no failures.
93         4. Now perform a full build as usual:
95                 # cd /usr/src
96                 # make build
98            As part of the build, all /dev files will get new proper ownership.
100         5. There may still be files that are owned by users and groups that now
101            have been renumbered.  It is advisable to run at least the following
102            three commands to apply the renumbering to the most common files:
104                 # find / -user 2 -exec chown bin \{\} \;
105                 # find / -user 5 -exec chown uucp \{\} \;
106                 # find / -user 9998 -exec chown games \{\} \;
108            If you have installed custom programs, you may want to check whether
109            they are not affected by the change.  This should be rare, though.
111         Until a subsequent reboot, various running services will show up in
112         ps(1) output and /proc as owned by "postfix".  This is no problem.
114 20170122:
115         MINIX 3 did not import NetBSD's passwd.conf file, which makes the
116         userland fall back by default to the old, broken UNIX password hashing
117         algorithm. Among other problems, it truncates passwords to the first
118         eight characters.
120         Please install /etc/passwd.conf and reset your passwords with passwd.
122 20160702:
123         Some tools are required to generate the locale resources which are
124         embedded into libintl, which is why you need to run the following:
126         for t in gencat locale mkcsmapper mkesdb mklocale
127         do
128                 make -C /usr/src/usr.bin/${t} all install
129         done
131         Then the usual "make build".
133 20150623:
134         In order to use the new Unix98 PTYs, and to ensure that the test set
135         continues to pass, please add the following line to your /etc/fstab:
137         "none   /dev/pts        ptyfs   rw,rslabel=ptyfs        0       0"
139 20140801:
140         As the ABI went under heavy changes it is not possible to do a source
141         upgrade (make build) between:
142                 commit 7ebdb97a28234e0181f93a8b786331dda507482
143                 Date:   Sun Feb 16 20:08:20 2014 +0000
144         and
145                 commit f1deff716ea30b28693c16f8e48ba1a369e2e922
146                 Date:   Thu Jul 31 18:36:24 2014 +0200
148         WARNING: Attempting to do so will break your system beyond repair, and
149                  require a full reinstallation. You have been warned.