CHANGES (5225B) download
10.11:
2 when serdo is run without arguments, and a file called "script"
3 exists in the current working directory, executes that (to save a
4 few inodes for the "params" files
5 fix (apparently unexploitable) stack clobber in serdo
6 (found by Nikola Vladov, many thanks)
7 add ulimit to serdo
8 a service can now contain a "root" symlink to where it should be
9 started
10 only install SIGWINCH and SIGINT if running with PID 1
11 you can now do "make MINITROOT=/var/minit"
12 add ftrigger (run a command if a file changes)
13 add waitinterface and waitport (to resolve races)
14 add powersave (demo tool to set up power saving, needs customization, not actually installed)
15 add governor (demo tool to set CPU frequency governor based on AC state,
16 not actually needed anymore with current hardware, not actually installed)
17
180.10:
19 add sample script for /etc/minit/ctrlaltdel/run as
20 control/ctrlaltdel-run (Florian Westphal)
21 add killall5, needs /proc on Linux though (Florian Westphal)
22 add shutdown (Bernd Wachter)
23 add -Wall and -W and kill resulting compiler warnings
24 several fixes (Bernd Wachter)
25 add update support - tell minit to execve something else, a newer
26 version of itself, preferably (Florian Westphal)
27 also add minit-update program to download state from old minit and
28 upload state to new minit after update (Florian Westphal)
29 #include minit.h and use MINITROOT consistently (Lordy)
30 Don't assume MINITROOT is 10 bytes long (Erich Schubert)
31 add man pages!! (Erich Schubert)
32 add a way to ask minit for dependencies
33 msvc -H will now dump the ten least recently spawned processes.
34 This is useful to see which process is looping.
35 fix bug in msvc killing process group if readpid failed
36 (Erich Schubert)
37 You can now blacklist services temporarily by passing -servicename on
38 the kernel command line. The first time they are to be started will
39 then be skipped. Use this, for example, to not start the dhcp
40 client when your notebook is not plugged in a network.
41 add serdo (execute batch, no shell features whatsoever)
42 make "msvc servicename" output easier to parse if not outputting to a tty
43 require libowfat instead of shipping half of it ourselves
44 replace malloc with alloca; minit is now 6644 bytes on i386.
45 add usage for serdo (Nikola Vladov)
46 fix msvc -d followed by msvc -h (would send SIGHUP to pid 1, i.e. kill
47 minit; found by Paul Fox)
48 added small special-purpose malloc using a static buffer before
49 calling the real malloc (Nikola Vladov)
50
510.9.1:
52 fix embarassing typo in msvc (Gelu G. Lupas)
53
540.9:
55 For stopped services, minit did not record the time when it finished,
56 but when it was started.
57 add hard-reboot from Tommi Virtanen. He also asked me to include an
58 explicit license statement and sent a patch to make debian packaging
59 easier (deb files can't include FIFOs).
60 Olaf: add write_proc.
61 Olaf: lines in depends can now be commented out with a #
62 Olaf: add a method to clear dead services (mark as terminated)
63 minit now checks whether a PID actually exists before accepting msvc -P
64 this removes a race condition when the forked service terminates
65 before pidfilehack notifies minit of the PID
66 msvc now accepts more than one service after -o, -d, ...
67 msvc now accepts /etc/minit/sshd instead of sshd as service name
68 better error handling in msvc (more and better error messages)
69 minit now has a heuristic to detect time zone changes and still
70 have msvc report the correct elapsed time since process start/end
71 (don't look at the source code, it's ultra-kludgey)
72 add msvc -g (get PID for shell scripts)
73
740.8:
75 call waitpid repeatedly until it returns "no children".
76 This reaps zombies faster.
77
780.7:
79 found and fixed the bug that made the logging support not work when
80 minit was running as PID 1.
81 saw that the shutdown from sysvinit actually does what it's supposed
82 to do, even with minit, if one uses the -n mode. It should be quite
83 easy to write a nice and clean shutdown for minit now.
84 if a service depends on a service that already finished, don't start
85 it again.
86
870.6.1:
88 fixed msvc and minit handling of msvc -P.
89 pidfilehack has now actually been tested and works with ssh.
90
910.6:
92 add tty and session leadership magic and I actually got getty to work
93 as init on my laptop, i.e. in production use!
94 add msvc man page.
95
960.5.1:
97 cut&paste error, set wrong variable to 0 for keyboard request.
98 Thanks, Schulti.
99
1000.5:
101 add "log" subdirectory (see README).
102 get rid of stdio and *printf and switch to routines from libowfat.
103
1040.4:
105 add pidfilehack. It will take the first argument as filename for the
106 PID file (i.e. /var/run/sshd.pid), the second argument as service name
107 for minit (i.e. ssh) and the rest of the command line is run without
108 path searching in a child process. The parent process will then
109 try to open the pidfile several times (for up to 30 seconds), read the
110 PID off it and run msvc to tell minit the PID of the service. minit
111 can then track sshd and restart it if necessary. This gross hack does
112 not work for daemons that do not write a PID file, but there are not
113 many of those, fortunately.