All Projects → xyproto → Distrodetector

xyproto / Distrodetector

Licence: mit
📇 Detect which Linux distro or BSD a system is running

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Distrodetector

osutil
Go library to easily detect current operating system, current Linux distribution, macOS version and more...
Stars: ✭ 22 (+46.67%)
Mutual labels:  system, bsd
InitWare
The InitWare Suite of Middleware allows you to manage services and system resources as logical entities called units. Its main component is a service management ("init") system.
Stars: ✭ 164 (+993.33%)
Mutual labels:  system, bsd
clock
High-resolution clock functions: monotonic, realtime, cputime.
Stars: ✭ 52 (+246.67%)
Mutual labels:  system, bsd
InitKit
Neo-InitWare is a modular, cross-platform reimplementation of the systemd init system. It is experimental.
Stars: ✭ 364 (+2326.67%)
Mutual labels:  system, bsd
Ecominit
eComInit is a free init system and service manager designed to scale from lightweight desktops to web-scale cloud deployments. It aims to offer feature-parity with systemd but with a modular, portable architecture compliant with software engineering best-practice.
Stars: ✭ 352 (+2246.67%)
Mutual labels:  bsd, system
Yolo tensorflow
Tensorflow implementation of YOLO, including training and test phase.
Stars: ✭ 772 (+5046.67%)
Mutual labels:  detection
Brutedet
Generalized proof of concept tool which can be used for drop-in bruteforce protection when needed.
Stars: ✭ 5 (-66.67%)
Mutual labels:  detection
Imageai
A python library built to empower developers to build applications and systems with self-contained Computer Vision capabilities
Stars: ✭ 6,734 (+44793.33%)
Mutual labels:  detection
Pytorchinsight
a pytorch lib with state-of-the-art architectures, pretrained models and real-time updated results
Stars: ✭ 713 (+4653.33%)
Mutual labels:  detection
Training extensions
Trainable models and NN optimization tools
Stars: ✭ 857 (+5613.33%)
Mutual labels:  detection
Medicaldetectiontoolkit
The Medical Detection Toolkit contains 2D + 3D implementations of prevalent object detectors such as Mask R-CNN, Retina Net, Retina U-Net, as well as a training and inference framework focused on dealing with medical images.
Stars: ✭ 917 (+6013.33%)
Mutual labels:  detection
Statusalert
Display Apple system-like self-hiding status alerts. It is well suited for notifying user without interrupting user flow in iOS-like way.
Stars: ✭ 809 (+5293.33%)
Mutual labels:  system
System Design Primer Zh Tw
system-design-primer 繁體中文翻譯計畫。原作者:https://github.com/donnemartin/system-design-primer
Stars: ✭ 776 (+5073.33%)
Mutual labels:  system
Snoopy
Snoopy is a small library that logs all program executions on your Linux/BSD system (a.k.a. Snoopy Logger).
Stars: ✭ 835 (+5466.67%)
Mutual labels:  bsd
Csapp Labs
Solutions and Notes for Labs of Computer Systems: A Programmer's Perspective 3rd Editon // 《深入理解计算机系统》第三版的实验文件、解答与笔记
Stars: ✭ 749 (+4893.33%)
Mutual labels:  system
Flagchecker
For effective cheating detection in competitions. Utilizes Linux Kernel Module (LKM) for generating flags.
Stars: ✭ 24 (+60%)
Mutual labels:  detection
Fail2ban
Daemon to ban hosts that cause multiple authentication errors
Stars: ✭ 6,677 (+44413.33%)
Mutual labels:  bsd
Bumbag Ui
Build accessible & themeable React applications with your Bumbag 👝
Stars: ✭ 805 (+5266.67%)
Mutual labels:  system
Tffrcnn
FastER RCNN built on tensorflow
Stars: ✭ 898 (+5886.67%)
Mutual labels:  detection
Safety Helmet Wearing Dataset
Safety helmet wearing detect dataset, with pretrained model
Stars: ✭ 802 (+5246.67%)
Mutual labels:  detection

distrodetector

Build Status GoDoc License Go Report Card

Detects which Linux distro or BSD a system is running.

The distro utility and the distrodetector package has no external dependencies.

Installation of the distro utility

The distro utility can be used as a drop-in replacement for the distro command that comes with python-distro.

Installation of the development version of the distro utility:

go get -u github.com/xyproto/distrodetector/cmd/distro

Example use:

distro

Use of the Go package

package main

import (
	"fmt"
	"github.com/xyproto/distrodetector"
)

func main() {
	distro := distrodetector.New()
	fmt.Println(distro.Name())
}

Example output

The parts can be retrieved separately with .Platform(), .Name(), .Codename() and .Version(). A combined string can be returned with the .String() function:

Linux (Arch Linux)
Linux (Ubuntu Bionic 18.04)
macOS (High Sierra 10.13.3)
Linux (Void Linux)

Features and limitations

This package only aims to be able to detect the following:

  • The 100 most popular Linux distros and BSDs, according to distrowatch.
  • macOS with Homebrew.

Pull requests for additional systems are welcome!

Testing

  • More testing is always needed when detecting Linux distros and BSDs.
  • Please test the distro detection on your distro/BSD and submit an issue or pull request if it should fail.

General Info

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].