{"id":13411318,"url":"https://github.com/thindil/hunter","last_synced_at":"2025-03-14T17:30:38.504Z","repository":{"id":108684647,"uuid":"181053223","full_name":"thindil/hunter","owner":"thindil","description":"Mirror of Graphical File Manager for Linux","archived":true,"fork":false,"pushed_at":"2022-06-01T03:23:12.000Z","size":5977,"stargazers_count":22,"open_issues_count":0,"forks_count":3,"subscribers_count":6,"default_branch":"tk","last_synced_at":"2024-07-31T20:45:32.944Z","etag":null,"topics":["ada","file-manager","gtkada","linux","tashy","tk"],"latest_commit_sha":null,"homepage":"","language":"Ada","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/thindil.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null},"funding":{"liberapay":"thindil"}},"created_at":"2019-04-12T17:23:24.000Z","updated_at":"2023-08-20T07:07:44.000Z","dependencies_parsed_at":"2023-04-05T20:29:22.210Z","dependency_job_id":null,"html_url":"https://github.com/thindil/hunter","commit_stats":{"total_commits":3897,"total_committers":1,"mean_commits":3897.0,"dds":0.0,"last_synced_commit":"546af63d7c7b0e137b51b6a7ddd326161b03f52f"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thindil%2Fhunter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thindil%2Fhunter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thindil%2Fhunter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thindil%2Fhunter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thindil","download_url":"https://codeload.github.com/thindil/hunter/tar.gz/refs/heads/tk","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243618592,"owners_count":20320263,"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":["ada","file-manager","gtkada","linux","tashy","tk"],"created_at":"2024-07-30T20:01:12.890Z","updated_at":"2025-03-14T17:30:37.809Z","avatar_url":"https://github.com/thindil.png","language":"Ada","funding_links":["https://liberapay.com/thindil"],"categories":["Applications"],"sub_categories":["Office"],"readme":"Hunter is a graphical and console file manager for Linux, inspired by [Ranger](https://ranger.github.io/).\nAt this moment, Hunter is under development and have all basic features\nof a file manager. To open files, the program uses default applications\nfrom [XDG MIME Application Specification](https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-latest.html).\n\n**Note:** This version of README.md is about development version of the\nprogram. Some things may be different in released version of Hunter.\n\nThis is the new version based on Tk library (graphical version). For the stable\nversion of the program please look [here](https://github.com/thindil/hunter/tree/origin/master)\n\n**INFO:** This project is no longer maintained. Feel free to clone it and take care about it.\n\n## Features\n\n* Graphical (Tk) and console (Ncurses) version of the program.\n* Two column mode default or one column mode: One column always show files\n  and directories, second column is used to preview files and directories\n  or select a destination location to move or copy files. In one column\n  mode, second column, appear only when copying or moving files or directories.\n* Preview of text files (with syntax highlighting) and images.\n* Standard file manager features: copy, delete, move files and directories,\n  change their permissions, change application associated with them.\n* Written in Ada programming language.\n* Available in English and Polish languages.\n* Extendable with plugins system (plugins can be written theoretically in any\n  language, but mainly in Tcl).\n\n## Build the program from sources\n\n### Docker way\n\nYou can use Docker image `adabuild` from the project [Docker Ada](https://www.laeran.pl/repositories/dockerada).\nIt contains all libraries and compiler needed to build the program.\n\nTo build the program, download `adabuild` image and type in console:\n\n* If you want to build the graphical version of the program:\n\n`docker run --rm -v [path to source code]:/app ghcr.io/thindil/adabuild /bin/bash -c \"cd /app \u0026\u0026 gprbuild -p -P hunter.gpr -XMode=release\"`\n\n* If you want to build the console version of the program:\n\n`docker run --rm -v [path to source code]:/app ghcr.io/thindil/adabuild /bin/bash -c \"cd /app \u0026\u0026 gprbuild -p -P hunter.gpr -XMode=release -XUI=console\"`\n\n### Classic way\n\nTo build you need:\n\n* compiler - GCC with enabled Ada support. The most distributions should have\n  it. The program does not work with old compilers (like GCC 4.9) since it\n  lacks full support for Ada 2012.\n\n* Tcl/Tk library. Should be available in any Linux distribution.\n\n* XmlAda - Should be available in the most Linux distributions. In other\n  situation, you may need to download it from:\n\n  https://github.com/AdaCore/xmlada\n\n* TASHY library with included binding to Tk and TkLib. You can get it from:\n\n   https://github.com/thindil/tashy\n\n   **Important:** To build this version of Hunter the version 8.6.9 is\n   required. Ealier versions will not work due to lack of some bindings.\n\n* File command (libmagic) development files. It can have different names in\n  every Linux distribution: in Fedora it is *file-devel* on Debian/Ubuntu/Mint\n  *file-dev*.\n\n* If you want to build the console version of the program, you will also need\n  ncurses library, its development files and the Ada binding for it. All\n  should be available in the most Linux distributions.\n\n* Additionally, the program need a couple of other libraries to run, they are\n  listed in the section *Running Hunter* below.\n\nIf you have all the required packages, navigate to the main directory(where\nthis file is) to compile:\n\n* The simplest way to compile the program is use Gnat Studio. It should be\n  available in the most distributions. Just run it, select *hunter.gpr* as a\n  project file and select option `Build All`.\n\n* If you prefer using console: to build the graphical version of the program,\n  in main source code directory, type `gprbuild -P hunter.gpr` for debug mode\n  build or for release mode: `gprbuild -P hunter.gpr -XMode=release`. If you\n  have installed [Bob](https://github.com/thindil/bob) you can type `bob debug`\n  for build in debug mode or `bob release` to prepare release for the program.\n  If you want to build the console version of the program, in main source code\n  directory type `gprbuild -P hunter.gpr -XUI=console` for debug mode build or\n  for release mode: `gprbuild -P hunter.gpr -XMode=release -XUI=console`. If\n  you have installed [Bob](https://github.com/thindil/bob) you can type\n  `bob debugconsole` for build in debug mode or `bob releaseconsole` to prepare\n  release for the program.\n\n## Running Hunter\n\nIf you use downloaded AppImage version, you don't need any additional\nlibraries. Just run it as any AppImage file. More information about AppImage\nfiles usage, you can find at:\n\nhttps://docs.appimage.org/user-guide/run-appimages.html\n\n**IMPORTANT:** The current AppImage version require GNU LibC in version at\nleast 2.29. It will not work with earlier versions. In that situation,\nunfortunately you will have to build the program by yourself.\n\nWhen you are trying to run build by yourself version of the program, run\n`hunter` from `bin` directory. Additionally, the program requires a few\nmore libraries (in its graphical version):\n\n* Tk extension *tklib*. Should be available in every Linux distribution.\n\n* Tk extension *Img*. In Debian/Ubuntu/Mint it is named *libtk-img*.\n\n* Tk extension *tksvg*. You can get it from:\n\n   https://github.com/auriocus/tksvg\n\n\n### Starting parameter\n\nYou can set directory to view when starting the program by adding it full path\nto the starting command. For example, to view root directory `/` run the\nprogram with `hunter /`\n\n### Testing versions\n\nHere are available testing versions of the game. You can find them\nin [Actions](https://github.com/thindil/hunter/actions?query=workflow%3A\"Continuous+Integration\").\nJust select option from the list of results to see Artifacts list.\nTo use them, first you must download normal release. Then, for Linux: inside\ndirectory where the game is, type `./hunter-x86_64.AppImage --appimage-extract`\nto extract whole game to directory *squashfs-root*. And then move files\nfrom the archive to the proper location. To run that version, enter\n*squashfs-root* directory and type in console `./AppRun`.\n\nSize is a file's size after unpacking. You will download it compressed with\nZip.\n\n## Generating code documentation\n\nTo generate (or regenerate) code documentation, you need [ROBODoc](https://rfsber.home.xs4all.nl/Robo/)\nIf you have it, in the main program directory (where this file is) enter\nterminal command: `others/generatedocs.tcl`. For more information about this\nscript, please look [here](https://github.com/thindil/roboada#generatedocspy). This\nversion of script have set all default settings for Hunter code. If you have\n[Bob](https://github.com/thindil/bob) installed, you can type `bob docs`.\n\n## Contributing to the project\nFor detailed information about contributing to the project (bugs reporting,\nideas propositions, code conduct, etc), see [CONTRIBUTING.md](CONTRIBUTING.md)\n\n## Licenses\nHunter is available under GPLv3 license.\n\nxdg-mime and xdg-open scripts distributed with the program are part of the\nxdg-utils project and released under MIT license:\n\nhttps://github.com/freedesktop/xdg-utils\n\nHighlight program distributed with the program is under GPLv3 license:\n\nhttp://www.andre-simon.de/doku/highlight/en/highlight.php\n\nTcl/Tk, Tklib libraries are available under BSD-like license:\n\nhttps://www.tcl.tk/\n\nTk Img library is available under BSD-like license:\n\nhttps://sourceforge.net/projects/tkimg/\n\nTksvg library is available under BSD-like license:\n\nhttps://github.com/auriocus/tksvg\n\nNcurses library is available under X-11 license:\n\nhttps://invisible-island.net/ncurses/\n\nTASHY is distributed under GPLv2 with runtime exception license:\n\nhttps://github.com/thindil/tashy\n\nIcons included in the program are modified version of the KDE Breeze Icons\ntheme which are available under LGPLv2 license:\n\nhttps://github.com/KDE/breeze-icons\n\nThe Hunter default themes are tkBreeze themes released under LGPLv2 license:\n\nhttps://github.com/thindil/tkBreeze\n\n----\n\nThat's all for now, and again, probably I forgot about something important ;)\n\nBartek thindil Jasicki\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthindil%2Fhunter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthindil%2Fhunter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthindil%2Fhunter/lists"}