{"id":21904633,"url":"https://github.com/manatools/dnfdragora","last_synced_at":"2025-04-04T07:08:26.748Z","repository":{"id":46618266,"uuid":"54920094","full_name":"manatools/dnfdragora","owner":"manatools","description":"dnfdragora is a dnf frontend based on libyui abstraction","archived":false,"fork":false,"pushed_at":"2025-03-15T14:49:12.000Z","size":6148,"stargazers_count":149,"open_issues_count":40,"forks_count":42,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-03-28T16:54:21.368Z","etag":null,"topics":["dnf","fedora","libyui-mga","mageia","package-manager","python-3","rpm"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/manatools.png","metadata":{"files":{"readme":"README.md","changelog":"Changes","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-03-28T20:05:49.000Z","updated_at":"2025-03-15T14:49:16.000Z","dependencies_parsed_at":"2023-02-12T02:02:07.265Z","dependency_job_id":"f20a91f8-4e56-4716-a69a-a2a22ec3f29c","html_url":"https://github.com/manatools/dnfdragora","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manatools%2Fdnfdragora","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manatools%2Fdnfdragora/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manatools%2Fdnfdragora/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manatools%2Fdnfdragora/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/manatools","download_url":"https://codeload.github.com/manatools/dnfdragora/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247135144,"owners_count":20889421,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dnf","fedora","libyui-mga","mageia","package-manager","python-3","rpm"],"created_at":"2024-11-28T16:17:50.885Z","updated_at":"2025-04-04T07:08:26.704Z","avatar_url":"https://github.com/manatools.png","language":"Python","funding_links":[],"categories":["Applications"],"sub_categories":["GUI-based Applications"],"readme":"# dnfdragora \n![logo](https://raw.githubusercontent.com/manatools/dnfdragora/master/share/images/64x64/dnfdragora-logo.png \"dnfdragora\") dnfdragora is a [DNF](http://dnf.readthedocs.io/en/latest/) frontend, based on rpmdragora from Mageia (originally rpmdrake) Perl code.\n\ndnfdragora is written in Python 3 and uses libYui, the widget abstraction library written by SUSE, so that it can be run using Qt 5, GTK+ 3, or ncurses interfaces.\n\nExample with Qt:\n![dnfdragora with Qt UI](screenshots/dnfdragora-qt.png \"dnfdragora with Qt UI\")\n\nExample with GtK:\n![dnfdragora with GtK UI](screenshots/dnfdragora-gtk.png \"dnfdragora with GtK UI\")\n\nExample with ncurses:\n![dnfdragora with ncurses UI](screenshots/dnfdragora-ncurses.png \"dnfdragora with ncurses UI\")\n\n## REQUIREMENTS\n\n### DNF5 Daemon\n* https://github.com/rpm-software-management/dnf5\n* Version higher than 5.2.7 required.\n\n### pystray \u003e= 0.17.3\n* https://github.com/moses-palmer/pystray\n\n### SUSE libyui \u003e= 4.2.14\n* https://github.com/libyui/libyui\n* Consider to check some not yet approved changes here https://github.com/anaselli/libyui\n\n### libyui-mga \u003e= 1.2.1 - our widget extension\n* https://github.com/manatools/libyui-mga\n\n### SUSE libyui-bindings (included into libyui)\n* https://github.com/libyui/libyui\n\n### python-manatools \u003e= 0.0.4\n* https://github.com/manatools/python-manatools\n\n### at least one of the SUSE libyui plugins\n* libyui-gtk     - https://github.com/libyui/libyui-gtk\n* libyui-ncurses - https://github.com/libyui/libyui\n* libyui-qt      - https://github.com/libyui/libyui\n* Consider here also to check some not yet approved changes at\n  https://github.com/anaselli/libyui-XXX forks (where XXX is\n  gtk, qt or ncurses)\n\n### at least one of the MGA libyui widget extension plugins (according to the one above)\n* libyui-mga-gtk     - https://github.com/manatools/libyui-mga-gtk\n* libyui-mga-ncurses - https://github.com/manatools/libyui-mga-ncurses\n* libyui-mga-qt      - https://github.com/manatools/libyui-mga-qt\n\n## INSTALLATION\n\n### Distribution packages:\n* Mageia:\n    * dnfdragora: `dnf install dnfdragora` or `urpmi dnfdragora`\n    * dnfdragora-gui: `dnf install dnfdragora-\u003cgui\u003e` or `urpmi dnfdragora-\u003cgui\u003e`\n        * Replace `\u003cgui\u003e` with `qt` or `gtk` depending on desired toolkit\n* Fedora:\n    * dnfdragora:     `dnf install dnfdragora`     (installs all needed for use on terminal)\n    * dnfdragora-gui: `dnf install dnfdragora-gui` (installs all needed for use in desktop environment)\n\n### From sources:\n* Packages needed to build:\n    * cmake \u003e= 3.4.0\n    * python3-devel \u003e= 3.4.0\n    * optional: gettext        (for locales)\n    * optional: python3-sphinx (for manpages)\n* Configure: `mkdir build \u0026\u0026 cd build \u0026\u0026 cmake ..`\n    * -DCMAKE_INSTALL_PREFIX=/usr      - Sets the install path, eg. /usr, /usr/local or /opt\n    * -DCHECK_RUNTIME_DEPENDENCIES=ON  - Checks if the needed runtime dependencies are met.\n    * -DENABLE_COMPS=ON                - Useful if your distribution uses COMPS for groups, eg. Fedora, RHEL, CentOS\n* Build:     `make`\n* Install:   `make install`\n* Run:       `dnfdragora`\n\n### From sources (for developers and testers only):\n* Packages needed to build:\n    * cmake \u003e= 3.4.0\n    * python3-devel \u003e= 3.4.0\n    * python3-virtualenv\n    * optional: gettext        (for locales)\n    * optional: python3-sphinx (for manpages)\n* Setup your virtual environment\n    * cd $DNFDRAGORA_PROJ_DIR                 # DNFDRAGORA_PROJ_DIR is the dnfdragora project directory\n    * virtualenv --system-site-packages venv  # create virtual environment under venv directory\n    * . venv/bin/activate                     # activate virtual environment\n* Configure: `mkdir build \u0026\u0026 cd build \u0026\u0026 cmake -D... .. \u0026\u0026 make install`\n    * needed cmake options are\n        * -DCMAKE_INSTALL_PREFIX=$DNFDRAGORA_PROJ_DIR/venv              - venv install prefix \n        * -DCMAKE_INSTALL_FULL_SYSCONFDIR=$DNFDRAGORA_PROJ_DIR/venv/etc - venv sysconfig directory\n    * useful cmake options are\n        * -DCHECK_RUNTIME_DEPENDENCIES=ON  - Checks if the needed runtime dependencies are met.\n        * -DENABLE_COMPS=ON                - Useful if your distribution uses COMPS for groups, eg. Fedora, RHEL, CentOS\n* Run: `dnfdragora` into virtual environment, add '--locales-dir' option if you want to test localization locally)\n    * useful dnfdragora options are\n        * --locales-dir         - if you want to test localization locally\n        * --images-path         - local icons and images (set to $DNFDRAGORA_PROJ_DIR/venv/share/dnfdragora/images/)\n\n## CONTRIBUTE\n\nManaTools and dnfdragora developers (as well as some users and contributors) are on Matrix. They often discuss development issues there\nto get immediate feedback and develop ideas. The Matrix room is [`#manatools:matrix.org`](https://matrix.to/#/!manatools:matrix.org).\nThe Matrix room is also bridged to the IRC channel `#manatools` on Libera Chat. Get in touch with us!\n\nIf you have any issues or ideas add or comment an [issue](https://github.com/manatools/dnfdragora/issues).\n\nCheck also into our [TODO](TODO.md) file.\n\n## LICENSE AND COPYRIGHT\n\nSee [license](LICENSE) file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanatools%2Fdnfdragora","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmanatools%2Fdnfdragora","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanatools%2Fdnfdragora/lists"}