Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] A few mgorny/ projects for upstream-grabs
Date: Mon, 15 Jun 2015 17:55:21
Message-Id: 20150615195459.2764a80b@pomiot
1 Hi, everyone.
2
3 My time for Gentoo is quite limited right now (you gotta start working
4 for money at some point :)), and the little time I have I'm trying to
5 use for the Gentoo work I consider most important. This sadly means
6 that many of my past tools are earning their share of bitrot and would
7 really use a new contributors, or possibly even full-time upstream
8 maintainers :).
9
10 Here's a long list of projects along with short description, their state
11 and planned TODO items that I won't have time to implement anytime soon.
12
13
14 app-admin/eclean-kernel
15
16 The tool to clean up old kernels. A bit controversial in the end
17 because /boot is a mess.
18
19 status: works with some /boot layouts, fails hard on some, has some
20 known bugs/requests
21
22 TODO:
23 - figure out how it sanely could work,
24 - support /boot shared between multiple systems,
25 - support BootloaderSpec (maybe),
26 - clean up the code, possibly rewrite in something saner than Python
27 (C++?).
28
29
30 app-cdr/mirage2iso
31
32 Quite an old tool to convert various image formats to .iso using
33 libMirage.
34
35 status: working, no known bugs, may use a little cleanup
36
37 TODO:
38 - support selecting track to read (right now it reads first supported
39 one),
40 - support extracting multiple tracks (sessions) -- options to pass
41 track list and output filename pattern,
42 - support converting to .bin + .toc/.cue,
43 - support for more track types (right now, Mode 1 & Mode 2 form 1 are
44 supported),
45 - support for audio tracks (how? external converter? a library?).
46
47
48 app-portage/cpuinfo2cpuflags
49
50 The tool to get CPU_FLAGS_X86 for your system :). Not really
51 abandoned but I have some TODO items I won't be able to do soon.
52
53 status: working, no known bugs
54
55 TODO:
56 - replace /proc/cpuinfo parsing with CPUID assembly/intrinsics --
57 support more kernels than just Linux,
58 - possibly extend to non-x86 arches.
59
60
61 app-portage/diffmask
62
63 A tool to maintain package group unmasks in sync, and clean up stale
64 unmasks. Quite specific since it requires unmasks to be copied
65 exactly from mask file.
66
67 status: quite working, not exactly proud of the design
68
69 No real TODO items but it would be nice to think a bit about
70 the design and figure out if we couldn't do something more user-
71 friendly (i.e. not being that strictly bound to package.mask).
72
73
74 app-portage/flaggie
75
76 The package.use (& make.conf) flag management tool. Pretty high
77 priority.
78
79 status: rather working, has a few bugs, certainly would use some new
80 Portage features
81
82 TODO:
83 - remove make.conf editing support (it's very complex and broken --
84 can eat random '$' from the file in some cases),
85 - therefore: edit global flags via '*/*' entries in package.use,
86 - support writing 'FOO_BAR:' format for USE_EXPAND in package.use,
87 - support parsing 'FOO_BAR:' format for USE_EXPAND on command-line
88 (i.e. 'flaggie libfoo VIDEO_CARDS: +radeon -nvidia'),
89 - remove implicit '*' expansion in package names and flag names --
90 package.use can handle '*', so leave it as is and just expand it
91 when checking if the flags are supported,
92 - possibly clean up package.use writer (or rewrite it since I'm
93 no longer able to figure out how it works exactly :)).
94
95
96 app-portage/gentoopm
97
98 A wrapper providing nice API to all three Package Managers. Used by
99 gpyutils, smart-live-rebuild...
100
101 status: stuck in EAPI 4 era, might have some hidden bugs
102
103 TODO:
104 - add APIs for EAPI 5 -- but this requires Package Manager APIs first,
105 - maybe some cleanup.
106
107
108 app-portage/install-mask
109
110 A tool to update INSTALL_MASK in make.conf using well-known file
111 groups. Uses make.conf manipulation code from flaggie.
112
113 status: working, make.conf manipulation broken as in flaggie
114
115 TODO:
116 - the tool should be killed, and INSTALL_MASK group support should be
117 moved into Portage :). Alike:
118
119 INSTALL_MASK="@systemd @locale -@locale_pl"
120
121 with matches being applied sequentially, and groups being defined
122 in $repo/metadata/install-mask.conf [and masters].
123
124
125 app-portage/pms-test-suite
126
127 A GSoC project and as such, totally abandoned. Not sure if anybody
128 really cares these days.
129
130 status: stuck in EAPI 4 era, waiting for EAPI 5 in gentoopm...
131
132 TODO:
133 - support EAPI 5,
134 - find some use for it?
135
136
137 dev-util/atomic-install
138
139 A nice one -- tool to quasi-atomically install files from $D to live
140 system. The idea is to replace live files as fast as possible,
141 and quickly revert that if it fails in the middle. Never finished but
142 nevertheless a good idea :). If someone's up for it, I'd love to see
143 it working one day.
144
145 status: never reached 'fully working' state
146
147 How it was supposed to work (and mostly works):
148 - writes 'journal' synchronously with file lists and current status,
149 - copies (CoWs, hardlinks) files from $D to live system renaming them
150 to .${filename}.NEW.${random-id-from-journal},
151 - copies (CoWs, hardlinks) existing files in live system to backups
152 as .${filename}.OLD.${random-id-from-journal},
153 - does a quick rename() run to replace files in live system to .NEW
154 variants,
155 - if all goes fine, removes .OLD files and the journal,
156 - if it fails, does a quick rename() run to replace files in live
157 system back with .OLD variants and cleans up copies afterwards,
158 - possibly: use some fancy btrfs features :).
159
160
161 sys-apps/uam
162
163 The udev-based automounter. Used by a lot of people who don't like
164 udisks, and also on some non-Gentoo distros.
165
166 status: working, one known bug :)
167
168 No real TODO items. I simply don't use it anymore, so I can't handle
169 bugs properly :).
170
171
172 www-servers/pshs
173
174 A simple HTTP(s) server using libevent to share files passed
175 on command-line. This one I'll probably keep maintaining, yet there
176 are some features I'd love to see patches for :).
177
178 status: working, there's some problem with UPnP on my system
179
180 TODO:
181 - figure out why it longer figures out the external IP via UPnP
182 (maybe libminiupnpc API change),
183 - support HTTP authentication,
184 - support uploading files (via upload form),
185 - support recursive directory sharing,
186 - awesome, pretty ncurses output with progressbars on active
187 downloads using background color (like aptitude),
188 - think of more fun features to support!
189
190
191 x11-libs/libtinynotify*
192 x11-misc/sw-notify-send
193 x11-misc/tinynotify-send
194
195 A 'more lightweight' library to send notification-daemon
196 notifications. Its cool feature is support for pseudo-systemwide
197 notifications -- if you give it root privileges, it's going to look
198 hard for active D-Bus sessions and try to send notifications to all
199 of them!
200
201 status: works, didn't see a change in a long time
202
203 TODO:
204 - figure out if there's anything to do :),
205 - maybe improve the systemwide API -- right now it's rather dumb.
206
207 --
208 Best regards,
209 Michał Górny

Replies

Subject Author
Re: [gentoo-dev] A few mgorny/ projects for upstream-grabs Patrice Clement <monsieurp@g.o>
Re: [gentoo-dev] A few mgorny/ projects for upstream-grabs Jauhien Piatlicki <jauhien@g.o>
Re: [gentoo-dev] A few mgorny/ projects for upstream-grabs Peter Stuge <peter@×××××.se>