mirror of
https://codeberg.org/hako/Rosenthal.git
synced 2026-04-05 17:34:24 +00:00
Compare commits
2 Commits
51a983adf3
...
5d336ad0cf
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5d336ad0cf | ||
|
|
cf5fc0ef73 |
@ -8,7 +8,7 @@
|
|||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system cargo)
|
#:use-module (guix build-system cargo)
|
||||||
#:use-module (rosenthal packages rust-crates))
|
#:use-module (rosenthal utils cargo))
|
||||||
|
|
||||||
(define-public atuin
|
(define-public atuin
|
||||||
(package
|
(package
|
||||||
|
|||||||
@ -3,16 +3,13 @@
|
|||||||
;;; SPDX-License-Identifier: GPL-3.0-or-later
|
;;; SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
(define-module (rosenthal packages rust-crates)
|
(define-module (rosenthal packages rust-crates)
|
||||||
#:use-module (guix diagnostics)
|
|
||||||
#:use-module (guix i18n)
|
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system cargo)
|
#:use-module (guix build-system cargo)
|
||||||
#:use-module (rosenthal packages wm)
|
#:use-module (rosenthal packages wm)
|
||||||
#:export (lookup-cargo-inputs
|
#:export (lookup-cargo-inputs))
|
||||||
rosenthal-cargo-inputs))
|
|
||||||
|
|
||||||
;;;
|
;;;
|
||||||
;;; This file is managed by ‘guix import’. DO NOT add definitions manually.
|
;;; This file is managed by ‘guix import’. DO NOT add definitions manually.
|
||||||
@ -49,15 +46,6 @@
|
|||||||
"Return the inputs for NAME."
|
"Return the inputs for NAME."
|
||||||
(hashq-ref table name))))))))
|
(hashq-ref table name))))))))
|
||||||
|
|
||||||
(define* (rosenthal-cargo-inputs name #:key (module '(rosenthal packages rust-crates)))
|
|
||||||
"Lookup Cargo inputs for NAME defined in MODULE, return an empty list if
|
|
||||||
unavailable."
|
|
||||||
(let ((lookup (module-ref (resolve-interface module) 'lookup-cargo-inputs)))
|
|
||||||
(or (lookup name)
|
|
||||||
(begin
|
|
||||||
(warning (G_ "no Cargo inputs available for '~a'~%") name)
|
|
||||||
'()))))
|
|
||||||
|
|
||||||
;;;
|
;;;
|
||||||
;;; Rust dependencies fetched from crates.io and non-workspace development
|
;;; Rust dependencies fetched from crates.io and non-workspace development
|
||||||
;;; snapshots.
|
;;; snapshots.
|
||||||
|
|||||||
@ -8,6 +8,7 @@
|
|||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system cargo)
|
#:use-module (guix build-system cargo)
|
||||||
|
#:use-module (rosenthal utils cargo)
|
||||||
#:use-module (gnu packages admin)
|
#:use-module (gnu packages admin)
|
||||||
#:use-module (gnu packages freedesktop)
|
#:use-module (gnu packages freedesktop)
|
||||||
#:use-module (gnu packages gl)
|
#:use-module (gnu packages gl)
|
||||||
@ -17,8 +18,7 @@
|
|||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages wm)
|
#:use-module (gnu packages wm)
|
||||||
#:use-module (gnu packages xdisorg)
|
#:use-module (gnu packages xdisorg))
|
||||||
#:use-module (rosenthal packages rust-crates))
|
|
||||||
|
|
||||||
(define-public rust-pipewire
|
(define-public rust-pipewire
|
||||||
(let ((commit "fd3d8f7861a29c2eeaa4c393402e013578bb36d9")
|
(let ((commit "fd3d8f7861a29c2eeaa4c393402e013578bb36d9")
|
||||||
|
|||||||
@ -8,10 +8,10 @@
|
|||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system cargo)
|
#:use-module (guix build-system cargo)
|
||||||
|
#:use-module (rosenthal utils cargo)
|
||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages xorg)
|
#:use-module (gnu packages xorg))
|
||||||
#:use-module (rosenthal packages rust-crates))
|
|
||||||
|
|
||||||
(define-public xwayland-satellite
|
(define-public xwayland-satellite
|
||||||
(package
|
(package
|
||||||
|
|||||||
@ -88,6 +88,8 @@
|
|||||||
(define (serialize-boolean field-name val)
|
(define (serialize-boolean field-name val)
|
||||||
(serialize-field field-name (if val "true" "false")))
|
(serialize-field field-name (if val "true" "false")))
|
||||||
|
|
||||||
|
(define-maybe boolean)
|
||||||
|
|
||||||
(define cidr4? (@@ (gnu services vpn) cidr4?))
|
(define cidr4? (@@ (gnu services vpn) cidr4?))
|
||||||
|
|
||||||
(define serialize-cidr4 serialize-field)
|
(define serialize-cidr4 serialize-field)
|
||||||
@ -100,11 +102,15 @@
|
|||||||
(define (serialize-randomization-method field-name val)
|
(define (serialize-randomization-method field-name val)
|
||||||
(serialize-field field-name (or val 'disabled)))
|
(serialize-field field-name (or val 'disabled)))
|
||||||
|
|
||||||
|
(define-maybe randomization-method)
|
||||||
|
|
||||||
(define (randomization-range? val)
|
(define (randomization-range? val)
|
||||||
(memv val '(full nic)))
|
(memv val '(full nic)))
|
||||||
|
|
||||||
(define serialize-randomization-range serialize-field)
|
(define serialize-randomization-range serialize-field)
|
||||||
|
|
||||||
|
(define-maybe randomization-range)
|
||||||
|
|
||||||
(define (signal-strength? val)
|
(define (signal-strength? val)
|
||||||
(and (number? val)
|
(and (number? val)
|
||||||
(>= val -100)
|
(>= val -100)
|
||||||
@ -112,17 +118,23 @@
|
|||||||
|
|
||||||
(define serialize-signal-strength serialize-field)
|
(define serialize-signal-strength serialize-field)
|
||||||
|
|
||||||
|
(define-maybe signal-strength)
|
||||||
|
|
||||||
(define (seconds? val)
|
(define (seconds? val)
|
||||||
(and (integer? val)
|
(and (integer? val)
|
||||||
(not (negative? val))))
|
(not (negative? val))))
|
||||||
|
|
||||||
(define serialize-seconds serialize-field)
|
(define serialize-seconds serialize-field)
|
||||||
|
|
||||||
|
(define-maybe seconds)
|
||||||
|
|
||||||
(define (protection-mode? val)
|
(define (protection-mode? val)
|
||||||
(memv val '(0 1 2)))
|
(memv val '(0 1 2)))
|
||||||
|
|
||||||
(define serialize-protection-mode serialize-field)
|
(define serialize-protection-mode serialize-field)
|
||||||
|
|
||||||
|
(define-maybe protection-mode)
|
||||||
|
|
||||||
(define (resolution-method? val)
|
(define (resolution-method? val)
|
||||||
(memv val '(#f resolvconf)))
|
(memv val '(#f resolvconf)))
|
||||||
|
|
||||||
@ -131,8 +143,12 @@
|
|||||||
|
|
||||||
(define serialize-integer serialize-field)
|
(define serialize-integer serialize-field)
|
||||||
|
|
||||||
|
(define-maybe integer)
|
||||||
|
|
||||||
(define serialize-number serialize-field)
|
(define serialize-number serialize-field)
|
||||||
|
|
||||||
|
(define-maybe number)
|
||||||
|
|
||||||
(define (serialize-list-of-strings field-name val)
|
(define (serialize-list-of-strings field-name val)
|
||||||
(serialize-field field-name (string-join val ",")))
|
(serialize-field field-name (string-join val ",")))
|
||||||
|
|
||||||
@ -142,6 +158,8 @@
|
|||||||
|
|
||||||
(define serialize-list-of-cidr4 serialize-list-of-strings)
|
(define serialize-list-of-cidr4 serialize-list-of-strings)
|
||||||
|
|
||||||
|
(define-maybe list-of-cidr4)
|
||||||
|
|
||||||
(define-configuration iwd-configuration
|
(define-configuration iwd-configuration
|
||||||
(iwd
|
(iwd
|
||||||
(file-like iwd)
|
(file-like iwd)
|
||||||
@ -157,12 +175,12 @@
|
|||||||
"Enable network configuration.")
|
"Enable network configuration.")
|
||||||
|
|
||||||
(use-default-interface?
|
(use-default-interface?
|
||||||
(boolean #f)
|
maybe-boolean
|
||||||
"Do not allow iwd to destroy / recreate wireless interfaces at startup,
|
"Do not allow iwd to destroy / recreate wireless interfaces at startup,
|
||||||
including default interfaces.")
|
including default interfaces.")
|
||||||
|
|
||||||
(address-randomization
|
(address-randomization
|
||||||
(randomization-method #f)
|
maybe-randomization-method
|
||||||
"Available values are @code{#f}, @code{once} and @code{network}. @code{#f}
|
"Available values are @code{#f}, @code{once} and @code{network}. @code{#f}
|
||||||
for default kernel behavior, @code{once} to randomize the MAC address when iwd
|
for default kernel behavior, @code{once} to randomize the MAC address when iwd
|
||||||
starts or the hardware is detected for the first time, @code{network} to
|
starts or the hardware is detected for the first time, @code{network} to
|
||||||
@ -170,43 +188,43 @@ randomize the MAC address on each connection to a network (the MAC address is
|
|||||||
generated based on the SSID and permanent address of the adapter).")
|
generated based on the SSID and permanent address of the adapter).")
|
||||||
|
|
||||||
(address-randomization-range
|
(address-randomization-range
|
||||||
(randomization-range 'full)
|
maybe-randomization-range
|
||||||
"Available values are @code{nic} and @code{full}. @code{nic} to only
|
"Available values are @code{nic} and @code{full}. @code{nic} to only
|
||||||
randomize the NIC specific octets (last 3 ones), @code{full} to randomize all
|
randomize the NIC specific octets (last 3 ones), @code{full} to randomize all
|
||||||
6 octets of the address.")
|
6 octets of the address.")
|
||||||
|
|
||||||
(roam-threshold
|
(roam-threshold
|
||||||
(signal-strength -70)
|
maybe-signal-strength
|
||||||
"Value in dBm, control how aggressively iwd roams when connected to a 2.4Ghz
|
"Value in dBm, control how aggressively iwd roams when connected to a 2.4Ghz
|
||||||
access point.")
|
access point.")
|
||||||
|
|
||||||
(roam-threshold-5g
|
(roam-threshold-5g
|
||||||
(signal-strength -76)
|
maybe-signal-strength
|
||||||
"Value in dBm, control how aggressively iwd roams when connected to a 5Ghz
|
"Value in dBm, control how aggressively iwd roams when connected to a 5Ghz
|
||||||
access point.")
|
access point.")
|
||||||
|
|
||||||
(roam-retry-interval
|
(roam-retry-interval
|
||||||
(seconds 60)
|
maybe-seconds
|
||||||
"How long to wait before attempting to roam again if the last roam attempt
|
"How long to wait before attempting to roam again if the last roam attempt
|
||||||
failed, or if the signal of the newly connected BSS is still considered weak.")
|
failed, or if the signal of the newly connected BSS is still considered weak.")
|
||||||
|
|
||||||
(management-frame-protection
|
(management-frame-protection
|
||||||
(protection-mode 1)
|
maybe-protection-mode
|
||||||
"Available values are @code{0}, @code{1} and @code{2}. @code{0} to
|
"Available values are @code{0}, @code{1} and @code{2}. @code{0} to
|
||||||
completely turn off MFP (even if the hardware is capable), @code{1} to enable
|
completely turn off MFP (even if the hardware is capable), @code{1} to enable
|
||||||
MFP if the local hardware and remote AP both support it, @code{2} to always
|
MFP if the local hardware and remote AP both support it, @code{2} to always
|
||||||
require MFP.")
|
require MFP.")
|
||||||
|
|
||||||
(control-port-over-nl80211?
|
(control-port-over-nl80211?
|
||||||
(boolean #t)
|
maybe-boolean
|
||||||
"Enable sending EAPoL packets over NL80211.")
|
"Enable sending EAPoL packets over NL80211.")
|
||||||
|
|
||||||
(disable-anqp?
|
(disable-anqp?
|
||||||
(boolean #t)
|
maybe-boolean
|
||||||
"Disable ANQP queries.")
|
"Disable ANQP queries.")
|
||||||
|
|
||||||
(disable-ocv?
|
(disable-ocv?
|
||||||
(boolean #f)
|
maybe-boolean
|
||||||
"Disable Operating Channel Validation.")
|
"Disable Operating Channel Validation.")
|
||||||
|
|
||||||
(country
|
(country
|
||||||
@ -215,7 +233,7 @@ require MFP.")
|
|||||||
|
|
||||||
;; Network
|
;; Network
|
||||||
(enable-ipv6?
|
(enable-ipv6?
|
||||||
(boolean #t)
|
maybe-boolean
|
||||||
"Configure IPv6 addresses and routes.")
|
"Configure IPv6 addresses and routes.")
|
||||||
|
|
||||||
(name-resolving-service
|
(name-resolving-service
|
||||||
@ -226,57 +244,57 @@ resolution method used by the system and must be used in conjunction with
|
|||||||
information.")
|
information.")
|
||||||
|
|
||||||
(route-priority-offset
|
(route-priority-offset
|
||||||
(integer 300)
|
maybe-integer
|
||||||
"Configure a route priority offset used by the system to prioritize the
|
"Configure a route priority offset used by the system to prioritize the
|
||||||
default routes. The route with lower priority offset is preferred.")
|
default routes. The route with lower priority offset is preferred.")
|
||||||
|
|
||||||
;; Blacklist
|
;; Blacklist
|
||||||
(initial-timeout
|
(initial-timeout
|
||||||
(seconds 60)
|
maybe-seconds
|
||||||
"The initial time that a BSS spends on the blacklist.")
|
"The initial time that a BSS spends on the blacklist.")
|
||||||
|
|
||||||
(multiplier
|
(multiplier
|
||||||
(integer 30)
|
maybe-integer
|
||||||
"If the BSS was blacklisted previously and another connection attempt has
|
"If the BSS was blacklisted previously and another connection attempt has
|
||||||
failed after the initial timeout has expired, then the BSS blacklist time will
|
failed after the initial timeout has expired, then the BSS blacklist time will
|
||||||
be extended by a multiple of @code{multiplier} for each unsuccessful attempt up
|
be extended by a multiple of @code{multiplier} for each unsuccessful attempt up
|
||||||
to @code{maximum-timeout} time.")
|
to @code{maximum-timeout} time.")
|
||||||
|
|
||||||
(maximum-timeout
|
(maximum-timeout
|
||||||
(seconds 86400)
|
maybe-seconds
|
||||||
"Maximum time that a BSS is blacklisted.")
|
"Maximum time that a BSS is blacklisted.")
|
||||||
|
|
||||||
;; Rank
|
;; Rank
|
||||||
(band-modifier-5ghz
|
(band-modifier-5ghz
|
||||||
(number 1.0)
|
maybe-number
|
||||||
"Increase or decrease the preference for 5GHz access points by increasing or
|
"Increase or decrease the preference for 5GHz access points by increasing or
|
||||||
decreasing the value of this modifier.")
|
decreasing the value of this modifier.")
|
||||||
|
|
||||||
(band-modifier-6ghz
|
(band-modifier-6ghz
|
||||||
(number 1.0)
|
maybe-number
|
||||||
"Increase or decrease the preference for 6GHz access points by increasing or
|
"Increase or decrease the preference for 6GHz access points by increasing or
|
||||||
decreasing the value of this modifier.")
|
decreasing the value of this modifier.")
|
||||||
|
|
||||||
;; Scan
|
;; Scan
|
||||||
(disable-periodic-scan?
|
(disable-periodic-scan?
|
||||||
(boolean #f)
|
maybe-boolean
|
||||||
"Disable periodic scan.")
|
"Disable periodic scan.")
|
||||||
|
|
||||||
(initial-periodic-scan-interval
|
(initial-periodic-scan-interval
|
||||||
(seconds 10)
|
maybe-seconds
|
||||||
"The initial periodic scan interval upon disconnect.")
|
"The initial periodic scan interval upon disconnect.")
|
||||||
|
|
||||||
(maximum-periodic-scan-interval
|
(maximum-periodic-scan-interval
|
||||||
(seconds 300)
|
maybe-seconds
|
||||||
"The maximum periodic scan interval.")
|
"The maximum periodic scan interval.")
|
||||||
|
|
||||||
(disable-roaming-scan?
|
(disable-roaming-scan?
|
||||||
(boolean #f)
|
maybe-boolean
|
||||||
"Disable roaming scan.")
|
"Disable roaming scan.")
|
||||||
|
|
||||||
;; IPv4
|
;; IPv4
|
||||||
(ap-address-pool
|
(ap-address-pool
|
||||||
(list-of-cidr4 '("192.168.0.0/16"))
|
maybe-list-of-cidr4
|
||||||
"Define the space of IPs used for the AP mode subnet addresses and the DHCP
|
"Define the space of IPs used for the AP mode subnet addresses and the DHCP
|
||||||
server.")
|
server.")
|
||||||
|
|
||||||
|
|||||||
17
modules/rosenthal/utils/cargo.scm
Normal file
17
modules/rosenthal/utils/cargo.scm
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
;;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
|
||||||
|
;;;
|
||||||
|
;;; SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
(define-module (rosenthal utils cargo)
|
||||||
|
#:use-module (guix diagnostics)
|
||||||
|
#:use-module (guix i18n)
|
||||||
|
#:export (rosenthal-cargo-inputs))
|
||||||
|
|
||||||
|
(define* (rosenthal-cargo-inputs name #:key (module '(rosenthal packages rust-crates)))
|
||||||
|
"Lookup Cargo inputs for NAME defined in MODULE, return an empty list if
|
||||||
|
unavailable."
|
||||||
|
(let ((lookup (module-ref (resolve-interface module) 'lookup-cargo-inputs)))
|
||||||
|
(or (lookup name)
|
||||||
|
(begin
|
||||||
|
(warning (G_ "no Cargo inputs available for '~a'~%") name)
|
||||||
|
'()))))
|
||||||
Loading…
Reference in New Issue
Block a user