What did debian ever do for us?
				  Wookey, wookey@wookware.org
				
  History
  
      - Started in 1993
 
      - Package manager!
 
      - Known for: stability, long hw support, upgrades that work, consistent
policy, lots of software (20,000 source, 60,000 binary)
 
      - Community/Independent distro - no one company
 
      - Trusted not to make profit-driven choices
 
  
  What makes the distro special
  
    - Whole ecosystem
 
    - Policy/consistency
    
 - Derivatives encouraged
    
 - Ports - whatever (enough) people will maintain
(release(9)/non-release(13)).
    
 - Free software. Free tools, free infrastructure.
    
 - Some non-free packages (firmware, drivers, some software)
    
 - No 2nd-class packages.
  
 
  Debian likes to do things properly
  
    - Multiarch
 
    - Redproducible builds
 
    - Bootstrapping -> Build profiles
 
  
  Project
  
    - Social Contract, DSFG definition
 
    - Constitution, decision-making
 
    - ~1000 Developers all over the world
 
  
  Organisation
    do-ocracy 'whoever works on stuff gets to decide'
    Strong package ownership
    Technical committee
    Voting system
  Community
  
    - Open development
 
    - We don't hide problems
 
    - Users can easily get involved
 
    - Friends, marriages
 
    - Welcoming culture (much improved!)
 
  
  What distros are there?
  
    - Over 100 derivatives
 
    - Notable:
 Ubuntu, Tails, Rasbian, Grml, Knoppix, Kali, Purism PureO 
    - Transitive derivatives
 
    https://wiki.debian.org/Derivatives/Census
    - Blends
      Astronomy, Medical, Junior, Edu, Freedombox
    https://www.debian.org/blends/ 
  
  Ecosystem
  
    - Commerce in around debian
 
    - Ubuntu, purism, credativ, embedded, assorted consultants
 
    - Reliable base, work only on customisations
 
    - 21% of websites (58% Debian+Ubuntu) (w3tech 2019)
 
    - dpkg-vendor allows upstreaming of customisations
 
  
  ARM ports
  
     | arm | OABI | v3 | 2000: Potato (discontinued 2011) | 
     
| armeb | OABI | v3 | 2006: unofficial | 
     
| armel | EABI | v4t | 2009: Lenny | 
     
| armhf | EABI | v7 | 2012: Wheezy | 
     
| arm64 | v8 | v8 | 2014: Jessie | 
     
     | Raspbian | EABI,  | v6  | 2012: Wheezy rebuild | 
  how do I build a package?
  
    - Rather too many ways :-)
 
    - dpkg-buildpackage, debuild, git-buildpackage
 
    - sbuild, pbuilder
 
    - local, chroots, containers
 
  
  apt source <package>
apt build-dep <package>
cd <package-version>
dpkg-buildpackage
  how do I build an official package?
  
    - Official buildds
 
    - Clean builds - Source-only uploads
 
    - Build everything: reautoconf, docs
 
    - Machine-learning is problematic
 
  
  Crossbuilding for free
  
    - Cross-toolchains in archive
 
    - Support added in last few years
 
    - 67% of archive crosses now.
 
  
  
  apt install crossbuild-essential-arm64
    dpkg --add-architecture arm64
apt source <package>
apt build-dep -a arm64 <package>
cd <package-version>
dpkg-buildpackage -a arm64 
  Terminology
  
    - Suites = unstable, testing, stable
 
    - Codenames = sid, etch, wheezy, buster
 
    - Releases = debian8, debian 8.1 or 8r1
 
    - Ports = Architectures
 
  
  Packaging formats
  
    - 1.0: release tarball+big patch (tarball)
 
    - 3.0 quilt: release tarball + quilt patch stack (tarball)
 
    - Increasingly anachronistic (no release, git)
 
    - New workflows
 
    - Debcheckout vs apt source
 
    - dgit: archive repo <-> git repo interface
 
    - Discussion on new standard practice
 
    - Salsa.debian.org
 
  
  Infrastructure
  
    - Buildds
 
    - Porter boxes
 
    - Reproducible builds
 
    - Autopackage test
 
    - Installability tests - piuparts
 
    - Salsa-ci (ci.debian.net)
 
    - sources.debian.org - searchable
 
    - snapshot.debian.org
 
    - Lintian
 
  
  How do I debug
  
    - debug versions of all libs built, put in separate repository
 
    - used to be foo-dbg (explicit packaging)
 
    - now foo-dbysym (implicit packaging)
 
    - enable debian-debug (or debian-snapshot)
      http://deb.debian.org/debian-debug
  deb http://deb.debian.org/debian-debug/ stable-debug main
 
    
apt update
  apt install <package>-dbgsym
  apt source <package>
  
  What do you wish you knew?
  
    - tracker.debian.org
 
    - backports.debian.org
 
    - Debian Developer's corner: https://www.debian.org/devel
 
    - debian mentors (IRC and mailing list)
 
    - debian/rules 
 
    - dpkg-buildpackge -nc
 
    - sid==unstable
 
  
Conferences
debconf
  - debconf0 2000 Bordeaux
 
  - ...
 
  - debconf19 Curitiba, Brazil
 
  - debconf20 Haifa, Israel
 
  - Remote access taken quite seriously. Own camera gear.
  
  - debconf video site
 
  - IRC back in per room for questions.
 
minidebconf
 several/year
   - 2019: France, Germany, Switzerland, Singapore
 
   - 2017: Kosovo, Colombia, Brazil, France, UK
 
 
What work are we doing currently?
  - buildd admin
 
  - File and fix bugs
 
  - Explain packaging
 
  - installer changes
 
  - NN packaging
 
  - Coresight support
 
  - Kernel Backports
 
What work will we be doing next?
  - 128bit pointers bootstrap
 
  - 64-bit time_t
 
  Any pain-points, things to fix that could make work easier?
  
    -  Get arm to put out native-built software (everything has to be
   un-crossed).
 
    - Free drivers for mali