about summary refs log tree commit diff
path: root/todo.html
blob: e31b4412d40bc4a095f824d151c4df85a00d5e6c (plain) (blame)
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<!doctype html>
<!-- SPDX-FileCopyrightText: 2019-2021 Alyssa Ross <hi@alyssa.is> -->
<!-- SPDX-License-Identifier: CC-BY-SA-4.0 OR GFDL-1.3-or-later -->
<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
<html lang="en">

<head>

<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">

<link rel="icon" href="logo/logo_html.svg">
<link rel="stylesheet" href="style.css">

<title>Spectrum contribution ideas</title>

<body>

<nav>
  <a href=".">Spectrum</a>
</nav>

<h1>Contribution ideas</h1>

<p>
Spectrum is currently under heavy development.  This means there are a
lot of opportunities for contribution, but it can be difficult to
figure out where to start, especially since there's not a complete
system available to experiment with yet.

<p>
Here are some ideas for contributions, roughly ordered by priority.
If working on any of these appeals to you, even if you don't
understand all the parts involved, we'd be happy to provide mentorship
and support.  Just reach out
on <a href="participating.html#irc">IRC</a> or email
<a href="mailto:devel@spectrum-os.org">devel@spectrum-os.org</a>.

<p>
This list is nowhere near exhaustive.  If there's anything else you're
interested in working on, or just nothing on this list appeals to you
or fits your skillset, get in touch, and we can advise you on how you
might be able to help out.

<ol>
  <li>
  <p>Make the
  Spectrum <a href="https://spectrum-os.org/git/rootfs/">root
  filesystem</a>
  use <a href="https://skarnet.org/software/s6-linux-init/">s6-linux-init</a>
  instead of a
  custom <a href="https://skarnet.org/software/execline/">execline</a>
  <a href="https://skarnet.org/software/s6/s6-svscan-1.html#stage1">stage1</a>.
  The custom stage1 has known timing issues.  s6-linux-init should be
  much more robust.

  <li>
  <p><a href="https://github.com/NixOS/nixpkgs/issues/140851">nixpkgs
  #140851</a>: ZFS kernel modules have ballooned in size.  This is
  blocking updating the server hosting the Spectrum website, mailing
  lists, etc.

  <li>
  <p><a href="https://github.com/NixOS/nixpkgs/issues/134948">nixpkgs
  #134984</a>: cryptsetup cannot be built statically.  This would let
  us massively reduce the size of Spectrum's initramfs.  For Spectrum,
  we only need the <code>veritysetup</code> program from that package
  at the moment, so it's okay for us if other features have to be
  disabled to make static linking work.
</ol>
  
<p>
<small>Permission is granted to copy, distribute and/or modify this
document under either the terms of the
<a href="https://creativecommons.org/licenses/by-sa/4.0/">Creative
Commons Attribution-ShareAlike 4.0 International License</a>, or the
<a href="https://www.gnu.org/licenses/fdl-1.3.html">GNU Free
Documentation License, Version 1.3</a> or any later version published
by the Free Software Foundation; with no Invariant Sections, no
Front-Cover Texts, and no Back-Cover Texts.</small>