Move audio/binfmt/bluetooth/headphones/chess/kubernetes/virtualization into azos-core suites
Mirrors the azos-core change: removes the now-relocated standalone features from azos/features, and updates both import lists (home-manager/home.nix, nixos/configuration.nix) to pull the nixos.desktop and nixos.dev suite modules instead of the old per-feature ones.
This commit is contained in:
+1
-1
Submodule azos-core updated: e75f226e27...e39b517168
@@ -1,41 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
config.flake.modules.homeManager.audio = {
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options.azos.home-audio.enable = lib.mkOption {
|
|
||||||
default = true;
|
|
||||||
type = lib.types.bool;
|
|
||||||
};
|
|
||||||
config = lib.mkIf config.azos.home-audio.enable {};
|
|
||||||
};
|
|
||||||
|
|
||||||
config.flake.modules.nixos.audio = {
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options.azos.hardware-audio.enable = lib.mkOption {
|
|
||||||
default = true;
|
|
||||||
type = lib.types.bool;
|
|
||||||
};
|
|
||||||
config = lib.mkIf config.azos.hardware-audio.enable {
|
|
||||||
services = {
|
|
||||||
pipewire = {
|
|
||||||
enable = true;
|
|
||||||
audio.enable = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
alsa = {
|
|
||||||
enable = true;
|
|
||||||
support32Bit = true;
|
|
||||||
};
|
|
||||||
jack.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
environment.systemPackages = with pkgs; [pavucontrol];
|
|
||||||
musnix.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
config.flake.modules.nixos.binfmt = {
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options.azos.binfmt.enable = lib.mkOption {
|
|
||||||
default = true;
|
|
||||||
type = lib.types.bool;
|
|
||||||
};
|
|
||||||
config = lib.mkIf config.azos.binfmt.enable {
|
|
||||||
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
config.flake.modules.nixos.bluetooth = {
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options.azos.bluetooth.enable = lib.mkOption {
|
|
||||||
default = true;
|
|
||||||
type = lib.types.bool;
|
|
||||||
};
|
|
||||||
config = lib.mkIf config.azos.bluetooth.enable {
|
|
||||||
services.blueman.enable = true;
|
|
||||||
hardware.bluetooth.enable = true;
|
|
||||||
environment.etc."bluetooth/input.conf" = lib.mkForce {
|
|
||||||
text = ''
|
|
||||||
[General]
|
|
||||||
ClassicBondedOnly=false
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
config.flake.overlayPkgs.emacs-lichess = pkgs: let
|
|
||||||
epkgs = pkgs.emacs.pkgs;
|
|
||||||
in
|
|
||||||
epkgs.trivialBuild {
|
|
||||||
pname = "lichess";
|
|
||||||
version = "1.0";
|
|
||||||
src = pkgs.fetchFromGitHub {
|
|
||||||
owner = "tmythicator";
|
|
||||||
repo = "lichess.el";
|
|
||||||
rev = "572a6a353e2113c8a95564b9bea1f2896e6d3dab";
|
|
||||||
sha256 = "1d87qjmdpizggkrzq39i9vqgvbpjf5mv97vm7zy28ksbqxmfasqa";
|
|
||||||
};
|
|
||||||
# trivialBuild's installPhase only installs *.el/*.elc; the piece SVGs
|
|
||||||
# under assets/ must be copied alongside so the default
|
|
||||||
# lichess-board-gui-asset-path (relative to the installed .el file) resolves.
|
|
||||||
postInstall = ''
|
|
||||||
cp -r assets $out/share/emacs/site-lisp/
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
config.flake.modules.homeManager.chess = {
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options.azos.chess.enable = lib.mkOption {
|
|
||||||
default = false;
|
|
||||||
example = true;
|
|
||||||
type = lib.types.bool;
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf config.azos.chess.enable {
|
|
||||||
azos.emacs.pkgs = [pkgs.azos-emacs-chess];
|
|
||||||
azos.emacs.enabledSuites = ["azos-emacs-chess"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
orgTrivialBuild,
|
|
||||||
epkgs,
|
|
||||||
pkgs,
|
|
||||||
}:
|
|
||||||
orgTrivialBuild {
|
|
||||||
pname = "azos-emacs-chess";
|
|
||||||
version = "0.1.0";
|
|
||||||
src = ./config.org;
|
|
||||||
packageRequires = with epkgs; [
|
|
||||||
pkgs.azos-emacs-base
|
|
||||||
pkgs.emacs-lichess
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
#+title: Aner's Emacs Chess Configuration
|
|
||||||
#+property: header-args :results silent
|
|
||||||
|
|
||||||
* Base setup
|
|
||||||
** Require
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(require 'azos-emacs-base)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
* Lichess
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package lichess
|
|
||||||
:demand t
|
|
||||||
:init
|
|
||||||
(defun azos/chess/open ()
|
|
||||||
"Open lichess in its dedicated \"chess\" tab."
|
|
||||||
(interactive)
|
|
||||||
(azos/tab-bar/open-singleton-tab "chess" #'lichess))
|
|
||||||
:bind
|
|
||||||
(:map azos/global-minor-mode/open-keymap
|
|
||||||
("k" . azos/chess/open)))
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
* Provide
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(provide 'azos-emacs-chess)
|
|
||||||
#+end_src
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
config.flake.overlayPkgs.azos-emacs-chess = pkgs: pkgs.localEmacsPkg ./_pkg.nix;
|
|
||||||
}
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
config.flake.modules.homeManager.headphones = {
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options.azos.headphones = {
|
|
||||||
enable = lib.mkOption {
|
|
||||||
default = false;
|
|
||||||
example = true;
|
|
||||||
type = lib.types.bool;
|
|
||||||
};
|
|
||||||
devices = lib.mkOption {
|
|
||||||
default = [];
|
|
||||||
type = lib.types.listOf (lib.types.submodule {
|
|
||||||
options = {
|
|
||||||
mac = lib.mkOption {type = lib.types.str;};
|
|
||||||
name = lib.mkOption {type = lib.types.str;};
|
|
||||||
};
|
|
||||||
});
|
|
||||||
description = "Headphone devices; first entry is the default connect target.";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf config.azos.headphones.enable {
|
|
||||||
home.packages = let
|
|
||||||
deviceEntries =
|
|
||||||
lib.concatMapStrings
|
|
||||||
(d: " ${lib.escapeShellArg "${d.mac} ${d.name}"}\n")
|
|
||||||
config.azos.headphones.devices;
|
|
||||||
defaultMac =
|
|
||||||
if config.azos.headphones.devices == []
|
|
||||||
then ""
|
|
||||||
else (lib.head config.azos.headphones.devices).mac;
|
|
||||||
in [
|
|
||||||
(pkgs.writeShellScriptBin "azos-connect-headphones" ''
|
|
||||||
DEVICES=(
|
|
||||||
${deviceEntries})
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
--list)
|
|
||||||
printf '%s\n' "''${DEVICES[@]}"
|
|
||||||
;;
|
|
||||||
--mac)
|
|
||||||
echo "connect $2" | bluetoothctl
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "connect ${defaultMac}" | bluetoothctl
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
'')
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
config.flake.modules.homeManager.kubernetes = {
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options.azos.kubectl.enable = lib.mkOption {
|
|
||||||
default = false;
|
|
||||||
type = lib.types.bool;
|
|
||||||
};
|
|
||||||
config = lib.mkIf config.azos.kubectl.enable {
|
|
||||||
home.packages = with pkgs; [kubectl kubernetes-helm velero];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
{...}: {
|
|
||||||
config.flake.modules.nixos.virtualization = {
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options.azos.virtualization.enable = lib.mkOption {
|
|
||||||
default = true;
|
|
||||||
type = lib.types.bool;
|
|
||||||
};
|
|
||||||
config = lib.mkIf config.azos.virtualization.enable {
|
|
||||||
virtualisation.libvirtd = {
|
|
||||||
enable = true;
|
|
||||||
qemu = {
|
|
||||||
swtpm.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
qemu_kvm
|
|
||||||
libvirt
|
|
||||||
virt-manager
|
|
||||||
virt-viewer
|
|
||||||
];
|
|
||||||
services.spice-vdagentd.enable = true;
|
|
||||||
networking.firewall.allowedTCPPorts = [5900 5901];
|
|
||||||
networking.firewall.allowedUDPPorts = [5900 5901];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -15,14 +15,11 @@
|
|||||||
suiteModules.homeManager.discord
|
suiteModules.homeManager.discord
|
||||||
suiteModules.homeManager.exwm
|
suiteModules.homeManager.exwm
|
||||||
suiteModules.homeManager.lauretta
|
suiteModules.homeManager.lauretta
|
||||||
suiteModules.homeManager.audio
|
|
||||||
suiteModules.homeManager.claude
|
suiteModules.homeManager.claude
|
||||||
suiteModules.homeManager.encryption
|
suiteModules.homeManager.encryption
|
||||||
suiteModules.homeManager.git-config
|
suiteModules.homeManager.git-config
|
||||||
suiteModules.homeManager.hfsprogs
|
suiteModules.homeManager.hfsprogs
|
||||||
suiteModules.homeManager.headphones
|
|
||||||
suiteModules.homeManager.hyprland
|
suiteModules.homeManager.hyprland
|
||||||
suiteModules.homeManager.kubernetes
|
|
||||||
suiteModules.homeManager.mail
|
suiteModules.homeManager.mail
|
||||||
suiteModules.homeManager.mpris-proxy
|
suiteModules.homeManager.mpris-proxy
|
||||||
suiteModules.homeManager.nextcloud
|
suiteModules.homeManager.nextcloud
|
||||||
@@ -32,7 +29,6 @@
|
|||||||
suiteModules.homeManager.snx-rs
|
suiteModules.homeManager.snx-rs
|
||||||
suiteModules.homeManager.roam-backup
|
suiteModules.homeManager.roam-backup
|
||||||
suiteModules.homeManager.ytdl
|
suiteModules.homeManager.ytdl
|
||||||
suiteModules.homeManager.chess
|
|
||||||
suiteModules.homeManager.homey-alert
|
suiteModules.homeManager.homey-alert
|
||||||
suiteModules.homeManager.leetcode
|
suiteModules.homeManager.leetcode
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -14,11 +14,9 @@
|
|||||||
inputs.home-manager.nixosModules.home-manager
|
inputs.home-manager.nixosModules.home-manager
|
||||||
suiteModules.nixos.base
|
suiteModules.nixos.base
|
||||||
suiteModules.nixos.exwm
|
suiteModules.nixos.exwm
|
||||||
suiteModules.nixos.audio
|
suiteModules.nixos.desktop
|
||||||
suiteModules.nixos.bluetooth
|
suiteModules.nixos.dev
|
||||||
suiteModules.nixos.steam
|
suiteModules.nixos.steam
|
||||||
suiteModules.nixos.virtualization
|
|
||||||
suiteModules.nixos.binfmt
|
|
||||||
suiteModules.nixos.attic
|
suiteModules.nixos.attic
|
||||||
suiteModules.nixos.printing
|
suiteModules.nixos.printing
|
||||||
suiteModules.nixos.hardware-auth
|
suiteModules.nixos.hardware-auth
|
||||||
|
|||||||
Reference in New Issue
Block a user