Skip to content

Commit 3fd8a73

Browse files
committed
[RFC 0178] Remove broken and unmaintained leaf packages
1 parent 62d1245 commit 3fd8a73

1 file changed

Lines changed: 70 additions & 0 deletions

File tree

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
---
2+
feature: broken-package-removal
3+
start-date: 2024-07-14
4+
author: Jörg "Mic92" Thalheim
5+
co-authors:
6+
shepherd-team:
7+
shepherd-leader:
8+
related-issues:
9+
---
10+
11+
# Summary
12+
[summary]: #summary
13+
14+
This RFCs defines under what conditions we remove broken and unmaintained leaf packages.
15+
The RFC does not have the ambition to define all reasons to remove a package but
16+
instead focuses on simple rules that can be automated.
17+
18+
# Motivation
19+
[motivation]: #motivation
20+
21+
Broken and unmaintained packages still cost us valuable time.
22+
Broken packages still have to be evaluated to some extend
23+
and unmaintained packages might still have to rebuild when one of their dependencies changes.
24+
Because it is easy to add packages, it should be also easy to remove them, ideally automated
25+
26+
# Detailed design
27+
[design]: #detailed-design
28+
29+
## Broken Packages
30+
31+
Packages that are marked as broken on all platforms should be removed after one full NixOS release cycle.
32+
If the package had dependencies, those dependencies are also marked as indirectly broken.
33+
If they are not functional without the broken package, they should be removed as well.
34+
35+
## Unmaintained packages
36+
37+
Packages with an empty maintainer field that does not have packages depending on it, should
38+
be removed after 2 months. Ideally we have an automation or semi-automation that creates pull requests for that.
39+
40+
# Examples and Interactions
41+
[examples-and-interactions]: #examples-and-interactions
42+
43+
-
44+
45+
# Drawbacks
46+
[drawbacks]: #drawbacks
47+
48+
Some maintained packages might still have users that won't be able to use the package,
49+
but the hope is that the removal of unmaintained package will lead to these people
50+
stepping up as a maintainer. Recovering from the git history should be easy in that case.
51+
52+
# Alternatives
53+
[alternatives]: #alternatives
54+
55+
Keep all packages.
56+
57+
# Prior art
58+
[prior-art]: #prior-art
59+
60+
?
61+
62+
# Unresolved questions
63+
[unresolved]: #unresolved-questions
64+
65+
?
66+
67+
# Future work
68+
[future]: #future-work
69+
70+
?

0 commit comments

Comments
 (0)