* [gentoo-dev] gentoo popularity contest system
@ 2002-06-17 15:36 Faust Tanasescu
0 siblings, 0 replies; only message in thread
From: Faust Tanasescu @ 2002-06-17 15:36 UTC (permalink / raw
To: gentoo-dev; +Cc: george
Gentoo's popularity contest package
-----------------------------------
by davoid and rufiao
ABSTRACT:
The purpose of this system is to guide the developers of gentoo as to what
they
should be concentrating on based on what gentoo's users have installed on
their
system for example.
The setup is a client-server system. The server should be stored on
gentoo.org
It's mainly php and CGI scripts with access to a database.
The client is composed of a first-time setup utility and a deamon whose job
is
to collect data on the system it runs on and to upload this package for
analyze
to the gentoo.org webserver.
The server is composed of a php page that checks if the user can upload to
it
(so to as limit abuse), and some back-end that would analyze the transferred
data and merge it into the table if it is correct.
I. Server-side setup
1. New user authentication
2. Normal package information upload
II. Client-side setup
1. Contents of tarball
2. first-time configuration of deamon
I. 1. New user authentication
==============================
o php server accepts new user's e-mail address in URL form. Server then
records
into newUsersPendingTable user's IP address, request time and any other
relevant
information such as browser maybe. The mysql fields filled in by the php
server
should be filly configurable on the server side using forms.
o server sends an email to user with a initial session ID generated using
/dev/urandom maybe, or whatever medium php is given. it also saves a record
with
email/cookie pair in mysql table.
(user is required to copy-paste the 128-bit cookie from server that he
received
at the e-mail address he specified upon initial connection and to put it
into a
configuration file that deamon will read.)
Note here that user is not required to answer to any e-mail. He just has
to
set up his system. This could be as well implemented in the client's user
interface as a box that will hold the initial magic cookie, removing the
need of
editing an external file.
o when client comes online for the first transaction, it provides initial
cookie
and e-mail associated with that cookie. Server detects it is the first time
his
client would upload his information
o client uploads file to client using POST method. server gives client new
session ID as soon as transfer is done. server merges information about
packages
used, version, system into infoTable adds lastMerged in user's record.
I. 2. Normal package information upload
=======================================
o client connects to server, gives in email address and cookie, starts
transfer.
o server gives client new session ID by some means (either redirecting user
to a
new page for which in the URL there is the magic cookie that client has to
parse), records lastMerged, starts merging package into infoTable using some
CGI
script ...
Problem: what if client deleted its cookie and wants to upload? cookie
invalid?
Answer: We could deny access to the database for the user in the future.
Problem2: where and how do clients upload their home-made tarball
Answer: Clients use the POST method to upload files
Problem3: how do we check if the tarball hasn't been modified by the user
with
bogus information, badly formed data that hog up tables?
Answer: the php script should be smart enough to detect this. If script
becomes
too heavy, there's also CGI and a good perl script.
Problem4: table size limited in mysql.
Answer: merging into a better database such as postgresql should be
condidered.
II. Client-side setup
======================
II.1. Contents of the tarball uploaded by client deamon to server
===============================================================
In the final version, the user who wants to can control what information is
colected from his system.
- architecture
- ram
- installed packages
- connection to net
etc (whatever that the gentoo developers would need to know about their
users)
_________________________________________________________________
Send and receive Hotmail on your mobile device: http://mobile.msn.com
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2002-06-17 15:37 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-06-17 15:36 [gentoo-dev] gentoo popularity contest system Faust Tanasescu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox