auto lint

This commit is contained in:
alsaiduq-lab 2025-03-17 16:10:17 -06:00
parent a765516271
commit 6a9932451c
35 changed files with 262 additions and 205 deletions

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
imports = [
./modules/dunst.nix
./modules/fish.nix

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
dunst
];

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
fish-rust
starship
@ -10,5 +13,4 @@
fd
ripgrep
];
}

View file

@ -1,7 +1,11 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
ghostty
ghostty
fastfetch
];
}

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
lazygit
];

View file

@ -2,7 +2,7 @@
{
home.packages = with pkgs; [
neovim
ripgrep
gnugrep
fd
fzf
nodejs
@ -18,7 +18,7 @@
];
home.sessionVariables = {
LUA_PATH = "${pkgs.luajit}/share/lua/5.1/?.lua;;";
LUA_PATH = "${pkgs.luajit}/share/lua/5.1/?.lua;${pkgs.luajit}/share/lua/5.1/?/init.lua;;";
LUA_CPATH = "${pkgs.luajit}/lib/lua/5.1/?.so;;";
};
@ -26,15 +26,23 @@
"$HOME/.local/share/nvim/mason/bin"
];
xdg.configFile."nvim" =
if !builtins.pathExists "${config.home.homeDirectory}/.config/nvim"
then {
source = builtins.fetchGit {
url = "https://github.com/alsaiduq-lab/nvim-dotfiles.git";
ref = "master";
rev = "71155b4a4b63d9974f1bc3b66303d6f7e5e06871";
};
recursive = true;
}
else null;
xdg.configFile."nvim" = let
nvimConfigPath = "${config.home.homeDirectory}/.config/nvim";
# nvimDotfiles = builtins.fetchGit {
# url = "https://github.com/alsaiduq-lab/nvim-dotfiles.git";
# ref = "master";
# rev = "71155b4a4b63d9974f1bc3b66303d6f7e5e06871";
# };
in {
source = pkgs.emptyDirectory;
recursive = true;
enable = !builtins.pathExists nvimConfigPath;
onChange = ''
echo "Neovim config at ${nvimConfigPath} was ${
if builtins.pathExists nvimConfigPath
then "skipped (already exists)"
else "installed"
}"
'';
};
}

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
picom
];

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
polybar
];

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
rofi
];

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
starship
];

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
zellij
];

View file

@ -1,10 +1,13 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running 'nixos-help').
{ config, pkgs, lib, inputs, ... }:
{
config,
pkgs,
lib,
inputs,
...
}: {
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix

View file

@ -8,13 +8,9 @@
in {
environment.systemPackages = with pkgs; [
# Applications
brave
ghostty
brave # TODO: make a module to save browser stuff
vesktop
neovim
git
fastfetch
# Development tools
nodejs
wget
curl
@ -34,7 +30,6 @@ in {
gawk
obs-studio
lazygit
# Java ecosystem
jdk17
maven
gradle
@ -85,7 +80,6 @@ in {
deno
redis
cloudflared
# Rust ecosystem
rustup
cargo-edit
cargo-watch
@ -96,19 +90,15 @@ in {
pkg-config
libxml2
zlib
# Haskell ecosystem
ghc
cabal-install
stack
haskell-language-server
# Database tools
postgresql
sqlite
# Version control tools
git-lfs
gitAndTools.gh
gitAndTools.diff-so-fancy
# misc
ani-cli
yt-dlp
nmap

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
security.rtkit.enable = true;
services.pipewire = {
enable = true;

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
hardware.bluetooth = {
enable = true;
powerOnBoot = true;

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
imports = [
./audio.nix
./bluetooth.nix
@ -16,7 +19,6 @@
./steam.nix
./timezone.nix
./user.nix
./man.nix
];
# Enable CUPS to print documents.

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
virtualisation.docker = {
enable = true;
enableOnBoot = true;

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
environment.shellInit = ''
if [ -d $HOME/.cargo/bin ]; then
export PATH=$PATH:$HOME/.cargo/bin

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
let
{
config,
pkgs,
lib,
...
}: let
clear-sans = pkgs.stdenv.mkDerivation {
name = "clear-sans";
src = pkgs.fetchurl {
@ -13,16 +16,14 @@ let
cp $src $out/share/fonts/truetype/ClearSans-Regular.ttf
'';
};
in
{
in {
fonts = {
packages = with pkgs; [
noto-fonts
noto-fonts-cjk-sans
noto-fonts-cjk-serif
noto-fonts-emoji
(nerdfonts.override { fonts = [ "0xProto" "FiraCode" "JetBrainsMono" "Hack" "Noto" "NerdFontsSymbolsOnly" ]; })
(nerdfonts.override {fonts = ["0xProto" "FiraCode" "JetBrainsMono" "Hack" "Noto" "NerdFontsSymbolsOnly"];})
ipafont
kochi-substitute
clear-sans
@ -42,10 +43,10 @@ in
fontconfig = {
enable = true;
defaultFonts = {
monospace = [ "0xProto Nerd Font" "Noto Sans Mono CJK JP" ];
sansSerif = [ "Clear Sans" "Noto Sans CJK JP" ];
serif = [ "Noto Serif" "Noto Serif CJK JP" ];
emoji = [ "Noto Color Emoji" ];
monospace = ["0xProto Nerd Font" "Noto Sans Mono CJK JP"];
sansSerif = ["Clear Sans" "Noto Sans CJK JP"];
serif = ["Noto Serif" "Noto Serif CJK JP"];
emoji = ["Noto Color Emoji"];
};
};
};

View file

@ -1,5 +1,10 @@
{ config, pkgs, lib, inputs, ... }:
{
config,
pkgs,
lib,
inputs,
...
}: {
imports = [
inputs.home-manager.nixosModules.home-manager
];

View file

@ -1,9 +1,11 @@
{ config, pkgs, lib, ... }:
let
customPkgs = import ../pkgs { inherit pkgs lib; };
in
{
config,
pkgs,
lib,
...
}: let
customPkgs = import ../pkgs {inherit pkgs lib;};
in {
services.xserver.enable = true;
services.xserver.xkb = {
layout = "us";
@ -118,22 +120,24 @@ in
GTK2_RC_FILES = "$HOME/.gtkrc-2.0";
};
environment.systemPackages = with pkgs; [
arandr
nitrogen
xclip
lxappearance
libsForQt5.qt5ct
gnome-themes-extra
gsettings-desktop-schemas
adwaita-qt
arc-theme
arc-icon-theme
papirus-icon-theme
numix-icon-theme-circle
candy-icons
] ++ (with customPkgs; [
tokyo-night-gtk
vivid-icons
]);
environment.systemPackages = with pkgs;
[
arandr
nitrogen
xclip
lxappearance
libsForQt5.qt5ct
gnome-themes-extra
gsettings-desktop-schemas
adwaita-qt
arc-theme
arc-icon-theme
papirus-icon-theme
numix-icon-theme-circle
candy-icons
]
++ (with customPkgs; [
tokyo-night-gtk
vivid-icons
]);
}

View file

@ -1,42 +0,0 @@
{ config, pkgs, lib, ... }:
{
documentation = {
enable = true;
dev.enable = true;
doc.enable = true;
info.enable = true;
man = {
enable = true;
generateCaches = true;
};
nixos.enable = true;
};
environment.pathsToLink = [ "/share/man" "/share/doc" ];
environment.systemPackages = with pkgs; [
man-pages
man-pages-posix
stdmanpages
docutils
python311Packages.docutils
python311Packages.docstr-coverage
python310Packages.docutils
python310Packages.docstr-coverage
texlivePackages.documentation
docbook5
docbook-xsl-ns
docbook-xsl-nons
doctoc
doctave
documentation-highlighter
];
environment.variables = {
MANPATH = [
"${config.system.path}/share/man"
"${pkgs.man-pages}/share/man"
"${pkgs.man-pages-posix}/share/man"
];
};
}

View file

@ -1,7 +1,10 @@
{ config, pkgs, lib, ... }:
{
networking.wireless.enable = false; # Enables wireless support via wpa_supplicant.
config,
pkgs,
lib,
...
}: {
networking.wireless.enable = false; # Enables wireless support via wpa_supplicant.
networking.hostName = "nixos";
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";

View file

@ -1,12 +1,15 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
nixpkgs.config.allowUnfree = true;
programs.nix-index.enable = true;
programs.command-not-found.enable = false;
nix.settings = {
auto-optimise-store = true;
experimental-features = [ "nix-command" "flakes" ];
experimental-features = ["nix-command" "flakes"];
substituters = [
"https://cache.nixos.org"
];

View file

@ -1,7 +1,10 @@
{ config, pkgs, lib, ... }:
{
services.xserver.videoDrivers = [ "nvidia" ];
config,
pkgs,
lib,
...
}: {
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;

View file

@ -1,6 +1,11 @@
{ config, pkgs, lib, inputs, system, ... }:
{
config,
pkgs,
lib,
inputs,
system,
...
}: {
programs.steam = {
enable = true;
remotePlay.openFirewall = true;

View file

@ -1,6 +1,9 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}: {
time.timeZone = "America/Edmonton";
i18n.defaultLocale = "en_CA.UTF-8";
}

View file

@ -1,15 +1,16 @@
{ config, pkgs, lib, ... }:
let
fish-rust = pkgs.callPackage ../pkgs/fish-rust { };
in
{
config,
pkgs,
lib,
...
}: let
fish-rust = pkgs.callPackage ../pkgs/fish-rust {};
in {
# Define a user account. Don't forget to set a password with 'passwd'.
users.users.cobray = {
isNormalUser = true;
description = "Mon Aie";
extraGroups = [ "networkmanager" "wheel" "docker" "video" ];
extraGroups = ["networkmanager" "wheel" "docker" "video"];
shell = fish-rust;
packages = with pkgs; [
# User-specific packages can be defined here

View file

@ -1,11 +1,12 @@
{ pkgs ? import <nixpkgs> {}, lib ? pkgs.lib }:
let
{
pkgs ? import <nixpkgs> {},
lib ? pkgs.lib,
}: let
python-pymatting = pkgs.callPackage ./python-pymatting {
inherit (pkgs) lib fetchPypi;
python310Packages = pkgs.python310.pkgs;
};
in
{
in {
fish-rust = pkgs.callPackage ./fish-rust {};
python-pymatting = python-pymatting;
python-rembg = pkgs.callPackage ./python-rembg {

View file

@ -1,5 +1,11 @@
{ lib, rustPlatform, fetchgit, ncurses, python3Packages, gettext }:
{
lib,
rustPlatform,
fetchgit,
ncurses,
python3Packages,
gettext,
}:
rustPlatform.buildRustPackage rec {
pname = "fish";
version = "4.1-2025-03-16-rust";
@ -19,7 +25,7 @@ rustPlatform.buildRustPackage rec {
};
};
buildInputs = [ ncurses gettext ];
buildInputs = [ncurses gettext];
nativeBuildInputs = with python3Packages; [
sphinx
sphinx_rtd_theme

View file

@ -7,7 +7,7 @@ python310Packages.buildPythonPackage rec {
src = fetchPypi {
inherit pname version;
sha256 = "sha256-LNt8S++s3e9Netwt6ONKJy3mOdYIrlwKCGE9+kJTgQE="; # Updated hash
sha256 = "sha256-LNt8S++s3e9Netwt6ONKJy3mOdYIrlwKCGE9+kJTgQE=";
};
propagatedBuildInputs = with python310Packages; [

View file

@ -1,5 +1,9 @@
{ lib, python310Packages, fetchPypi, python-pymatting }:
{
lib,
python310Packages,
fetchPypi,
python-pymatting,
}:
python310Packages.buildPythonPackage rec {
pname = "rembg";
version = "2.0.50";
@ -40,6 +44,6 @@ python310Packages.buildPythonPackage rec {
homepage = "https://github.com/danielgatis/rembg";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ "Cobray" ];
maintainers = with maintainers; ["Cobray"];
};
}

View file

@ -1,5 +1,12 @@
{ lib, stdenv, fetchFromGitHub, gtk-engine-murrine, gtk_engines, bash, sassc }:
{
lib,
stdenv,
fetchFromGitHub,
gtk-engine-murrine,
gtk_engines,
bash,
sassc,
}:
stdenv.mkDerivation {
pname = "tokyo-night-gtk";
version = "2025-03-16";
@ -11,9 +18,9 @@ stdenv.mkDerivation {
sha256 = "0c7sp9n2pc70yy9msmbmcyhqbr63v1ssnsxk6vg10zwwc3wl19h0";
};
nativeBuildInputs = [ bash sassc ];
buildInputs = [ gtk-engine-murrine gtk_engines ];
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
nativeBuildInputs = [bash sassc];
buildInputs = [gtk-engine-murrine gtk_engines];
propagatedUserEnvPkgs = [gtk-engine-murrine];
patchPhase = ''
cd themes
@ -54,6 +61,6 @@ stdenv.mkDerivation {
homepage = "https://github.com/Fausto-Korpsvart/Tokyo-Night-GTK-Theme";
license = licenses.gpl3;
platforms = platforms.all;
maintainers = [ "Cobray" ];
maintainers = ["Cobray"];
};
}

View file

@ -1,4 +1,9 @@
{ lib, stdenv, fetchFromGitHub, hicolor-icon-theme }:
{
lib,
stdenv,
fetchFromGitHub,
hicolor-icon-theme,
}:
stdenv.mkDerivation rec {
pname = "vivid-icons";
version = "2025-03-16";
@ -8,40 +13,40 @@ stdenv.mkDerivation rec {
rev = "fe8b8f1bdd3784dc838c125bb9e1b2d713f40e67";
sha256 = "1rcphy08r6337gbp98nz00mj780jn9kwm40ngd9pxnlvwp2n8mjj";
};
buildInputs = [ hicolor-icon-theme ];
buildInputs = [hicolor-icon-theme];
installPhase = ''
mkdir -p $out/share/icons
cp -r "Vivid Icons Themes/"* $out/share/icons/
for theme in $out/share/icons/*; do
if [ -d "$theme" ]; then
echo "Processing theme: $theme"
cat > "$theme/index.theme" <<EOF
[Icon Theme]
Name=$(basename "$theme")
Comment=$(basename "$theme") icons
Inherits=hicolor
Directories=8x8,16x16,22x22
[8x8]
Size=8
Context=Emblems
Type=Fixed
[16x16]
Size=16
Context=Actions
Type=Fixed
[22x22]
Size=22
Context=Actions
Type=Fixed
EOF
fi
done
mkdir -p $out/share/icons
cp -r "Vivid Icons Themes/"* $out/share/icons/
for theme in $out/share/icons/*; do
if [ -d "$theme" ]; then
echo "Processing theme: $theme"
cat > "$theme/index.theme" <<EOF
[Icon Theme]
Name=$(basename "$theme")
Comment=$(basename "$theme") icons
Inherits=hicolor
Directories=8x8,16x16,22x22
[8x8]
Size=8
Context=Emblems
Type=Fixed
[16x16]
Size=16
Context=Actions
Type=Fixed
[22x22]
Size=22
Context=Actions
Type=Fixed
EOF
fi
done
'';
meta = with lib; {
description = "Vivid Icons Theme";
homepage = "https://github.com/L4ki/Vivid-Plasma-Themes";
license = licenses.gpl3;
platforms = platforms.all;
maintainers = [ "Cobray" ];
maintainers = ["Cobray"];
};
}