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: HTTPS on Localhost with Next.js | dev.to | 2024-04-29

    The experimental HTTPS flag relies on mkcert, designed for a single development system. If you run a Docker container, the flag won’t configure your local browser to trust its certificate.

  • 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.

  • 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
  • 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: Show HN: Pico: An open-source Ngrok alternative built for production traffic | news.ycombinator.com | 2024-05-14
  • gvisor

    Application Kernel for Containers

  • Project mention: My VM is lighter (and safer) than your container | news.ycombinator.com | 2024-05-14
  • 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

  • SaaSHub

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

    SaaSHub 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

  • 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,988
2 Wox 24,017
3 Wails 22,441
4 podman 21,889
5 gvisor 15,134
6 brook 14,286
7 duf 12,318
8 chezmoi 11,869
9 vuls 10,699
10 qt 10,246
11 v2rayA 9,759
12 NoiseTorch 8,996
13 linuxkit 8,161
14 up 8,150
15 crowdsec 7,861
16 scc 6,166
17 go-flutter 5,811
18 ebpf 5,790
19 goss 5,451
20 talos 5,418
21 bombardier 5,309
22 syzkaller 5,150
23 pet 4,211

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