for package writing + format a fwe things

This commit is contained in:
Sakooooo 2023-08-06 18:03:24 +03:00
parent 495d95523f
commit b685d931d7
Signed by: sako
GPG key ID: 3FD715D87D7725E0
6 changed files with 88 additions and 64 deletions

View file

@ -1,12 +1,17 @@
# Edit this configuration file to define what should be installed on # 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`). # 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, outputs, ... }:
{ {
imports = config,
[ # Include the results of the hardware scan. pkgs,
./hardware-configuration.nix lib,
]; inputs,
outputs,
...
}: {
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix
];
# required for hostname specific configurations # required for hostname specific configurations
networking.hostName = "sakotop"; # Define your hostname. networking.hostName = "sakotop"; # Define your hostname.
@ -18,7 +23,7 @@
awesome.enable = false; awesome.enable = false;
dwm.enable = true; dwm.enable = true;
picom.enable = false; picom.enable = false;
gnome.enable = false; gnome.enable = false;
dunst.enable = true; dunst.enable = true;
browsers = { browsers = {
qutebrowser.enable = true; qutebrowser.enable = true;
@ -91,12 +96,12 @@
# TODO(sako):: put this in different files # TODO(sako):: put this in different files
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.
users.users.sako= { users.users.sako = {
isNormalUser = true; isNormalUser = true;
extraGroups = [ "wheel" "networkmanager" ]; # Enable sudo for the user. extraGroups = ["wheel" "networkmanager"]; # Enable sudo for the user.
}; };
services.xserver.videoDrivers = [ "nvidia" ]; services.xserver.videoDrivers = ["nvidia"];
# Enable the OpenSSH daemon. # Enable the OpenSSH daemon.
# services.openssh.enable = true; # services.openssh.enable = true;
@ -106,6 +111,4 @@
# networking.firewall.allowedUDPPorts = [ ... ]; # networking.firewall.allowedUDPPorts = [ ... ];
# Or disable the firewall altogether. # Or disable the firewall altogether.
# networking.firewall.enable = false; # networking.firewall.enable = false;
} }

View file

@ -1,9 +1,14 @@
{ outputs, options, config, lib, pkgs, ...}:
with lib;
let
cfg = config.modules.desktop.bspwm;
in
{ {
outputs,
options,
config,
lib,
pkgs,
...
}:
with lib; let
cfg = config.modules.desktop.bspwm;
in {
imports = [ imports = [
./polybar ./polybar
./lemonbar ./lemonbar
@ -19,19 +24,18 @@ in
bspwm.enable = true; bspwm.enable = true;
}; };
displayManager = { displayManager = {
defaultSession = "none+bspwm"; defaultSession = "none+bspwm";
lightdm = { lightdm = {
enable = true;
background = ../../../config/bspwm/background.png;
greeters.gtk = {
enable = true; enable = true;
theme = { background = ../../../config/bspwm/background.png;
name = "vimix-dark-ruby"; greeters.gtk = {
package = pkgs.vimix-gtk-themes; enable = true;
theme = {
name = "vimix-dark-ruby";
package = pkgs.vimix-gtk-themes;
};
}; };
}; };
};
}; };
libinput = { libinput = {
enable = true; enable = true;
@ -62,7 +66,7 @@ in
flameshot flameshot
]; ];
home-manager.users.sako = { pkgs , ...}: { home-manager.users.sako = {pkgs, ...}: {
home.pointerCursor = { home.pointerCursor = {
name = "Catppuccin-Mocha-Dark"; name = "Catppuccin-Mocha-Dark";
size = 16; size = 16;
@ -89,7 +93,7 @@ in
sxhkd = { sxhkd = {
source = ../../../config/sxhkd; source = ../../../config/sxhkd;
}; };
}; };
}; };
}; };
} }

View file

