Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: qa@g.o
Subject: [gentoo-dev] QA bikeshed: killing USE=dedicated in favor of uniform USE=client+server
Date: Thu, 20 Aug 2015 17:43:13
Message-Id: 20150820194244.622b8f86.mgorny@gentoo.org
1 Hi,
2
3 Right now, a number of game packages are using USE=dedicated to control
4 'installing a dedicated game server only'. Aside to that, some game
5 packages also have USE=server that controls building the server itself.
6 Non-game package use USE=client and USE=server.
7
8 In order to improve uniformity of USE flags across different packages,
9 the QA team would like to deprecate USE=dedicated and use USE=client
10 and USE=server as appropriate.
11
12 The problems I see with USE=dedicated are:
13
14 - it is game-specific. The term 'dedicated server' is not used amongst
15 other server/client model packages.
16
17 - It uses negative logic. Instead of enabling something, it disables
18 client. Pretty much 'dedicated' == 'noclient'. Negative logic is
19 confusing.
20
21 - In packages having USE=server as well, it can lead to really absurd
22 combinations, like what does 'USE=dedicated -server' mean? Will it
23 build no executables at all? If we add REQUIRED_USE='dedicated?
24 ( server )', this gets quite unfriendly.
25
26 As an alternative, we would use USE=client and USE=server along with
27 proper IUSE defaults to control client & server builds appropriately.
28 Both flags use positive logic, and REQUIRED_USE='|| ( client server )'
29 is rather clear.
30
31 Does anyone see any real problems with that?
32
33 --
34 Best regards,
35 Michał Górny
36 <http://dev.gentoo.org/~mgorny/>

Replies