Switching maintainership.
This commit is contained in:
parent
47413695ce
commit
38d7736ca0
11
CHANGELOG.md
11
CHANGELOG.md
@ -13,6 +13,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
> - **Fixed**: for any bug fixes.
|
> - **Fixed**: for any bug fixes.
|
||||||
> - **Security**: in case of vulnerabilities.
|
> - **Security**: in case of vulnerabilities.
|
||||||
|
|
||||||
|
## [3.1.0] - 2020-02-13
|
||||||
|
|
||||||
|
Re-homed the project after the original fork (trunk?) was marked as
|
||||||
|
unmaintained by cjbassi.
|
||||||
|
|
||||||
|
- Merges @HowJMay spelling fixes
|
||||||
|
- Merges @markuspeloquin solarized themes
|
||||||
|
- Merges @jrswab additional kill terms
|
||||||
|
- Adds the ability to lay out the UI using a text file
|
||||||
|
- Changed the project filesystem layout to be more idiomatic
|
||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
52
README.md
52
README.md
@ -7,6 +7,8 @@
|
|||||||
|
|
||||||
Another terminal based graphical activity monitor, inspired by [gtop](https://github.com/aksakalli/gtop) and [vtop](https://github.com/MrRio/vtop), this time written in [Go](https://golang.org/)!
|
Another terminal based graphical activity monitor, inspired by [gtop](https://github.com/aksakalli/gtop) and [vtop](https://github.com/MrRio/vtop), this time written in [Go](https://golang.org/)!
|
||||||
|
|
||||||
|
The original author of gotop has re-implemented the application in Rust, as [ytop](https://github.com/cjbassi/ytop). This is a fork of original gotop project with a new maintainer.
|
||||||
|
|
||||||
<img src="./assets/demos/demo.gif" />
|
<img src="./assets/demos/demo.gif" />
|
||||||
<img src="./assets/screenshots/minimal.png" width="96%" />
|
<img src="./assets/screenshots/minimal.png" width="96%" />
|
||||||
|
|
||||||
@ -19,52 +21,16 @@ Working and tested on Linux, FreeBSD and macOS. Windows support is planned. Open
|
|||||||
### Source
|
### Source
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
go get github.com/cjbassi/gotop
|
go get github.com/xxxserxxx/gotop/...
|
||||||
```
|
```
|
||||||
|
|
||||||
### Prebuilt binaries
|
### Prebuilt binaries
|
||||||
|
|
||||||
**Note**: Doesn't require Go.
|
**Note**: Doesn't require Go.
|
||||||
|
|
||||||
Clone the repo and then run [scripts/download.sh](./scripts/download.sh) to download the correct binary for your system from the [releases tab](https://github.com/cjbassi/gotop/releases):
|
Visit [here](https://github.com/xxxserxxx/gotop/releases) with your web browser and download a version that works for you.
|
||||||
|
|
||||||
```bash
|
Unzip it and then move `gotop` into your `$PATH` somewhere. If you're on a Debian or Redhat derivative, you can download an `.rpm` or `.deb` to install.
|
||||||
git clone --depth 1 https://github.com/cjbassi/gotop /tmp/gotop
|
|
||||||
/tmp/gotop/scripts/download.sh
|
|
||||||
```
|
|
||||||
|
|
||||||
Then move `gotop` into your `$PATH` somewhere.
|
|
||||||
|
|
||||||
### Arch Linux
|
|
||||||
|
|
||||||
Install `gotop`, `gotop-bin`, or `gotop-git` from the AUR.
|
|
||||||
|
|
||||||
### FreeBSD
|
|
||||||
|
|
||||||
```bash
|
|
||||||
pkg install gotop
|
|
||||||
```
|
|
||||||
|
|
||||||
### Homebrew
|
|
||||||
|
|
||||||
```bash
|
|
||||||
brew tap cjbassi/gotop
|
|
||||||
brew install gotop
|
|
||||||
```
|
|
||||||
|
|
||||||
### Snap
|
|
||||||
|
|
||||||
```bash
|
|
||||||
snap install gotop-cjbassi
|
|
||||||
```
|
|
||||||
|
|
||||||
**Note**: You may need to enable certain permissions for all of the widgets to work:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
snap connect gotop-cjbassi:hardware-observe
|
|
||||||
snap connect gotop-cjbassi:mount-observe
|
|
||||||
snap connect gotop-cjbassi:system-observe
|
|
||||||
```
|
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
@ -82,7 +48,9 @@ snap connect gotop-cjbassi:system-observe
|
|||||||
- `G` and `<End>`: jump to bottom
|
- `G` and `<End>`: jump to bottom
|
||||||
- Process actions:
|
- Process actions:
|
||||||
- `<Tab>`: toggle process grouping
|
- `<Tab>`: toggle process grouping
|
||||||
- `dd`: kill selected process or group of processes
|
- `dd`: kill selected process or group of processes with SIGTERM
|
||||||
|
- `d3`: kill selected process or group of processes with SIGQUIT
|
||||||
|
- `d9`: kill selected process or group of processes with SIGKILL
|
||||||
- Process sorting
|
- Process sorting
|
||||||
- `c`: CPU
|
- `c`: CPU
|
||||||
- `m`: Mem
|
- `m`: Mem
|
||||||
@ -194,7 +162,3 @@ build massive edifices, you're in for disappointment.
|
|||||||
- [shirou/gopsutil](https://github.com/shirou/gopsutil)
|
- [shirou/gopsutil](https://github.com/shirou/gopsutil)
|
||||||
- [goreleaser/nfpm](https://github.com/goreleaser/nfpm)
|
- [goreleaser/nfpm](https://github.com/goreleaser/nfpm)
|
||||||
- [distatus/battery](https://github.com/distatus/battery)
|
- [distatus/battery](https://github.com/distatus/battery)
|
||||||
|
|
||||||
## Stargazers over time
|
|
||||||
|
|
||||||
[](https://starcharts.herokuapp.com/cjbassi/gotop)
|
|
||||||
|
@ -4,12 +4,12 @@ platform: "linux"
|
|||||||
version: "v${VERSION}"
|
version: "v${VERSION}"
|
||||||
section: "default"
|
section: "default"
|
||||||
priority: "extra"
|
priority: "extra"
|
||||||
maintainer: "Caleb Bassi <calebjbassi@gmail.com>"
|
maintainer: "Sean Russell <ser@ser1.net>"
|
||||||
description: |
|
description: |
|
||||||
A terminal based graphical activity monitor inspired by gtop and vtop
|
A terminal based graphical activity monitor inspired by gtop and vtop
|
||||||
vendor: "Caleb Bassi"
|
vendor: "Sean Russell"
|
||||||
homepage: "https://github.com/cjbassi/gotop"
|
homepage: "https://github.com/xxxserxxx/gotop"
|
||||||
license: "GNU Affero General Public License v3.0"
|
license: "GNU Affero General Public License v3.0"
|
||||||
bindir: "/usr/local/bin"
|
bindir: "/usr/local/bin"
|
||||||
files:
|
files:
|
||||||
/tmp/dist/gotop: "/usr/local/bin/gotop"
|
dist/gotop: "/usr/local/bin/gotop"
|
||||||
|
@ -16,12 +16,12 @@ import (
|
|||||||
docopt "github.com/docopt/docopt.go"
|
docopt "github.com/docopt/docopt.go"
|
||||||
ui "github.com/gizak/termui/v3"
|
ui "github.com/gizak/termui/v3"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop"
|
"github.com/xxxserxxx/gotop"
|
||||||
"github.com/cjbassi/gotop/colorschemes"
|
"github.com/xxxserxxx/gotop/colorschemes"
|
||||||
"github.com/cjbassi/gotop/layout"
|
"github.com/xxxserxxx/gotop/layout"
|
||||||
"github.com/cjbassi/gotop/logging"
|
"github.com/xxxserxxx/gotop/logging"
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
w "github.com/cjbassi/gotop/widgets"
|
w "github.com/xxxserxxx/gotop/widgets"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -4,10 +4,11 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/colorschemes"
|
"github.com/xxxserxxx/gotop/colorschemes"
|
||||||
"github.com/cjbassi/gotop/widgets"
|
"github.com/xxxserxxx/gotop/widgets"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// TODO: Cross-compiling for darwin, openbsd requiring native procs & temps
|
||||||
type Config struct {
|
type Config struct {
|
||||||
ConfigDir string
|
ConfigDir string
|
||||||
LogDir string
|
LogDir string
|
||||||
|
2
go.mod
2
go.mod
@ -1,4 +1,4 @@
|
|||||||
module github.com/cjbassi/gotop
|
module github.com/xxxserxxx/gotop
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 // indirect
|
github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 // indirect
|
||||||
|
@ -5,8 +5,8 @@ import (
|
|||||||
"log"
|
"log"
|
||||||
"sort"
|
"sort"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop"
|
"github.com/xxxserxxx/gotop"
|
||||||
"github.com/cjbassi/gotop/widgets"
|
"github.com/xxxserxxx/gotop/widgets"
|
||||||
|
|
||||||
ui "github.com/gizak/termui/v3"
|
ui "github.com/gizak/termui/v3"
|
||||||
)
|
)
|
||||||
@ -29,7 +29,7 @@ type MyGrid struct {
|
|||||||
|
|
||||||
var widgetNames []string = []string{"cpu", "disk", "mem", "temp", "net", "procs", "batt"}
|
var widgetNames []string = []string{"cpu", "disk", "mem", "temp", "net", "procs", "batt"}
|
||||||
|
|
||||||
// BUG 2:disk mem\nnet loses the widget from the second line
|
// FIXME 2:disk mem\nnet loses the widget from the second line
|
||||||
func Layout(wl layout, c gotop.Config) (*MyGrid, error) {
|
func Layout(wl layout, c gotop.Config) (*MyGrid, error) {
|
||||||
rowDefs := wl.Rows
|
rowDefs := wl.Rows
|
||||||
uiRows := make([]ui.GridItem, 0)
|
uiRows := make([]ui.GridItem, 0)
|
||||||
|
@ -8,9 +8,9 @@ function get_latest_release {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function download {
|
function download {
|
||||||
RELEASE=$(get_latest_release 'cjbassi/gotop')
|
RELEASE=$(get_latest_release 'xxxserxxx/gotop')
|
||||||
ARCHIVE=gotop_${RELEASE}_${1}.tgz
|
ARCHIVE=gotop_${RELEASE}_${1}.tgz
|
||||||
curl -LO https://github.com/cjbassi/gotop/releases/download/${RELEASE}/${ARCHIVE}
|
curl -LO https://github.com/xxxserxxx/gotop/releases/download/${RELEASE}/${ARCHIVE}
|
||||||
tar xf ${ARCHIVE}
|
tar xf ${ARCHIVE}
|
||||||
rm ${ARCHIVE}
|
rm ${ARCHIVE}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
name: gotop-cjbassi
|
name: gotop-xxxserxxx
|
||||||
base: core18
|
base: core18
|
||||||
version: determined-by-version-script
|
version: determined-by-version-script
|
||||||
version-script: git describe --always --tags --dirty
|
version-script: git describe --always --tags --dirty
|
||||||
@ -15,7 +15,7 @@ parts:
|
|||||||
gotop:
|
gotop:
|
||||||
source: .
|
source: .
|
||||||
plugin: go
|
plugin: go
|
||||||
go-importpath: github.com/cjbassi/gotop
|
go-importpath: github.com/xxxserxxx/gotop
|
||||||
build-packages:
|
build-packages:
|
||||||
- git-core
|
- git-core
|
||||||
- gcc
|
- gcc
|
||||||
@ -31,7 +31,7 @@ plugs:
|
|||||||
system-observe:
|
system-observe:
|
||||||
|
|
||||||
apps:
|
apps:
|
||||||
gotop-cjbassi:
|
gotop-xxxserxxx:
|
||||||
command: bin/gotop
|
command: bin/gotop
|
||||||
environment:
|
environment:
|
||||||
LANG: C.UTF-8
|
LANG: C.UTF-8
|
||||||
|
@ -4,7 +4,7 @@ import (
|
|||||||
"image"
|
"image"
|
||||||
"sort"
|
"sort"
|
||||||
|
|
||||||
drawille "github.com/cjbassi/gotop/termui/drawille-go"
|
drawille "github.com/xxxserxxx/gotop/termui/drawille-go"
|
||||||
. "github.com/gizak/termui/v3"
|
. "github.com/gizak/termui/v3"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ import (
|
|||||||
|
|
||||||
"github.com/distatus/battery"
|
"github.com/distatus/battery"
|
||||||
|
|
||||||
ui "github.com/cjbassi/gotop/termui"
|
ui "github.com/xxxserxxx/gotop/termui"
|
||||||
)
|
)
|
||||||
|
|
||||||
type BatteryWidget struct {
|
type BatteryWidget struct {
|
||||||
|
@ -8,7 +8,7 @@ import (
|
|||||||
|
|
||||||
psCpu "github.com/shirou/gopsutil/cpu"
|
psCpu "github.com/shirou/gopsutil/cpu"
|
||||||
|
|
||||||
ui "github.com/cjbassi/gotop/termui"
|
ui "github.com/xxxserxxx/gotop/termui"
|
||||||
)
|
)
|
||||||
|
|
||||||
type CpuWidget struct {
|
type CpuWidget struct {
|
||||||
|
@ -9,8 +9,8 @@ import (
|
|||||||
|
|
||||||
psDisk "github.com/shirou/gopsutil/disk"
|
psDisk "github.com/shirou/gopsutil/disk"
|
||||||
|
|
||||||
ui "github.com/cjbassi/gotop/termui"
|
ui "github.com/xxxserxxx/gotop/termui"
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Partition struct {
|
type Partition struct {
|
||||||
|
@ -7,8 +7,8 @@ import (
|
|||||||
|
|
||||||
psMem "github.com/shirou/gopsutil/mem"
|
psMem "github.com/shirou/gopsutil/mem"
|
||||||
|
|
||||||
ui "github.com/cjbassi/gotop/termui"
|
ui "github.com/xxxserxxx/gotop/termui"
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
type MemWidget struct {
|
type MemWidget struct {
|
||||||
|
@ -7,7 +7,7 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
func convert(s []string) (MemoryInfo, error) {
|
func convert(s []string) (MemoryInfo, error) {
|
||||||
|
@ -7,8 +7,8 @@ import (
|
|||||||
|
|
||||||
psNet "github.com/shirou/gopsutil/net"
|
psNet "github.com/shirou/gopsutil/net"
|
||||||
|
|
||||||
ui "github.com/cjbassi/gotop/termui"
|
ui "github.com/xxxserxxx/gotop/termui"
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -10,8 +10,8 @@ import (
|
|||||||
|
|
||||||
psCPU "github.com/shirou/gopsutil/cpu"
|
psCPU "github.com/shirou/gopsutil/cpu"
|
||||||
|
|
||||||
ui "github.com/cjbassi/gotop/termui"
|
ui "github.com/xxxserxxx/gotop/termui"
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -8,7 +8,7 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
type processList struct {
|
type processList struct {
|
||||||
|
@ -9,7 +9,7 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -8,7 +8,7 @@ import (
|
|||||||
|
|
||||||
ui "github.com/gizak/termui/v3"
|
ui "github.com/gizak/termui/v3"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
type TempScale int
|
type TempScale int
|
||||||
|
@ -6,7 +6,7 @@ import "C"
|
|||||||
import (
|
import (
|
||||||
"log"
|
"log"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
type TemperatureStat struct {
|
type TemperatureStat struct {
|
||||||
|
@ -7,7 +7,7 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
var sensorOIDS = map[string]string{
|
var sensorOIDS = map[string]string{
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
|
|
||||||
psHost "github.com/shirou/gopsutil/host"
|
psHost "github.com/shirou/gopsutil/host"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (self *TempWidget) update() {
|
func (self *TempWidget) update() {
|
||||||
|
@ -12,7 +12,7 @@ import (
|
|||||||
"syscall"
|
"syscall"
|
||||||
"unsafe"
|
"unsafe"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (self *TempWidget) getTemp(mib []C.int, mlen int, snsrdev *C.struct_sensordev, index int) {
|
func (self *TempWidget) getTemp(mib []C.int, mlen int, snsrdev *C.struct_sensordev, index int) {
|
||||||
|
@ -5,7 +5,7 @@ import (
|
|||||||
|
|
||||||
psHost "github.com/shirou/gopsutil/host"
|
psHost "github.com/shirou/gopsutil/host"
|
||||||
|
|
||||||
"github.com/cjbassi/gotop/utils"
|
"github.com/xxxserxxx/gotop/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (self *TempWidget) update() {
|
func (self *TempWidget) update() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user