@ -1,9 +1,14 @@
{ outputs, options, config, lib, pkgs, ...}:
with lib;
let
cfg = config.modules.desktop.dwm;
in
{ {
outputs,
options,
config,
lib,
pkgs,
...
}:
with lib; let
cfg = config.modules.desktop.dwm;
in {
options.modules.desktop.dwm = { options.modules.desktop.dwm = {
enable = mkEnableOption false; enable = mkEnableOption false;
}; };
@ -27,16 +32,16 @@ in
}; };
}; };
}; };
libinput = { libinput = {
mouse = { mouse = {
accelProfile = "flat"; accelProfile = "flat";
}; };
touchpad = { touchpad = {
accelProfile = "flat"; accelProfile = "flat";
};
}; };
}; };
};
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
rofi rofi
# network # network
@ -51,7 +56,7 @@ in
# screen shot (s) # screen shot (s)
flameshot flameshot
]; ];
home-manager.users.sako = { pkgs , ...}: { home-manager.users.sako = {pkgs, ...}: {
home.file = { home.file = {
"background.png" = { "background.png" = {
enable = true; enable = true;

View file

@ -1,25 +1,30 @@
{ outputs, options, config, lib, pkgs, ...}:
with lib;
let
cfg = config.modules.desktop.xmonad;
in
{ {
outputs,
options,
config,
lib,
pkgs,
...
}:
with lib; let
cfg = config.modules.desktop.xmonad;
in {
options.modules.desktop.xmonad = { options.modules.desktop.xmonad = {
enable = mkEnableOption false; enable = mkEnableOption false;
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
# https://nixos.wiki/wiki/XMonad # https://nixos.wiki/wiki/XMonad
services.xserver = { services.xserver = {
enable = true; enable = true;
windowManager.xmonad = { windowManager.xmonad = {
enable = true; enable = true;
enableContribAndExtras = true; enableContribAndExtras = true;
ghcArgs = [ ghcArgs = [
"-hidir /tmp" # place interface files in /tmp, otherwise ghc tries to write them to the nix store "-hidir /tmp" # place interface files in /tmp, otherwise ghc tries to write them to the nix store
"-odir /tmp" # place object files in /tmp, otherwise ghc tries to write them to the nix store "-odir /tmp" # place object files in /tmp, otherwise ghc tries to write them to the nix store
# "-i${xmonad-contexts}" # tell ghc to search in the respective nix store path for the module # "-i${xmonad-contexts}" # tell ghc to search in the respective nix store path for the module
]; ];
}; };
displayManager = { displayManager = {
lightdm = { lightdm = {
@ -71,7 +76,7 @@ in
trayer trayer
]; ];
home-manager.users.sako = { pkgs , ...}: { home-manager.users.sako = {pkgs, ...}: {
home.pointerCursor = { home.pointerCursor = {
name = "Catppuccin-Mocha-Dark"; name = "Catppuccin-Mocha-Dark";
size = 16; size = 16;
@ -100,7 +105,7 @@ in
source = ../../../config/xmobar; source = ../../../config/xmobar;
recursive = true; recursive = true;
}; };
}; };
};
}; };
};
} }

7
packages/.nixd.json Normal file
View file

@ -0,0 +1,7 @@
{
"eval": {
"target": {
"args": ["--expr", "with import <nixpkgs> { }; ./default.nix { }"]
}
}
}

View file

@ -1,7 +1,7 @@
# Custom packages, that can be defined similarly to ones from nixpkgs # Custom packages, that can be defined similarly to ones from nixpkgs
# You can build them using 'nix build .#example' or (legacy) 'nix-build -A example' # You can build them using 'nix build .#example' or (legacy) 'nix-build -A example'
{pkgs ? (import ../nixpkgs.nix) {}}: {
{ pkgs ? (import ../nixpkgs.nix) { } }: {
# example = pkgs.callPackage ./example { }; # example = pkgs.callPackage ./example { };
sako.davinci-resolve = pkgs.callPackage ./davinci-resolve.nix {}; sako.davinci-resolve = pkgs.callPackage ./davinci-resolve.nix {};
nullpomino = pkgs.callPackage ./nullpomino.nix {};
} }