summaryrefslogtreecommitdiff
path: root/vietnam/talk/blends/index.html
blob: db7225e74495c56a545a64a265d119727901f58e (plain)
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  5. <head>
  6. <title>Debian Pure Blends</title>
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  8. <meta name="generator" content="pandoc" />
  9. <meta name="author" content="Jonas Smedegaard (&amp; Andreas Tille)" />
  10. <meta name="date" content="Hồ Chí Minh, Việt Nam, November 12th, 2010" />
  11. <link rel="stylesheet" type="text/css" media="screen, projection, print"
  12. href="../slidy.min.css" />
  13. <script src="../slidy.min.js"
  14. charset="utf-8" type="text/javascript"></script>
  15. </head>
  16. <body>
  17. <div class="slide cover title">
  18. <h1 class="title">Debian Pure Blends</h1>
  19. <p class="author">
  20. Jonas Smedegaard (&amp; Andreas Tille)
  21. </p>
  22. <p class="date">Hồ Chí Minh, Việt Nam, November 12th, 2010</p>
  23. </div>
  24. <div class="slide">
  25. <h1
  26. >Overview</h1
  27. ><ul
  28. ><li
  29. >Debian is generic - Blends are specific</li
  30. ><li
  31. >Purity: all is Debian</li
  32. ><li
  33. >Why bother?</li
  34. ><li
  35. >Technical details</li
  36. ><li
  37. >Team, community, users</li
  38. ><li
  39. >Future</li
  40. ></ul
  41. ></div>
  42. <div class="slide">
  43. <h1
  44. >Debian - the universal Operating System</h1
  45. ><ul
  46. ><li
  47. >Stable</li
  48. ><li
  49. >Flexible</li
  50. ></ul
  51. ><p
  52. >Debian is the universal Operating System.</p
  53. ><dl
  54. ><dt
  55. >Goal</dt
  56. ><dd
  57. >Usable everywhere</dd
  58. ></dl
  59. ></div>
  60. <div class="slide">
  61. <h1
  62. >Debian - very flexible...</h1
  63. ><ul class="incremental"
  64. ><li
  65. >Flexible: good</li
  66. ><li
  67. >Very flexible: very good</li
  68. ></ul
  69. ></div>
  70. <div class="slide">
  71. <h1
  72. >Debian - <strong
  73. >too</strong
  74. > flexible!</h1
  75. ><ul
  76. ><li
  77. >Flexible: good</li
  78. ><li
  79. ><span style="text-decoration: line-through;"
  80. >Very flexible: very good</span
  81. ></li
  82. ><li
  83. >Very flexible: very confusing!</li
  84. ></ul
  85. ><p
  86. >Debian is too flexible: confusing and to some even scary!</p
  87. ></div>
  88. <div class="slide">
  89. <h1
  90. >Debian - ways to simplify</h1
  91. ><ol style="list-style-type: decimal;"
  92. ><li
  93. >Keep things as-is - educate users instead</li
  94. ><li
  95. >Remove choice</li
  96. ><li
  97. >Provide multiple defaults</li
  98. ></ol
  99. ></div>
  100. <div class="slide">
  101. <h1
  102. >Debian - simple if generic defaults are ok</h1
  103. ><ul
  104. ><li
  105. >Mainstream (but not too new) hardware</li
  106. ><li
  107. >GNOME desktop</li
  108. ><li
  109. >Iceweasel web browser</li
  110. ><li
  111. >Exim MTA</li
  112. ><li
  113. >Apache web server</li
  114. ><li
  115. >MySQL database server</li
  116. ></ul
  117. ><p
  118. >Debian <em
  119. >is</em
  120. > simple - if you happen to like its defaults.</p
  121. ></div>
  122. <div class="slide">
  123. <h1
  124. >Debian Pure Blend - Debian for a specific purpose</h1
  125. ><p
  126. >Debian Pure Blend (in short DDD): a subset of Debian configured to support a particular target group out-of-the-box.</p
  127. ><dl
  128. ><dt
  129. >Goal 1</dt
  130. ><dd
  131. >Turn Debian into the distribution of choice for a specific target group</dd
  132. ><dt
  133. >Goal 2</dt
  134. ><dd
  135. >Advertise this fact to the world to attract users and developers</dd
  136. ></dl
  137. ></div>
  138. <div class="slide">
  139. <h1
  140. >Debian Pure Blend - technical parts</h1
  141. ><ul
  142. ><li
  143. >package selection(s)</li
  144. ><li
  145. >customizations</li
  146. ></ul
  147. ><p
  148. >The concrete work to include as packages with official Debian.</p
  149. ></div>
  150. <div class="slide">
  151. <h1
  152. >Debian Pure Blend - reality parts</h1
  153. ><ul
  154. ><li
  155. >goals &amp; noise about progress</li
  156. ><li
  157. >package health + encourage additional software packaging</li
  158. ><li
  159. >passion &amp; patience</li
  160. ><li
  161. >good relations with Debian package maintainers, competitors, and upstream authors</li
  162. ><li
  163. >good relations with users</li
  164. ></ul
  165. ><p
  166. >Surrounding work making a Blend relevant.</p
  167. ></div>
  168. <div class="slide">
  169. <h1
  170. >Debian Pure Blend - current blending projects</h1
  171. ><ul
  172. ><li
  173. >Debian Jr</li
  174. ><li
  175. >Debian Med</li
  176. ><li
  177. >Debian Edu</li
  178. ><li
  179. >Debian Science</li
  180. ><li
  181. >Debian EzGo</li
  182. ><li
  183. >BrDesktop</li
  184. ><li
  185. >Debian Accessibility</li
  186. ><li
  187. >Debian Lex</li
  188. ><li
  189. >DebiChem</li
  190. ><li
  191. >Debian GIS</li
  192. ><li
  193. >Debian Multimedia</li
  194. ></ul
  195. ><p
  196. >Projects working on Blends - some pure, some not (yet)...</p
  197. ></div>
  198. <div class="slide">
  199. <h1
  200. >Debian Pure Blends - all Debian</h1
  201. ><ul
  202. ><li
  203. ><strong
  204. >D</strong
  205. >ebian packages - selections (e.g. for tasksel to pick up)</li
  206. ><li
  207. ><strong
  208. >D</strong
  209. >ebian configuration - use of policy-compliant package-provided interfaces</li
  210. ><li
  211. ><strong
  212. >D</strong
  213. >ebian distribution media - installing via Debian itself</li
  214. ></ul
  215. ><dl
  216. ><dt
  217. >DDD</dt
  218. ><dd
  219. ><strong
  220. >Debian</strong
  221. > packages <strong
  222. >Debian</strong
  223. > configured from <strong
  224. >Debian</strong
  225. > distribution</dd
  226. ></dl
  227. ></div>
  228. <div class="slide">
  229. <h1
  230. >Debian Pure Blends - why bother?</h1
  231. ><p
  232. >Nice on paper with ideals and priciples, but...</p
  233. ><p
  234. >What's in it for me?!?</p
  235. ></div>
  236. <div class="slide">
  237. <h1
  238. >Debian Pure Blends - downsides</h1
  239. ><ul
  240. ><li
  241. ><strong
  242. >annoying</strong
  243. > - Debian package maintainers may not like proposed changes</li
  244. ><li
  245. ><strong
  246. >slow</strong
  247. > - stable distribution is released infrequently</li
  248. ><li
  249. ><strong
  250. >rigid</strong
  251. > - all contributions must match Debian Free Software Guidelines</li
  252. ><li
  253. ><strong
  254. >complex</strong
  255. > - packages must obey Debian Policy</li
  256. ></ul
  257. ></div>
  258. <div class="slide">
  259. <h1
  260. >Debian Pure Blends - Benefits</h1
  261. ><ul
  262. ><li
  263. >backed by Debian - help, bug tracking, translations, etc.</li
  264. ><li
  265. >teamwork - others might help you refine and maintain your setups</li
  266. ><li
  267. >common structures - others might take over if you loose interest</li
  268. ></ul
  269. ></div>
  270. <div class="slide">
  271. <h1
  272. >Tech - Debian support overloading choices</h1
  273. ><ul
  274. ><li
  275. >Debian installer</li
  276. ><li
  277. >tasksel</li
  278. ><li
  279. >debconf</li
  280. ><li
  281. >aptitude</li
  282. ></ul
  283. ></div>
  284. <div class="slide">
  285. <h1
  286. >Tech - examples of non-pure blending</h1
  287. ><ul
  288. ><li
  289. >include non-Debian packages or non-packaged stuff</li
  290. ><li
  291. >include Debian packages from different Debian suite</li
  292. ><li
  293. >configure system other than via Debian package installation</li
  294. ><li
  295. >install using non-Debian media</li
  296. ></ul
  297. ><p
  298. >You don't own your system - you provide one for others to own.</p
  299. ><p
  300. >So don't refine it like a (sloppy) user: Handle it like a Debian developer!</p
  301. ></div>
  302. <div class="slide">
  303. <h1
  304. >Tech - Debian, generic setup</h1
  305. ><ul
  306. ><li
  307. >select package profile(s)</li
  308. ><li
  309. >install</li
  310. ></ul
  311. ></div>
  312. <div class="slide">
  313. <h1
  314. >Tech - Debian, hand-tuned</h1
  315. ><ul
  316. ><li
  317. >select package profile(s)</li
  318. ><li
  319. >select additional packages</li
  320. ><li
  321. >install</li
  322. ><li
  323. >(re)configure packages</li
  324. ></ul
  325. ></div>
  326. <div class="slide">
  327. <h1
  328. >Tech - Debian, auto-tuned</h1
  329. ><ul
  330. ><li
  331. >pre-seed package selection</li
  332. ><li
  333. >pre-seed package configurations</li
  334. ><li
  335. >install</li
  336. ><li
  337. >(re)configure non-debconf packages</li
  338. ></ul
  339. ></div>
  340. <div class="slide">
  341. <h1
  342. >Tech - Debian Pure Blend = generic</h1
  343. ><ul
  344. ><li
  345. >select blend profile</li
  346. ><li
  347. >install</li
  348. ></ul
  349. ></div>
  350. <div class="slide">
  351. <h1
  352. >Tech - tasks involved</h1
  353. ><ul
  354. ><li
  355. >extra software → into Debian officially</li
  356. ><li
  357. >manual configurations → preseeding</li
  358. ><li
  359. >maybe create temporary dirty hacks</li
  360. ><li
  361. >maybe use/create reusable tweaks</li
  362. ><li
  363. >eliminate dirty hacks and tweaks</li
  364. ><li
  365. >convince others in Debian to add as tasksel task</li
  366. ></ul
  367. ></div>
  368. <div class="slide">
  369. <h1
  370. >Tech - blends-dev</h1
  371. ><p
  372. >Tool to help maintain package lists and prospective packages.</p
  373. ><p
  374. >Example: <a href="http://debian-med.alioth.debian.org/tasks/psychology"
  375. ><code
  376. >http://debian-med.alioth.debian.org/tasks/psychology</code
  377. ></a
  378. ></p
  379. ></div>
  380. <div class="slide">
  381. <h1
  382. >Tech - dirty tricks</h1
  383. ><p
  384. >Avoid configuration files...</p
  385. ><ul
  386. ><li
  387. >config.d folders</li
  388. ><li
  389. >databases</li
  390. ><li
  391. >networked data</li
  392. ></ul
  393. ></div>
  394. <div class="slide">
  395. <h1
  396. >Tech - tweaks</h1
  397. ><p
  398. >Reusable scripts compatible with one or more of...</p
  399. ><ul
  400. ><li
  401. >FAI</li
  402. ><li
  403. >hands-off at http://hands.com/d-i/</li
  404. ><li
  405. >CFengine</li
  406. ><li
  407. >Puppet</li
  408. ></ul
  409. ></div>
  410. <div class="slide">
  411. <h1
  412. >Tech - good style</h1
  413. ><ul
  414. ><li
  415. >Aptitude</li
  416. ><li
  417. >debconf</li
  418. ><li
  419. >Config::Model</li
  420. ></ul
  421. ></div>
  422. <div class="slide">
  423. <h1
  424. >Tech - When is it &quot;Pure&quot;?</h1
  425. ><p
  426. >When all is in Debian, with no dirty tricks:</p
  427. ><ul
  428. ><li
  429. >package selection(s)</li
  430. ><li
  431. >customizations</li
  432. ><li
  433. >installation</li
  434. ></ul
  435. ></div>
  436. <div class="slide">
  437. <h1
  438. >Team - getting involved</h1
  439. ><ul
  440. ><li
  441. >identify and isolate tweaks at your own system</li
  442. ><li
  443. >register missing software - on wiki page or (better!) in Debian BTS</li
  444. ><li
  445. >write documentation</li
  446. ><li
  447. >write the dream of how things ought to work</li
  448. ><li
  449. >wite how details work now</li
  450. ><li
  451. >discuss downstream (i.e. with users and subdistros) how things work / should work</li
  452. ><li
  453. >discuss upstream (i.e. with authors) what is possible now / soon</li
  454. ></ul
  455. ></div>
  456. <div class="slide">
  457. <h1
  458. >Team - getting involved II</h1
  459. ><ul
  460. ><li
  461. >write intro for peer enthusiasts</li
  462. ><li
  463. >decide and document ideal formats - translations, graphics etc.</li
  464. ><li
  465. >prioritize pending tasks - of various kinds to encourage many different contributions</li
  466. ><li
  467. >document where it is ok to ask beginners' questions</li
  468. ><li
  469. >document if beginners can ask for a mentor</li
  470. ></ul
  471. ></div>
  472. <div class="slide">
  473. <h1
  474. >Team - getting involved III</h1
  475. ><ul
  476. ><li
  477. >make illustration</li
  478. ><li
  479. >make screendumps</li
  480. ><li
  481. >make fan graphics</li
  482. ><li
  483. >make desktop backgrounds, CD covers, stickers, etc.</li
  484. ><li
  485. >Register the project as a DOAP file, and maybe at Ohloh and Freshmeat etc.</li
  486. ><li
  487. >Register and maintain relevant Debtags</li
  488. ></ul
  489. ></div>
  490. <div class="slide">
  491. <h1
  492. >Team - getting involved IV</h1
  493. ><ul
  494. ><li
  495. >Translate package descriptions</li
  496. ><li
  497. >Translate debconf dialogs</li
  498. ><li
  499. >Translate upstream code</li
  500. ></ul
  501. ></div>
  502. <div class="slide">
  503. <h1
  504. >Team - getting involved V</h1
  505. ><ul
  506. ><li
  507. >Help integrate contributions from graphics artists, translators and others</li
  508. ><li
  509. >document decision processes of the team (and Debian and upstreams?)</li
  510. ><li
  511. >document workflows in teams</li
  512. ><li
  513. >insist on transparency - not only for code!</li
  514. ></ul
  515. ></div>
  516. <div class="slide">
  517. <h1
  518. >Team - Continuous status checks</h1
  519. ><ul
  520. ><li
  521. >Ask users about their needs - you will forget over time!</li
  522. ><li
  523. >Ask teams about their tasks - each participant has slightly different perception of the common vision and status</li
  524. ><li
  525. >Ask upstreams about use: perhaps potentials are missed, or code or persons feel as being abused</li
  526. ></ul
  527. ></div>
  528. <div class="slide">
  529. <h1
  530. >Debian Pure Blends - Future</h1
  531. ><ul
  532. ><li
  533. >debconf dontcare vs. explicit choice of default option</li
  534. ><li
  535. >debconf query mechanism (and fill buffer from live system)</li
  536. ><li
  537. >APT explicit choice of alternate dependency/recommendation</li
  538. ><li
  539. >APT dontcare vs. explicit choice of default dependency/recommendation</li
  540. ><li
  541. >Config::Model - semantic configfile handling</li
  542. ></ul
  543. ></div>
  544. </body>
  545. </html>