Fix nix flake check warnings and errors
- Move nextcloud-talk-desktop to x86_64-linux-only block (fixes aarch64 eval error) - Remove duplicate deps from plasma-bigscreen (auto-injected by mkKdeDerivation) - Replace nixfmt-rfc-style with nixfmt (deprecated alias) - Set programs.git.signing.format = null (adopt new default) - Add meta.description to all flake apps
This commit is contained in:
@@ -270,7 +270,6 @@
|
|||||||
"custom-mcrcon-rbw" = pkgs.custom.mcrcon-rbw;
|
"custom-mcrcon-rbw" = pkgs.custom.mcrcon-rbw;
|
||||||
"custom-tea-rbw" = pkgs.custom.tea-rbw;
|
"custom-tea-rbw" = pkgs.custom.tea-rbw;
|
||||||
"custom-rclone-torbox-setup" = pkgs.custom.rclone-torbox-setup;
|
"custom-rclone-torbox-setup" = pkgs.custom.rclone-torbox-setup;
|
||||||
"custom-nextcloud-talk-desktop" = pkgs.custom.nextcloud-talk-desktop;
|
|
||||||
"custom-opencode" = pkgs.custom.opencode;
|
"custom-opencode" = pkgs.custom.opencode;
|
||||||
"qt-pinned-jellyfin-media-player" = pkgsQt.jellyfin-media-player;
|
"qt-pinned-jellyfin-media-player" = pkgsQt.jellyfin-media-player;
|
||||||
"qt-pinned-stremio" = pkgsQt.stremio;
|
"qt-pinned-stremio" = pkgsQt.stremio;
|
||||||
@@ -278,6 +277,7 @@
|
|||||||
// (
|
// (
|
||||||
if system == "x86_64-linux" then
|
if system == "x86_64-linux" then
|
||||||
{
|
{
|
||||||
|
"custom-nextcloud-talk-desktop" = pkgs.custom.nextcloud-talk-desktop;
|
||||||
# nix-deck kernel from Jovian-NixOS (Steam Deck) - expensive to build
|
# nix-deck kernel from Jovian-NixOS (Steam Deck) - expensive to build
|
||||||
"nix-deck-kernel" = self.nixosConfigurations.nix-deck.config.boot.kernelPackages.kernel;
|
"nix-deck-kernel" = self.nixosConfigurations.nix-deck.config.boot.kernelPackages.kernel;
|
||||||
}
|
}
|
||||||
@@ -341,30 +341,37 @@
|
|||||||
update-doomemacs = {
|
update-doomemacs = {
|
||||||
type = "app";
|
type = "app";
|
||||||
program = "${update-doomemacs}/bin/update-doomemacs";
|
program = "${update-doomemacs}/bin/update-doomemacs";
|
||||||
|
meta.description = "Update Doom Emacs configuration";
|
||||||
};
|
};
|
||||||
update-claude-code = {
|
update-claude-code = {
|
||||||
type = "app";
|
type = "app";
|
||||||
program = "${update-claude-code}/bin/update-claude-code";
|
program = "${update-claude-code}/bin/update-claude-code";
|
||||||
|
meta.description = "Update Claude Code package version";
|
||||||
};
|
};
|
||||||
update-opencode = {
|
update-opencode = {
|
||||||
type = "app";
|
type = "app";
|
||||||
program = "${update-opencode}/bin/update-opencode";
|
program = "${update-opencode}/bin/update-opencode";
|
||||||
|
meta.description = "Update OpenCode package version";
|
||||||
};
|
};
|
||||||
rotate-wallpaper = {
|
rotate-wallpaper = {
|
||||||
type = "app";
|
type = "app";
|
||||||
program = "${rotate-wallpaper}/bin/rotate-wallpaper";
|
program = "${rotate-wallpaper}/bin/rotate-wallpaper";
|
||||||
|
meta.description = "Rotate desktop wallpaper";
|
||||||
};
|
};
|
||||||
upgrade = {
|
upgrade = {
|
||||||
type = "app";
|
type = "app";
|
||||||
program = "${upgrade}/bin/upgrade";
|
program = "${upgrade}/bin/upgrade";
|
||||||
|
meta.description = "Upgrade NixOS configuration";
|
||||||
};
|
};
|
||||||
bootstrap = {
|
bootstrap = {
|
||||||
type = "app";
|
type = "app";
|
||||||
program = "${bootstrap}/bin/bootstrap";
|
program = "${bootstrap}/bin/bootstrap";
|
||||||
|
meta.description = "Bootstrap a new NixOS machine";
|
||||||
};
|
};
|
||||||
build-liveusb = {
|
build-liveusb = {
|
||||||
type = "app";
|
type = "app";
|
||||||
program = "${build-liveusb}/bin/build-liveusb";
|
program = "${build-liveusb}/bin/build-liveusb";
|
||||||
|
meta.description = "Build a bootable Live USB ISO";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ in
|
|||||||
|
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
signing.format = null;
|
||||||
settings = {
|
settings = {
|
||||||
user.name = "John Ogle";
|
user.name = "John Ogle";
|
||||||
user.email = "john@ogle.fyi";
|
user.email = "john@ogle.fyi";
|
||||||
|
|||||||
@@ -1,4 +1,9 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
@@ -20,9 +25,10 @@ let
|
|||||||
|
|
||||||
# Default emacs configuration with vterm support
|
# Default emacs configuration with vterm support
|
||||||
defaultEmacsPackage =
|
defaultEmacsPackage =
|
||||||
if pkgs.stdenv.isDarwin
|
if pkgs.stdenv.isDarwin then
|
||||||
then pkgs.emacs-macport.pkgs.withPackages emacsPackages
|
pkgs.emacs-macport.pkgs.withPackages emacsPackages
|
||||||
else pkgs.emacs.pkgs.withPackages emacsPackages;
|
else
|
||||||
|
pkgs.emacs.pkgs.withPackages emacsPackages;
|
||||||
|
|
||||||
# Path to doom config directory (relative to this file)
|
# Path to doom config directory (relative to this file)
|
||||||
doomConfigDir = ./doom;
|
doomConfigDir = ./doom;
|
||||||
@@ -56,8 +62,8 @@ in
|
|||||||
pkgs.nerd-fonts.fira-code
|
pkgs.nerd-fonts.fira-code
|
||||||
pkgs.nerd-fonts.droid-sans-mono
|
pkgs.nerd-fonts.droid-sans-mono
|
||||||
pkgs.nil # nix lsp language server
|
pkgs.nil # nix lsp language server
|
||||||
pkgs.nixfmt-rfc-style
|
pkgs.nixfmt
|
||||||
(pkgs.ripgrep.override {withPCRE2 = true;})
|
(pkgs.ripgrep.override { withPCRE2 = true; })
|
||||||
pkgs.pipenv
|
pkgs.pipenv
|
||||||
pkgs.poetry
|
pkgs.poetry
|
||||||
pkgs.python3
|
pkgs.python3
|
||||||
@@ -88,7 +94,7 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
# TODO: Use mkOutOfStoreSymlink instead?
|
# TODO: Use mkOutOfStoreSymlink instead?
|
||||||
home.activation.doomConfig = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
home.activation.doomConfig = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||||
# Always remove and recreate the symlink to ensure it points to the source directory
|
# Always remove and recreate the symlink to ensure it points to the source directory
|
||||||
rm -rf "${config.xdg.configHome}/doom"
|
rm -rf "${config.xdg.configHome}/doom"
|
||||||
ln -sf "${config.home.homeDirectory}/nixos-configs/home/roles/emacs/doom" "${config.xdg.configHome}/doom"
|
ln -sf "${config.home.homeDirectory}/nixos-configs/home/roles/emacs/doom" "${config.xdg.configHome}/doom"
|
||||||
|
|||||||
@@ -62,33 +62,22 @@ mkKdeDerivation {
|
|||||||
];
|
];
|
||||||
|
|
||||||
extraBuildInputs = [
|
extraBuildInputs = [
|
||||||
# KDE Frameworks
|
# KDE Frameworks (auto-injected by mkKdeDerivation: ki18n, kcmutils,
|
||||||
ki18n
|
# knotifications, kio, kwayland, kwindowsystem, ksvg, kiconthemes)
|
||||||
kdeclarative
|
kdeclarative
|
||||||
kcmutils
|
|
||||||
knotifications
|
|
||||||
kio
|
|
||||||
kwayland
|
|
||||||
kwindowsystem
|
|
||||||
ksvg
|
|
||||||
kiconthemes
|
|
||||||
kglobalaccel
|
kglobalaccel
|
||||||
kdbusaddons
|
kdbusaddons
|
||||||
# Plasma
|
# Plasma (auto-injected: plasma-workspace, plasma-activities,
|
||||||
plasma-workspace
|
# plasma-activities-stats, libkscreen)
|
||||||
plasma-nano
|
plasma-nano
|
||||||
plasma-nm
|
plasma-nm
|
||||||
plasma-activities
|
|
||||||
plasma-activities-stats
|
|
||||||
milou
|
milou
|
||||||
libkscreen
|
|
||||||
kdeconnect-kde
|
kdeconnect-kde
|
||||||
# Qt — qtdeclarative is needed for Qt6::QmlPrivate (see postPatch)
|
# Qt — qtdeclarative is needed for Qt6::QmlPrivate (see postPatch)
|
||||||
qtdeclarative
|
qtdeclarative
|
||||||
qtmultimedia
|
qtmultimedia
|
||||||
qtwebengine
|
qtwebengine
|
||||||
# Other
|
# Other (auto-injected: bluez-qt)
|
||||||
bluez-qt
|
|
||||||
qcoro
|
qcoro
|
||||||
plasma-wayland-protocols
|
plasma-wayland-protocols
|
||||||
wayland
|
wayland
|
||||||
@@ -96,22 +85,22 @@ mkKdeDerivation {
|
|||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace bin/plasma-bigscreen-wayland.in \
|
substituteInPlace bin/plasma-bigscreen-wayland.in \
|
||||||
--replace @KDE_INSTALL_FULL_LIBEXECDIR@ "${plasma-workspace}/libexec"
|
--replace @KDE_INSTALL_FULL_LIBEXECDIR@ "${plasma-workspace}/libexec"
|
||||||
|
|
||||||
# WORKAROUND: Plasma version numbers must match; we're building an
|
# WORKAROUND: Plasma version numbers must match; we're building an
|
||||||
# unreleased package against a stable Plasma release. Remove once
|
# unreleased package against a stable Plasma release. Remove once
|
||||||
# bigscreen is part of the Plasma release cycle.
|
# bigscreen is part of the Plasma release cycle.
|
||||||
substituteInPlace CMakeLists.txt \
|
substituteInPlace CMakeLists.txt \
|
||||||
--replace-fail 'set(PROJECT_VERSION "6.5.80")' 'set(PROJECT_VERSION "${plasma-workspace.version}")'
|
--replace-fail 'set(PROJECT_VERSION "6.5.80")' 'set(PROJECT_VERSION "${plasma-workspace.version}")'
|
||||||
|
|
||||||
# WORKAROUND: QCoro6Qml's cmake config links against Qt6::QmlPrivate but
|
# WORKAROUND: QCoro6Qml's cmake config links against Qt6::QmlPrivate but
|
||||||
# doesn't call find_package to import the target. This is arguably a QCoro
|
# doesn't call find_package to import the target. This is arguably a QCoro
|
||||||
# packaging bug in nixpkgs (it should propagate qtdeclarative). Remove
|
# packaging bug in nixpkgs (it should propagate qtdeclarative). Remove
|
||||||
# once QCoro or the nixpkgs plasma-bigscreen package is fixed upstream.
|
# once QCoro or the nixpkgs plasma-bigscreen package is fixed upstream.
|
||||||
substituteInPlace CMakeLists.txt \
|
substituteInPlace CMakeLists.txt \
|
||||||
--replace-fail 'find_package(QCoro6' 'find_package(Qt6 ''${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS QmlPrivate)
|
--replace-fail 'find_package(QCoro6' 'find_package(Qt6 ''${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS QmlPrivate)
|
||||||
find_package(QCoro6'
|
find_package(QCoro6'
|
||||||
'';
|
'';
|
||||||
|
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
|
|||||||
Reference in New Issue
Block a user