• Stars
    star
    1,736
  • Rank 26,169 (Top 0.6 %)
  • Language
    JavaScript
  • License
    GNU General Publi...
  • Created about 13 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Display system informations in gnome shell status bar, such as memory usage, cpu usage, network rates…

GNOME Shell system monitor extension

Build Status

screenshot-small

screenshot-mid

screenshot-large

Installation

Prerequisites

This extension requires GNOME Shell v3.26 or later.

Before installing this extension, ensure you have the necessary system packages installed:

  • On Ubuntu:

    sudo apt install gir1.2-gtop-2.0 gir1.2-nm-1.0 gir1.2-clutter-1.0 gnome-system-monitor
    
  • On Debian:

    sudo apt install gir1.2-gtop-2.0 gir1.2-nm-1.0 gir1.2-clutter-1.0 gnome-system-monitor
    
  • On Fedora:

    sudo dnf install libgtop2-devel NetworkManager-libnm-devel gnome-system-monitor
    
  • On Arch Linux:

    sudo pacman -S libgtop networkmanager gnome-system-monitor clutter
    
  • On openSUSE (Leap 42.1):

    sudo zypper install gnome-shell-devel libgtop-devel libgtop-2_0-10 gnome-system-monitor
    
  • On Mageia 64-bit (just remove "64" on i586):

    sudo urpmi lib64gtop-gir2.0 lib64nm-gir1.0 lib64clutter-gir1.0 gnome-system-monitor
    

    or

    sudo dnf install lib64gtop-gir2.0 lib64nm-gir1.0 lib64clutter-gir1.0 gnome-system-monitor
    

Additionally, if you have an NVIDIA graphics card, and want to monitor its memory usage, you'll need to install nvidia-smi.

For the browser installation (recommended), you will need the GNOME Shell integration browser extension for Chrome, Firefox or Opera.

Note: If you're using Firefox 52 or later, you will also need to install chrome-gnome-shell. The instructions are available on the GNOME wiki.

Browser installation

It's recommended you install the extension via the Gnome Shell Extensions website.

Visit this extension's page on extensions.gnome.org, preferably in Firefox, and install by clicking the toggle button next to the extension's name.

If the install was successful, the toggle button should now show "ON". If it failed, ensure that you installed all the necessary dependencies, and that you granted the browser permission to install extensions when prompted. Additionally, rebooting gnome-shell may help (type Alt + F2 and input r in the prompt), but it won't work with Wayland.

Repository installation

  • Extension is in Fedora onwards (up to Fedora 33, last update) and Rawhide repositories, you can install it for all users with the following command:

    sudo dnf install gnome-shell-extension-system-monitor-applet
    
  • Enable it with gnome-tweak-tool or gnome-shell-extension-tool [email protected]

Manual installation

Download the ZIP/Tarball, extract the archive, open a shell into its directory, and run:

make install

Alternately, if you plan on doing development on the extension, or testing modifications, it's advised you checkout the Git repository and install a symlink. First, install git if you don't have it: (sudo apt-get install git-core, sudo pacman -S git, etc.), then run:

GIT_PROJECTS=~/git_projects
PROJECT_NAME=gnome-shell-system-monitor-applet
mkdir $GIT_PROJECTS
cd $GIT_PROJECTS
git clone git://github.com/paradoxxxzero/gnome-shell-system-monitor-applet.git $PROJECT_NAME
mkdir -p ~/.local/share/gnome-shell/extensions
cd ~/.local/share/gnome-shell/extensions
{ [ -d "./$PROJECT_NAME" ] || [ -L "./$PROJECT_NAME" ]; } && rm -Rf "./$PROJECT_NAME"
ln -s $GIT_PROJECTS/gnome-shell-system-monitor-applet/$PROJECT_NAME
gnome-shell-extension-tool --enable-extension=$PROJECT_NAME
gnome-extensions enable [email protected]

And reload GNOME Shell (Alt + F2, then r) or restart your GNOME session if you are using Wayland.

On openSUSE you need to install a devel package that provides the gnome-shell-extension-tool command:

sudo zypper install gnome-shell-devel

Development

Translation

If we do not have the translation for your language and you want to translate it by yourself, please make a fork, add your po/<YOUR_LANG>/system-monitor-applet.po file, and make a pull request.

Testing

Testing can be done on your native Linux environment using the install instructions above, or through Docker.

To build and run a Docker image:

./build-docker.sh
./run-docker.sh

To connect to the container's desktop through VNC:

./open-docker.sh

Once logged in, you'll still need to manually enable the extension by open the Gnome Tweaks tool.

Afterwards, when you're done testing, you can destroy the container with:

./close-docker.sh

Deployment

  1. To create a ZIP file with the specified version number, ready to upload to GNOME Shell Extensions or similar repository, run:

    make zip-file VERSION=

To determine the version number to use, check the extensions site and increment from the largest published version.

The specified version number is just for documentation and isn't strictly necessary in the uploaded file, since the extensions website will dynamically set this and override whatever we enter.

  1. Once uploaded, create a GitHub release with the same version number.

Authors

paradoxxxzero yuyichao darkxst and many contributors

License

Copyright (C) 2011 Florian Mounier aka paradoxxxzero

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

