Go Linux

Open-source Go projects categorized as Linux

Top 23 Go Linux Projects

  • mkcert

    A simple zero-config tool to make locally trusted development certificates with any names you'd like.

  • Project mention: Mkcert: Simple tool to make locally trusted dev certificates names you'd like | news.ycombinator.com | 2024-03-15
  • Wox

    A cross-platform launcher that simply works

  • Project mention: We released a new powerful efficiency tool called RunFlow, which is similar to PowerToys and Alfred, welcome to try it | dev.to | 2024-03-20

    RunFlow is a cross-platform productivity tool which can launch apps and search files and more, that similar to Wox and PowerToys on Windows, and also similar like Alfred and Raycast on macOS. But we have differences with these tools, and we have our own unique new features. Right now, at the below, we will introduce you what features of RunFlow have been implemented in more details. It's an amazing journey, let's start.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • Wails

    Create beautiful applications using Go

  • Project mention: SGSG (Svelte + Go + SQLite + gRPC) - open source application | /r/sveltejs | 2023-12-06

    This is basically the same tech stack of an app I’ve been planning to build, but deployed as a desktop application using Wails: https://github.com/wailsapp/wails

  • podman

    Podman: A tool for managing OCI containers and pods.

  • Project mention: Podman 5.0 has been released | news.ycombinator.com | 2024-03-26

    Example of why: https://github.com/containers/podman/issues/5102#issuecommen...

  • gvisor

    Application Kernel for Containers

  • Project mention: Maestro: A Linux-compatible kernel in Rust | news.ycombinator.com | 2024-01-03

    Isn't gVisor kind of this as well?

    "gVisor is an application kernel for containers. It limits the host kernel surface accessible to the application while still giving the application access to all the features it expects. Unlike most kernels, gVisor does not assume or require a fixed set of physical resources; instead, it leverages existing host kernel functionality and runs as a normal process. In other words, gVisor implements Linux by way of Linux."

    https://github.com/google/gvisor

  • brook

    A cross-platform programmable network tool

  • Project mention: How Brook bypass domain regardless of their IP | /r/u_txthinking | 2023-05-26

    Programming is very flexible, more can be found in documentation and other articles of this blog

  • duf

    Disk Usage/Free Utility - a better 'df' alternative

  • Project mention: Go: What We Got Right, What We Got Wrong | news.ycombinator.com | 2024-01-04

    Not sure these are really popular, but I cannot resist advertising a few utilities written in Go that I regularly use in my daily workflow:

    - gdu: a NCDU clone, much faster on SSD mounts [1]

    - duf: a `df` clone with a nicer interface [2]

    - massren: a `vidir` clone (simpler to use but with fewer options) [3]

    - gotop: a `top` clone [4]

    - micro: a nice TUI editor [5]

    Building this kind of tools in Go makes sense, as the executables are statically compiled and are thus easy to install on remote servers.

    [1]: https://github.com/dundee/gdu

    [2]: https://github.com/muesli/duf

    [3]: https://github.com/laurent22/massren

    [4]: https://github.com/xxxserxxx/gotop

    [5]: https://github.com/zyedidia/micro

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • chezmoi

    Manage your dotfiles across multiple diverse machines, securely.

  • Project mention: Securely manage your dot files | news.ycombinator.com | 2024-04-11
  • vuls

    Agent-less vulnerability scanner for Linux, FreeBSD, Container, WordPress, Programming language libraries, Network devices

  • qt

    Qt binding for Go (Golang) with support for Windows / macOS / Linux / FreeBSD / Android / iOS / Sailfish OS / Raspberry Pi / AsteroidOS / Ubuntu Touch / JavaScript / WebAssembly

  • Project mention: GoLang — Simplifying Complexity “The Beginning” | dev.to | 2023-05-27

    . Web backend (with various frameworks available) . Web Assembly (one of them is vugu framework) . Microservices (some frameworks: Go Micro, Go Kit, Gizmo, Kite) . Fragments services (Term mentioned by @jeffotoni in a microservices discussion group) . Lambdas (FaaS example) . Client Server . Terminal applications (using the tview lib) . IoT (some frameworks) . Bots (some here) . Client Applications using Web technology . Desktop using Qt+QML, Native Win Lib (example Qt, Qt widgets, Qml) . Network Applications . Protocol applications . REST Applications . SOAP Applications . GraphQL Applications . RPC Applications . TCP Applications . gRPC Applications . WebSocket Applications . GopherJS (compiles Go to JavaScript)

  • v2rayA

    A web GUI client of Project V which supports VMess, VLESS, SS, SSR, Trojan, Tuic and Juicity protocols. 🚀

  • NoiseTorch

    Real-time microphone noise suppression on Linux.

  • Project mention: Ask HN: What are some unpopular technologies you wish people knew more about? | news.ycombinator.com | 2023-12-02

    Noisetorch. https://github.com/noisetorch/NoiseTorch

  • linuxkit

    A toolkit for building secure, portable and lean operating systems for containers

  • Project mention: Gokrazy – Go Appliances | news.ycombinator.com | 2023-12-18

    Another project that aims to deliver this is Linuxkit (https://github.com/linuxkit/linuxkit). All the components they ship are written in memory safe languages (usually Go) and run as containers under containerd. You can build a custom image very easily, fully defined as a YAML file.

  • up

    Ultimate Plumber is a tool for writing Linux pipes with instant live preview (by akavel)

  • Project mention: Fx – Terminal JSON Viewer | news.ycombinator.com | 2023-09-19

    This fx rewrite is very exciting. I'll have to try it. I thought of fx as a wrapper around jq, that allowed quick iteration over building jq scripts. Sort of an Ultimate Plumber [1] but only for jq. It looks like it is now more like a JavaScript processor plus an interactive viewer.

    Someone mention Visidata[2]? VisiData is also a TUI that is great on tabular data, and it can work with json. If your JSON is mostly tabular in nature, Visidata does a great job at showing that data and allowing you to explore it. A lot of json I deal with is tabular-like data. There is a great tutorial [3], that can help you get your bearings with Visidata. Once you understand those basics you might want to look at this thread [4] for what commands you can use with json.

    [1] Ultimate Plumber: https://github.com/akavel/up

  • crowdsec

    CrowdSec - the open-source and participative security solution offering crowdsourced protection against malicious IPs and access to the most advanced real-world CTI.

  • Project mention: Disable notifications for one out of several machines | /r/CrowdSec | 2023-07-04
  • scc

    Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go

  • Project mention: Scc: A fast code counter with complexity calculations and COCOMO estimates | news.ycombinator.com | 2024-04-23
  • go-flutter

    Flutter on Windows, MacOS and Linux - based on Flutter Embedding, Go and GLFW.

  • ebpf

    ebpf-go is a pure-Go library to read, modify and load eBPF programs and attach them to various hooks in the Linux kernel.

  • Project mention: eBPF Documentary | news.ycombinator.com | 2024-03-10

    Oh, no I don't mean that arbitrary Go compiles to eBPF. Apologies if I gave that impression. I meant that there are libraries that let you compose eBPF programs in other languages. But you're still putting together an eBPF program, just like you can assemble JSON with Go but you can't compile an arbitrary Go program to JSON.

    Cilium's eBPF library is the Go one I had in mind: https://github.com/cilium/ebpf

    Here's an example from that repo: https://github.com/cilium/ebpf/tree/main/examples/ringbuffer

  • goss

    Quick and Easy server testing/validation

  • Project mention: Tools for validating K8s features | /r/kubernetes | 2023-06-08

    Certain checks may be possible with goss and the kgoss wrapper: https://github.com/goss-org/goss/tree/master/extras/kgoss

  • talos

    Talos Linux is a modern Linux distribution built for Kubernetes.

  • Project mention: There are only 12 binaries in Talos Linux | news.ycombinator.com | 2024-03-04

    Super cool. I always enjoy reading about systems that challenge, well, "ossified" assumptions. An OS not providing a shell, for example? Madness! ... or is it genius, if the OS has a specific purpose...? It's thought-provoking, if nothing else.

    I'm a bit skeptical of parts. For instance, the "init" binary being less than 400 lines of golang - wow! And sure, main.go [1] is less than 400 lines and very readable. Then you squint at the list of imported packages, or look to the left at the directory list and realize main.go isn't nearly the entire init binary.

    That `talosctl list` invocation [2] didn't escape my notice either. Sure, the base OS may have only a handful of binaries - how many of those traditional utilities have been stuffed into the API server? Not that I disagree with the approach! I think every company eventually replaces direct shell access with a daemon like this. It's just that "binary footprint" can get a bit funny if you have a really sophisticated API server sitting somewhere.

    [1]: https://github.com/siderolabs/talos/blob/main/internal/app/m...

    [2]: https://www.talos.dev/v1.6/reference/cli/#talosctl-list

  • bombardier

    Fast cross-platform HTTP benchmarking tool written in Go

  • syzkaller

    syzkaller is an unsupervised coverage-guided kernel fuzzer

  • Project mention: Automated Unit Test Improvement Using Large Language Models at Meta | news.ycombinator.com | 2024-02-17

    https://arxiv.org/abs/2402.09171 :

    > This paper describes Meta's TestGen-LLM tool, which uses LLMs to automatically improve existing human-written tests. TestGen-LLM verifies that its generated test classes successfully clear a set of filters that assure measurable improvement over the original test suite, thereby eliminating problems due to LLM hallucination. [...] We believe this is the first report on industrial scale deployment of LLM-generated code backed by such assurances of code improvement.

    Coverage-guided unit test improvement might [with LLMs] be efficient too.

    https://github.com/topics/coverage-guided-fuzzing :

    - e.g. Google/syzkaller is a coverage-guided syscall fuzzer: https://github.com/google/syzkaller

    - Gitlab CI supports coverage-guided fuzzing: https://docs.gitlab.com/ee/user/application_security/coverag...

    - oss-fuzz, osv

    Additional ways to improve tests:

    Hypothesis and pynguin generate tests from type annotations.

    There are various tools to generate type annotations for Python code;

    > pytype (Google) [1], PyAnnotate (Dropbox) [2], and MonkeyType (Instagram) [3] all do dynamic / runtime PEP-484 type annotation type inference [4] to generate type annotations. https://news.ycombinator.com/item?id=39139198

    icontract-hypothesis generates tests from icontract DbC Design by Contract type, value, and invariance constraints specified as precondition and postcondition @decorators:

  • pet

    Simple command-line snippet manager

  • Project mention: What's a really niche tool you use that you can't live without? | /r/DataHoarder | 2023-05-09

    pet

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Go Linux related posts

Index

What are some of the best open-source Linux projects in Go? This list will help you:

Project Stars
1 mkcert 45,716
2 Wox 23,949
3 Wails 22,095
4 podman 21,645
5 gvisor 15,066
6 brook 14,249
7 duf 12,249
8 chezmoi 11,689
9 vuls 10,671
10 qt 10,222
11 v2rayA 9,576
12 NoiseTorch 8,966
13 linuxkit 8,138
14 up 8,134
15 crowdsec 7,774
16 scc 6,080
17 go-flutter 5,802
18 ebpf 5,732
19 goss 5,441
20 talos 5,302
21 bombardier 5,257
22 syzkaller 5,124
23 pet 4,204

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com