aboutsummaryrefslogtreecommitdiff
path: root/README
blob: 51d66b3812fb99ec4bf1a6fe30a2b65c3c4b2e04 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# -*- mode: org; org-html-head-include-default-style: nil; org-html-postamble: nil; after-save-hook: org-md-export-to-markdown; -*-
#+OPTIONS: toc:nil num:nil
* fdroid.el
=fdroid.el= is an Emacs interface to [[https://f-droid.org/][F-Droid]]. Its purpose is to aid in the management of F-Droid packages for an Android device or an emulator inside the comfort of Emacs.

To install it manually, simply point to the =fdroid.el= Git checkout in your =load-path=.

#+begin_src elisp
(add-to-list 'load-path "path/to/fdroid.el")
#+end_src

If you'd like to contribute to the project, the easiest way is for you to install the [[https://guix.gnu.org/][GNU Guix]] package manager and start developing on the local checkout by invoking the following commands:

#+begin_src sh
cd /path/to/fdroid.el
guix shell --pure
#+end_src

Since this package leverages the [[https://github.com/mvdan/fdroidcl][fdroidcl]] F-Droid desktop client for most of its functionality, it's necessary for you to have it installed. If it's your first time using =fdroidcl=, ensure to download the F-Droid repository index via the =M-x fdroid-update= command.

An example configuration might look like this:

#+begin_src elisp
(define-key global-map (kbd "C-c C--") 'fdroid-map) ; Set your preferred binding for the fdroid-map
(with-eval-after-load 'fdroid
  (setopt fdroid-log-events t) ; Whether messages should be logged after an operation
  (setopt fdroid-sans-device t)) ; Perform `fdroid-*' operations without a connected device
#+end_src

Above, we set a global binding for the =fdroid-map=. From here onward we can use the =fdroid-list-packages= command to show all packages available for the current F-Droid repository. You can then invoke the interactive commands set below or, if you have the [[https://github.com/oantolin/embark][Embark]] package installed, the corresponding Embark actions on the mini-buffer targets:

- =fdroid-install= (~i~) :: install the current package.
- =fdroid-uninstall= (~u~) :: uninstall the current package.
- =fdroid-download= (~d~) :: download the current package.
- =fdroid-show= (~s~) :: show more information about the current package.

Feel free to open an issue or send a pull request if you encounter a bug or wish to add a new feature.