Skip to content.
|
Skip to navigation
Site Map
Accessibility
Feedback
Search Site
only in current section
Advanced Search…
Sections
Home
News
Events
Forums
Help!
Log in
Personal tools
Register
You are here:
Home
→
Docs
→
Help!
→
Reference Manuals
→
Debian Reference
→
Debian fundamentals
→
The Debian package management system
→
Source packages
Info
2.2.12. Source packages
Up one level
Jump to:
All content on one page
1. Preface
1.1. Official document
1.2. Document conventions
1.3. Example scripts
1.4. Basic setup
1.5. Basics of the Debian distributions
2. Debian fundamentals
2.1. The Debian archives
2.1.1. Directory structures
2.1.2. Debian distributions
2.1.3. The stable distribution
2.1.4. The testing distribution
2.1.5. The unstable distribution
2.1.6. The frozen distribution
2.1.7. Debian distribution codenames
2.1.8. Codenames used in the past
2.1.9. The source for codenames
2.1.10. The pool directory
2.1.11. Historical notes about Sid
2.1.12. Uploaded packages in incoming/
2.1.13. Retrieving an older package
2.1.14. Architecture sections
2.1.15. The source code
2.2. The Debian package management system
2.2.1. Overview of Debian packages
2.2.2. Debian package format
2.2.3. Naming conventions for Debian package filenames
2.2.4. Preservation of local configuration
2.2.5. Debian maintenance scripts
2.2.6. Package priorities
2.2.7. Virtual packages
2.2.8. Package dependencies
2.2.9. The meaning of "Pre-Depends"
2.2.10. Package status
2.2.11. Holding back packages from an upgrade
2.2.12. Source packages
2.2.13. Building binary packages from a source package
2.2.14. Creating new Debian packages
2.3. Upgrading a Debian system
2.3.1. dpkg
2.3.2. APT
2.3.3. dselect
2.3.4. Upgrading a running system
2.3.5. Downloaded and cached .deb archive file
2.3.6. Record-keeping for upgrades
2.4. The Debian boot process
2.4.1. The init program
2.4.2. Runlevels
2.4.3. Customizing runlevels
2.5. Supporting diversity
2.6. Internationalization
2.7. Debian and the kernel
2.7.1. Compiling a kernel from non-Debian source
2.7.2. Tools to build custom kernels
2.7.3. Special provisions for dealing with modules
2.7.4. De-installing an old kernel package
3. Debian System installation hints
3.1. General Linux system installation hints
3.1.1. Hardware compatibility basics
3.1.2. Determining a PC's hardware and chip set
3.1.3. Determining a PC's hardware via Debian
3.1.4. Determining a PC's hardware via other OSs
3.1.5. A Lilo myth
3.1.6. GRUB
3.1.7. Choice of boot floppies
3.1.8. Installation
3.1.9. Hosts and IP to use for LAN
3.1.10. User accounts
3.1.11. Creating filesystems
3.1.11.1. Hard disk partition
3.1.11.2. Mount filesystems
3.1.11.3. Autofs mount
3.1.11.4. NFS mount
3.1.12. DRAM memory guidelines
3.1.13. Swap space
3.2. Bash configuration
3.3. Mouse configuration
3.3.1. PC/2 mice
3.3.1.1. In General
3.3.1.2. The ms3 protocol approach
3.3.1.3. The raw protocol approach
3.3.1.4. How to adjust to different mice
3.3.2. USB mice
3.3.3. Touchpad
3.4. NFS configuration
3.5. Samba configuration
3.6. Printer configuration
3.6.1. lpr/lpd
3.6.2. CUPS™
3.7. CRON for desktop PCs
3.8. Other host installation hints
3.8.1. Install a few more packages after initial install
3.8.2. Modules
3.8.3. CD-RW basic setup
3.8.4. Large memory and auto power-off
3.8.5. Strange access problems with some websites
3.8.6. Dialup PPP configuration
3.8.7. Other configuration files to tweak in /etc/
4. Debian tutorials
4.1. Getting started
4.1.1. Login to a shell prompt as root
4.1.2. Set up minimal newbie environment
4.1.3. Add a user account
4.1.4. Switch between virtual console
4.1.5. How to shut down
4.1.6. Play time
4.2. Midnight Commander (MC)
4.2.1. Enhance MC
4.2.2. Start MC
4.2.3. File manager in MC
4.2.4. Command-line tricks in MC
4.2.5. Editor in MC
4.2.6. Viewer in MC
4.2.7. Auto-start features of MC
4.2.8. FTP virtual filesystem of MC
4.3. Unix-like work environment
4.3.1. Special key strokes
4.3.2. Basic Unix commands
4.3.3. The command execution
4.3.4. Simple command
4.3.5. Command execution and environment variable
4.3.6. Command search path
4.3.7. Command line options
4.3.8. Shell wildcards
4.3.9. Return value of the command
4.3.10. Typical command sequences
4.3.10.1. command &
4.3.10.2. command1 | command2
4.3.10.3. command1 ; command2
4.3.10.4. command1 && command2
4.3.10.5. command1 || command2
4.3.10.6. command > foo
4.3.10.7. command >> foo
4.3.10.8. command > foo 2>&1
4.3.10.9. command < foo
4.3.11. Command alias
4.4. Unix-like text processing
4.4.1. Regular expressions
4.4.2. Replacement expressions
4.5. Unix-like filesystem
4.5.1. Unix file basics
4.5.2. The filesystem concept in Debian
4.5.3. File and directory access permissions
4.5.4. Timestamps
4.5.5. Links
4.5.6. Named pipes (FIFOs)
4.5.7. Sockets
4.5.8. Device files
4.5.8.1. /dev/null etc.
4.5.8.2. Device node number
4.5.9. /proc filesystem
4.6. X Window System
4.6.1. Start the X Window System
4.6.2. Menu in the X Window System
4.6.3. Keyboard sequence for the X Window System
4.7. Further study
5. Upgrading a distribution to stable, testing, or unstable
5.1. Upgrading from Potato to Woody
5.2. Preparing for upgrade
5.3. Upgrading
5.3.1. Using dselect
5.3.2. Using apt-get
6. Debian package management
6.1. Introduction
6.1.1. Main package management tools
6.1.2. Convenience tools
6.2. Beginning Debian package management
6.2.1. Set up APT
6.2.2. Installing tasks
6.2.3. aptitude
6.2.4. dselect
6.2.5. Tracking a distribution using APT
6.2.6. aptitude, apt-get and apt-cache commands
6.3. Debian survival commands
6.3.1. Check bugs in Debian and seek help
6.3.2. APT upgrade troubleshooting
6.3.3. Rescue using dpkg
6.3.4. Recover package selection data
6.3.5. Rescue system after crashing /var
6.3.6. Install a package into an unbootable system
6.3.7. What to do if the dpkg command is broken
6.4. Debian nirvana commands
6.4.1. Information on a file
6.4.2. Information on a package
6.4.3. Unattended installation with APT
6.4.4. Reconfigure installed packages
6.4.5. Remove and purge packages
6.4.6. Holding older packages
6.4.7. Mixed stable/testing/unstable system
6.4.8. Prune cached package files
6.4.9. Record/copy system configuration
6.4.10. Port a package to the stable system
6.4.11. Local package archive
6.4.12. Convert or install an alien binary package
6.4.13. Automatically install command
6.4.14. Verify installed package files
6.4.15. Optimized sources.list
6.5. Other Debian peculiarities
6.5.1. The dpkg-divert command
6.5.2. The equivs package
6.5.3. Alternative commands
6.5.4. Runlevel usage
6.5.5. Disabled daemon services
7. The Linux kernel under Debian
7.1. Kernel (re)compile
7.1.1. Kernel headers
7.2. Tuning the kernel through the proc filesystem
7.2.1. Too many open files
7.2.2. Disk flush intervals
7.2.3. Sluggish old low memory machines
7.2.4. The 2.6 kernel with ud
8. Debian tips
8.1. Booting the system
8.1.1. "I forgot the root password!" (1)
8.1.2. "I forgot the root password!" (2)
8.1.3. Cannot boot the system
8.1.4. "Let me disable X on boot!"
8.1.5. Other boot tricks with the boot prompt
8.1.6. Setting GRUB boot parameters
8.2. Recording activities
8.2.1. Recording shell activities
8.2.2. Recording X activities
8.3. Copy and archive a whole subdirectory
8.3.1. Basic commands for copying a whole subdirectory
8.3.2. cp
8.3.3. tar
8.3.4. pax
8.3.5. cpio
8.3.6. afio
8.4. Differential backup and data synchronization
8.4.1. Differential backup with rdiff
8.4.2. Daily backup with pdumpfs
8.4.3. Regular differential backup with RCS
8.5. System freeze recovery
8.5.1. Kill a process
8.5.2. Alt-SysRq
8.6. Nifty little commands to remember
8.6.1. Pager
8.6.2. Free memory
8.6.3. Set time (BIOS)
8.6.4. Set time (NTP)
8.6.4.1. Set time with permanent Internet connection
8.6.4.2. Set time with sporadic Internet connection
8.6.5. How to control console features such as the screensaver
8.6.6. Search administrative database
8.6.7. Disable sound (beep)
8.6.8. Error messages on the console screen
8.6.9. Set console to the correct type
8.6.10. Get the console back to a sane state
8.6.11. Convert a text file from DOS to Unix style
8.6.12. Convert a text file with recode
8.6.13. Regular-expression substitution
8.6.14. Edit a file in place using a script
8.6.15. Extract differences and merge updates for source files
8.6.16. Convert a large file into small files
8.6.17. Extract data from text file table
8.6.18. Script snippets for piping commands
8.6.19. Script snippets for looping over each file
8.6.20. Perl short script madness
8.6.21. Get text or a mailing list archive from a web page
8.6.22. Pretty print a web page
8.6.23. Pretty print a manual page
8.6.24. Merge two PostScript or PDF files
8.6.25. Time a command
8.6.26. nice command
8.6.27. Schedule activity (cron, at)
8.6.28. Console switching with screen
8.6.28.1. Remote access scenario
8.6.28.2. Typical screen commands
8.6.28.3. Backspace and/or Ctrl-H in screen session
8.6.28.4. Equivalent program to screen for X
8.6.29. Network testing basics
8.6.30. Flush mail from local spool
8.6.31. Remove frozen mail from local spool
8.6.32. Redeliver mbox contents
8.6.33. Clear file contents
8.6.34. Dummy files
8.6.35. chroot
8.6.35.1. Run a different Debian distribution with chroot
8.6.35.2. Setting up login for chroot
8.6.35.3. Setting up X for chroot
8.6.35.4. Run other distributions with chroot
8.6.35.5. Build a package with chroot
8.6.36. How to check hard links
8.6.37. mount hard disk image file
8.6.38. Samba
8.6.39. Utilities for foreign filesystems
8.7. Typical mistakes to be noted
8.7.1. rm -rf .*
8.7.2. rm /etc/passwd
9. Tuning a Debian system
9.1. System initialization
9.1.1. Customizing init scripts
9.1.2. Customizing system logging
9.1.3. Optimizing hardware
9.2. Restricting access
9.2.1. Restricting logins with PAM
9.2.2. "Why GNU su does not support the wheel group"
9.2.3. Purposes of standard groups
9.2.4. Working more safely – sudo
9.2.5. Restricting access to services
9.2.6. Centralizing authentication – LDAP
9.3. CD writers
9.3.1. Introduction
9.3.2. Approach 1: modules + lil
9.3.3. Approach 2: recompile the kernel
9.3.4. Post-configuration steps
9.3.5. CD-image file (bootable)
9.3.6. Write to the CD-writer (R, RW):
9.3.7. Make an image file of a CD
9.3.8. Debian CD images
9.3.9. Back up the system to CD-R
9.3.10. Copy a music CD to CD-R
9.3.11. Writing DVD-R, DVD-RW, and DVD+RW
9.4. X
9.4.1. X packages
9.4.2. Hardware detection for X
9.4.3. The X server
9.4.3.1. Configuring the X server (version 4)
9.4.3.2. Configuring the X server manually
9.4.3.3. Configuring the X server manually
9.4.4. X clients
9.4.5. X sessions
9.4.5.1. Custom X sessions
9.4.5.2. Starting an X session for a user
9.4.5.3. Setting up KDE and GNOME
9.4.6. Using X over TCP/IP
9.4.7. Connecting to a remote X server – xhost
9.4.8. Connecting to a remote X server – ssh
9.4.9. The X terminal emulator – xterm
9.4.10. X resources
9.4.11. Keymaps and pointer button mappings in X
9.4.12. Getting root in X
9.4.13. TrueType fonts in X
9.4.14. Web browsers in X
9.4.15. Mail Clients (MUAs) in X
9.5. SSH
9.5.1. Basics of SSH
9.5.2. Port forwarding for SMTP/POP3 tunneling
9.5.3. Connecting with fewer passwords – RSA
9.5.4. Dealing with alien SSH clients
9.5.5. Setting up ssh-agent
9.5.6. Troubleshooting SSH
9.6. Mail
9.6.1. Mail transport agents (MTAs)
9.6.1.1. Smarthost
9.6.1.2. Basic configuration of Exim
9.6.1.3. Setting up a catchall for nonexistent email addresses under Exim
9.6.1.4. Configuring selective address rewriting for outgoing mail under Exim
9.6.1.5. Configuring SMTP authentication under Exim
9.6.2. Fetching mail – Fetchmail
9.6.3. Processing mail – Procmail
9.6.4. Processing spam with crm114
9.6.5. Reading mail – Mutt
9.7. Localization (l10n)
9.7.1. Basics of localization
9.7.1.1. Localizing the keyboard
9.7.1.2. Localizing data files
9.7.1.3. Localizing the display
9.7.1.4. Localizing messages and documentation
9.7.2. Locales
9.7.3. Introduction to locales
9.7.4. Activating locale support
9.7.5. Activating a particular locale
9.7.6. ISO 8601 date format locale
9.7.7. Example for the US (ISO-8859-1)
9.7.8. Example for France with Euro sign (ISO-8859-15)
9.7.9. Example for a multilingual X window system
9.7.10. Alternative X input methods
9.7.11. X terminal emulators
9.7.12. UTF-8 support for the X terminal emulator
9.7.13. Example for UTF-8 in a framebuffer console
9.7.14. Beyond locales
9.8. Multilingualization (m17n)
10. Network configuration
10.1. Basics of IP networking
10.2. Low level network configuration
10.2.1. ifconfig and route
10.2.2. ip
10.2.3. Configuring a Wi-Fi interface
10.2.4. Configuring a PPP interface
10.2.4.1. Configuring pppd manually
10.2.4.2. Configuring pppd using pppconfig
10.2.4.3. Configuring a PPP interface using wvdial
10.3. Naming the computer
10.3.1. Hostname
10.3.2. Mailname
10.4. Domain Name Service (DNS)
10.4.1. The resolver
10.4.2. Managing nameserver information – resolvconf
10.4.3. Caching looked-up names – nscd, dnsmasq, pdnsd, bind9
10.4.4. Providing Domain Name Service – bind
10.5. Configuring network interfaces using DHCP
10.6. High level network configuration in Debian
10.6.1. High level network configuration using ifupdown
10.6.1.1. Configuring an interface with a static IP address
10.6.1.2. Configuring an interface using DHCP
10.6.1.3. Configuring a Wi-Fi interface
10.6.1.4. Configuring a PPP interface
10.6.1.5. Configuring a PPPoE interface
10.6.1.6. Configuring multiple Ethernet interfaces for a gateway
10.6.1.7. Configuring virtual interfaces
10.6.2. High level network configuration using ifupdown logical interface definitions
10.6.3. Automatic network configuration using ifupdown
10.6.4. Automatic network configuration using laptop-net
10.6.5. Automatic network configuration using network-manager
10.7. Dealing with inconsistent naming of interfaces by the kernel
10.8. Triggering network configuration
10.8.1. Triggering network configuration at boot time
10.8.2. Triggering network configuration – hotplug
10.8.3. Triggering network configuration – ifplugd
10.8.4. Triggering network configuration – waproamd
10.8.5. Network configuration and PCMCIA
10.9. Multi-stage mapping
10.10. Network service configuration
10.11. Network troubleshooting
10.12. Building a gateway router
10.12.1. Netfilter configuration
10.12.1.1. Basics of netfilter
10.12.1.2. Netfilter table
10.12.1.3. Netfilter target
10.12.1.4. Netfilter commands
10.12.1.5. Network Address Translation
10.12.1.6. Redirect SMTP connection (2.4)
10.12.2. Manage multiple net connections
11. Editors
11.1. Popular editors
11.2. Rescue editors
11.3. Emacs and Vim
11.3.1. Vim hints
11.3.2. Emacs hints
11.3.3. Starting the editor
11.3.4. Editor command summary (Emacs, Vim)
11.3.5. Vim configuration
11.3.6. Ctags
11.3.7. Convert a syntax-highlighted screen to HTML source
11.3.8. Split screen with vim
12. Version Control Systems
12.1. Concurrent Versions System (CVS)
12.1.1. Installing a CVS server
12.1.2. CVS session examples
12.1.2.1. Anonymous CVS (download only)
12.1.2.2. Use local CVS server
12.1.2.3. Use remote CVS pserver
12.1.2.4. Use remote CVS through ssh
12.1.2.5. Create a new CVS archive
12.1.2.6. Work with CVS
12.1.2.7. Export files from CVS
12.1.2.8. Administer CVS
12.1.3. Troubleshooting CVS
12.1.3.1. File permissions in repository
12.1.3.2. Execution bit
12.1.4. CVS commands
12.2. Subversion
12.2.1. Installing a Subversion server
12.2.1.1. Setting up a repository
12.2.1.2. Configuring Apache2
12.2.2. Moving a CVS repository to Subversion
12.2.3. Subversion usage examples
12.2.3.1. Create a new Subversion archive
12.2.3.2. Working with Subversion
13. Programming
13.1. Where to start
13.2. Shell
13.2.1. Bash – GNU standard interactive shell
13.2.2. POSIX shells
13.2.3. Shell parameters
13.2.4. Shell redirection
13.2.5. Shell conditionals
13.2.6. Command-line processing
13.3. Awk
13.4. Perl
13.5. Python
13.6. Make
13.7. C
13.7.1. Simple C program (gcc)
13.7.2. Debugging
13.7.2.1. Debugging with gdb
13.7.2.2. Check dependency on libraries
13.7.2.3. Debugging with memory leak detection tools
13.7.3. Flex – a better Lex
13.7.4. Bison – a better Yacc
13.7.5. Autoconf
13.7.5.1. Compile and install a program
13.7.5.2. Uninstall program
13.8. Web
13.9. Document preparation
13.9.1. roff typesetting
13.9.2. SGML
13.9.3. TeX/LaTeX
13.9.4. Literate Programming
13.9.4.1. Noweb
13.9.4.2. Doxygen
13.10. Packaging
13.10.1. Packaging a single binary
13.10.2. Packaging with tools
14. GnuPG
14.1. Installing GnuPG
14.2. Using GnuPG
14.3. Managing GnuPG
14.4. Using GnuPG with applications
14.4.1. Using GnuPG with Mutt
14.4.2. applications
15. Support for Debian
15.1. References
15.2. Finding the meaning of a word