Highly customizable finder with high performance. Written in Rust and uses GTK

Related tags

GUI findex
Overview

Findex

Highly customizable finder with high performance. Written in Rust and uses GTK

Screenshot

Installation

Automatic

Binary

  • Clone from https://aur.archlinux.org/findex.git

From source

  • Clone from https://aur.archlinux.org/findex-git.git

Now run makepkg -si

Manual

Make a release build using cargo build --release
Copy target/release/findex to /usr/bin/
Copy css/style.css to /opt/findex/

Customization

Customization can be done through the stylesheet located in ~/.config/findex/style.css. You only have to make sure that it's valid for gtk.

Comments
  • thread 'main' panicked

    thread 'main' panicked

    When I try to run it I just get this crash

    thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', src/query.rs:148:41
    stack backtrace:
    note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
    

    And if this is of any help with RUST_BACKTRACE=full

    thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', src/query.rs:148:41
    stack backtrace:
       0:     0x564cc34c616d - <unknown>
       1:     0x564cc344949c - <unknown>
       2:     0x564cc34c57d4 - <unknown>
       3:     0x564cc34c5613 - <unknown>
       4:     0x564cc34e4a56 - <unknown>
       5:     0x564cc34e49f6 - <unknown>
       6:     0x564cc34e49b2 - <unknown>
       7:     0x564cc3423530 - <unknown>
       8:     0x564cc342368c - <unknown>
       9:     0x564cc3460451 - <unknown>
      10:     0x564cc345d0d6 - <unknown>
      11:     0x564cc342b3f7 - <unknown>
      12:     0x564cc343148e - <unknown>
      13:     0x7f1dec3add8f - g_closure_invoke
      14:     0x7f1dec3c9718 - <unknown>
      15:     0x7f1dec3cadd9 - g_signal_emit_valist
      16:     0x7f1dec3cb330 - g_signal_emit
      17:     0x7f1deb843739 - <unknown>
      18:     0x7f1deb84e28a - g_application_run
      19:     0x564cc3434990 - <unknown>
      20:     0x564cc3431263 - <unknown>
      21:     0x564cc34336bd - <unknown>
      22:     0x7f1deb457b25 - __libc_start_main
      23:     0x564cc342805e - <unknown>
      24:                0x0 - <unknown>
    
    bug 
    opened by tmayoff 12
  • Impossible Compile findex

    Impossible Compile findex

    Hi all i'm have always compiled findex successfully but now i see this error with the latest code downloaded from github:

    Compiling atk-sys v0.15.1 Compiling pango-sys v0.15.10 Compiling gtk-sys v0.15.3 Compiling glib v0.15.12 Compiling findex-plugin v0.1.0 (/app/findex/crates/findex-plugin) Compiling cairo-rs v0.15.12 Compiling pango v0.15.10 Compiling atk v0.15.1 Compiling gdk-pixbuf v0.15.11 Compiling gdk v0.15.4 Compiling findex v0.6.0 (/app/findex/crates/findex) error[E0658]: let...else statements are unstable --> crates/findex/src/gui/result_list_row.rs:95:5 | 95 | / let Some(cmd) = split(unsafe { row.data::("app-cmd").unwrap().as_ref() }) else { 96 | | show_dialog("Error", "Failed to launch application", MessageType::Error); 97 | | return; 98 | | }; | |______^ | = note: see issue #87335 https://github.com/rust-lang/rust/issues/87335 for more information

    For more information about this error, try rustc --explain E0658. error: could not compile findex due to previous error

    How can i solve? Thanks best regards

    bug 
    opened by dacorsa 11
  • Some assumptions don't hold on non-FHS distros

    Some assumptions don't hold on non-FHS distros

    Hey,

    I've tried to play a bit with Findex on NixOS (a non-FHS linux distribution), and hit two bugs:

    • query.rs:13 hardcodes /usr/share/applications/, which doesn't exist on Nix/Guix. I'm not sure what's the portable way to find this path, I suspect it's something like enumerating $XDG_DATA_DIRS.
    • The program crashes when an icon is missing in the current theme. This is probably an issue with my config, but crashing seems a bit of an extreme reaction :) (and such finders often are used in minimal setups, so missing icons will happen.

    Regards,

    opened by thblt 11
  • systemd unit unable to start properly

    systemd unit unable to start properly

    Hi, The current version installed using aur fails to boot under systemd:

    systemd[1187]: Started Findex.
    findex[14968]: [ERROR] Only X11 is supported
    systemd[1187]: findex.service: Main process exited, code=exited, status=1/FAILURE
    systemd[1187]: findex.service: Failed with result 'exit-code'.
    systemd[1187]: Stopped Findex.
    

    The program works fine when ran manually or added to session startup.

    opened by TheAwoo 10
  • Added ability to remove in installer.sh

    Added ability to remove in installer.sh

    As per title. Please let me know if any changes should be done.

    PS: Decided on a different implementation for removing after looking at the code. There is no helpscreen (look at branch name)

    opened by chent7 6
  • Findex Rewrite

    Findex Rewrite

    Findex will be rewritten to support stuff like background process keeping information about .desktop files, custom search backends.

    Here's a list of what will be done:

    • [x] Make GUI . It'll use Keybinder to bind keys
    • [x] Find and fix performance issues

    ~All of the development will be done in rewrite branch.~ Merged rewrite with development.

    I'll update the issue to notify about the rewrite progress.

    opened by mdgaziur 5
  • settings.toml isn't working

    settings.toml isn't working

    .config/findex/settings.toml isn't auto generated and has no effect when manually created. only style.css is generated when launching findex.

    • Distro: Arch
    • Version: 0.4.0.-1
    bug 
    opened by RaafatTurki 3
  • Tracking issue for fuzzy search

    Tracking issue for fuzzy search

    Trying to add fuzzy search into this application. Currently I am trying to use fuse-rust.

    Trying with default values. Any suggestions for getting better results?

    enhancement help wanted 
    opened by mdgaziur 3
  • Automatically resize window when number of options is smaller than min_score

    Automatically resize window when number of options is smaller than min_score

    When the number of options is smaller than min_score, the window should be resized to accomodate only the number of options.

    Example:

    Say your min_score is set to 5. If you search for "firefox" and it only shows 1 entry, then the window size should be such that only that entry fits. As it is, the window retains the size for the 5 entries.

    bug 
    opened by qazip 2
  • More themes by default

    More themes by default

    Is your feature request related to a problem? Please describe. I don't know if what I'm experiencing is a bug, but the findex with the default style.css doesn't look anything like the one in the README.

    Describe the solution you'd like Add more themes to style Findex

    enhancement 
    opened by dumrich 2
  • Panics when there is a file without extension in `~/.local/share/applications`

    Panics when there is a file without extension in `~/.local/share/applications`

    Reason is here:

    https://github.com/mdgaziur/findex/blob/e19403b3d31a75d7580c1f953dd8e6cb1225c2e9/src/query.rs#L132-L134

    (unwrapping empty extension)

    I'd suggest using something like walkdir or jwalk for easy iteration over looked for .desktop entries.

    Quick fix can be (checked with Rust 1.56):

            if app_path.extension().unwrap_or_default() != "desktop" {
                continue;
            }
    

    (sorry, too late right now to make a PR)

    bug 
    opened by murlakatamenka 2
Releases(v0.7.0)
Owner
MD Gaziur Rahman Noor
Fanboi of Rust, Lover of Systems Programming
MD Gaziur Rahman Noor
A GUI for NordVPN on Linux that maintains feature parity with the official clients, written with Rust and GTK.

Viking for NordVPN This project aims to provide a fully usable and feature-complete graphical interface for NordVPN on Linux. While it attempts to clo

Jacob Birkett 2 Oct 23, 2022
Idiomatic, GTK+-based, GUI library, inspired by Elm, written in Rust

Relm Asynchronous, GTK+-based, GUI library, inspired by Elm, written in Rust. This library is in beta stage: it has not been thoroughly tested and its

null 2.2k Dec 31, 2022
GTK 4 front-end to ChatGPT completions written in Rust

ChatGPT GUI Building git clone [email protected]:teunissenstefan/chatgpt-gui.git cd chatgpt-gui cargo build --release Todo Connect insert_text to only al

Stefan Teunissen 6 Mar 12, 2023
Rust bindings and wrappers for GLib, GDK 3, GTK+ 3 and Cairo.

THIS REPOSITORY IS DEPRECATED SEE: https://github.com/rust-gnome rgtk Rust bindings and wrappers for GLib, GDK 3, GTK+ 3 and Cairo. Building rgtk expe

Jeremy Letang 124 Jul 10, 2022
A powerful color picker and formatter, built with GTK and Rust

Eyedropper A powerful color picker and formatter. More screenshots Features Pick a Color Enter a color in Hex-Format Parse RGBA/ARGB Hex-Colors View c

Jonathan 108 Dec 24, 2022
A Rust library to parse Blueprint files and convert them into GTK UI files

?? gtk-ui-builder A Rust library to parse Blueprint files and convert them into GTK UI files Inspired by the Blueprint project Example 1 - blueprints

Observer KRypt0n_ 5 Oct 22, 2022
An example of searching iBeacon using gtk-rs and btleplug.

Beacon Searcher Screenshot Compile & Run Install GTK 3 dev packages: macOS: $ brew install gtk+3 $ brew install gnome-icon-theme Debian / Ubuntu: $ s

Ling, Wei-Cheng 0 Dec 21, 2021
Provides Rust bindings for GTK libraries

The gtk-rs organization aims to provide safe Rust binding over GObject-based libraries

null 431 Dec 30, 2022
Provides Rust bindings for GTK libraries

gtk3-rs The gtk-rs organization aims to provide safe Rust binding over GObject-based libraries. You can find more about it on https://gtk-rs.org. This

null 431 Dec 30, 2022
Graphical font editor (GTK + Rust)

gerb *gerb ʰ-: reconstructed Proto-Indo-European root, meaning to carve gerb: a WIP font editor in gtk3 and rust Introduction gerb is an experimental,

Manos Pitsidianakis 40 Jan 1, 2023
Reactive components in rust, designed to make GTK more manageable

gflux gflux is a tiny experimental reactive component system for rust, designed to make GTK more manageable. gflux: is about 300 lines of code contain

Brian Vincent 3 Aug 20, 2023
Test bed for gtk-rs-core experiments

Rust GObject Experiments class macro #[gobject::class(final)] mod obj { #[derive(Default)] pub struct MyObj { #[property(get, set)]

Jason Francis 2 May 28, 2022
Egui node graph is a featureful, customizable library to create node graph applications using egui

Egui node graph is a featureful, customizable library to create node graph applications using egui. The library takes care of presenting a node graph to your users, and allows customizing many aspects of the interaction, creating the semantics you want for your specific application.

null 367 Jan 8, 2023
Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.

Deno Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust. Features Secure by default. No file,

Derek Jones 2 Aug 13, 2022
Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.

libui: a portable GUI library for C This README is being written. Status It has come to my attention that I have not been particularly clear about how

Pietro Gagliardi 10.4k Dec 31, 2022
GUI based tool to sort and categorize images written in Rust

ImageSieve GUI based tool to sort out images based on similarity, categorize them according to their creation date and archive them in a target folder

Florian Fetz 67 Dec 14, 2022
A simple note taking application written in Rust and GTK4

Rnote A simple note taking application written in Rust and GTK4. Rnote aims to be a simple but functional note taking application for freehand drawing

Felix Zwettler 3.4k Jan 5, 2023
Neovim GUI written in Rust, using relm4 and gtk4-rs

Reovim Neovim GUI written in Rust, using relm4 and gtk4-rs. Thanks Neovide Configuration To setup font add next line to init.vim set guifont=Cascadia\

songww 70 Dec 13, 2022
An Anime Game Launcher variant written on Rust, GTK4 and libadwaita, using Anime Game Core library

An Anime Game Launcher GTK The launcher variant written on Rust, GTK4 and libadwaita, using Anime Game Core library You could also try the main branch

An Anime Team 77 Jan 9, 2023