More Repositories

1

butterfly

A web terminal based on websocket and tornado
CoffeeScript
2,879
star
2

nocolon

nocolon is an utf-8 compatible encoding that removes the need of colons in python files.
Python
121
star
3

jinja2-mode

Jinja2 mode for emacs
Emacs Lisp
64
star
4

pyls-isort

Isort plugin for python-language-server
Python
59
star
5

cutter

Python list cutter tool
Python
35
star
6

clutterm

A clutter terminal emulator in python
Python
35
star
7

better-exceptions-hook

better-exceptions import hook
Python
34
star
8

annealation

Gravitational N-Body simulation rendering with three.js
Rust
29
star
9

atom-undo-tree

Never lose your changes on undo/redo anymore.
JavaScript
18
star
10

gnome-shell-focus-effects-extension

Desaturate unfocused windows
JavaScript
16
star
11

butterfly-themes

Repository for butterfly themes
CSS
15
star
12

fawn

The Flask Async uWSGI WebSocket postgresql Notify is a Flask Extension allowing websocket uwsgi broadcasting from postgresql notify channels.
Python
11
star
13

atom-rainbow-delimiters

Highlight delimiters around your cursor.
JavaScript
8
star
14

wsreload

Reload your browser tabs through websocket
Python
7
star
15

tornado-systemd

Tornado systemd socket activation support
Python
7
star
16

gnome-shell-shader-extension

Add shaders to windows
JavaScript
5
star
17

atom-python-import-magic

Import automatically python modules using importmagic
JavaScript
4
star
18

zshrc

My overkill zshrc
Shell
4
star
19

paradoxxxzero.github.io

JavaScript
4
star
20

.emacs.d

My emacs conf files
Emacs Lisp
4
star
21

four.js

Render 4 dimensional objects with three.js
JavaScript
4
star
22

chrome-emacs-mode

Implements in google chrome a number of Emacs bindings and allows quick navigation through websites without using the mouse.
JavaScript
4
star
23

qtile-config

My qtile config
Python
3
star
24

graphit

A free fast online plotter
JavaScript
3
star
25

bemboo

A bem generator based on objects for React 16 use.
JavaScript
3
star
26

zerorc

dotfiles supermodule
Emacs Lisp
3
star
27

umlaut

Uml modeler with physics
JavaScript
3
star
28

autocomplete-google-suggest

Atom package: Completions from google suggestions. (Search field autocompletion)
CoffeeScript
3
star
29

simple_page_screenshot

Take a screenshot from a region in the page and display it. You can them save it or copy the base 64 data uri of it with the context menu. (Copy image URL)
CoffeeScript
2
star
30

butterfly-demos

butterfly executables demos
Python
2
star
31

pung

A HTML5 pang rewrite
JavaScript
2
star
32

imgurTheWorld

Easy way to put online images on imgur. Open an image click on the extension button and get the imgur link directly in clipboard.
2
star
33

reddit-platinum

reddit plugin that optimizes reddit keyboard navigation
JavaScript
2
star
34

devtools

Slick web development toolkit
JavaScript
2
star
35

jsfractals

An html5 fractals drawer
JavaScript
2
star
36

gnome-shell-program-monitor-applet

JavaScript
2
star
37

scudd

React PureComponent shouldComponentUpdate logger, A very small lib for quick React PureComponent logging.
JavaScript
1
star
38

reddit-jump

A reddit plugin to quickly jump between subreddits
JavaScript
1
star
39

luacountdown

A simple countdown in lua and cairo
Python
1
star
40

memory-usage

Gnome shell extensior displaying your memory usage
JavaScript
1
star
41

minimap

A fork of git://randomsample.de/minimap.git
Emacs Lisp
1
star
42

next-occurrence

Atom package: Find the next occurrence of selection or word under the cursor.
CoffeeScript
1
star
43

devcore

Meta package for python development environment
Python
1
star
44

polldance

A poc app for long polling with flask + gevent
Python
1
star
45

graphitGL

Reimplementation of graphit using three js
JavaScript
1
star
46

zero_incubator

Little projects not big enough to have a dedicated repo
JavaScript
1
star
47

anakata

Anakata - A fast 4d mesh drawer
JavaScript
1
star
48

reddit-hd

reddit HD : reddit google chrome plugin that maximize your visual reddit experience
JavaScript
1
star
49

coffee2d

coffee2d
JavaScript
1
star
50

silex

A simple jquery slider plugin
CoffeeScript
1
star
51

pyregexp

A Python regexp/replace command for Emacs with interactive visual feedback
Emacs Lisp
1
star
52

atom-python-black-isort

Run isort then black on the current python file
JavaScript
1
star
53

kalong

JavaScript
1
star
54

tornado-template-mode

A major mode for editing tornado templates
Emacs Lisp
1
star
55

conky-lua-colors

An eye candy conky lua script
Lua
1
star
56

post-it

An http POST request creator
CoffeeScript
1
star
57

qstyle

An XCB X composite manager
Python
1
star
58

atom-one-theme-color-by-project

Patch atom one light and one dark theme to change the hue depending on the current project(s) name.
JavaScript
1
star
59

rfringe

Display the relative location of the region, in the fringe
Emacs Lisp
1
star