summaryrefslogtreecommitdiff
path: root/community/weblogs/ArneBab/tasks-for-the-hurd.mdwn
blob: 1f92911694b484024c20bda347474163f3a388f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Tasks for the Hurd
==================

*These tasks are compiled from the
 [[community/weblogs/ArneBab/niches_of_the_hurd]] and
 [[community/weblogs/ArneBab/what_we_need]]. The first asked “where
 can the Hurd find niches where it is the biggest fish in the pond,
 and how?” while the second asked “what do we still need to make the
 Hurd usable for most of its developers as system for their day-to-day
 tasks?”.*

*This might be useful for the next GSoC. Please feel free to edit
 and/or migrate it mercilessly :)*

### Easy

- Port debian packages to the Hurd -> currently mainly tinkerers, but
  also any other niche. In the long run this is necessary for every
  user. Easy start for devs.
- Document easier access to low-level functions via translators, one
  function at a time. -> tinkerers.
- get nsmux ready for regular users by setting it up in the LiveCDs by
  default. -> show tinkerers what it can do.
- Test on modern machines. If it doesn’t work, file a bug:
  [info](http://www.mail-archive.com/bug-hurd@gnu.org/msg19105.html).


### Complex

- A filesystem-based package manager: Unionmounting packages. With
  filterfs from nsmux packages any user should be able to selectively
  disable any package without affecting the system of others. Simple
  active translators can add packages. -> clean design and more
  freedom for tinkerers to quickly setup test environments: “Does this
  also work with XY disabled?” ⇒ rapid testing for different base
  systems.
- Enable subhurds for regular users via a subdo command: A framework
  for confining individual applications. -> tinkerers for testing
  their work.
- Define your personal environment via translators, so you can easily
  take it with you ⇒ system on a USB stick. Would work great with a
  filesystem based package manager -> use the capabilities of a system
  and all its installed packages without having to give up your own
  custom environment.

- Implement USB support, maybe using DDE or DDEkit -> prerequisite to system on USB.
- Add Wireless support, maybe via DDE. 
- Add sound support via a sound translator. 
- Stabilize Xorg, so it can run fast for days. 
- Add PPPoE capablilities. 
- Debug NFS for climm, w3m and git. 
- Port a full-featured browser (i.e. Firefox).
- (Graphical Desktop and switching between console and X) or full
  featured high-resultion console which doesn’t need X (and emacs :)
  ).

### Huge

- Get Hurd/GNU Mach ready for efficient multicore usage. -> multicore
- Running parts of the Hurd on different computers, maybe even with
  shared servers on dedicated hardware (Cloud Computing when the servers
  can migrate between computers). -> multicore on steroids :)