2 Commits
0.7.6 ... 0.7.2

Author SHA1 Message Date
955a27f606 Fix value type issue in `eshell-info-banner--get-memory-gnu' 2021-11-15 10:05:46 +01:00
494a90dcb1 Update README, package is now in melpa
Update recipes for installing package

Add MELPA badge
2021-11-14 19:01:34 +01:00
2 changed files with 31 additions and 47 deletions

View File

@@ -2,7 +2,6 @@
#+author: Lucien Cartier-Tilet #+author: Lucien Cartier-Tilet
#+email: lucien@phundrak.com #+email: lucien@phundrak.com
[[https://melpa.org/#/eshell-info-banner][file:https://melpa.org/packages/eshell-info-banner-badge.svg]] [[https://melpa.org/#/eshell-info-banner][file:https://melpa.org/packages/eshell-info-banner-badge.svg]]
[[https://stable.melpa.org/#/eshell-info-banner][file:https://stable.melpa.org/packages/eshell-info-banner-badge.svg]]
* Introduction * Introduction
~eshell-info-banner.el~ is a utility for creating an informative banner, ~eshell-info-banner.el~ is a utility for creating an informative banner,
@@ -88,6 +87,9 @@ There is probably a similar way to install it with pure ~straight.el~ or
~quelpa~, but Im not knowledgable enough for that, feel free to create ~quelpa~, but Im not knowledgable enough for that, feel free to create
a PR to add some more installation instructions! a PR to add some more installation instructions!
There is currently no plans of making this package available on MELPA
or non-gnu elpa.
* Customizing * Customizing
A couple of variables can be edited by the user in order to configure A couple of variables can be edited by the user in order to configure
~eshell-info-banner.el~: ~eshell-info-banner.el~:
@@ -178,4 +180,4 @@ See [[file:CONTRIBUTING.org]].
* License * License
~eshell-info-banner.el~ is available under the GNU GPL-3.0 license. You ~eshell-info-banner.el~ is available under the GNU GPL-3.0 license. You
can find the full text in the [[file:LICENSE][LICENSE]] file. can find the full text in [[file:LICENSE.md][LICENSE.md]].

View File

@@ -2,9 +2,9 @@
;; Author: Lucien Cartier-Tilet <lucien@phundrak.com> ;; Author: Lucien Cartier-Tilet <lucien@phundrak.com>
;; Maintainer: Lucien Cartier-Tilet <lucien@phundrak.com> ;; Maintainer: Lucien Cartier-Tilet <lucien@phundrak.com>
;; Version: 0.7.6 ;; Version: 0.7.2
;; Package-Requires: ((emacs "25.1") (f "0.20") (s "1")) ;; Package-Requires: ((emacs "25.1") (f "0.20") (s "1"))
;; Homepage: https://github.com/Phundrak/eshell-info-banner.el ;; Homepage: https://labs.phundrak.com/phundrak/eshell-info-banner.el
;; This file is not part of GNU Emacs ;; This file is not part of GNU Emacs
@@ -82,9 +82,7 @@
("11.1" . "macOS Big Sur") ("11.1" . "macOS Big Sur")
("11.2" . "macOS Big Sur") ("11.2" . "macOS Big Sur")
("11.3" . "macOS Big Sur") ("11.3" . "macOS Big Sur")
("11.4" . "macOS Big Sur") ("11.4" . "macOS Big Sur"))
("11.5" . "macOS Big Sur")
("11.6" . "macOS Big Sur"))
"Versions of OSX and macOS and their name.")) "Versions of OSX and macOS and their name."))
@@ -303,29 +301,28 @@ Common function between
otherwise differ solely on the position of the mount point in the otherwise differ solely on the position of the mount point in the
partition list. Its position is given by the argument partition list. Its position is given by the argument
MOUNT-POSITION." MOUNT-POSITION."
(let ((partitions (cdr (split-string (eshell-info-banner--shell-command-to-string "df -lH") (let ((partitions (split-string (eshell-info-banner--shell-command-to-string "df -lH")
(regexp-quote "\n") (regexp-quote "\n")
t)))) t)))
(cl-remove-if #'null (seq-filter (lambda (partition)
(mapcar (lambda (partition) (let* ((partition (split-string partition " " t))
(let* ((partition (split-string partition " " t)) (filesystem (nth 0 partition))
(filesystem (nth 0 partition)) (size (nth 1 partition))
(size (nth 1 partition)) (used (nth 2 partition))
(used (nth 2 partition)) (percent (nth 4 partition))
(percent (nth 4 partition)) (mount (nth mount-position partition)))
(mount (nth mount-position partition))) (unless (seq-some (lambda (prefix)
(when (seq-some (lambda (prefix) (string-prefix-p prefix filesystem t))
(string-prefix-p prefix filesystem t)) eshell-info-banner-partition-prefixes)
eshell-info-banner-partition-prefixes) (make-eshell-info-banner--mounted-partitions
(make-eshell-info-banner--mounted-partitions :path (if (> (length mount) eshell-info-banner-shorten-path-from)
:path (if (> (length mount) eshell-info-banner-shorten-path-from) (eshell-info-banner--abbr-path mount t)
(eshell-info-banner--abbr-path mount t) mount)
mount) :size size
:size size :used used
:used used :percent (string-to-number
:percent (string-to-number (string-trim-left percent (regexp-quote "%")))))))
(string-trim-left percent (regexp-quote "%"))))))) partitions)))
partitions))))
(defun eshell-info-banner--get-mounted-partitions-gnu () (defun eshell-info-banner--get-mounted-partitions-gnu ()
"Detect mounted partitions on a Linux system. "Detect mounted partitions on a Linux system.
@@ -552,9 +549,8 @@ The usage of `eshell-info-banner-warning-percentage' and
thought of as the “percentage of discharge” of the computer. thought of as the “percentage of discharge” of the computer.
Thus, setting the warning at 75% will be translated as showing Thus, setting the warning at 75% will be translated as showing
the warning face with a battery level of 25% or less." the warning face with a battery level of 25% or less."
(let ((battery-level (when (file-readable-p "/sys/") (battery)))) (let ((battery-level (battery)))
(if (or (null battery-level) (if (or (string= battery-level "Battery status not available")
(string= battery-level "Battery status not available")
(string-match-p (regexp-quote "N/A") battery-level)) (string-match-p (regexp-quote "N/A") battery-level))
"" ""
(let ((percentage (save-match-data (let ((percentage (save-match-data
@@ -628,20 +624,6 @@ If RELEASE-FILE is nil, use '/etc/os-release'."
"See `eshell-info-banner--get-os-information'." "See `eshell-info-banner--get-os-information'."
(let ((prefix (if eshell-info-banner-tramp-aware (file-remote-p default-directory) ""))) (let ((prefix (if eshell-info-banner-tramp-aware (file-remote-p default-directory) "")))
`(,(cond `(,(cond
;; Bedrock Linux
((file-exists-p (concat prefix "/bedrock/etc/bedrock-release"))
(s-trim (with-temp-buffer
(insert-file-contents (concat prefix "/bedrock/etc/bedrock-release"))
(buffer-string))))
;; Proxmox
((executable-find "pveversion" eshell-info-banner-tramp-aware)
(let ((distro (eshell-info-banner--shell-command-to-string "pveversion")))
(save-match-data
(string-match "/\\([^/]+\\)/" distro)
(concat "Proxmox "
(substring-no-properties distro
(match-beginning 1)
(match-end 1))))))
((executable-find "hostnamectl" eshell-info-banner-tramp-aware) ((executable-find "hostnamectl" eshell-info-banner-tramp-aware)
(eshell-info-banner--get-os-information-from-hostnamectl)) (eshell-info-banner--get-os-information-from-hostnamectl))
((executable-find "lsb_release" eshell-info-banner-tramp-aware) ((executable-find "lsb_release" eshell-info-banner-tramp-aware)