GTK application for browsing and installing fonts from Google's font archive

Overview

Font Finder

This project is a from-scratch implementation of TypeCatcher in Rust. It is a GTK3 application for browsing through and installing fonts from Google's font archive from the comfort of your Linux desktop.

Installation Instructions

make
sudo make install prefix=/usr/local

Requirements

  • cargo (Rust 1.24.0)
  • libwebkit2gtk-4.0-dev
  • libgtk-3-dev

Screenshots

Filtering w/ Search

First Screenshot

Filtering w/ Category

Second Screenshot

Multiple Paragraphs

Third Screenshot

Dark Preview

Fourth Screenshot

Comments
  • Unable to install in solus os.

    Unable to install in solus os.

    I have recently switched my daily OS from Fedora to Solus. I was very happy with fontfinder there so I decided to install it on Solus too, which does not have my fav fonts.

    I am getting following error when I run cargo install

       Compiling backtrace-sys v0.1.16
       Compiling openssl-sys v0.9.23
       Compiling mio v0.6.11
       Compiling tokio-io v0.1.4
       Compiling idna v0.1.4
       Compiling serde_json v1.0.8
       Compiling libflate v0.1.12
    error: failed to run custom build command for `backtrace-sys v0.1.16`
    process didn't exit successfully: `/tmp/cargo-install.cg4L1VnBaDHt/release/build/backtrace-sys-45872b838248fc49/build-script-build` (exit code: 101)
    --- stdout
    OPT_LEVEL = Some("3")
    TARGET = Some("x86_64-unknown-linux-gnu")
    HOST = Some("x86_64-unknown-linux-gnu")
    TARGET = Some("x86_64-unknown-linux-gnu")
    TARGET = Some("x86_64-unknown-linux-gnu")
    HOST = Some("x86_64-unknown-linux-gnu")
    CC_x86_64-unknown-linux-gnu = None
    CC_x86_64_unknown_linux_gnu = None
    HOST_CC = None
    CC = None
    HOST = Some("x86_64-unknown-linux-gnu")
    TARGET = Some("x86_64-unknown-linux-gnu")
    HOST = Some("x86_64-unknown-linux-gnu")
    CFLAGS_x86_64-unknown-linux-gnu = None
    CFLAGS_x86_64_unknown_linux_gnu = None
    HOST_CFLAGS = None
    CFLAGS = None
    DEBUG = Some("false")
    running: "sh" "/home/abhinav/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-sys-0.1.16/src/libbacktrace/configure" "--with-pic" "--disable-multilib" "--disable-shared" "--disable-host-shared" "--host=x86_64-unknown-linux-gnu" "--build=x86_64-unknown-linux-gnu"
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking target system type... x86_64-unknown-linux-gnu
    checking for x86_64-unknown-linux-gnu-gcc... cc
    checking for C compiler default output file name... a.out
    checking whether the C compiler works... yes
    checking whether we are cross compiling... no
    checking for suffix of executables... 
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether cc accepts -g... yes
    checking for cc option to accept ISO C89... none needed
    checking how to run the C preprocessor... /lib/cpp
    
    --- stderr
    configure: error: in `/tmp/cargo-install.cg4L1VnBaDHt/release/build/backtrace-sys-8536398d32f70e75/out':
    configure: error: C preprocessor "/lib/cpp" fails sanity check
    See `config.log' for more details.
    thread 'main' panicked at 'failed with: exit code: 1', /home/abhinav/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-sys-0.1.16/build.rs:176:8
    note: Run with `RUST_BACKTRACE=1` for a backtrace.
    
    warning: build failed, waiting for other jobs to finish...
    error: failed to compile `fontfinder v1.3.2`, intermediate artifacts can be found at `/tmp/cargo-install.cg4L1VnBaDHt`
    
    Caused by:
      build failed
    

    I have checked that I have installed gtk related libs and bindings, gcc and some other stuffs. Still can't find what causes this issue

    opened by Abhinav1217 9
  • Installation failed on Ubuntu 18.04

    Installation failed on Ubuntu 18.04

    Hello,

    I got this error when installing:

    error: failed to run custom build command for `openssl-sys v0.9.28`
    process didn't exit successfully: `/tmp/cargo-install.cDI8nLz6UgTb/release/build/openssl-sys-9ee21f803406eac8/build-script-build` (exit code: 101)
    --- stdout
    cargo:rerun-if-env-changed=X86_64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR
    cargo:rerun-if-env-changed=OPENSSL_LIB_DIR
    cargo:rerun-if-env-changed=X86_64_UNKNOWN_LINUX_GNU_OPENSSL_INCLUDE_DIR
    cargo:rerun-if-env-changed=OPENSSL_INCLUDE_DIR
    cargo:rerun-if-env-changed=X86_64_UNKNOWN_LINUX_GNU_OPENSSL_DIR
    cargo:rerun-if-env-changed=OPENSSL_DIR
    run pkg_config fail: "`\"pkg-config\" \"--libs\" \"--cflags\" \"openssl\"` did not exit successfully: exit code: 1\n--- stderr\nPackage openssl was not found in the pkg-config search path.\nPerhaps you should add the directory containing `openssl.pc\'\nto the PKG_CONFIG_PATH environment variable\nNo package \'openssl\' found\n"
    
    --- stderr
    thread 'main' panicked at '
    
    Could not find directory of OpenSSL installation, and this `-sys` crate cannot
    proceed without this knowledge. If OpenSSL is installed and this crate had
    trouble finding it,  you can set the `OPENSSL_DIR` environment variable for the
    compilation process.
    
    If you're in a situation where you think the directory *should* be found
    automatically, please open a bug at https://github.com/sfackler/rust-openssl
    and include information about your system as well as this message.
    
        $HOST = x86_64-unknown-linux-gnu
        $TARGET = x86_64-unknown-linux-gnu
        openssl-sys = 0.9.28
    
    ', /home/hadrien/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-sys-0.9.28/build.rs:213:5
    note: Run with `RUST_BACKTRACE=1` for a backtrace.
    
    warning: build failed, waiting for other jobs to finish...
    error: failed to compile `fontfinder v1.3.2`, intermediate artifacts can be found at `/tmp/cargo-install.cDI8nLz6UgTb`
    
    Caused by:
      build failed
    
    opened by hadrien-psydk 8
  • Distribute as Flatpak

    Distribute as Flatpak

    Hi! I love typecatcher but it's been a bit buggy the last couple of years, I'm so glad you started working on a new implementation! Would you consider distributing the app as flatpak and perhaps also submitting it to flathub?

    help wanted 
    opened by nsrosenqvist 7
  • Show

    Show "Install Completed" Message in console.

    Currently, When I click "Install Button" I do get a message Installing '"/home/Abhinav/.local/share/fonts/Coming Soon_regular.ttf"' But I do not get message for when installing is completed. It would be nice if after font is downloaded and installed, I could get a message like ready to use or Completed Something like that.

    Also, I had to manually run fc-cache -f for downloaded fonts to listed in libraoffice writer. Is it by design?

    opened by Abhinav1217 4
  • Install failed, it would be cool to have a snap package :)

    Install failed, it would be cool to have a snap package :)

    $ cargo install --git https://github.com/mmstick/fontfinder Updating git repository https://github.com/mmstick/fontfinder Installing fontfinder v1.0.0 (https://github.com/mmstick/fontfinder#25930f61) Updating registry https://github.com/rust-lang/crates.io-index Updating git repository https://github.com/gtk-rs/gtk.git Updating git repository https://github.com/gtk-rs/webkit2gtk-rs.git Updating git repository https://github.com/withoutboats/derive-fail Updating git repository https://github.com/gtk-rs/gio.git Updating git repository https://github.com/withoutboats/failure Updating git repository https://github.com/gtk-rs/sys Updating git repository https://github.com/gtk-rs/glib Updating git repository https://github.com/gtk-rs/gdk-pixbuf Updating git repository https://github.com/gtk-rs/pango Updating git repository https://github.com/gtk-rs/gdk Updating git repository https://github.com/gtk-rs/cairo Updating git repository https://github.com/guillaumegomez/webkit2gtk-rs Updating git repository https://github.com/gtk-rs/javascriptcore-rs Updating git repository https://github.com/gtk-rs/soup-sys-rs Downloading serde_json v1.0.6 Downloading lazy_static v0.2.9 Downloading serde v1.0.19 Downloading serde_derive v1.0.19 Downloading reqwest v0.8.1 Downloading horrorshow v0.6.2 Downloading dtoa v0.4.2 Downloading num-traits v0.1.40 Downloading itoa v0.3.4 Downloading libc v0.2.33 Downloading bitflags v1.0.0 Downloading bitflags v0.9.1 Downloading bitflags v0.4.0 Downloading syn v0.11.11 Downloading quote v0.3.15 Downloading serde_derive_internals v0.17.0 Downloading synom v0.11.3 Downloading unicode-xid v0.0.4 Downloading backtrace v0.3.3 Downloading rustc-demangle v0.1.5 Downloading cfg-if v0.1.2 Downloading uuid v0.5.1 Downloading hyper-tls v0.1.2 Downloading log v0.3.8 Downloading native-tls v0.1.4 Downloading tokio-core v0.1.10 Downloading tokio-tls v0.1.3 Downloading serde_urlencoded v0.5.1 Downloading url v1.6.0 Downloading futures v0.1.17 Downloading hyper v0.11.6 Downloading bytes v0.4.5 Downloading mime_guess v2.0.0-alpha.2 Downloading libflate v0.1.12 Downloading tokio-io v0.1.3 Downloading rand v0.3.18 Downloading tokio-service v0.1.0 Downloading byteorder v1.1.0 Downloading iovec v0.1.1 Downloading slab v0.4.0 Downloading mio v0.6.11 Downloading scoped-tls v0.1.0 Downloading slab v0.3.0 Downloading net2 v0.2.31 Downloading lazycell v0.5.1 Downloading relay v0.1.0 Downloading mime v0.3.5 Downloading unicase v2.0.0 Downloading percent-encoding v1.0.0 Downloading httparse v1.2.3 Downloading time v0.1.38 Downloading tokio-proto v0.1.1 Downloading language-tags v0.2.2 Downloading base64 v0.6.0 Downloading futures-cpupool v0.1.7 Downloading rustc_version v0.1.7 Downloading semver v0.1.20 Downloading smallvec v0.2.1 Downloading take v0.1.0 Downloading safemem v0.2.0 Downloading num_cpus v1.7.0 Downloading matches v0.1.6 Downloading idna v0.1.4 Downloading unicode-normalization v0.1.5 Downloading unicode-bidi v0.3.4 Downloading phf v0.7.21 Downloading unicase v1.4.2 Downloading phf_shared v0.7.21 Downloading siphasher v0.2.2 Downloading version_check v0.1.3 Downloading phf_codegen v0.7.21 Downloading phf_generator v0.7.21 Downloading adler32 v1.0.2 Downloading crc v1.5.0 Downloading build_const v0.2.0 Downloading crc-core v0.1.0 Downloading synstructure v0.6.1 Downloading backtrace-sys v0.1.16 Downloading cc v1.0.3 Downloading openssl v0.9.20 Downloading foreign-types v0.2.0 Downloading openssl-sys v0.9.20 Compiling itoa v0.3.4 Compiling cc v1.0.3 Compiling slab v0.4.0 Compiling version_check v0.1.3 Compiling slab v0.3.0 Compiling httparse v1.2.3 Compiling pkg-config v0.3.9 Compiling cfg-if v0.1.2 Compiling crc-core v0.1.0 Compiling gio v0.2.0 (https://github.com/gtk-rs/gio.git#b41c3686) Compiling unicase v1.4.2 Compiling bitflags v0.9.1 Compiling unicode-normalization v0.1.5 Compiling scoped-tls v0.1.0 Compiling bitflags v1.0.0 error: associated constants are experimental (see issue #29646) --> .cargo/registry/src/github.com-1ecc6299db9ec823/bitflags-1.0.0/src/lib.rs:441:17 | 441 | pub const $Flag: $BitFlags = $BitFlags { bits: $value }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ::: .cargo/registry/src/github.com-1ecc6299db9ec823/bitflags-1.0.0/src/example_generated.rs | 4 | bitflags! { | - in this macro invocation

    error: associated constants are experimental (see issue #29646) --> .cargo/registry/src/github.com-1ecc6299db9ec823/bitflags-1.0.0/src/lib.rs:441:17 | 441 | pub const $Flag: $BitFlags = $BitFlags { bits: $value }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ::: .cargo/registry/src/github.com-1ecc6299db9ec823/bitflags-1.0.0/src/example_generated.rs | 4 | bitflags! { | - in this macro invocation

    error: associated constants are experimental (see issue #29646) --> .cargo/registry/src/github.com-1ecc6299db9ec823/bitflags-1.0.0/src/lib.rs:441:17 | 441 | pub const $Flag: $BitFlags = $BitFlags { bits: $value }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ::: .cargo/registry/src/github.com-1ecc6299db9ec823/bitflags-1.0.0/src/example_generated.rs | 4 | bitflags! { | - in this macro invocation

    error: associated constants are experimental (see issue #29646) --> .cargo/registry/src/github.com-1ecc6299db9ec823/bitflags-1.0.0/src/lib.rs:441:17 | 441 | pub const $Flag: $BitFlags = $BitFlags { bits: $value }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ::: .cargo/registry/src/github.com-1ecc6299db9ec823/bitflags-1.0.0/src/example_generated.rs | 4 | bitflags! { | - in this macro invocation

    error: aborting due to 4 previous errors

    error: Could not compile bitflags. Build failed, waiting for other jobs to finish... error: failed to compile fontfinder v1.0.0 (https://github.com/mmstick/fontfinder#25930f61), intermediate artifacts can be found at /tmp/cargo-install.OAK9oiKc9S8d

    Caused by: build failed

    opened by KristijanZic 4
  • Not listed requirement in README

    Not listed requirement in README

    I've tried to install the tool but got an error:

      --- stderr
      `"pkg-config" "--libs" "--cflags" "libsoup-2.4" "libsoup-2.4 >= 0.0"` did not exit successfully: exit code: 1
      --- stderr
      Package libsoup-2.4 was not found in the pkg-config search path.
      Perhaps you should add the directory containing `libsoup-2.4.pc'
      to the PKG_CONFIG_PATH environment variable
      Package 'libsoup-2.4', required by 'virtual:world', not found
      Package 'libsoup-2.4', required by 'virtual:world', not found
    

    Maybe you should add that this is a requirement. I think that I have this package installed but somehow the application is not able to find it.

    I'm using Fedora GNU/Linux.

    opened by jcubic 2
  • Internationalization

    Internationalization

    Unlike TypeCatcher, this application is English-only, which is a pity since this version works better and I’d rather share this one with my non-English-speaking friends.

    opened by fitojb 2
  • can't install with instructions in readme.

    can't install with instructions in readme.

    cargo install --git https://github.com/mmstick/fontfinder
        Updating git repository `https://github.com/mmstick/fontfinder`
      Installing fontfinder v1.3.1 (https://github.com/mmstick/fontfinder#5bc3b1b9)
        Updating registry `https://github.com/rust-lang/crates.io-index`
        Updating git repository `https://github.com/withoutboats/failure`
        Updating git repository `https://github.com/withoutboats/failure_derive`
        Updating git repository `https://github.com/gtk-rs/webkit2gtk-rs.git`
        Updating git repository `https://github.com/gtk-rs/gio.git`
        Updating git repository `https://github.com/gtk-rs/gtk.git`
        Updating git repository `https://github.com/gtk-rs/glib`
        Updating git repository `https://github.com/guillaumegomez/webkit2gtk-rs`
        Updating git repository `https://github.com/gtk-rs/sys`
        Updating git repository `https://github.com/gtk-rs/cairo`
        Updating git repository `https://github.com/gtk-rs/javascriptcore-rs`
        Updating git repository `https://github.com/gtk-rs/gdk`
    error: failed to compile `fontfinder v1.3.1 (https://github.com/mmstick/fontfinder#5bc3b1b9)`, intermediate artifacts can be found at `/tmp/cargo-install.l3LpTUIJglSe`
    
    Caused by:
      no matching version `^0.3.0` found for package `glib` (required by `webkit2gtk`)
    location searched: https://github.com/gtk-rs/glib
    versions found: 0.4.0
    

    As I understand lib versions got updated in repos, but cargo looks for older one.

    opened by monte-monte 2
  • Stop being a wannabe and a liar , michael

    Stop being a wannabe and a liar , michael

    Michael, you are not an engineer, never were, and never will be close to one.

    @mmstick Stop making lies about real Engineering. Engineering has nothing to do with sitting behind a keyboard and writing code. There is no such thing as "desktop" "engineer". Thats the stupidest and most pathetic lie ever. Engineering is a real subject.

    Engineering means designing and building real mechanical systems, like vehicular engines and turbojets. Software devs have absolutely nothing to do with engineering, and they are being stupid wannabe liars. They will never be engineers, in fact, they don't even know what it takes to be an engineer. None of you are engineers, and you'll never even be close.

    So stop being disrespectful to real engineers (mechanical engineering is real engineering, and nothing else).

    opened by ghost 1
  • Michael, you are not an engineer, never were, and never will be close to one.

    Michael, you are not an engineer, never were, and never will be close to one.

    Michael, you are not an engineer, never were, and never will be close to one. @mmstick Stop making lies about real Engineering. Engineering has nothing to do with sitting behind a keyboard and writing code. There is no such thing as "desktop" "engineer". Thats the stupidest and most pathetic lie ever. Engineering is a real subject. Engineering means designing and building real mechanical systems, like vehicular engines and turbojets. Software devs have absolutely nothing to do with engineering, and they are being stupid wannabe liars. They will never be engineers, in fact, they don't even know what it takes to be an engineer. None of you are engineers, and you'll never even be close. So stop being disrespectful to real engineers (mechanical engineering is real engineering, and nothing else).

    opened by ghost 1
  • specified package has no binaries

    specified package has no binaries

    When I install the latest version of FontFinder, I get this error.

    cargo install --all-features fontfinder

    Updating registry https://github.com/rust-lang/crates.io-index Installing fontfinder v1.4.1 **error**: specified package has no binaries

    Is there any temporary fix for this ?

    opened by ghost 1
  • Migrate to GTK4

    Migrate to GTK4

    Hey,

    i'm trying to get a bit into Rust & GTK4 development (disclaimer: i read your tutorial series). I thought it would be a good starting to point to test something existing like the fontfinder. However i guess there are some blockers for this? Namely the gtkwebview library comes to mind.

    opened by feliwir 2
  • fontfinder panics at runtime

    fontfinder panics at runtime

    thread 'main' panicked at 'libgtk-3 was configured with `--enable-debug=no`. See https://github.com/gtk-rs/gtk/issues/270 for details', /home/pk/.cargo/registry/src/github.com-1ecc6299db9ec823/gtk-0.4.1/src/rt.rs:146:13
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    

    We're not alone though https://github.com/NixOS/nixpkgs/issues/65843 So (I am not sure but), it seems the solution is to bump version of gtk-rs.

    opened by pavel-kolesnikov 0
  • use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`

    use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`

    cargo 1.57.0
    rustc 1.57.0 (Arch Linux rust 1:1.57.0-1)
    
    warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
     --> src/fc_cache.rs:2:47
      |
    2 | use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
      |                                               ^^^^^^^^^^^^^^^^
    
    warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
     --> src/fc_cache.rs:7:39
      |
    7 | pub static RUN_FC_CACHE: AtomicBool = ATOMIC_BOOL_INIT;
      |                                       ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
    
    
    opened by pavel-kolesnikov 0
Releases(2.0.0)
Owner
Michael Murphy
System76 engineer; Linux developer; Rust programmer
Michael Murphy
Linux Kernel Manager and Activity Monitor 🐧💻

Linux Kernel Manager and Activity Monitor ?? ?? The kernel is the part of the operating system that facilitates interactions between hardware and soft

Orhun Parmaksız 1.7k Jan 5, 2023
A project for automatically generating and maintaining Debian repositories from a TOML spec.

Debian Repository Builder A simple utility for constructing and maintaining Debian repositories. Configuration of a repo is based on the directory hie

Pop!_OS 52 Feb 7, 2022
Utility that takes logs from anywhere and sends them to Telegram.

logram Utility that takes logs from anywhere and sends them to Telegram. Supports log collection from files, journald and docker containers. More abou

Max Eliseev 85 Dec 22, 2022
A safe and ergonomic alternative to rm

rip (Rm ImProved) rip is a command-line deletion tool focused on safety, ergonomics, and performance. It favors a simple interface, and does not imple

Kevin Liu 781 Jan 7, 2023
A simple, fast and user-friendly alternative to 'find'

fd [中文] [한국어] fd is a program to find entries in your filesytem. It is a simple, fast and user-friendly alternative to find. While it does not aim to

David Peter 25.8k Dec 30, 2022
Untrusted IPC with maximum performance and minimum latency. On Rust, on Linux.

Untrusted IPC with maximum performance and minimum latency. On Rust, on Linux. When is this Rust crate useful? Performance or latency is crucial, and

null 72 Jan 3, 2023
CLI utility to move (or rename) your files to a new location and redirect all of its symbolic links, to the new path

Move Links CLI utility to move (or rename) your files to a new location and redirect all of its symbolic links, to the new path (or name). Usage execu

Ben Mefteh 18 May 22, 2022
A tool to simplify reprovisioning a fresh OS. Installs packages and manages dotfiles.

[[TOC]] Comtrya This is better, yes? Warning This tool is ridiculously early in its development. I'm building out features as I migrate my dotfiles ov

David McKay 2 Dec 29, 2022
A tool to simplify reprovisioning a fresh OS. Installs packages and manages dotfiles.

Comtrya This is better, yes? Warning This tool is ridiculously early in its development. I'm building out features as I migrate my dotfiles over. Thos

Comtrya 272 Jan 7, 2023
Parallel finance a decentralized lending protocol built on top of the Polkadot ecosystem. Our unique approach will allow users to earn "double interests" from staking and lending their tokens simultaneously.

Parallel Finance A new Cumulus-based Substrate node, ready for hacking ?? Getting Started Follow these steps to get started with the Cumulus Template

parallel-finance 100 Dec 17, 2022
idf-env tool helps set up and manage ESP-IDF installations

idf-env Tool for maintaining ESP-IDF environment. Quick start Install serial drivers for ESP boards on Windows. Execute following command in PowerShel

Espressif Systems 19 Dec 4, 2022
A system handler to get information and interact with processes written in Rust

A system handler to get information and interact with processes written in Rust

Guillaume Gomez 1.1k Jan 3, 2023
OCI Runtime, Image and Distribution Spec in Rust

oci-spec-rs Open Container Initiative (OCI) Specifications for Rust This library provides a convenient way to interact with the specifications defined

Containers 119 Dec 29, 2022
It is a backup tool that creates backups and stores them on an object storage

Hold My Backup It is a backup tool that creates backups and stores them on an object storage. By default it uses minio but you can use AWS: S3 as well

Taylan Dogan 13 Feb 17, 2022
desktop automation, screen capture, input listen/simulation, asar compress, color picker for nodejs and electron based on rust

desktop automation, screen capture, input listen/simulation, asar compress, color picker for nodejs and electron based on rust. 基于 Rust / WASM 提供截图、取色、键鼠事件监听模拟、压缩解压、图像处理、获取已安装应用等跨平台功能的现代异步 Nodejs 模块,占用空间小, 安装便捷, 使用简单, 高性能, 资源占用极小, 可取代 iohook 和 robotjs

null 48 Dec 15, 2022
`haproxy_autconfd` is a daemon that automatically assembles a HAProxy config and restarts HAProxy if the config changes

haproxy_autconfd Welcome to haproxy_autconfd ?? haproxy_autconfd is a daemon that automatically assembles a HAProxy config and restarts HAProxy if the

null 0 Nov 9, 2021
Reproducible builds, dev envs and deployments.

?? Toros An implementation of Nix in Rust. Syntax support: With NixEL Interpreter support: Int Binding (aliasing) Let-in (flat bindings without interp

Kevin Amado 35 Dec 23, 2022
A fast and minimalistic image viewer forked from the now discontinued emulsion.

Alloy Image viewer based on (now-discontinued) Emulsion. Alloy targets Windows, Mac, and Linux (with more targets to come!). A note for Linux users: W

Ardaku Systems 9 Dec 1, 2022
Remote-Archive is a utility for exploring remote archive files without downloading the entire contents of the archive.

[WIP] REMOTE-ARCHIVE Remote-Archive is a utility for exploring remote archive files without downloading the entire contents of the archive. The idea b

null 4 Nov 7, 2022
Modify fonts to remove bitmap and disable gridfit for Windows font rendering.

Since Windows 10 version 1703 (Creators Update), its built-in TrueType renderer now supports vertical anti-aliasing. Despite there are only 30 levels of grayscale shade, it dramatically improves text rendering, especially for CJK languages. Sadly, it is only enabled for selected fonts at selected sizes.

Star Brilliant 54 Dec 21, 2022