1 |
>From: Rufiao <rufiao@×××.net> |
2 |
>Reply-To: gentoo-dev@g.o |
3 |
>To: gentoo-dev@g.o |
4 |
>Subject: [gentoo-dev] RFP: System to account users configurations |
5 |
>Date: Sun, 16 Jun 2002 17:16:21 -0300 |
6 |
> |
7 |
> |
8 |
>As stated in bug #3778 (http://bugs.gentoo.org/show_bug.cgi?id=3778): |
9 |
> |
10 |
>1. Rationale |
11 |
> |
12 |
>This system is inspired by Debian's popularity-contest package |
13 |
>(http://packages.debian.org/stable/misc/popularity-contest.html) with some |
14 |
>important enhancements. The key idea is to provide means for the Gentoo |
15 |
>community to account the most used packages, hardware configurations, |
16 |
>kernel |
17 |
>versions, compile flags and profiles. Additionaly, this system aims to |
18 |
>provide the following advantages: |
19 |
> |
20 |
>- Allow the creation of CD layouts which include the most used packages for |
21 |
> each profile |
22 |
>- Allow the developers to investigate the most used configurations, and |
23 |
>focus |
24 |
> on them |
25 |
> for setting priorities, documentation, standard kernel configurations, |
26 |
>etc. |
27 |
>- Give some figures about the number of active users in the community |
28 |
> |
29 |
>2. Description |
30 |
> |
31 |
>The system comprises of 2 subsistems: |
32 |
> |
33 |
>- A client-side system that runs periodically through cron to grab |
34 |
>information |
35 |
> from users' configurations and post them to the server system trhough |
36 |
>HTTP. |
37 |
> This system does not require any user intervention beyond the initial |
38 |
> configuration. |
39 |
> |
40 |
>- A server-side system running on the gentoo.org domain capable of |
41 |
>receiving |
42 |
> the information provided by the users, store them on a database and |
43 |
>create |
44 |
> statistics with them. Also, it provides a web front-end to query the |
45 |
> database. |
46 |
> |
47 |
>The following information will be processed by the system: |
48 |
> |
49 |
>- Packages installed, including their versions (as in |
50 |
> `qpkg -nc -I -v` from the gentoolkit package) |
51 |
>- Flags in make.conf (as in |
52 |
> `egrep "^(USE|CHOST|CFLAGS|CXXFLAGS)" /etc/make.conf`) |
53 |
>- CPU info (as in `egrep "^(model name|cpu MHz)" /proc/cpuinfo`) |
54 |
>- System memory (as in `egrep "^MemTotal:" /proc/meminfo`) |
55 |
>- PCI devices (as in |
56 |
> `lspci | colrm 1 8 | sed 's/\(.*\)(.*/\1/'` from the pciutils package) |
57 |
>- USB devices (as in `lsusb | grep iProduct | colrm 1 28` from the |
58 |
> usbutils packages) |
59 |
>- Kernel version (as in `uname -r`) |
60 |
>- Profile being used (as in |
61 |
> `ls -ld /etc/make.profile | awk '{print $NF}' | awk -F/ '{print $NF}'`) |
62 |
> |
63 |
>In the client side, the procedure to provide data for the system is the |
64 |
>following: |
65 |
> |
66 |
>- User emerge the package, which: |
67 |
> - Sets a crontab entry to let the system run periodically, possibly |
68 |
> requiring user intervention to specify when the system should run |
69 |
> - Points to an URL (in the gentoo.org domain) for signup |
70 |
>- User go to the provided url, which requests the e-mail from the user, and |
71 |
> that the user transcribe a random 4-letters message shown as an image to |
72 |
> a text box. These requirements are used to ensure, as long as possible, |
73 |
> the autenticity of the data and to avoid automated signups |
74 |
|
75 |
Users are required to 1) want to participate to this survey 2) asked when |
76 |
system should run information grab 3) go to URL to subscribe to service 4) |
77 |
get magic key from server 5) set up client system 6) check it runs well. |
78 |
|
79 |
We don't have many users and setup is very complicated to my taste for |
80 |
somethng that brings nothing to me as a gentoo user. And we want people to |
81 |
sue this. the more, the better. |
82 |
I don't know about this, but as a gentoo user, if a system like this were |
83 |
available I would not bother installing it. It is way too lenghty and I get |
84 |
nothing out of it as an individual. |
85 |
|
86 |
I propose making this whole process a lot simpler for the client. What we |
87 |
must keep in mind is that no system is perfect, and to not fall into |
88 |
paranoia. I therefore propose shortening the setup of this survey system to |
89 |
something smaller. |
90 |
|
91 |
1) user required to emerge package. |
92 |
2) they are asked when the collect should run |
93 |
|
94 |
and that's it |
95 |
|
96 |
now how to keep people from abusing of this system is a whole new question |
97 |
and I think we should treat it separately. However I'd like to propose |
98 |
something as well. |
99 |
|
100 |
it's the server's duty to protect itself from idiots. When client connects |
101 |
to server to upload it's information file, the server sends the client a |
102 |
unique key that expires after 1 week or couple days.. depends on how often |
103 |
we want input. If client tries to send input again it could remove the key |
104 |
file of course and claim it's new to the service, that's why the submitter's |
105 |
IP address needs to be recorded for first-time users as well. |
106 |
|
107 |
Of course system is not perfect... the idiot could change his IP address of |
108 |
course no problemo ... he could disconnect/reconnectto his ISP or something |
109 |
similar but that would be rael stupid. I don't think that many people would |
110 |
actually attempt that. |
111 |
|
112 |
I think that the person who would attempt this, if it's ever going to |
113 |
happen, it's because our user base has grown very, very large and his impact |
114 |
would be minimal to our system. |
115 |
|
116 |
|
117 |
This is just an idea.. i'm sure there are better... |
118 |
|
119 |
|
120 |
|
121 |
>- The server-side system will e-mail the user with a key, which must be |
122 |
> placed in the config file |
123 |
>- To post the information to the server-side system, the client-side system |
124 |
> can use the proxy settings defined on /etc/make.conf |
125 |
>- In the first set of data the server-side system receives, it will e-mail |
126 |
> a message to the user to let him know the system is running fine |
127 |
> |
128 |
>Note that it is not guaranteed the system will have internet connectivity |
129 |
>when it gets run. In this case, it may keep periodically checking in the |
130 |
>background for a route to the server. |
131 |
> |
132 |
>The following vars can be set on the config file: |
133 |
> |
134 |
>- Key: as discussed above |
135 |
>- Acknowlege flag: send an e-mail to the user every time a set of data from |
136 |
> him is processed (defaults to false) |
137 |
>_______________________________________________ |
138 |
>gentoo-dev mailing list |
139 |
>gentoo-dev@g.o |
140 |
>http://lists.gentoo.org/mailman/listinfo/gentoo-dev |
141 |
|
142 |
|
143 |
|
144 |
|
145 |
_________________________________________________________________ |
146 |
MSN Photos is the easiest way to share and print your photos: |
147 |
http://photos.msn.com/support/worldwide.aspx |