summaryrefslogtreecommitdiff
path: root/configuration.nix
diff options
context:
space:
mode:
authorRaghuram Subramani <raghus2247@gmail.com>2024-01-27 12:45:54 +0530
committerRaghuram Subramani <raghus2247@gmail.com>2024-01-27 12:45:54 +0530
commit05f9bc5afd5ac5f671f1dcd3d20774b0987545ec (patch)
treeaa1a9fbe816b5217f6827ae2a41481f762c6c7f4 /configuration.nix
parentcc5a352e65e533cc84358a546c9ee6f1d5a47908 (diff)
refactor dotfiles, and use nix
Diffstat (limited to 'configuration.nix')
-rw-r--r--[-rwxr-xr-x]configuration.nix181
1 files changed, 142 insertions, 39 deletions
diff --git a/configuration.nix b/configuration.nix
index c4940ef..691a311 100755..100644
--- a/configuration.nix
+++ b/configuration.nix
@@ -1,10 +1,12 @@
{ config, pkgs, ... }:
{
- imports =
- [
- ./hardware-configuration.nix
- ];
+ imports = [
+ ./hardware-configuration.nix
+ <home-manager/nixos>
+ ];
+
+ nix.settings.experimental-features = [ "nix-command" "flakes" ];
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
@@ -13,6 +15,11 @@
networking.hostName = "OwO";
networking.networkmanager.enable = true;
+ fileSystems."/data" = {
+ device = "/dev/sda";
+ fsType = "ext4";
+ };
+
time.timeZone = "Asia/Kolkata";
nixpkgs.config.allowUnfree = true;
@@ -55,6 +62,10 @@
};
};
+ services.logind.extraConfig = ''
+ HandlePowerKey=ignore
+ '';
+
systemd.services.greetd.serviceConfig = {
Type = "idle";
StandardInput = "tty";
@@ -65,55 +76,146 @@
TTYVTDisallocate = true;
};
- /* nixpkgs.overlays = [
- (self: super: {
- waybar = super.waybar.overrideAttrs (oldAttrs: {
- src = super.fetchFromGitHub {
- owner = "Alexays";
- repo = "waybar";
- rev = "e46f66b4687eb807b6fc9c6714e52c52d0885926";
- hash = "sha256-bNzLLkkhH1MZmBneP3PH3xkED0hDWXyiaMqNWF2ilII=";
- };
- });
- })
- ]; */
+ environment.etc."inputrc".text = pkgs.lib.mkForce (
+ builtins.readFile <nixpkgs/nixos/modules/programs/bash/inputrc> + ''
+ set completion-ignore-case on
+ ''
+ );
users.users.compromyse = {
isNormalUser = true;
extraGroups = [ "wheel" "storage" "libvirtd" ];
- packages = with pkgs; [
- neofetch
- ];
};
- environment.systemPackages = with pkgs; [
- vim
- wget
- git
+ home-manager.useUserPackages = true;
+ home-manager.useGlobalPkgs = true;
- polkit_gnome
+ home-manager.users.compromyse = { pkgs, ... }: {
+ home.packages = with pkgs; [
+ wget
+
+ tmux
+ fzf
+ fd
+ ripgrep
+
+ cinnamon.nemo
+ mate.eom
+
+ spotify
+ firefox
+
+ pavucontrol
+ blueman
+ brillo
+ ];
+
+ programs.bash = {
+ enable = true;
+ initExtra= ''
+ export PS1="\[\e[38;5;243m\]\h \[\e[38;5;254m\]\w \[\033[0m\]> "
+
+ sessionizer() {
+ DIR=$(fd . $HOME --type d -L -H | fzf)
+ SESSION_NAME="$DIR_$(date +%M%S)"
+
+ if [ -n "$DIR" ]
+ then
+ if [ "$1" == "-cd" ]
+ then
+ cd $DIR
+ return
+ fi
+ tmux new-session -d -c "$DIR" -s "$SESSION_NAME"
+ if [ -n "$TMUX" ]
+ then
+ tmux switch -t "$SESSION_NAME"
+ else
+ tmux attach -t "$SESSION_NAME"
+ fi
+ fi
+ }
+
+ if [[ $- != *i* ]]
+ then
+ sessionizer
+ fi
+
+ bind '"\C-f": "sessionizer\n"'
+ bind '"\C-F": "sessionizer -cd\n"'
+ '';
+ };
+
+ programs.git = {
+ enable = true;
+ userName = "Raghuram Subramani";
+ userEmail = "raghus2247@gmail.com";
+ };
+
+ programs.neovim = {
+ enable = true;
+ defaultEditor = true;
+ viAlias = true;
+ vimAlias = true;
+ vimdiffAlias = true;
+ };
+
+
+ programs.alacritty = {
+ enable = true;
+ };
+
+ home.file = {
+ ".tmux.conf".source = ./.tmux.conf;
+ ".fdignore".source = ./.fdignore;
+ ".config" = {
+ source = ./config;
+ recursive = true;
+ };
+ };
+
+ home.pointerCursor = {
+ gtk.enable = true;
+ package = pkgs.bibata-cursors;
+ name = "Bibata-Modern-Classic";
+ size = 16;
+ };
+
+ gtk = {
+ enable = true;
+
+ theme = { name = "adw-gtk3-dark"; package = pkgs.adw-gtk3; };
+ iconTheme = { name = "Papirus-Light"; package = pkgs.papirus-icon-theme; };
+
+ font = { name = "UbuntuMono Nerd Font"; };
+ };
+
+ qt = {
+ enable = true;
+ platformTheme = "gtk";
+ style.name = "adwaita-dark";
+ };
+
+ home.stateVersion = "23.11";
+ programs.home-manager.enable = true;
+ };
+ environment.systemPackages = with pkgs; [
waybar
+ tofi
fuzzel
dunst
hyprpaper
- greetd.tuigreet
- greetd.greetd
- terminator
- firefox
- spotify
- virt-manager
+ networkmanagerapplet
- pavucontrol
- blueman
+ greetd.tuigreet
+ greetd.greetd
+ polkit_gnome
+ waylock
libnotify
libappindicator
-
- materia-theme
- papirus-icon-theme
- capitaine-cursors
];
fonts.packages = with pkgs; [
@@ -128,9 +230,10 @@
};
security.polkit.enable = true;
+ security.pam.services.waylock.text = ''
+ auth include login
+ '';
- system.copySystemConfiguration = true;
-
- system.stateVersion = "unstable";
+ system.stateVersion = "23.11";
}