• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.builds/H13-Nov-2021-7871

3rd-party/nanosvg/H13-Nov-2021-5,4634,318

completions/H13-Nov-2021-5145

doc/H03-May-2022-187138

external/H13-Nov-2021-391324

subprojects/H13-Nov-2021-86

.gitignoreH A D13-Nov-202154 65

.gitlab-ci.ymlH A D13-Nov-20211.4 KiB6253

.gitmodulesH A D13-Nov-2021136 54

.woodpecker.ymlH A D13-Nov-20212.2 KiB8475

CHANGELOG.mdH A D13-Nov-20215.2 KiB243141

LICENSEH A D13-Nov-20211 KiB2217

PKGBUILDH A D13-Nov-20211.2 KiB4941

README.mdH A D13-Nov-20212.4 KiB11780

application.cH A D13-Nov-20216.5 KiB275211

application.hH A D13-Nov-20211.3 KiB6752

dmenu.cH A D13-Nov-20211.5 KiB7456

dmenu.hH A D13-Nov-2021204 85

fdm.cH A D13-Nov-20214.9 KiB239193

fdm.hH A D13-Nov-2021515 2012

generate-version.shH A D13-Nov-20211 KiB4627

icon.cH A D13-Nov-202113.7 KiB531419

icon.hH A D13-Nov-2021610 3123

log.cH A D13-Nov-20214.5 KiB167135

log.hH A D13-Nov-20211.8 KiB4335

main.cH A D13-Nov-202119 KiB621525

match.cH A D13-Nov-20217.5 KiB288234

match.hH A D13-Nov-20211.2 KiB3928

meson.buildH A D13-Nov-20215 KiB178156

nanosvg.cH A D13-Nov-2021109 65

nanosvgrast.cH A D13-Nov-2021122 75

png-fuzzel.hH A D13-Nov-2021157 105

png.cH A D13-Nov-20214.1 KiB148107

prompt.cH A D13-Nov-20215.3 KiB263208

prompt.hH A D13-Nov-20211,010 2922

render.cH A D13-Nov-202121.6 KiB695545

render.hH A D13-Nov-20211.6 KiB6247

shm.cH A D13-Nov-20215.2 KiB205156

shm.hH A D13-Nov-2021533 3324

stride.hH A D13-Nov-2021198 107

wayland.cH A D13-Nov-202150.2 KiB1,8391,450

wayland.hH A D13-Nov-2021949 3824

xdg.cH A D03-May-20229.2 KiB346280

xdg.hH A D13-Nov-2021382 1710

README.md

1[![CI status](https://ci.codeberg.org/api/badges/dnkl/fuzzel/status.svg)](https://ci.codeberg.org/dnkl/fuzzel)
2
3# Fuzzel
4
5Fuzzel is a Wayland-native application launcher, similar to rofi's
6_drun_ mode.
7
8[![Packaging status](https://repology.org/badge/vertical-allrepos/fuzzel.svg)](https://repology.org/project/fuzzel/versions)
9
10
11## Screenshot
12
13![Screenshot](doc/screenshot.png)
14
15_Fuzzel, with transparency, on top of a browser window showing a diff of a fuzzel commit_
16
17
18## Features:
19
20- Wayland native
21- Rofi drun-like mode of operation
22- dmenu mode where newline separated entries are read from stdin
23- Emacs key bindings
24- Icons!
25- Remembers frequently launched applications
26
27
28## Limitations:
29
30- No themes (but you **can** configure font and colors)
31
32
33## Requirements
34
35### Runtime
36
37* pixman
38* wayland (_client_ and _cursor_ libraries)
39* xkbcommon
40* cairo (optional)
41* libpng (optional)
42* librsvg (optional)
43* [fcft](https://codeberg.org/dnkl/fcft) [^1]
44
45[^1]: can also be built as subprojects, in which case they are
46    statically linked.
47
48
49### Building
50
51* meson
52* ninja
53* wayland protocols
54* scdoc
55* [tllist](https://codeberg.org/dnkl/tllist) [^1]
56
57
58## Installation
59
60To build, first, create a build directory, and switch to it:
61```sh
62mkdir -p bld/release && cd bld/release
63```
64
65Second, configure the build (if you intend to install it globally, you
66might also want `--prefix=/usr`):
67```sh
68meson --buildtype=release \
69    -Denable-cairo=disabled|enabled|auto \
70    -Denable-png=disabled|enabled|auto \
71    -Denable-svg=disabled|enabled|auto \
72    ../..
73```
74
75`-Denable-{png,svg}` can be used to force-enable or force-disable png
76and/or svg support. The default is `auto`, which means enable if all
77required libraries are available. PNGs require _libpng_, and SVGs
78require _cairo_ and _librsvg_.
79
80`-Denable-cairo` can be used to force-enable or force-disable cairo
81support. When disabled, fuzzel will not be able to draw rounded
82corners, nor will it support SVGs (regardless of what `-Denable-svg`
83is set to).
84
85Three, build it:
86```sh
87ninja
88```
89
90You can now run it directly from the build directory:
91```sh
92./fuzzel
93```
94
95Use command line arguments to configure the look-and-feel:
96```sh
97./fuzzel --help
98```
99
100Optionally, install it:
101```sh
102ninja install
103```
104
105For more detailed configuration information, see the man page:
106```sh
107man fuzzel
108```
109
110
111## License
112
113Fuzzel is released under the [MIT license](LICENSE).
114
115Fuzzel uses nanosvg, released under the [Zlib
116license](3rd-party/nanosvg/LICENSE.txt).
117