Go to file
Oliver Kurth 6eb878c6b8 install locally built packages with --nogpgcheck 2025-07-21 19:58:29 +00:00
.copr add .copr/Makefile to build with COPR 2024-07-26 14:51:17 -07:00
.github/workflows install locally built packages with --nogpgcheck 2025-07-21 19:58:29 +00:00
bin Fix updateinfo script 2024-12-11 10:39:38 +05:30
ci Remove tdnf-python module 2025-03-25 14:18:41 +05:30
client Fix clang build errors 2025-07-19 11:47:21 +05:30
cmake Replace existing use of libxml2 library with expat library. 2023-06-28 04:11:16 +00:00
common Fix clang build errors 2025-07-19 11:47:21 +05:30
docs remove trailing ws 2022-04-01 23:58:32 +00:00
etc Fix updateinfo script 2024-12-11 10:39:38 +05:30
history Install history-db-util to /usr/libexec/tdnf 2024-12-02 16:39:57 +05:30
include implement --forcearch option 2025-07-10 20:47:13 +00:00
jsondump jsondump: address cppcheck warnings 2024-03-17 12:45:27 +05:30
llconf llconf: address cppcheck warnings 2024-03-17 12:45:27 +05:30
plugins fix metalink 'size' field parsing 2024-08-02 21:44:57 +00:00
pytests Refactor instance lock code 2025-07-19 11:45:05 +05:30
scripts Remove tdnf-python module 2025-03-25 14:18:41 +05:30
solv implement --forcearch option 2025-07-10 20:47:13 +00:00
tools Refactor format string 2025-07-19 11:46:06 +05:30
.gitignore add .copr/Makefile to build with COPR 2024-07-26 14:51:17 -07:00
CMakeLists.txt Enable -Werror gcc build flag 2025-07-19 11:47:02 +05:30
CONTRIBUTING.md comnmands -> commands 2024-10-07 13:54:54 -07:00
COPYING ITS issue fixed for tdnf. 2021-09-09 07:27:58 +00:00
README.md Update README.md 2022-05-25 14:10:27 -07:00
VERSION set version from VERSION file 2024-07-26 14:24:23 -07:00
tdnf.spec.in spec file: no check if check is disabled 2025-05-15 19:33:36 +00:00
tox.ini add tox.ini for flake8 options 2022-02-11 09:08:04 -08:00

README.md

tdnf - tiny dandified yum

In order to compile, from the checkout directory, run the following

mkdir build && cd build
cmake ..
make

Do enable debugging symbols (useful for use with gdb), use:

cmake -DCMAKE_BUILD_TYPE=Debug ..

You can also build tdnf using docker using the following commands:

docker build -t photon/tdnf-build -f ci/Dockerfile.photon .
docker run --rm -it -v $(pwd):/build -w /build photon/tdnf-build

create a conf file named tdnf.conf under /etc/tdnf/ with the following content

[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=true
repodir=/etc/yum.repos.d
cachedir=/var/cache/tdnf

Now configure repo files under /etc/yum.repos.d or your repodir following .repo format of dnf/yum.

You should now have a client executable named tdnf under bin/. To test run:

./bin/tdnf list installed

You should see a list of installed packages and their related info

Testing

To build and run the test scripts within a container, do:

export DIST=photon
docker run --security-opt seccomp:unconfined --rm -it -e DIST -v$(pwd):/build -w/build ${DIST}/tdnf-build ./ci/docker-entrypoint.sh

Same for

export DIST=fedora

Coverity

Assuming you have coverity installed on /pathto/coverity, you can run:

docker run --rm -it -v $(pwd):/build -v /pathto/coverity/:/coverity/ -w /build photon/tdnf-build ./ci/coverity.sh

This will put the output to ./build-coverity. You can then commit the results to the coverity database from that directory, or view the results in ./build-coverity/html. For example, you can start an nginx container:

docker run -it --rm -p 8080:80 --name web -v $(pwd)/build-coverity/html:/usr/share/nginx/html nginx

and then view results in your browser at http://<host>:8080/.