mirror of
https://gitlab.com/nonguix/nonguix.git
synced 2025-10-02 02:14:59 +00:00
Compare commits
12 commits
4f2c2fd804
...
f034d5320f
Author | SHA1 | Date | |
---|---|---|---|
|
f034d5320f | ||
|
c33db8571a | ||
|
2fe28d2a1b | ||
|
9302c6319b | ||
|
63c7e04386 | ||
|
7a67115e0d | ||
|
017e4bf864 | ||
|
0864aa6ba5 | ||
|
0531ba5050 | ||
|
bc2a73d7a8 | ||
|
e3035acca2 | ||
|
af134d0215 |
7 changed files with 205 additions and 19 deletions
47
guix/import/firefox.scm
Normal file
47
guix/import/firefox.scm
Normal file
|
@ -0,0 +1,47 @@
|
|||
;;; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||
|
||||
;;; This file is not part of GNU Guix but requires this naming scheme
|
||||
;;; so that the %firefox-updater is properly read when using
|
||||
;;; `guix refresh -L$(pwd) firefox' in nonguix root.
|
||||
|
||||
(define-module (guix import firefox)
|
||||
#:use-module (guix import json)
|
||||
#:use-module (guix memoization)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix upstream)
|
||||
#:export (%firefox-updater))
|
||||
|
||||
(define firefox-json-url "https://product-details.mozilla.org/1.0/firefox_versions.json")
|
||||
|
||||
(define firefox-versions
|
||||
(memoize
|
||||
(lambda _
|
||||
(let ((alist (json-fetch firefox-json-url)))
|
||||
(list (cons "firefox" (assoc-ref alist "LATEST_FIREFOX_VERSION"))
|
||||
(cons "firefox-esr" (assoc-ref alist "FIREFOX_ESR")))))))
|
||||
|
||||
(define* (latest-release package #:key (version #f) partial-version?)
|
||||
"Return an <upstream-source> for the latest-release of PACKAGE."
|
||||
(let* ((name (package-name package))
|
||||
(version (or version (assoc-ref (firefox-versions) name))))
|
||||
(upstream-source
|
||||
(package name)
|
||||
(version version)
|
||||
(urls
|
||||
(list (string-append "https://archive.mozilla.org/pub/firefox/releases/"
|
||||
version "/source/firefox-"
|
||||
version ".source.tar.xz"))))))
|
||||
|
||||
(define (firefox-package? package)
|
||||
"Return true if PACKAGE is Firefox."
|
||||
(member (package-name package) (list "firefox" "firefox-esr")))
|
||||
|
||||
(define %firefox-updater
|
||||
(upstream-updater
|
||||
(name 'firefox)
|
||||
(description "Updater for Firefox packages")
|
||||
(pred firefox-package?)
|
||||
(import latest-release)))
|
||||
|
||||
;;; firefox.scm ends here.
|
|
@ -105,7 +105,8 @@
|
|||
(description "Heroic is an Open Source Game Launcher. Right now it supports launching
|
||||
games from the Epic Games Store using Legendary, GOG Games using our custom
|
||||
implementation with gogdl and Amazon Games using Nile.")
|
||||
(license license:gpl3)))
|
||||
(license license:gpl3)
|
||||
(supported-systems '("x86_64-linux"))))
|
||||
|
||||
(define steam-client
|
||||
(package
|
||||
|
@ -160,7 +161,8 @@ implementation with gogdl and Amazon Games using Nile.")
|
|||
(home-page "https://store.steampowered.com")
|
||||
(synopsis "Digital distribution platform for managing and playing games")
|
||||
(description "Steam is a digital software distribution platform created by Valve.")
|
||||
(license (license:nonfree "file:///share/doc/steam/steam_subscriber_agreement.txt"))))
|
||||
(license (license:nonfree "file:///share/doc/steam/steam_subscriber_agreement.txt"))
|
||||
(supported-systems '("x86_64-linux"))))
|
||||
|
||||
(define steam-client-libs
|
||||
`(("at-spi2-core" ,at-spi2-core) ; Required (often) for SteamVR interface.
|
||||
|
|
89
nongnu/packages/grafana.scm
Normal file
89
nongnu/packages/grafana.scm
Normal file
|
@ -0,0 +1,89 @@
|
|||
;;; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
;;; Copyright © 2023 Petr Hodina <phodina@protonmail.com>
|
||||
|
||||
(define-module (nongnu packages grafana)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (nonguix build-system binary)
|
||||
#:use-module ((guix licenses)
|
||||
#:prefix license:))
|
||||
|
||||
(define-public grafana-bin
|
||||
(package
|
||||
(name "grafana")
|
||||
(version "9.3.2")
|
||||
(source (cond
|
||||
((target-x86-64?)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://dl.grafana.com/oss/release/grafana-" version
|
||||
".linux-amd64.tar.gz"))
|
||||
(sha256 (base32
|
||||
"177d396sg6pwa7vwsdwqy6fg17kq47n619s4745z62s6inq3i0vr"))))
|
||||
((target-aarch64?)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://dl.grafana.com/oss/release/grafana-" version
|
||||
".linux-arm64.tar.gz"))
|
||||
(sha256 (base32
|
||||
"1ps8aa279fh8hcngda794f69w6hm78pw9pgvwyxlnx229581zrkv"))))
|
||||
((target-armhf?)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://dl.grafana.com/oss/release/grafana-" version
|
||||
".linux-armv7.tar.gz"))
|
||||
(sha256 (base32
|
||||
"0avndch41m5k7gpxzdk8k1gzz3nyscmw3va4mk5813vbfmynv2bn"))))))
|
||||
(build-system binary-build-system)
|
||||
(arguments
|
||||
'(#:strip-binaries? #f ;TODO: For some reason it fails validate-runpath
|
||||
;; phase if enabled
|
||||
#:install-plan `(("bin/grafana-cli" "bin/grafana-cli")
|
||||
("bin/grafana-server" "bin/grafana-server")
|
||||
("conf/defaults.ini" "etc/grafana/grafana.ini")
|
||||
("conf" "share/grafana/")
|
||||
("public" "share/grafana/")
|
||||
("scripts" "share/grafana/")
|
||||
("plugins-bundled" "share/grafana/"))
|
||||
#:patchelf-plan (list (list "bin/grafana-cli"
|
||||
'("glibc" "gcc:lib"))
|
||||
(list "bin/grafana-server"
|
||||
'("glibc" "gcc:lib")))))
|
||||
(supported-systems '("x86_64-linux" "aarch64-linux" "armhf-linux"))
|
||||
(native-inputs (list patchelf))
|
||||
(inputs `(("gcc:lib" ,gcc "lib")
|
||||
("glibc" ,glibc)))
|
||||
(synopsis "Platform for monitoring and observability")
|
||||
(description
|
||||
"Grafana allows you to query, visualize, alert on
|
||||
and understand your metrics no matter where they are stored. Create, explore,
|
||||
and share dashboards with your team and foster a data-driven culture:
|
||||
@enumerate
|
||||
@ite Visualizations: Fast and flexible client side graphs with a multitude
|
||||
of options. Panel plugins offer many different ways to visualize metrics
|
||||
and logs
|
||||
@item Dynamic Dashboards: Create dynamic & reusable dashboards with template
|
||||
variables that appear as dropdowns at the top of the dashboard.
|
||||
@item Explore Metrics: Explore your data through ad-hoc queries and dynamic
|
||||
drilldown. Split view and compare different time ranges, queries and data
|
||||
sources side by side.
|
||||
@item Explore Logs: Experience the magic of switching from metrics to logs with
|
||||
preserved label filters. Quickly search through all your logs or streaming them
|
||||
live.
|
||||
@item Alerting: Visually define alert rules for your most important metrics.
|
||||
Grafana will continuously evaluate and send notifications to systems like Slack,
|
||||
PagerDuty, VictorOps, OpsGenie.
|
||||
@item Mixed Data Sources: Mix different data sources in the same graph! You can
|
||||
specify a data source on a per-query basis. This works for even custom
|
||||
datasources.
|
||||
@end enumerate")
|
||||
(home-page "https://grafana.com/")
|
||||
(license license:agpl3)))
|
|
@ -361,14 +361,14 @@ stable, responsive and smooth desktop experience.")))
|
|||
(define-public linux-firmware
|
||||
(package
|
||||
(name "linux-firmware")
|
||||
(version "20250808")
|
||||
(version "20250917")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kernel.org/linux/kernel/firmware/"
|
||||
"linux-firmware-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0zw3vsmd07yr27y5fz0m357hci00ah5impx5sz4jcnd18ldmaaf0"))))
|
||||
"0xgvb0fb4s48423asdb1dnkjjskbfmm336gm6vki2nliasvpa18j"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f
|
||||
|
@ -415,8 +415,11 @@ if your hardware is supported by one of the smaller firmware packages.")
|
|||
#~(lambda _
|
||||
(use-modules (ice-9 regex))
|
||||
(substitute* "WHENCE"
|
||||
(("^(File|RawFile|Link): *([^ ]*)(.*)" _ type file rest)
|
||||
(string-append (if (string-match #$keep file) type "Skip") ": " file rest)))))
|
||||
(("^(File|RawFile): *([^ ]*)(.*)" _ type file rest)
|
||||
(string-append (if (string-match #$keep file) type "Skip") ": " file rest))
|
||||
(("^Link: *(.*) *-> *(.*)" _ file target)
|
||||
(string-append (if (string-match #$keep target) "Link" "Skip")
|
||||
": " file " -> " target)))))
|
||||
|
||||
(define-public amdgpu-firmware
|
||||
(package
|
||||
|
@ -705,7 +708,7 @@ laptops).")
|
|||
((#:phases phases #~%standard-phases)
|
||||
#~(modify-phases #$phases
|
||||
(add-after 'unpack 'select-firmware
|
||||
#$(select-firmware "^iwlwifi-")))))))
|
||||
#$(select-firmware "^intel/iwlwifi/")))))))
|
||||
(home-page "https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi")
|
||||
(synopsis "Nonfree firmware for Intel wifi chips")
|
||||
(description "The proprietary iwlwifi kernel module is required by many
|
||||
|
|
|
@ -83,7 +83,7 @@ its core.")
|
|||
(define-public signal-desktop
|
||||
(package
|
||||
(name "signal-desktop")
|
||||
(version "7.70.0")
|
||||
(version "7.71.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -92,7 +92,7 @@ its core.")
|
|||
"https://updates.signal.org/desktop/apt/pool/s/" name "/" name "_" version
|
||||
"_amd64.deb"))
|
||||
(sha256
|
||||
(base32 "1f3vgfyb53c1qbvcmhmmbwz4iychdvbiyrpa2rgnzr3jp5ax8dhp"))))
|
||||
(base32 "14lk8s040alj2lxqw30hh54l4p3kpq1mxq64l8sqlph2y9c3hig3"))))
|
||||
(supported-systems '("x86_64-linux"))
|
||||
(build-system chromium-binary-build-system)
|
||||
(arguments
|
||||
|
|
|
@ -228,9 +228,9 @@ ACTION==\"unbind\", SUBSYSTEM==\"pci\", ATTR{vendor}==\"0x10de\", ATTR{class}==\
|
|||
(define-public nvidia-driver
|
||||
(package
|
||||
(name "nvidia-driver")
|
||||
(version "570.181")
|
||||
(version "580.82.09")
|
||||
(source (nvidia-source
|
||||
version "1yfwwfwbl5ph7s7zddixa0w8nb1wdg25sjysg98fl0hq7z72avgh"))
|
||||
version "1dwmardvxb2w6mx7hich5wc06f50qz92jk63kbhf059fv8rgiv1y"))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list #:modules '((guix build copy-build-system)
|
||||
|
@ -245,8 +245,8 @@ ACTION==\"unbind\", SUBSYSTEM==\"pci\", ATTR{vendor}==\"0x10de\", ATTR{class}==\
|
|||
("x86_64-linux" ".")
|
||||
(_ "."))
|
||||
"lib/" #:include-regexp ("^./[^/]+\\.so"))
|
||||
("." "lib/nvidia/wine/" #:include-regexp ("_?nvngx\\.dll$"))
|
||||
("." "share/nvidia/" #:include-regexp ("nvidia-application-profiles"))
|
||||
("." "lib/nvidia/wine/" #:include-regexp ("_?nvngx.*?\\.dll$"))
|
||||
("." "share/nvidia/" #:include-regexp ("nvidia-application-profiles|nvoptix.bin"))
|
||||
("." "share/egl/egl_external_platform.d/" #:include-regexp ("(gbm|wayland|xcb|xlib)\\.json"))
|
||||
("10_nvidia.json" "share/glvnd/egl_vendor.d/")
|
||||
("90-nvidia.rules" "lib/udev/rules.d/")
|
||||
|
@ -287,6 +287,8 @@ ACTION==\"unbind\", SUBSYSTEM==\"pci\", ATTR{vendor}==\"0x10de\", ATTR{class}==\
|
|||
(substitute* '("nvidia_icd.json"
|
||||
"nvidia_layers.json")
|
||||
(("libGLX_nvidia\\.so\\.." all)
|
||||
(string-append #$output "/lib/" all))
|
||||
(("libnvidia-present\\.so\\.[0-9.]*" all)
|
||||
(string-append #$output "/lib/" all)))
|
||||
|
||||
;; VulkanSC ICD configuration
|
||||
|
@ -627,9 +629,9 @@ add @code{nvidia_drm.modeset=1} to @code{kernel-arguments} as well.")
|
|||
(define-public nvidia-settings
|
||||
(package
|
||||
(name "nvidia-settings")
|
||||
(version "570.181")
|
||||
(version "580.82.09")
|
||||
(source (nvidia-settings-source
|
||||
name version "0fq72pj1b4iwlyivi9nmqr45iz6aqqdxgdbgk26x9m1yfxgpy748"))
|
||||
name version "0sy3mrg3vmyba6m87nanzmpvv2hzhb6nqdckhlaxv8wppmr7fvms"))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;no test suite
|
||||
|
@ -849,7 +851,7 @@ variables @code{__GLX_VENDOR_LIBRARY_NAME=nvidia} and
|
|||
(define-public egl-gbm
|
||||
(package
|
||||
(name "egl-gbm")
|
||||
(version "1.1.2")
|
||||
(version "1.1.2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -858,7 +860,7 @@ variables @code{__GLX_VENDOR_LIBRARY_NAME=nvidia} and
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rfgfi06ry7c7hnzdm4b0dc8r3hmbfn2rd37z3mc4wn38sgz5l3a"))))
|
||||
"1zcr1jksnh0431marzvgg301aybli29r1xw5vs4wnxgcp9bigvn6"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list eglexternalplatform mesa-for-nvda))
|
||||
|
@ -872,7 +874,7 @@ GBM EGL support.")
|
|||
(define-public egl-x11
|
||||
(package
|
||||
(name "egl-x11")
|
||||
(version "1.0.2")
|
||||
(version "1.0.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -881,7 +883,7 @@ GBM EGL support.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0s18xpylz16ry51xp1bs2s4hmvwsq49hcfc0gnmmvnymdzm041aq"))))
|
||||
"1hh1wkdijjhsmym5ab5nw8wyi0w9x7aznnmyg8sczhwdfb5rdnrj"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list eglexternalplatform mesa-for-nvda))
|
||||
|
|
43
nongnu/services/grafana.scm
Normal file
43
nongnu/services/grafana.scm
Normal file
|
@ -0,0 +1,43 @@
|
|||
;;; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
;;; Copyright © 2023 Petr Hodina <phodina@protonmail.com>
|
||||
|
||||
(define-module (nongnu services grafana)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (nongnu packages grafana)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services base)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix records)
|
||||
#:export (grafana-configuration
|
||||
grafana-configuration?
|
||||
grafana-configuration-record?
|
||||
grafana-service-type))
|
||||
|
||||
(define-record-type* <grafana-configuration>
|
||||
grafana-configuration make-grafana-configuration
|
||||
grafana-configuration?
|
||||
;; TODO: Port, HTTPS, plugins?
|
||||
(grafana grafana-configuration-package
|
||||
(default (list grafana-bin)))) ; package
|
||||
|
||||
;; Add config file
|
||||
(define (grafana-shepherd-service config)
|
||||
(list (shepherd-service
|
||||
(documentation "Run Grafana server.")
|
||||
(provision '(grafana))
|
||||
(requirement '(user-processes))
|
||||
(start #~(make-forkexec-constructor
|
||||
(list (string-append grafana
|
||||
"/bin/grafana-server")
|
||||
"-homepath" grafana)))
|
||||
(stop #~(make-kill-destructor)))))
|
||||
|
||||
(define grafana-service-type
|
||||
(service-type
|
||||
(name 'grafana)
|
||||
(extensions
|
||||
(list (service-extension shepherd-root-service-type
|
||||
grafana-shepherd-service)))
|
||||
(default-value (grafana-configuration))
|
||||
(description "Run Grafana server.")))
|
Loading…
Add table
Add a link
Reference in a new issue