Table of Content
This is a four-parts article. There are few sections here.Part One
- Preface: Test Bed, Must Read
- Getting Started With Docker
- Package Management: DPKG Frontend, APT Frontend, Get Help, The new APT, APT Shell
- Updating System: OS Release, Refresh Update, List Upgradable, Upgrade
- Package IRSIF: Install, Download, Removal, Unused Dependency, Query Search, Show Info, List Files, Extract
- What's Next
- Group: Task
- Package More: Change Log, Policy, aptitude, dselect, configure, Search Files, dlocate, Unused Dependency
- System Wide: Statistics, List Packages, Config, Verify
- History: The Log File
- Clean Up: Clean, Unused Dependency, Orphan
- What's Next
- Dependency: Dependency, Reverse Dependency, Test
- Hold Package: Building Example, Mark Hold, Pinning
- Repository: Configuration, Policy, Add Repository, Mirror
- Distribution Upgrade
- Repository Pinning: nmap Case, New Docker for Stretch, Stable nmap, Pinning Unstable, Unstable nmap
- What's Next
- Build from Source: The Toolchain, Source Repository, User Privilege, Build Directory, Example, Download Source, Build Source, Examine Directory, Install Result
- Developer Script: debcheckout, Build Dependency, Build Package, Lintian, Source Compile, debi, Deb Checksums, Show Source
Build from Source
APT has the capability to build the source code, not just download the package.
I actually have cover this last year. I just need to recompile the material, to fit this package management (in docker) series articles.
Preparing the toolchain is as simply as install
What you need to know is,
this toolchain is a lot of packages in number as this message said
“_ 10 upgraded, 80 newly installed_ “, “ Need to get 145 MB of archives “.
Make sure that source repository
is enabled in your
seems like an appropriate name.
Build require regular user, non root one. Consider make one first.
If you wish you can also setup sudoers.
Make any directory as a working directory for your compilation process
apt package as our guinea pig example.
Simply issue one of this command below to check package version.
It is going to be a good idea to upgrade system to latest version to avoid missing libraries. Since we are going to modify system package, this is a must do part. Or you may end up with something similar as message below
Building a package could be as simple as this.
This above is the most important part of the process. You can also unbundling this process into two steps.
The first one, will also install the needed package,
code and al its dependencies.
Now we have this files our working directory.
Consider Build the package. Let’s do it. This is the most interesting part. This is going to takes time.
Check your directoy,
apt_1.5~rc1_amd64.deb package should already be there.
Install package using
Does it work?
You can check your
apt version now
After a few days, you will feels like compiling is not difficult.
There are other way though,
more elegant to build package from source.
If you are a developer there are few goodies
you can have from
Note that as usual, consider be as user and enable source repository.
Go to build tree directory first.
And you will have the result similar as below:
Check for possible issue.
This is even shorter.
debuild is a convenient way,
if you want to build your own package.
Since we do not have our very own source, consider use the newly downloaded herbstluftwm. Go to build directory first.
Of course we do not have secret key for herbstuftwm. This is a part of Debian security model.
Now we can see the source info in cache.
These are just preliminary knowledge about APT.
Thank you for reading
- December 2017
- Docker - Package Management Summary
- Docker - LFS Build
- Docker - Arch ALPM - Part Four
- Docker - Arch ALPM - Part Three
- Docker - Arch ALPM - Part Two
- Docker - Arch ALPM - Part One
- Docker - Debian APT - Part Three
- Docker - Debian APT - Part Two
- Docker - Debian APT - Part One
- Docker - Slackware Package - Part Three
- Docker - Slackware Package - Part Two
- Docker - Slackware Package - Part One
- Docker - Fedora DNF - Part Four
- Docker - Fedora DNF - Part Three
- Docker - Fedora DNF - Part Two
- Docker - Fedora DNF - Part One
- Docker - openSUSE Zypper - Part Four
- Docker - openSUSE Zypper - Part Three
- Docker - openSUSE Zypper - Part Two
- Docker - openSUSE Zypper - Part One
- Docker - Void XBPS - Part Two
- Docker - Void XBPS - Part One
- Docker - Gentoo Portage - Part Three
- Docker - Gentoo Portage - Part Two
- Docker - Gentoo Portage - Part One
- Docker - Crux Ports
- Distribution - Debian to Devuan Migration
- Distribution - Manjaro OpenRC to Artix Migration
- Distribution - Mageia 6 Upgrade
- File System - GRUB2 support for BTRFS
- Distribution - openSUSE Tumbleweed First Time Install
- Distribution - Fedora First Time Install
- Distribution - Manjaro OpenRC Issues
- July 2017
- June 2017
- May 2017
- April 2017