You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

146 lines
6.0 KiB

  1. Popularity-contest Frequently Asked Questions.
  2. Q) What information is reported by popularity-contest ?
  3. A) popularity-contest reports the system vendor [1], the system architecture
  4. you use, the version of popularity-contest you use and the list of packages
  5. installed on your system. For each package, popularity-contest looks at the
  6. most recently used (based on atime) files, and reports the filename, its
  7. last access time (atime) and last change time (ctime). However, some files
  8. are not considered, because they have unreliable atime. For privacy reasons,
  9. the times are truncated to multiple of twelve hours.
  10. [1] i.e. the dpkg Vendor field, see dpkg-vendor(1).
  11. Q) What is considered a 'vote' for a package ?
  12. A) A computer 'vote's for a package if according to the data provided in the
  13. report, a program provided or depending on the package was used less than
  14. thirty days ago. This computation is performed by the popcon server.
  15. Q) Can submissions be eavesdropped ?
  16. A) Yes, however if the package gnupg is installed and ENCRYPT is set to 'maybe'
  17. or 'yes' in /etc/popularity-contest.conf, the reports are encrypted using
  18. public key cryptography, so the eavesdropper should not be able to decrypt
  19. them. The default is 'maybe' with popularity-contest 1.60.
  20. Encrypting popcon submissions still reveals that a particular host
  21. is running Debian or a derivative; and the administrators of the
  22. popcon server can associate submissions with a source IP address.
  23. To prevent this, if USETOR is set to 'maybe' or 'yes', and if the
  24. 'tor' and 'torsocks' packages are installed, the submission will be
  25. made over Tor. The default is 'maybe' with popularity-contest
  26. 1.65, so Tor will be used if available.
  27. Q) What are the privacy considerations for popularity-contest ?
  28. A) Each popularity-contest host is identified by a random 128bit uuid
  29. (MY_HOSTID in /etc/popularity-contest.conf). This uuid is used to
  30. track submissions issued by the same host. It should be kept secret.
  31. The reports are sent by email or HTTP to the popcon server. The
  32. server automatically extracts the report from the email or HTTP and
  33. stores it in a database for a maximum of 20 days or until the host
  34. sends a new report. This database is readable only by Debian
  35. Developers. The emails are readable only by the server admins.
  36. Every day, the server computes a summary and posts it on
  37. <https://popcon.debian.org/all-popcon-results.txt.gz>. This summary
  38. is a merge of all the submissions and does not include uuids.
  39. Known weaknesses of the system:
  40. 1) Someone who knows that you are very likely to use a particular package
  41. reported by only one person (e.g. you are the maintainer) might infer you
  42. are not at home when the package is not reported anymore. However this is
  43. only a problem if you are gone for more than two weeks if the computer is
  44. shut-down and 23 days if it is let idle.
  45. 2) Unofficial and local packages are reported. This can be an issue
  46. due to 2) above, especially for custom-built kernel packages.
  47. We are evaluating how far we can alleviate this problem.
  48. Q) /usr is mounted with 'noatime'.
  49. A) popularity-contest relies on atime to know what packages were used during
  50. the last month. This means you will only report the list of packages
  51. installed without usage information.
  52. Q) When does popularity-contest run ?
  53. A) popularity-contest is run by the daily cron job
  54. "/etc/cron.d/popularity-contest", but only one day in the week,
  55. which is specified in the configuration file. The exact time is chosen randomly
  56. to spread the load on the server.
  57. If your computer is not always turned on, we really recommend you install the
  58. anacron package.
  59. If /etc/cron.daily/popularity-contest has not run for more than a week, it will
  60. accept to run any day.
  61. Q) I don't want popcon email to be sent by root! How can I change that ?
  62. A) To send as user 'myuser', edit the function 'do_sendmail' in
  63. /etc/cron.daily/popularity-contest to
  64. do_sendmail()
  65. {
  66. su myuser -s /bin/sh -c "/usr/sbin/sendmail -oi \"$MAILTO\""
  67. }
  68. Q) How can I pass extra options to sendmail ?
  69. A) Add a line in /etc/popularity-contest.conf as follow
  70. MTAOPS="-opt1 -opt2 -opt3"
  71. Q) How can I prevent popularity-contest from sending reports via email?
  72. A) This is not recommended. Reports are sent by email only when the HTTP
  73. submission fails, which is generally caused by a temporary lack of internet
  74. connectivity. By contrast, reports sent by email are stored in the mail server
  75. queue until the internet connectivity is back.
  76. Nevertheless, you can prevent popularity-contest from sending reports via email
  77. by adding
  78. MAILTO=
  79. to /etc/popularity-contest.conf
  80. Q) How can I specify a HTTP proxy server for the HTTP submission ?
  81. Popularity-contest honors the environment variable http_proxy that you can
  82. set in /etc/environment. Alternatively you can specify a proxy server
  83. specifically for popularity-contest by adding a line
  84. HTTP_PROXY="http://<proxy hostname>:<port>"
  85. to /etc/popularity-contest.conf.
  86. Q) How can I convert the timestamps in the popcon report to human-readable
  87. dates ?
  88. A) The timestamps are just the number of seconds since the epoch, namely
  89. 1970-01-01 00:00:00 UTC. You can convert e.g. 1139229934 to a human-readable
  90. date with
  91. date -d '@1139229934'
  92. ====== FAQ For derivative distribution ======
  93. Q) How can I set up popularity-contest to report to my own server
  94. in addition to Debian ?
  95. A) You need to provide a keyring file with the public key used by your server,
  96. then you can add a file matching /etc/popularity-contest.d/*.conf with
  97. KEYRING="$KEYRING --keyring /path/to/your/keyring"
  98. POPCONKEY="$POPCONKEY -r YOURKEYID"
  99. SUBMITURLS="$SUBMITURLS http://myserver/popcon.cgi"
  100. MAILTO="$MAILTO, survey@myserver" # Optional
  101. Q) And if I do not want to report to Debian, but I do not want to change
  102. /etc/popularity-contest.conf ?
  103. A) Add a file matching /etc/popularity-contest.d/00*.conf with
  104. KEYRING="/path/to/your/keyring"
  105. POPCONKEY="YOURKEYID"
  106. SUBMITURLS="http://myserver/popcon.cgi"
  107. MAILTO="survey@myserver" # or MAILTO=""