Compare commits

...
Sign in to create a new pull request.

23 commits

Author SHA1 Message Date
e4727e9ca8 remove custom fzf as it breaks anyway lately 2025-08-24 10:01:47 +02:00
a524d0a423 switch to standard fzf 2025-08-24 10:01:28 +02:00
018417a52c update guix stuff 2025-08-14 22:44:16 +02:00
f12741e71d remove docker, podman and kubectl 2025-08-05 20:31:14 +02:00
f6d3bd98e9 remove docker/podman from common 2025-08-05 17:52:25 +02:00
d875f5753e comment sway opinionated env vars in common 2025-07-31 14:37:07 +02:00
6fddb7942d reduce dependencies on non-guix 2025-07-31 12:55:21 +02:00
c24bac561a reduce dependencies on non guix 2025-07-31 12:47:40 +02:00
fd8bb5ea8f clean up mozilla 2025-07-31 00:58:49 +02:00
974ef29ef9 replace firefox with librewolf 2025-07-31 00:50:20 +02:00
a7c2e16eea force channel config 2025-07-30 23:54:56 +02:00
74cb7123d6 shadow main guix channel 2025-07-30 23:37:12 +02:00
c2adf7a8a3 get url from default channel 2025-07-30 20:15:49 +02:00
2c16176abf enable rust-team branch 2025-07-30 20:09:39 +02:00
63df211e4c forgot freedesktop dep 2025-07-30 18:54:56 +02:00
ae0264b211 add libappindicator to gpservice 2025-07-30 18:51:00 +02:00
dd3ebd12fa add globalconnect-openconnect 2025-07-30 14:43:35 +02:00
c14243913d add uv package 2025-07-24 16:56:20 +02:00
b3ac1aa68a export path 2025-07-23 23:30:29 +02:00
0662d805ad add .local/bin to path 2025-07-23 23:23:53 +02:00
cba421d105 fix if test for tmux 2025-07-23 22:59:13 +02:00
021476d20d start tmux in alacritty 2025-07-23 22:47:03 +02:00
bab5558560 first stap at updating nvidia container 2025-07-23 00:43:00 +02:00
8 changed files with 592 additions and 174 deletions

View file

