summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--user/scolobb.mdwn89
1 files changed, 49 insertions, 40 deletions
diff --git a/user/scolobb.mdwn b/user/scolobb.mdwn
index e7c1adf0..f238093b 100644
--- a/user/scolobb.mdwn
+++ b/user/scolobb.mdwn
@@ -29,32 +29,34 @@ For documentation, see [[hurd/translator/unionmount]].
### DONE
-* **Make `unionfs` build.** For reasons unknown to me, `unionfs`
- Makefile was configured to search for include files from under
- `$(prefix)/include`, while `$(prefix)` was never defined. Setting
- `$(prefix)` to `/usr` solved the problem.
+(Dates in brackets show the completion date)
+
+* **Make `unionfs` build.** *(24 May)* For reasons unknown to me,
+ `unionfs` Makefile was configured to search for include files from
+ under `$(prefix)/include`, while `$(prefix)` was never
+ defined. Setting `$(prefix)` to `/usr` solved the problem.
* **Change the command line parsing in `unionfs` to comply with the
- requirements of `unionmount`.** Although the core functionality of
- `unionmount` heavily relies on `unionfs`, the command line interface
- of these two programs is completely different: `unionfs` operates on
- directories, the list of which is explicitly specified, while
- `unionmount` *always* merges the underlying filesystem and the
- filesystem published by the mountee. Therefore, options like
- `--add`, `--remove`, `--underlying` (specific to `unionfs`) make
- little sense in `unionmount` context. These options have been
- removed. Also, `unionmount` must be able to pass some switches to
- the mountee, which means that it should stop parsing the command
- line arguments immediately after having encountered the path to the
- mountee (very similar to how `settrans` works). This functionality
- has also been implemented.
-
-* **Make `unionmount` capable of starting the mountee.** The idea
- behind implementation of this goal is that `unionmount` should
- provide a proxy node on which to set the mountee. The main issue
- about this goal was the fact that the mountee *cannot* be started
- during the initialization of `unionmount`, because in this phase
- `unionmount` is not capable of responding to RPCs, while many
+ requirements of `unionmount`.** *(25 May)* Although the core
+ functionality of `unionmount` heavily relies on `unionfs`, the
+ command line interface of these two programs is completely
+ different: `unionfs` operates on directories, the list of which is
+ explicitly specified, while `unionmount` *always* merges the
+ underlying filesystem and the filesystem published by the
+ mountee. Therefore, options like `--add`, `--remove`, `--underlying`
+ (specific to `unionfs`) make little sense in `unionmount`
+ context. These options have been removed. Also, `unionmount` must be
+ able to pass some switches to the mountee, which means that it
+ should stop parsing the command line arguments immediately after
+ having encountered the path to the mountee (very similar to how
+ `settrans` works). This functionality has also been implemented.
+
+* **Make `unionmount` capable of starting the mountee.** *(28 May)*
+ The idea behind implementation of this goal is that `unionmount`
+ should provide a proxy node on which to set the mountee. The main
+ issue about this goal was the fact that the mountee *cannot* be
+ started during the initialization of `unionmount`, because in this
+ phase `unionmount` is not capable of responding to RPCs, while many
translators try to `io_stat` their underlying node or do other
interesting things on startup. The solution to this problem is,
obviously, *lazy* startup, i.e. the mountee is started at the first
@@ -62,26 +64,33 @@ For documentation, see [[hurd/translator/unionmount]].
filesystem published by `unionmount`.
* **Include the filesystem published by the mountee in the list of
- merged filesystems.** `unionfs` operates on a list of ports to the
- underlying filesystems, therefore, to finish the unionmount
- functionality, I had to include the port to the mountee in this
- list.
-
-* **Learn Texinfo.** In order to produce canonical documentation I had
- to learn the Texinfo documentation format.
-
-* **Write documentation for `unionmount`.** The basic unionmount
- functionality being finished, it has to be documented properly, lest
- it should lag behind and remain unfinished eventually.
-
-* **Write documentation for `unionfs`.** `unionfs` is not exactly
- well-documented at the moment, the only help being provided by the
- comments in the sources. The goal is to write a more coherent
+ merged filesystems.** *(1 Jun)* `unionfs` operates on a list of
+ ports to the underlying filesystems, therefore, to finish the
+ unionmount functionality, I had to include the port to the mountee
+ in this list.
+
+* **Learn Texinfo.** *(Jun 4)* In order to produce canonical
+ documentation I had to learn the Texinfo documentation format.
+
+* **Write documentation for `unionmount`.** *(Jun 5)* The basic
+ unionmount functionality being finished, it has to be documented
+ properly, lest it should lag behind and remain unfinished
+ eventually.
+
+* **Write documentation for `unionfs`.** *(Jun 5)* `unionfs` is not
+ exactly well-documented at the moment, the only help being provided
+ by the comments in the sources. The goal is to write a more coherent
documentation.
### TODO
-(Dates in brackets show the approximate deadline)
+(Dates in brackets show the *expected* completion date)
+
+* **Start with a clean unionfs and implement the `--mount` argument**
+ *(12 Jun)* It was suggested to implement the union mount
+ functionality first, instead of doing some partial adaptation of
+ `unionfs` to `unionmount` and leaving the complete adaptation for
+ the future.
* **Implement merging rules.** *(25 Jul)* Some details are still
awaiting discovery by me.