diff options
-rw-r--r-- | blends/talk/paris.mkd | 220 | ||||
-rw-r--r-- | blends/talk/paris/index.html | 295 | ||||
-rw-r--r-- | blends/talk/paris/local.css | 14 |
3 files changed, 529 insertions, 0 deletions
diff --git a/blends/talk/paris.mkd b/blends/talk/paris.mkd new file mode 100644 index 0000000..c0b911f --- /dev/null +++ b/blends/talk/paris.mkd @@ -0,0 +1,220 @@ +% Debian Pure Blends +% Jonas Smedegaard +% Paris, France, November 4th, 2013 + +# Creating sustainable hacks + +# Debian - the universal operating system + +# Debian Pure Blends - Debian universally relevant + +# Ideas as water + +![Photo: [George Hodan](http://www.publicdomainpictures.net/view-image.php?image=18935)](../../../fb/talk/epfsug2/ripple-20044.jpg) + +# Downstream <-> Upstream + +![](../../../fb/talk/epfsug2/developmentstream.jpg) + +# Derivatives + +# Making a blend + +# Debian constitution vs. Policy + +# Blends + + * Debian Jr + * Debian Med + * Debian Edu + * Debian Science + * Debian EzGo + * BrDesktop + * Debian Accessibility + * Debian Lex + * DebiChem + * Debian GIS + * Debian Multimedia + +# Debian Pure Blends - all Debian + + * **D**ebian packages - selections (e.g. for tasksel to pick up) + * **D**ebian configuration - use of policy-compliant package-provided interfaces + * **D**ebian distribution media - installing via Debian itself + +DDD + : **Debian** packages **Debian** configured from **Debian** distribution + +# Debian Pure Blends - why bother? + +Nice on paper with ideals and priciples, but... + +What's in it for me?!? + +# Debian Pure Blends - downsides + + * **annoying** - Debian package maintainers may not like proposed changes + * **slow** - stable distribution is released infrequently + * **rigid** - all contributions must match Debian Free Software Guidelines + * **complex** - packages must obey Debian Policy + +# Debian Pure Blends - Benefits + + * backed by Debian - help, bug tracking, translations, etc. + * teamwork - others might help you refine and maintain your setups + * common structures - others might take over if you loose interest + +# Tech - Debian support overloading choices + + * Debian installer + * tasksel + * debconf + * aptitude + +# Tech - examples of non-pure blending + + * include non-Debian packages or non-packaged stuff + * include Debian packages from different Debian suite + * configure system other than via Debian package installation + * install using non-Debian media + +You don't own your system - you provide one for others to own. + +So don't refine it like a (sloppy) user: Handle it like a Debian developer! + +# Tech - Debian, generic setup + + * select package profile(s) + * install + +# Tech - Debian, hand-tuned + + * select package profile(s) + * select additional packages + * install + * (re)configure packages + +# Tech - Debian, auto-tuned + + * pre-seed package selection + * pre-seed package configurations + * install + * (re)configure non-debconf packages + +# Tech - Debian Pure Blend = generic + + * select blend profile + * install + +# Tech - tasks involved + + * extra software → into Debian officially + * manual configurations → preseeding + * maybe create temporary dirty hacks + * maybe use/create reusable tweaks + * eliminate dirty hacks and tweaks + * convince others in Debian to add as tasksel task + +# Tech - blends-dev + +Tool to help maintain package lists and prospective packages. + +Example: <http://debian-med.alioth.debian.org/tasks/psychology> + +# Tech - dirty tricks + +Avoid configuration files... + + * config.d folders + * databases + * networked data + +# Tech - tweaks + +Reusable scripts compatible with one or more of... + + * FAI + * hands-off at http://hands.com/d-i/ + * CFengine + * Puppet + +# Tech - good style + + * Aptitude + * debconf + * Config::Model + +# Tech - When is it "Pure"? + +When all is in Debian, with no dirty tricks: + + * package selection(s) + * customizations + * installation + +# Team - getting involved + + * identify and isolate tweaks at your own system + * register missing software - on wiki page or (better!) in Debian BTS + * write documentation + * write the dream of how things ought to work + * wite how details work now + * discuss downstream (i.e. with users and subdistros) how things work / + should work + * discuss upstream (i.e. with authors) what is possible now / soon + +# Team - getting involved II + + * write intro for peer enthusiasts + * decide and document ideal formats - translations, graphics etc. + * prioritize pending tasks - of various kinds to encourage many + different contributions + * document where it is ok to ask beginners' questions + * document if beginners can ask for a mentor + +# Team - getting involved III + + * make illustration + * make screendumps + * make fan graphics + * make desktop backgrounds, CD covers, stickers, etc. + * Register the project as a DOAP file, and maybe at Ohloh and Freshmeat + etc. + * Register and maintain relevant Debtags + +# Team - getting involved IV + + * Translate package descriptions + * Translate debconf dialogs + * Translate upstream code + +# Team - getting involved V + + * Help integrate contributions from graphics artists, translators and + others + * document decision processes of the team (and Debian and upstreams?) + * document workflows in teams + * insist on transparency - not only for code! + +# Team - Continuous status checks + + * Ask users about their needs - you will forget over time! + * Ask teams about their tasks - each participant has slightly different + perception of the common vision and status + * Ask upstreams about use: perhaps potentials are missed, or code or + persons feel as being abused + +# Debian Pure Blends - Future + + * debconf dontcare vs. explicit choice of default option + * debconf query mechanism (and fill buffer from live system) + * APT explicit choice of alternate dependency/recommendation + * APT dontcare vs. explicit choice of default dependency/recommendation + * Config::Model - semantic configfile handling + +# Sources for this talk + + * Me: <dr@jones.dk> + * This talk: <http://dr.jones.dk/blends/paris> + * Sketches by [Siri Reiter](http://sirireiter.dk/) + * Slides rich with facts: <http://upsilon.cc/~zack/talks/> diff --git a/blends/talk/paris/index.html b/blends/talk/paris/index.html new file mode 100644 index 0000000..ea60d7e --- /dev/null +++ b/blends/talk/paris/index.html @@ -0,0 +1,295 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <meta http-equiv="Content-Style-Type" content="text/css" /> + <meta name="generator" content="pandoc" /> + <meta name="author" content="Jonas Smedegaard" /> + <title>Debian Pure Blends</title> + <style type="text/css">code{white-space: pre;}</style> + <link rel="stylesheet" type="text/css" media="screen, projection, print" + href="../../../slidy/slidy.css" /> + <link rel="stylesheet" type="text/css" media="screen, projection, print" + href="local.css" /> + <script src="../../../slidy/slidy.js" + charset="utf-8" type="text/javascript"></script> +</head> +<body> +<div class="slide titlepage"> + <h1 class="title">Debian Pure Blends</h1> + <p class="author"> +Jonas Smedegaard + </p> + <p class="date">Paris, France, November 4th, 2013</p> +</div> +<div id="creating-sustainable-hacks" class="slide section level1"> +<h1>Creating sustainable hacks</h1> +</div> +<div id="debian---the-universal-operating-system" class="slide section level1"> +<h1>Debian - the universal operating system</h1> +</div> +<div id="debian-pure-blends---debian-universally-relevant" class="slide section level1"> +<h1>Debian Pure Blends - Debian universally relevant</h1> +</div> +<div id="ideas-as-water" class="slide section level1"> +<h1>Ideas as water</h1> +<div class="figure"> +<img src="../../../fb/talk/epfsug2/ripple-20044.jpg" alt="Photo: George Hodan" /><p class="caption">Photo: <a href="http://www.publicdomainpictures.net/view-image.php?image=18935">George Hodan</a></p> +</div> +</div> +<div id="downstream---upstream" class="slide section level1"> +<h1>Downstream <-> Upstream</h1> +<div class="figure"> +<img src="../../../fb/talk/epfsug2/developmentstream.jpg" /> +</div> +</div> +<div id="derivatives" class="slide section level1"> +<h1>Derivatives</h1> +</div> +<div id="making-a-blend" class="slide section level1"> +<h1>Making a blend</h1> +</div> +<div id="debian-constitution-vs.-policy" class="slide section level1"> +<h1>Debian constitution vs. Policy</h1> +</div> +<div id="blends" class="slide section level1"> +<h1>Blends</h1> +<ul> +<li>Debian Jr</li> +<li>Debian Med</li> +<li>Debian Edu</li> +<li>Debian Science</li> +<li>Debian EzGo</li> +<li>BrDesktop</li> +<li>Debian Accessibility</li> +<li>Debian Lex</li> +<li>DebiChem</li> +<li>Debian GIS</li> +<li>Debian Multimedia</li> +</ul> +</div> +<div id="debian-pure-blends---all-debian" class="slide section level1"> +<h1>Debian Pure Blends - all Debian</h1> +<ul> +<li><strong>D</strong>ebian packages - selections (e.g. for tasksel to pick up)</li> +<li><strong>D</strong>ebian configuration - use of policy-compliant package-provided interfaces</li> +<li><strong>D</strong>ebian distribution media - installing via Debian itself</li> +</ul> +<dl> +<dt>DDD</dt> +<dd><strong>Debian</strong> packages <strong>Debian</strong> configured from <strong>Debian</strong> distribution +</dd> +</dl> +</div> +<div id="debian-pure-blends---why-bother" class="slide section level1"> +<h1>Debian Pure Blends - why bother?</h1> +<p>Nice on paper with ideals and priciples, but...</p> +<p>What's in it for me?!?</p> +</div> +<div id="debian-pure-blends---downsides" class="slide section level1"> +<h1>Debian Pure Blends - downsides</h1> +<ul> +<li><strong>annoying</strong> - Debian package maintainers may not like proposed changes</li> +<li><strong>slow</strong> - stable distribution is released infrequently</li> +<li><strong>rigid</strong> - all contributions must match Debian Free Software Guidelines</li> +<li><strong>complex</strong> - packages must obey Debian Policy</li> +</ul> +</div> +<div id="debian-pure-blends---benefits" class="slide section level1"> +<h1>Debian Pure Blends - Benefits</h1> +<ul> +<li>backed by Debian - help, bug tracking, translations, etc.</li> +<li>teamwork - others might help you refine and maintain your setups</li> +<li>common structures - others might take over if you loose interest</li> +</ul> +</div> +<div id="tech---debian-support-overloading-choices" class="slide section level1"> +<h1>Tech - Debian support overloading choices</h1> +<ul> +<li>Debian installer</li> +<li>tasksel</li> +<li>debconf</li> +<li>aptitude</li> +</ul> +</div> +<div id="tech---examples-of-non-pure-blending" class="slide section level1"> +<h1>Tech - examples of non-pure blending</h1> +<ul> +<li>include non-Debian packages or non-packaged stuff</li> +<li>include Debian packages from different Debian suite</li> +<li>configure system other than via Debian package installation</li> +<li>install using non-Debian media</li> +</ul> +<p>You don't own your system - you provide one for others to own.</p> +<p>So don't refine it like a (sloppy) user: Handle it like a Debian developer!</p> +</div> +<div id="tech---debian-generic-setup" class="slide section level1"> +<h1>Tech - Debian, generic setup</h1> +<ul> +<li>select package profile(s)</li> +<li>install</li> +</ul> +</div> +<div id="tech---debian-hand-tuned" class="slide section level1"> +<h1>Tech - Debian, hand-tuned</h1> +<ul> +<li>select package profile(s)</li> +<li>select additional packages</li> +<li>install</li> +<li>(re)configure packages</li> +</ul> +</div> +<div id="tech---debian-auto-tuned" class="slide section level1"> +<h1>Tech - Debian, auto-tuned</h1> +<ul> +<li>pre-seed package selection</li> +<li>pre-seed package configurations</li> +<li>install</li> +<li>(re)configure non-debconf packages</li> +</ul> +</div> +<div id="tech---debian-pure-blend-generic" class="slide section level1"> +<h1>Tech - Debian Pure Blend = generic</h1> +<ul> +<li>select blend profile</li> +<li>install</li> +</ul> +</div> +<div id="tech---tasks-involved" class="slide section level1"> +<h1>Tech - tasks involved</h1> +<ul> +<li>extra software → into Debian officially</li> +<li>manual configurations → preseeding</li> +<li>maybe create temporary dirty hacks</li> +<li>maybe use/create reusable tweaks</li> +<li>eliminate dirty hacks and tweaks</li> +<li>convince others in Debian to add as tasksel task</li> +</ul> +</div> +<div id="tech---blends-dev" class="slide section level1"> +<h1>Tech - blends-dev</h1> +<p>Tool to help maintain package lists and prospective packages.</p> +<p>Example: <a href="http://debian-med.alioth.debian.org/tasks/psychology">http://debian-med.alioth.debian.org/tasks/psychology</a></p> +</div> +<div id="tech---dirty-tricks" class="slide section level1"> +<h1>Tech - dirty tricks</h1> +<p>Avoid configuration files...</p> +<ul> +<li>config.d folders</li> +<li>databases</li> +<li>networked data</li> +</ul> +</div> +<div id="tech---tweaks" class="slide section level1"> +<h1>Tech - tweaks</h1> +<p>Reusable scripts compatible with one or more of...</p> +<ul> +<li>FAI</li> +<li>hands-off at http://hands.com/d-i/</li> +<li>CFengine</li> +<li>Puppet</li> +</ul> +</div> +<div id="tech---good-style" class="slide section level1"> +<h1>Tech - good style</h1> +<ul> +<li>Aptitude</li> +<li>debconf</li> +<li>Config::Model</li> +</ul> +</div> +<div id="tech---when-is-it-pure" class="slide section level1"> +<h1>Tech - When is it "Pure"?</h1> +<p>When all is in Debian, with no dirty tricks:</p> +<ul> +<li>package selection(s)</li> +<li>customizations</li> +<li>installation</li> +</ul> +</div> +<div id="team---getting-involved" class="slide section level1"> +<h1>Team - getting involved</h1> +<ul> +<li>identify and isolate tweaks at your own system</li> +<li>register missing software - on wiki page or (better!) in Debian BTS</li> +<li>write documentation</li> +<li>write the dream of how things ought to work</li> +<li>wite how details work now</li> +<li>discuss downstream (i.e. with users and subdistros) how things work / should work</li> +<li>discuss upstream (i.e. with authors) what is possible now / soon</li> +</ul> +</div> +<div id="team---getting-involved-ii" class="slide section level1"> +<h1>Team - getting involved II</h1> +<ul> +<li>write intro for peer enthusiasts</li> +<li>decide and document ideal formats - translations, graphics etc.</li> +<li>prioritize pending tasks - of various kinds to encourage many different contributions</li> +<li>document where it is ok to ask beginners' questions</li> +<li>document if beginners can ask for a mentor</li> +</ul> +</div> +<div id="team---getting-involved-iii" class="slide section level1"> +<h1>Team - getting involved III</h1> +<ul> +<li>make illustration</li> +<li>make screendumps</li> +<li>make fan graphics</li> +<li>make desktop backgrounds, CD covers, stickers, etc.</li> +<li>Register the project as a DOAP file, and maybe at Ohloh and Freshmeat etc.</li> +<li>Register and maintain relevant Debtags</li> +</ul> +</div> +<div id="team---getting-involved-iv" class="slide section level1"> +<h1>Team - getting involved IV</h1> +<ul> +<li>Translate package descriptions</li> +<li>Translate debconf dialogs</li> +<li>Translate upstream code</li> +</ul> +</div> +<div id="team---getting-involved-v" class="slide section level1"> +<h1>Team - getting involved V</h1> +<ul> +<li>Help integrate contributions from graphics artists, translators and others</li> +<li>document decision processes of the team (and Debian and upstreams?)</li> +<li>document workflows in teams</li> +<li>insist on transparency - not only for code!</li> +</ul> +</div> +<div id="team---continuous-status-checks" class="slide section level1"> +<h1>Team - Continuous status checks</h1> +<ul> +<li>Ask users about their needs - you will forget over time!</li> +<li>Ask teams about their tasks - each participant has slightly different perception of the common vision and status</li> +<li>Ask upstreams about use: perhaps potentials are missed, or code or persons feel as being abused</li> +</ul> +</div> +<div id="debian-pure-blends---future" class="slide section level1"> +<h1>Debian Pure Blends - Future</h1> +<ul> +<li>debconf dontcare vs. explicit choice of default option</li> +<li>debconf query mechanism (and fill buffer from live system)</li> +<li>APT explicit choice of alternate dependency/recommendation</li> +<li>APT dontcare vs. explicit choice of default dependency/recommendation</li> +<li>Config::Model - semantic configfile handling</li> +</ul> +</div> +<div id="sources-for-this-talk" class="slide section level1"> +<h1>Sources for this talk</h1> +<ul> +<li>Me: <script type="text/javascript"> +<!-- +h='jones.dk';a='@';n='dr';e=n+a+h; +document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+e+'<\/'+'a'+'>'); +// --> +</script><noscript>dr at jones dot dk</noscript></li> +<li>This talk: <a href="http://dr.jones.dk/blends/paris">http://dr.jones.dk/blends/paris</a></li> +<li>Sketches by <a href="http://sirireiter.dk/">Siri Reiter</a></li> +<li>Slides rich with facts: <a href="http://upsilon.cc/~zack/talks/">http://upsilon.cc/~zack/talks/</a></li> +</ul> +</div> +</body> +</html> diff --git a/blends/talk/paris/local.css b/blends/talk/paris/local.css new file mode 100644 index 0000000..af7826c --- /dev/null +++ b/blends/talk/paris/local.css @@ -0,0 +1,14 @@ +body { + background-position: 95% 10%; +} +div.slide h1 { + background-color: white; + opacity: 0.7; +} +.figure { + height: 70%; +} +.figure img { + max-height: 100%; + max-width: 80%; +} |