@ -15,12 +15,13 @@
#:use-module (gnu home services xdg) #:use-module (gnu home services xdg)
#:use-module (gnu packages algebra) #:use-module (gnu packages algebra)
#:use-module (gnu packages aspell) #:use-module (gnu packages aspell)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages cmake)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages commencement) #:use-module (gnu packages commencement)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages containers) #:use-module (gnu packages containers)
#:use-module (gnu packages docker)
#:use-module (gnu packages emacs) #:use-module (gnu packages emacs)
#:use-module (gnu packages fonts) #:use-module (gnu packages fonts)
#:use-module (gnu packages freedesktop) #:use-module (gnu packages freedesktop)
@ -35,6 +36,7 @@
#:use-module (gnu packages haskell-xyz) #:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages image-viewers) #:use-module (gnu packages image-viewers)
#:use-module (gnu packages librewolf)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages lsof) #:use-module (gnu packages lsof)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
@ -42,6 +44,7 @@
#:use-module (gnu packages node) #:use-module (gnu packages node)
#:use-module (gnu packages package-management) #:use-module (gnu packages package-management)
#:use-module (gnu packages password-utils) #:use-module (gnu packages password-utils)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio) #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages rsync) #:use-module (gnu packages rsync)
#:use-module (gnu packages rust-apps) #:use-module (gnu packages rust-apps)
@ -61,16 +64,11 @@
#:use-module (gnu packages xdisorg) #:use-module (gnu packages xdisorg)
#:use-module (guix channels) #:use-module (guix channels)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (nongnu packages chrome)
#:use-module (nongnu packages mozilla)
#:use-module (nongnu packages k8s)
#:use-module (nongnu packages nvidia)
#:use-module (snamellit packages atuin-bin) #:use-module (snamellit packages atuin-bin)
#:use-module (snamellit packages tools) #:use-module (snamellit packages tools)
#:use-module (snamellit packages xca) #:use-module (snamellit packages xca)
#:use-module (snamellit packages lazygit-bin) #:use-module (snamellit packages lazygit-bin)
#:use-module (snamellit packages tea-bin) #:use-module (snamellit packages tea-bin)
#:use-module (snamellit packages fzf)
#:use-module (snamellit packages gh-bin) #:use-module (snamellit packages gh-bin)
#:use-module (snamellit packages guile-xyz) #:use-module (snamellit packages guile-xyz)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
@ -80,16 +78,10 @@
(define-public %snam-terminal-packages (define-public %snam-terminal-packages
(list (list
kubectl
;;podman
;;podman-compose
docker
;;docker-compose
cifs-utils cifs-utils
gnupg gnupg
pinentry pinentry
go-github-com-junegunn-fzf-0.54.3
tmux tmux
direnv direnv
ripgrep ripgrep
@ -97,12 +89,12 @@
atuin-bin atuin-bin
unzip unzip
fish fish
fzf
watchexec watchexec
password-store password-store
pass-otp pass-otp
bc bc
texlive
rsync rsync
curl curl
yq yq
@ -115,6 +107,11 @@
gnu-make gnu-make
glibc-locales glibc-locales
gcc-toolchain gcc-toolchain
cmake
autoconf
automake
pkg-config
guile-3.0 guile-3.0
guile-colorized guile-colorized
@ -127,6 +124,8 @@
node-lts ; emacs startup relies on node being present node-lts ; emacs startup relies on node being present
pandoc ; for org-mode export and markdown pandoc ; for org-mode export and markdown
plantuml ; for org-mode plantuml export plantuml ; for org-mode plantuml export
texlive ; for org-latex support
vault ; hashicorp vault vault ; hashicorp vault
)) ))
@ -175,8 +174,7 @@
foot foot
kitty kitty
firefox librewolf
google-chrome-stable
guile-g-golf guile-g-golf
guile-cairo guile-cairo
@ -184,6 +182,8 @@
libadwaita libadwaita
gobject-introspection gobject-introspection
zlib ; ubiquitous used so file
;; emacs support ;; emacs support
emacs emacs
aspell aspell
@ -209,7 +209,8 @@
(list (list
(service home-bash-service-type (service home-bash-service-type
(home-bash-configuration (home-bash-configuration
(aliases '(("gst" . "git status") (aliases '(("ec" . "emacsclient -a=''")
("gst" . "git status")
("gca" . "git commit -a") ("gca" . "git commit -a")
("gcl" . "git clone") ("gcl" . "git clone")
("gco" . "git checkout") ("gco" . "git checkout")
@ -227,54 +228,38 @@
"helpers" "helpers"
(format #f "~{~a~&~}" (format #f "~{~a~&~}"
(list (list
"export PATH=$PATH:$HOME/.local/bin"
"eval \"$(direnv hook bash)\"" "eval \"$(direnv hook bash)\""
;; "eval \"$(starship init bash)\""
"eval \"$(atuin init bash)\"" "eval \"$(atuin init bash)\""
"if [[ \"$ALACRITTY_WINDOW_ID\" != \"\" ]]; then tmux; fi"
))))))) )))))))
(simple-service 'variant-packages-service ;; (simple-service 'variant-packages-service home-channels-service-type ; extend default
home-channels-service-type (service home-channels-service-type ; replace default home-channels-service
(list (list
;; (channel (channel
;; (name 'rust-team) (name 'guix)
;; (url "https://git.savannah.gnu.org/git/guix.git") (url (channel-url %default-guix-channel))
;; (branch "rust-team") (branch "master")
;; (introduction (introduction
;; (make-channel-introduction (make-channel-introduction
;; "9edb3f66fd807b096b48283debdcddccfea34bad" "9edb3f66fd807b096b48283debdcddccfea34bad"
;; (openpgp-fingerprint (openpgp-fingerprint
;; "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))) "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA"))))
(channel (channel
(name 'nonguix) (name 'nonguix)
(url "https://gitlab.com/nonguix/nonguix") (url "https://gitlab.com/nonguix/nonguix")
;; Enable signature verification: ;; Enable signature verification:
(introduction (introduction
(make-channel-introduction (make-channel-introduction
"897c1a470da759236cc11798f4e0a5f7d4d59fbc" "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
(openpgp-fingerprint (openpgp-fingerprint
"2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5")))) "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))
;; (channel (channel
;; (name 'guix-science-nonfree) (name 'snamguix)
;; (url "https://codeberg.org/guix-science/guix-science-nonfree.git") (url "https://forge.snamellit.com/pti/snamguix")
;; (introduction (branch "main"))
;; (make-channel-introduction
;; "58661b110325fd5d9b40e6f0177cc486a615817e" ))
;; (openpgp-fingerprint
;; "CA4F 8CF4 37D7 478F DA05 5FD4 4213 7701 1A37 8446"))))
(channel
(name 'snamguix)
(url "https://forge.snamellit.com/pti/snamguix")
(branch "main"))
;; (channel
;; (name 'benoitj)
;; (url "https://git.sr.ht/~benoit/my-guix-channel")
;; (branch "main")
;; (introduction
;; (make-channel-introduction
;; "37444eebf69f83f4accaa2c69562209d94f4e57a"
;; (openpgp-fingerprint
;; "C3B6 ED99 DF87 B208 0C79 C8AC F86B 0628 26D4 C20A"))))
))
(service home-mcron-service-type) (service home-mcron-service-type)
)) ))
@ -316,15 +301,16 @@
;; Set Wayland-specific environment variables (taken from RDE) ;; Set Wayland-specific environment variables (taken from RDE)
("XDG_CURRENT_DESKTOP" . "sway") ;;("XDG_CURRENT_DESKTOP" . "sway")
("XDG_SESSION_TYPE" . "wayland") ;;("XDG_SESSION_TYPE" . "wayland")
("RTC_USE_PIPEWIRE" . "true") ;;("RTC_USE_PIPEWIRE" . "true")
("SDL_VIDEODRIVER" . "wayland") ;;("SDL_VIDEODRIVER" . "wayland")
("MOZ_ENABLE_WAYLAND" . "1") ;;("MOZ_ENABLE_WAYLAND" . "1")
("CLUTTER_BACKEND" . "wayland") ;;("CLUTTER_BACKEND" . "wayland")
("ELM_ENGINE" . "wayland_egl") ;;("ELM_ENGINE" . "wayland_egl")
("ECORE_EVAS_ENGINE" . "wayland-egl") ;;("ECORE_EVAS_ENGINE" . "wayland-egl")
("QT_QPA_PLATFORM" . "wayland-egl"))) ;;("QT_QPA_PLATFORM" . "wayland-egl")
))
(simple-service 'additional-fonts-service (simple-service 'additional-fonts-service
home-fontconfig-service-type home-fontconfig-service-type
(list (list

View file

@ -46,4 +46,7 @@
(license license:asl2.0))) (license license:asl2.0)))
snamellit-ca snamellit-ca

View file

@ -1,95 +0,0 @@
(define-module (snamellit packages fzf)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-xyz)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix build-system go))
(define-public go-github-com-charlievieth-fastwalk
(package
(name "go-github-com-charlievieth-fastwalk")
(version "1.0.8")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/charlievieth/fastwalk")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17zy17q31p8b93bf703rr0xqafp02bb0slkrgpxb8r0aaxz3zg4y"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/charlievieth/fastwalk"))
(home-page "https://github.com/charlievieth/fastwalk")
(synopsis "fastwalk")
(description
"Package fastwalk provides a faster version of
@@url{/path/filepath#@code{WalkDir,filepath.WalkDir}} for file system scanning
tools.")
(license license:expat)))
(define-public go-github-com-gdamore-tcell-v2
(package
(name "go-github-com-gdamore-tcell-v2")
(version "2.7.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gdamore/tcell")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05b22sgyf8lnwjddxlfvlj7i8b67gnidhbnz86vvx8fddggpa5nd"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/gdamore/tcell/v2"))
(propagated-inputs `(("go-golang-org-x-text" ,go-golang-org-x-text)
("go-golang-org-x-term" ,go-golang-org-x-term)
("go-golang-org-x-sys" ,go-golang-org-x-sys)
("go-github-com-mattn-go-runewidth" ,go-github-com-mattn-go-runewidth)
("go-github-com-lucasb-eyer-go-colorful" ,go-github-com-lucasb-eyer-go-colorful)
("go-github-com-gdamore-encoding" ,go-github-com-gdamore-encoding)))
(home-page "https://github.com/gdamore/tcell")
(synopsis "Tcell")
(description
"Package tcell provides a lower-level, portable API for building programs that
interact with terminals or consoles. It works with both common (and many
uncommon!) terminals or terminal emulators, and Windows console implementations.")
(license license:asl2.0)))
(define-public go-github-com-junegunn-fzf-0.54.3
(package
(name "go-github-com-junegunn-fzf")
(version "0.54.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/junegunn/fzf")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0mdj3z7w2igkvy8r304k9rcr2l6xm459ifshdm55iy6mazd8cmci"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/junegunn/fzf"))
(propagated-inputs `(("go-golang-org-x-term" ,go-golang-org-x-term)
("go-golang-org-x-sys" ,go-golang-org-x-sys)
("go-github-com-rivo-uniseg" ,go-github-com-rivo-uniseg)
("go-github-com-mattn-go-shellwords" ,go-github-com-mattn-go-shellwords)
("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty)
("go-github-com-gdamore-tcell-v2" ,go-github-com-gdamore-tcell-v2)
("go-github-com-charlievieth-fastwalk" ,go-github-com-charlievieth-fastwalk)))
(home-page "https://github.com/junegunn/fzf")
(synopsis "")
(description "fzf is a general-purpose command-line fuzzy finder.")
(license license:expat)))
go-github-com-junegunn-fzf-0.54.3

View file

@ -1,4 +1,4 @@
;; proudly found at https://ianfitzpatrick.eu/guix-nvidia-docker/ ;;; proudly found at https://ianfitzpatrick.eu/guix-nvidia-docker/
;; ;;
(define-module (snamellit packages nvidia-container) ;; adapt module name for your own use (define-module (snamellit packages nvidia-container) ;; adapt module name for your own use
@ -16,7 +16,7 @@
#:use-module (gnu packages onc-rpc) #:use-module (gnu packages onc-rpc)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages base) #:use-module ((gnu packages base) #:select (tar coreutils which) #:prefix core:)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages version-control) #:use-module (gnu packages version-control)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
@ -30,7 +30,7 @@
(define-public nvidia-modprobe (define-public nvidia-modprobe
(package (package
(name "nvidia-modprobe") (name "nvidia-modprobe")
(version "550.54.14") (version "575.51.02")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -38,7 +38,7 @@
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1a7q03pnwk3wa0p57whwv2mvz60bv77vvvaljqzwnscpyf94q548")))) (base32 "01gcmz4mrgjc9fx0nmjm8xri4193z6wn77h0njqf26qb2r5k496y"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -77,7 +77,7 @@
(define-public libnvidia-container (define-public libnvidia-container
(package (package
(name "libnvidia-container") (name "libnvidia-container")
(version "1.13.1") (version "1.17.8")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -87,7 +87,7 @@
(patches (search-patches "libnvidia-container.patch")) (patches (search-patches "libnvidia-container.patch"))
(sha256 (sha256
(base32 (base32
"0rzvh1zhh8pi5xjzaq3nmyzpcvjy41gq8w36dp1ai11a6j2lpa99")))) "0a0i0gm9c4xh9mzrxm1d7r1c878afzrwh49imqk3i3yn35ixqf1v"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -136,7 +136,7 @@
)) ))
#:tests? #f)) #:tests? #f))
(native-inputs (native-inputs
(list libseccomp nvidia-modprobe which libtirpc libcap libelf git-minimal curl tar coreutils docker go gcc-toolchain rpcsvc-proto pkgconf)) (list libseccomp nvidia-modprobe core:which libtirpc libcap libelf git-minimal curl core:tar core:coreutils docker go gcc-toolchain rpcsvc-proto pkgconf))
(synopsis "Build and run containers leveraging NVIDIA GPUs") (synopsis "Build and run containers leveraging NVIDIA GPUs")
(description "The NVIDIA Container Toolkit allows users to build and run GPU accelerated containers. The toolkit includes a container runtime library and utilities to automatically configure containers to leverage NVIDIA GPUs.") (description "The NVIDIA Container Toolkit allows users to build and run GPU accelerated containers. The toolkit includes a container runtime library and utilities to automatically configure containers to leverage NVIDIA GPUs.")
(home-page "https://github.com/NVIDIA/nvidia-container-toolkit") (home-page "https://github.com/NVIDIA/nvidia-container-toolkit")
@ -145,7 +145,7 @@
(define-public nvidia-container-toolkit (define-public nvidia-container-toolkit
(package (package
(name "nvidia-container-toolkit") (name "nvidia-container-toolkit")
(version "1.13.1") (version "1.17.8")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -154,7 +154,7 @@
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"01gh57jfpcv07c4442lbf9wiy0l1iwl85ig9drpp0637gbkzgwa4")))) "06lh7drkrkb2aw37vbhcx75an0n30dvy2q816s6clhvb2wzxqph7"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
(list (list
@ -183,3 +183,6 @@
(description "The NVIDIA Container Toolkit allows users to build and run GPU accelerated containers. The toolkit includes a container runtime library and utilities to automatically configure containers to leverage NVIDIA GPUs.") (description "The NVIDIA Container Toolkit allows users to build and run GPU accelerated containers. The toolkit includes a container runtime library and utilities to automatically configure containers to leverage NVIDIA GPUs.")
(home-page "https://github.com/NVIDIA/nvidia-container-toolkit") (home-page "https://github.com/NVIDIA/nvidia-container-toolkit")
(license asl2.0))) (license asl2.0)))
nvidia-container-toolkit

View file

@ -0,0 +1,28 @@
(define-module (snamellit packages offlineimap)
#:use-module (gnu packages mail)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (srfi srfi-1))
(define-public my-offlineimap
(let ((commit "4c64d72882925238c94047120314a0a3209364d0")
(revision "0"))
(package
(inherit offlineimap)
(name "my-offlineimap")
(version (git-version "8.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/OfflineIMAP/offlineimap3")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0j9135rb4rcmqvp3fnaqsznjpmn8ry878p0q714impgp20whw8jx")))))
))
my-offlineimap

View file

@ -0,0 +1,77 @@
(define-module (snamellit packages openconnect)
#:use-module (ice-9 string-fun)
#:use-module (gnu packages base)
#:use-module (gnu packages curl)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gtk)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xorg)
#:use-module (gnu packages tls)
#:use-module (gnu packages compression)
#:use-module (gnu packages gcc)
#:use-module (gnu packages tls)
#:use-module (gnu packages vpn)
#:use-module (gnu packages webkit)
#:use-module (guix download)
#:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system copy)
#:use-module (nonguix build-system binary))
(define libstdc++
;; Libstdc++ matching the default GCC.
(make-libstdc++ gcc))
(define-public globalprotect-openconnect
(package
(name "globalprotect-openconnect")
(version "2.4.5")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/yuezk/GlobalProtect-openconnect/releases/download/v"
version
"/globalprotect-openconnect-"
version
"-1-x86_64.pkg.tar.zst"))
(sha256
(base32
;; "1q1hf7rh32sk1zj5zmjkhgn2rckxzp0s4rsmmy1pjncmq81yfbbw" ; 2.3.11
"1ygl818mzc39v5afsx3yszqxmvzr3m37n2mkbdyzsfcjr13k24s6"
))))
(build-system binary-build-system)
(arguments
`(#:patchelf-plan
'(("bin/gpauth" ("openssl" "webkitgtk" "gtk" "glib" "cairo" "soup" "pixbuf" "gcc-lib"))
("bin/gpclient" ("openssl" "openconnect" "gcc-lib"))
("bin/gpgui" ("openssl" "webkitgtk" "gtk" "glib" "cairo" "soup" "pixbuf" "gcc-lib"))
("bin/gpgui-helper" ("openssl" "webkitgtk" "gtk" "glib" "cairo" "soup" "pixbuf" "gcc-lib"))
("bin/gpservice" ("openssl" "xz" "gcc-lib" "openconnect" "appindicator"))
)))
(inputs
`(("openssl" ,openssl)
("webkitgtk" ,webkitgtk-for-gtk3)
("glib" ,glib)
("gtk" ,gtk+)
("cairo" ,cairo)
("xz" ,xz)
("gcc-lib" ,gcc "lib")
("openconnect" ,openconnect)
("soup" ,libsoup)
("pixbuf" ,gdk-pixbuf)
("appindicator" ,libappindicator)))
(home-page "https://guix.gnu.org/manual/devel/en/html_node/The-Perfect-Setup.html")
(synopsis "Connect to openconnect with MFA")
(description "A GUI for GlobalProtect VPN, based on OpenConnect, supports the SSO authentication method. Inspired by gp-saml-gui.")
(license license:gpl3)))
globalprotect-openconnect

View file

@ -0,0 +1,346 @@
(define-module (snamellit packages rivalcfg))
(use-modules
(gnu packages check)
(gnu packages compression)
(gnu packages libusb)
(gnu packages python)
(gnu packages python-build)
(gnu packages python-xyz)
(gnu packages python-check)
(gnu packages sphinx)
(guix packages)
(guix download)
(guix build-system python)
(guix build-system pyproject)
(ice-9 textual-ports))
(define rivalcfg-rules "# Generated by rivalcfg v4.15.0
# Do not edit this file. It can be regenerated with the following command:
#
# rivalcfg --update-udev
# SteelSeries Aerox 3
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1836\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1836\", MODE=\"0666\"
# SteelSeries Aerox 3 Wireless (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"183a\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"183a\", MODE=\"0666\"
# SteelSeries Aerox 3 Wireless (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1838\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1838\", MODE=\"0666\"
# SteelSeries Aerox 5
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1850\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1850\", MODE=\"0666\"
# SteelSeries Aerox 5 Wireless (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1854\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1854\", MODE=\"0666\"
# SteelSeries Aerox 5 Wireless Destiny 2 Edition (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"185e\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"185e\", MODE=\"0666\"
# SteelSeries Aerox 5 Wireless Diablo IV Edition (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1862\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1862\", MODE=\"0666\"
# SteelSeries Aerox 5 Wireless (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1852\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1852\", MODE=\"0666\"
# SteelSeries Aerox 5 Wireless Destiny 2 Edition (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"185c\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"185c\", MODE=\"0666\"
# SteelSeries Aerox 5 Wireless Diablo IV Edition (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1860\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1860\", MODE=\"0666\"
# SteelSeries Aerox 9 Wireless (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"185a\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"185a\", MODE=\"0666\"
# SteelSeries Aerox 9 Wireless WOW Edition (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1876\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1876\", MODE=\"0666\"
# SteelSeries Aerox 9 Wireless (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1858\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1858\", MODE=\"0666\"
# SteelSeries Aerox 9 Wireless WOW Edition (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1874\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1874\", MODE=\"0666\"
# SteelSeries Kana v2
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"137a\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"137a\", MODE=\"0666\"
# SteelSeries Kinzu v2
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1366\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1366\", MODE=\"0666\"
# SteelSeries Kinzu v2
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1378\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1378\", MODE=\"0666\"
# SteelSeries Prime
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"182e\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"182e\", MODE=\"0666\"
# SteelSeries Prime Rainbow 6 Siege Black Ice Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"182a\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"182a\", MODE=\"0666\"
# SteelSeries Prime CS:GO Neo Noir Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1856\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1856\", MODE=\"0666\"
# SteelSeries Prime Mini
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"184d\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"184d\", MODE=\"0666\"
# SteelSeries Prime Wireless (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1842\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1842\", MODE=\"0666\"
# SteelSeries Prime Mini Wireless (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"184a\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"184a\", MODE=\"0666\"
# SteelSeries Prime Wireless (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1840\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1840\", MODE=\"0666\"
# SteelSeries Prime Mini Wireless (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1848\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1848\", MODE=\"0666\"
# SteelSeries Rival 3
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1824\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1824\", MODE=\"0666\"
# SteelSeries Rival 3 (firmware v0.37.0.0)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"184c\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"184c\", MODE=\"0666\"
# SteelSeries Rival 3 Wireless (2.4 GHz mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1830\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1830\", MODE=\"0666\"
# SteelSeries Rival 95
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1706\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1706\", MODE=\"0666\"
# SteelSeries Rival 95 MSI Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1707\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1707\", MODE=\"0666\"
# SteelSeries Rival 95 PC Bang
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1704\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1704\", MODE=\"0666\"
# SteelSeries Rival 100 PC Bang
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1708\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1708\", MODE=\"0666\"
# SteelSeries Rival 100
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1702\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1702\", MODE=\"0666\"
# SteelSeries Rival 100 (Dell China)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"170a\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"170a\", MODE=\"0666\"
# SteelSeries Rival 100 Dota 2 Edition (retail)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"170b\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"170b\", MODE=\"0666\"
# SteelSeries Rival 100 Dota 2 Edition (Lenovo)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"170c\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"170c\", MODE=\"0666\"
# SteelSeries Rival 105
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1814\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1814\", MODE=\"0666\"
# SteelSeries Rival 110
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1729\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1729\", MODE=\"0666\"
# SteelSeries Rival 106
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1816\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1816\", MODE=\"0666\"
# SteelSeries Rival
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1384\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1384\", MODE=\"0666\"
# SteelSeries Rival Dota 2 Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1392\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1392\", MODE=\"0666\"
# SteelSeries Rival 300
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1710\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1710\", MODE=\"0666\"
# SteelSeries Rival 300 Fallout 4 Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1712\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1712\", MODE=\"0666\"
# SteelSeries Rival 300 Evil Geniuses Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"171c\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"171c\", MODE=\"0666\"
# SteelSeries Rival 300 CS:GO Fade Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1394\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1394\", MODE=\"0666\"
# SteelSeries Rival 300 CS:GO Hyper Beast Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"171a\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"171a\", MODE=\"0666\"
# SteelSeries Rival 300 CS:GO Fade Edition (stm32)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1716\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1716\", MODE=\"0666\"
# SteelSeries Rival 300 Acer Predator Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1714\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1714\", MODE=\"0666\"
# SteelSeries Rival 300 HP OMEN Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1718\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1718\", MODE=\"0666\"
# SteelSeries Rival 300S
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1810\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1810\", MODE=\"0666\"
# SteelSeries Rival 310
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1720\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1720\", MODE=\"0666\"
# SteelSeries Rival 310 CS:GO Howl Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"171e\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"171e\", MODE=\"0666\"
# SteelSeries Rival 310 PUBG Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1736\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1736\", MODE=\"0666\"
# SteelSeries Rival 500
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"170e\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"170e\", MODE=\"0666\"
# SteelSeries Rival 600
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1724\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1724\", MODE=\"0666\"
# SteelSeries Rival 600 Dota 2 Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"172e\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"172e\", MODE=\"0666\"
# SteelSeries Rival 650 Wireless (wired mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"172b\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"172b\", MODE=\"0666\"
# SteelSeries Rival 650 Wireless (2.4 GHz wireless mode)
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1726\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1726\", MODE=\"0666\"
# SteelSeries Rival 700
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1700\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1700\", MODE=\"0666\"
# SteelSeries Rival 710
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1730\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1730\", MODE=\"0666\"
# SteelSeries Sensei 310
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1722\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1722\", MODE=\"0666\"
# SteelSeries Sensei [RAW]
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1369\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1369\", MODE=\"0666\"
# SteelSeries Sensei [RAW] Diablo III Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1362\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1362\", MODE=\"0666\"
# SteelSeries Sensei [RAW] Guild Wars 2 Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"136d\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"136d\", MODE=\"0666\"
# SteelSeries Sensei [RAW] CoD Black Ops II Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"136f\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"136f\", MODE=\"0666\"
# SteelSeries Sensei [RAW] World of Tanks Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1380\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1380\", MODE=\"0666\"
# SteelSeries Sensei [RAW] Heroes of the Storm Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1390\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1390\", MODE=\"0666\"
# SteelSeries Sensei TEN
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1832\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1832\", MODE=\"0666\"
# SteelSeries Sensei TEN CS:GO Neon Rider Edition
SUBSYSTEM==\"hidraw\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1834\", MODE=\"0666\"
SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"1038\", ATTRS{idProduct}==\"1834\", MODE=\"0666\"
")
(define-public python-rivalcfg
(package
(name "python-rivalcfg")
(version "4.15.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "rivalcfg" version))
(sha256
(base32 "1i91r9xafhki985316m5dn5hcv6zl3scm025rklgxgndrphbwwrr"))))
(build-system pyproject-build-system)
(arguments
`(#:phases
(modify-phases
%standard-phases
(add-before 'check 'set-env
(lambda* _
(setenv "RIVALCFG_DRY" "1")))
(add-after 'unpack 'install-udev-rules
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((outdir (assoc-ref outputs "out"))
(rulesdir (string-append outdir "/lib/udev/rules.d"))
(rulesfile (string-append rulesdir "/99-steelseries-rival.rules")))
(format #t "rulesdir: ~A~%" rulesdir)
(format #t "current dir: ~A~%" (getcwd))
(mkdir-p rulesdir)
(call-with-output-file rulesfile
(lambda (f)
(format f "~a" ,rivalcfg-rules)))
))))))
(propagated-inputs (list python-hidapi python-setuptools libusb zlib))
(native-inputs (list python
python-black
python-flake8
python-nox
python-pytest
python-sphinx
python-sphinx-rtd-theme
python-wheel))
(home-page "https://github.com/flozz/rivalcfg")
(synopsis "Configure SteelSeries gaming mice")
(description "Configure @code{SteelSeries} gaming mice.")
(license #f)))
python-rivalcfg

70
snamellit/packages/uv.scm Normal file
View file

@ -0,0 +1,70 @@
(define-module (snamellit packages uv)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system copy)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages gcc)
#:use-module (gnu packages base)
#:use-module (gnu packages elf)
#:use-module (guix licenses))
;; found at https://git.sr.ht/~alex-iam/alex-guix-channel/tree/master/item/alex/packages/uv.scm
(define-public uv
(package
(name "uv")
(version "0.8.2")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/astral-sh/uv/releases/download/"
version
"/uv-x86_64-unknown-linux-gnu.tar.gz"))
(sha256
(base32 "1bdhi34cwc051xqxp8h5hs4bzmix52hx9s5jxxd4b2l686jjijvd"))))
(build-system copy-build-system)
(inputs
`(("gcc:lib" ,gcc "lib")
("glibc" ,glibc)))
(native-inputs (list patchelf))
(arguments
`(#:install-plan
'(("uv" "bin/")
("uvx" "bin/"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-executables
(lambda _
(for-each make-file-writable '("uv" "uvx"))
#t))
(add-after 'install 'patch-runpath
(lambda* (#:key outputs inputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(gcc-lib (assoc-ref inputs "gcc:lib"))
(libgcc-path (string-append gcc-lib "/lib/libgcc_s.so.1"))
(glibc (assoc-ref inputs "glibc"))
(glibc-lib (string-append glibc "/lib"))
(dynamic-linker (string-append glibc-lib "/ld-linux-x86-64.so.2")))
(for-each
(lambda (exe)
(invoke "patchelf"
"--set-interpreter" dynamic-linker
(string-append bin "/" exe))
(invoke "patchelf"
"--set-rpath"
(string-append gcc-lib "/lib:" glibc-lib)
(string-append bin "/" exe)))
'("uv" "uvx"))
#t))))))
(synopsis "Fast Python package manager (prebuilt binary)")
(description
"uv is a fast and unified Python package manager, written in Rust. This version installs the official prebuilt binaries.")
(home-page "https://astral.sh/uv")
(license expat)))
uv