Cool things to try
Fast package installation
- Verify
i3status
is not yet installed:i3status --version
- Install the
i3status
package:distri install i3status
- Verify
i3status
is now installed:i3status --version
Specific package versions
-
Find out which package a file belongs to:
readlink -f /bin/i3
-
If we are unhappy with the path that the exchange directory references, we can side-step it and make a specific selection:
% i3 --version % /ro/i3-amd64-4.15*/bin/i3 --version % /ro/i3-amd64-4.17*/bin/i3 --version
Exchange directories
- The
/bin
directory contains all executables:ls /bin
- distri implements common file system hierarchy locations such as
/usr/include
as a symbolic link to an exchange directory:ls -l /usr/include
- Exchange directories consist of symbolic links to the files of individual distri packages:
ls -l /usr/include/
Debug symbols and package sources
- Start the GNU Debugger, e.g.
gdb ps
- Set a breakpoint on the
main
function and run the program:gdb> break main gdb> run
- Once the breakpoint is hit, list the source code:
gdb> list
- Notice that you did not have to manually install any debug packages or sources.
C build environment
- Make available the build dependencies using
distri install autoconf automake make gcc libxcb xorgproto
- Build standard C software as usual:
% git clone https://github.com/i3/i3lock % cd i3lock % autoreconf -fi % mkdir build && cd build % ../configure % make -j8
© 2018 Michael Stapelberg and contributors