Compare commits

...

32 Commits

Author SHA1 Message Date
Sravan Balaji
ff832c6e0a Move kdeconnect to system and install qbittorrent with home manager 2024-04-01 20:43:21 -04:00
Sravan Balaji
d0e27148c7 Update flake.lock 2024-04-01 20:24:19 -04:00
Sravan Balaji
902408e764 Add geoclue service to fix redshift missing location 2024-04-01 20:23:25 -04:00
Sravan Balaji
33a657d209 Update flake.lock and fix samba syntax errors 2024-04-01 20:15:22 -04:00
Sravan Balaji
f2e2471c20 Add XFCE Power Manager 2024-03-31 10:44:24 -04:00
Sravan Balaji
b1c750b960 Bunch More Packages
- Add thunar file manager to dwm
- Add nitrogen wallpaper setter to dwm
- Add rclone, sweethome 3D, mangal, qalculate-gtk, octave, and
  qbittorrent packages
2024-03-31 10:16:17 -04:00
Sravan Balaji
0adc8dadcd Samba Share, Night Light, and Dev Packages
- Add default group with gid 1000
- Add redshift night light to dwm
- Add samba mount nix
- Add openssh and github cli packages
2024-03-31 09:58:40 -04:00
Sravan Balaji
b51a77befa Udiskie, KDE Connect, and Config Cleanup
- Move shell and font configs out of configuration.nix
  and into separate files
- Add udiskie to dwm
- Add kdeconnect for phone connection
2024-03-31 09:27:11 -04:00
Sravan Balaji
e397b4a2ed Update flake.lock 2024-03-31 09:09:15 -04:00
Sravan Balaji
aef313b4f1 HP Printer & Scanner + DWM/Polybar Dependencies
- Add packages / services to support HP printer / scanner
- Add packages to dwm that polybar modules rely on
2024-03-31 09:06:52 -04:00
Sravan Balaji
79ae89cf80 Dwm and Polybar Cleanup (finally working fully!)
- Override dwm package attributes to reflect new name
  of "dwm-flexipatch" and version 6.5
- Build off existing buildInputs for dwm rather than overwriting
  original list of dependencies
- Add playctl and zscroll packages for polybar
- Add libpulseaudio as build dependency for polybar
2024-03-30 21:33:20 -04:00
Sravan Balaji
02b601529d Fonts & Shell Prompt
- More fonts
- Add krabby and starship packages for shell prompt
2024-03-30 20:59:06 -04:00
Sravan Balaji
b2ecd969fd Fix Disko Config for Current System and Fix dwm polybar override
- Restore luks-btrfs-subvolumes.nix to old subvolume / swap size
- Make a copy of modified luks-btrfs-subvolumes.nix for future use
- Disable the polybar patch step which doesn't work
- Add git as a build input for polybar-dwm-module
2024-03-30 16:38:59 -04:00
Sravan Balaji
aa28eb8e3d First attempt at adding polybar-dwm-module (fails to build)
- Update flake.lock
- Switch from awesome back to dwm
- Attempt to modify existing polybar nix package
  to point to mihirlad55's polybar-dwm-module
2024-03-30 16:18:41 -04:00
Sravan Balaji
80473968ae Add btrbk for backups 2024-03-30 16:11:12 -04:00
Sravan Balaji
2e87b2ecad Add AwesomeWM 2024-03-30 16:11:12 -04:00
Sravan Balaji
0cc1298285 Modify disko BTRFS Subvolume Layout
- Decrease swapfile size to 10G (don't really need hibernation)
- Remove extra BTRFS mount options like disarcd=async, space_cache=v2,
  and ssd
- Add a games subvolume
- Add a subvolume for /var/log
2024-03-30 16:11:12 -04:00
Sravan Balaji
7db963f519 Gui Reorg and More Programs
- Gui config reorganization
- Enable picom for dwm
- Install some utilities like arandr, autorandr, and unclutter-xfixes
  for dwm
- Add nerdfonts for FiraCode
- Remove conditional imports list syntax
- Add audio tools like playerctl and pavucontrol
- Enable polkit and add GNOME polkit
- Add more media programs like freecad, audacity, ani-cli, and calibre
- Add flameshot
2024-03-28 20:16:07 -04:00
Sravan Balaji
57ae9837a8 Add x11 utils like arandr and autorandr 2024-03-28 18:27:08 -04:00
Sravan Balaji
7acdd41b11 Switch back to Vim
- Change default editor back to vim since doom-emacs is broken at the
  moment
- Conditionally include emacs or vim nix files in configuration.nix
- User username to find dwm-flexipatch path on system
- Add tree and btop to miscellaneous system packages
- Add some cli tools like just and git to home-manager packages
- Add more XDG env vars for config and cache
2024-03-28 16:26:10 -04:00
Sravan Balaji
cf7abb3e89 Doom Emacs w/ Personal Config
- Update flake.lock
- Add doom emacs nix module to flake
- Change default editor to doom emacs
- Move xdg configuration to a separate file
- Change user home filepaths to use `~`
- Install doom emacs by default
- Add personal doom emacs configuration
2024-03-28 15:40:33 -04:00
Sravan Balaji
b6ed41211b Variable Re-Org and Rename
- Remove unused stylix module from flake
- Move desktop and desktopType from user to system settings
- Rename `hardwareConfiguration` to `hwConfig`
2024-03-28 15:19:53 -04:00
Sravan Balaji
9fdaf9bdbd Successful dwm-flexipatch build 2024-03-28 09:03:34 -04:00
Sravan Balaji
a69d92e18b More dwm build dependencies and build from local src files (still not working 2024-03-28 08:17:33 -04:00
Sravan Balaji
11f3c0ca90 Add support for kde plasma desktop 2024-03-27 20:39:35 -04:00
Sravan Balaji
a59fa6ec1e Attempt at switching from GNOME to dwm (not working) 2024-03-27 20:26:37 -04:00
Sravan Balaji
87e1df7818 Make GNOME respect x11 vs wayland choice 2024-03-27 20:04:46 -04:00
Sravan Balaji
9631d6110e Enable Prime Sync for System76 Oryx Pro 7 2024-03-27 19:37:21 -04:00
Sravan Balaji
a661e889bb Enable system76 kernel modules 2024-03-27 18:48:45 -04:00
Sravan Balaji
a2b1e0e55c Add NVIDIA and System76 S/W manually 2024-03-27 18:45:36 -04:00
Sravan Balaji
3678b01a73 Initial System76 Oryx Pro 7 Configuration 2024-03-27 18:45:19 -04:00
Sravan Balaji
21882ba15a Gamemode & Steam Fix and Add Gamescope
- Move gamemode and steam to system packages
- Add gamescope to user packages
2024-03-27 16:40:25 -04:00
43 changed files with 945 additions and 303 deletions

View File

@@ -0,0 +1,77 @@
let
installDisk = "sda";
bootPartitionSize = "512M";
swapfileSize = "10G";
in {
disko.devices = {
disk = {
main = {
type = "disk";
device = "/dev/" + installDisk;
content = {
type = "gpt";
partitions = {
boot = {
size = "1M";
type = "EF02"; # for grub MBR
};
ESP = {
size = bootPartitionSize;
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
mountOptions = [
"defaults"
];
};
};
luks = {
size = "100%";
content = {
type = "luks";
name = "cryptroot";
settings.allowDiscards = true;
content = {
type = "btrfs";
extraArgs = [ "-f" ];
subvolumes = {
"@root" = {
mountpoint = "/";
mountOptions = [ "compress=zstd" "noatime" ];
};
"@home" = {
mountpoint = "/home";
mountOptions = [ "compress=zstd" "noatime" ];
};
"@games" = {
mountpoint = "/games";
mountOptions = [ "compress=zstd" "noatime" ];
};
"@nix" = {
mountpoint = "/nix";
mountOptions = [ "compress=zstd" "noatime" ];
};
"@log" = {
mountpoint = "/var/log";
mountOptions = [ "compress=zstd" "noatime" ];
};
"@swap" = {
mountpoint = "/swap";
swap.swapfile.size = swapfileSize;
};
"@.snapshots" = {
mountpoint = "/.snapshots";
mountOptions = [ "compress=zstd" "noatime" ];
};
};
};
};
};
};
};
};
};
};
}

View File

@@ -1,7 +1,7 @@
let
installDisk = "vda";
installDisk = "sda";
bootPartitionSize = "512M";
swapfileSize = "10G";
swapfileSize = "34G";
in {
disko.devices = {
disk = {

640
flake.lock generated
View File

@@ -1,152 +1,5 @@
{
"nodes": {
"base16": {
"inputs": {
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1708890466,
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "665b3c6748534eb766c777298721cece9453fdae",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "base16.nix",
"type": "github"
}
},
"base16-alacritty": {
"flake": false,
"locked": {
"lastModified": 1703982197,
"narHash": "sha256-TNxKbwdiUXGi4Z4chT72l3mt3GSvOcz6NZsUH8bQU/k=",
"owner": "aarowill",
"repo": "base16-alacritty",
"rev": "c95c200b3af739708455a03b5d185d3d2d263c6e",
"type": "github"
},
"original": {
"owner": "aarowill",
"repo": "base16-alacritty",
"type": "github"
}
},
"base16-alacritty-yaml": {
"flake": false,
"locked": {
"lastModified": 1674275109,
"narHash": "sha256-Adwx9yP70I6mJrjjODOgZJjt4OPPe8gJu7UuBboXO4M=",
"owner": "aarowill",
"repo": "base16-alacritty",
"rev": "63d8ae5dfefe5db825dd4c699d0cdc2fc2c3eaf7",
"type": "github"
},
"original": {
"owner": "aarowill",
"repo": "base16-alacritty",
"rev": "63d8ae5dfefe5db825dd4c699d0cdc2fc2c3eaf7",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1622559957,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"type": "github"
}
},
"base16-foot": {
"flake": false,
"locked": {
"lastModified": 1696725948,
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
"owner": "tinted-theming",
"repo": "base16-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-foot",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1696727917,
"narHash": "sha256-FVrbPk+NtMra0jtlC5oxyNchbm8FosmvXIatkRbYy1g=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "dbe1480d99fe80f08df7970e471fac24c05f2ddb",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-helix",
"type": "github"
}
},
"base16-kitty": {
"flake": false,
"locked": {
"lastModified": 1665001328,
"narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=",
"owner": "kdrag0n",
"repo": "base16-kitty",
"rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805",
"type": "github"
},
"original": {
"owner": "kdrag0n",
"repo": "base16-kitty",
"type": "github"
}
},
"base16-tmux": {
"flake": false,
"locked": {
"lastModified": 1696725902,
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
"owner": "tinted-theming",
"repo": "base16-tmux",
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-tmux",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1663659192,
"narHash": "sha256-uJvaYYDMXvoo0fhBZUhN8WBXeJ87SRgof6GEK2efFT0=",
"owner": "chriskempson",
"repo": "base16-vim",
"rev": "3be3cd82cd31acfcab9a41bad853d9c68d30478d",
"type": "github"
},
"original": {
"owner": "chriskempson",
"repo": "base16-vim",
"type": "github"
}
},
"disko": {
"inputs": {
"nixpkgs": [
@@ -154,11 +7,11 @@
]
},
"locked": {
"lastModified": 1711462743,
"narHash": "sha256-3wKGpHy9Kyh98DrziqC/s//60Q0pE17NgbY93L0uWng=",
"lastModified": 1711934712,
"narHash": "sha256-sBDe+QmX/QohlnKeSEzrftcXyZL5FY09OMjZ59Rpyy4=",
"owner": "nix-community",
"repo": "disko",
"rev": "a6717b1afee7ae955c61eefdf0ce8f864ef78115",
"rev": "611c9ea53250f7bb22286b3d26872280a0e608f9",
"type": "github"
},
"original": {
@@ -167,6 +20,152 @@
"type": "github"
}
},
"doom-emacs": {
"flake": false,
"locked": {
"lastModified": 1662497747,
"narHash": "sha256-4n7E1fqda7cn5/F2jTkOnKw1juG6XMS/FI9gqODL3aU=",
"owner": "doomemacs",
"repo": "doomemacs",
"rev": "3853dff5e11655e858d0bfae64b70cb12ef685ac",
"type": "github"
},
"original": {
"owner": "doomemacs",
"repo": "doomemacs",
"rev": "3853dff5e11655e858d0bfae64b70cb12ef685ac",
"type": "github"
}
},
"doom-snippets": {
"flake": false,
"locked": {
"lastModified": 1694887483,
"narHash": "sha256-KlKhruPSLPSKqUnr5/U65arm16VrY9ORzm+XKNZhpTQ=",
"owner": "doomemacs",
"repo": "snippets",
"rev": "f022984ee1318a4015d5d081b3c3dab5a60dc6ff",
"type": "github"
},
"original": {
"owner": "doomemacs",
"repo": "snippets",
"type": "github"
}
},
"emacs-overlay": {
"flake": false,
"locked": {
"lastModified": 1676366521,
"narHash": "sha256-i4UAY8t9Au9SJtsgYppa3NHSVf1YkV6yqnNIQd+Km4g=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "c16be6de78ea878aedd0292aa5d4a1ee0a5da501",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "c16be6de78ea878aedd0292aa5d4a1ee0a5da501",
"type": "github"
}
},
"emacs-so-long": {
"flake": false,
"locked": {
"lastModified": 1575031854,
"narHash": "sha256-xIa5zO0ZaToDrec1OFjBK6l39AbA4l/CE4LInVu2hi0=",
"owner": "hlissner",
"repo": "emacs-so-long",
"rev": "ed666b0716f60e8988c455804de24b55919e71ca",
"type": "github"
},
"original": {
"owner": "hlissner",
"repo": "emacs-so-long",
"type": "github"
}
},
"evil-escape": {
"flake": false,
"locked": {
"lastModified": 1588439096,
"narHash": "sha256-aB2Ge5o/93B18tPf4fN1c+O46CNh/nOqwLJbox4c8Gw=",
"owner": "hlissner",
"repo": "evil-escape",
"rev": "819f1ee1cf3f69a1ae920e6004f2c0baeebbe077",
"type": "github"
},
"original": {
"owner": "hlissner",
"repo": "evil-escape",
"type": "github"
}
},
"evil-markdown": {
"flake": false,
"locked": {
"lastModified": 1626852210,
"narHash": "sha256-HBBuZ1VWIn6kwK5CtGIvHM1+9eiNiKPH0GUsyvpUVN8=",
"owner": "Somelauw",
"repo": "evil-markdown",
"rev": "8e6cc68af83914b2fa9fd3a3b8472573dbcef477",
"type": "github"
},
"original": {
"owner": "Somelauw",
"repo": "evil-markdown",
"type": "github"
}
},
"evil-org-mode": {
"flake": false,
"locked": {
"lastModified": 1607203864,
"narHash": "sha256-JxwqVYDN6OIJEH15MVI6XOZAPtUWUhJQWHyzcrUvrFg=",
"owner": "hlissner",
"repo": "evil-org-mode",
"rev": "a9706da260c45b98601bcd72b1d2c0a24a017700",
"type": "github"
},
"original": {
"owner": "hlissner",
"repo": "evil-org-mode",
"type": "github"
}
},
"evil-quick-diff": {
"flake": false,
"locked": {
"lastModified": 1575189609,
"narHash": "sha256-oGzl1ayW9rIuq0haoiFS7RZsS8NFMdEA7K1BSozgnJU=",
"owner": "rgrinberg",
"repo": "evil-quick-diff",
"rev": "69c883720b30a892c63bc89f49d4f0e8b8028908",
"type": "github"
},
"original": {
"owner": "rgrinberg",
"repo": "evil-quick-diff",
"type": "github"
}
},
"explain-pause-mode": {
"flake": false,
"locked": {
"lastModified": 1595842060,
"narHash": "sha256-++znrjiDSx+cy4okFBBXUBkRFdtnE2x+trkmqjB3Njs=",
"owner": "lastquestion",
"repo": "explain-pause-mode",
"rev": "2356c8c3639cbeeb9751744dbe737267849b4b51",
"type": "github"
},
"original": {
"owner": "lastquestion",
"repo": "explain-pause-mode",
"type": "github"
}
},
"flake-compat": {
"flake": false,
"locked": {
@@ -183,36 +182,38 @@
"type": "github"
}
},
"fromYaml": {
"flake": false,
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1689549921,
"narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=",
"owner": "SenchoPens",
"repo": "fromYaml",
"rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84",
"lastModified": 1694529238,
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "fromYaml",
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"gnome-shell": {
"format-all": {
"flake": false,
"locked": {
"lastModified": 1698794309,
"narHash": "sha256-/TIkZ8y5Wv3QHLFp79Poao9fINurKs5pa4z0CRe+F8s=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "a7c169c6c29cf02a4c392fa0acbbc5f5072823e7",
"lastModified": 1581716637,
"narHash": "sha256-ul7LCe60W8TIvUmUtZtZRo8489TK9iTPDsLHmzxY57M=",
"owner": "lassik",
"repo": "emacs-format-all-the-code",
"rev": "47d862d40a088ca089c92cd393c6dca4628f87d3",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "45.1",
"repo": "gnome-shell",
"owner": "lassik",
"repo": "emacs-format-all-the-code",
"rev": "47d862d40a088ca089c92cd393c6dca4628f87d3",
"type": "github"
}
},
@@ -223,11 +224,11 @@
]
},
"locked": {
"lastModified": 1711554349,
"narHash": "sha256-RypwcWEIFePBI0Hubfj4chanbM/G2yzJzC6wgz+dmS4=",
"lastModified": 1712016346,
"narHash": "sha256-O2nO7pD+krq+4HgkLB4VThRtAucIPfXDs/jJqCGlK1w=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "179f6acaf7c068c7870542cdae72afec9427a5b0",
"rev": "4be0464472675212654dedf3e021bd5f1d58b92f",
"type": "github"
},
"original": {
@@ -237,50 +238,86 @@
"type": "github"
}
},
"home-manager_2": {
"nix-doom-emacs": {
"inputs": {
"nixpkgs": [
"stylix",
"nixpkgs"
]
"doom-emacs": "doom-emacs",
"doom-snippets": "doom-snippets",
"emacs-overlay": "emacs-overlay",
"emacs-so-long": "emacs-so-long",
"evil-escape": "evil-escape",
"evil-markdown": "evil-markdown",
"evil-org-mode": "evil-org-mode",
"evil-quick-diff": "evil-quick-diff",
"explain-pause-mode": "explain-pause-mode",
"flake-compat": "flake-compat",
"flake-utils": "flake-utils",
"format-all": "format-all",
"nix-straight": "nix-straight",
"nixpkgs": "nixpkgs",
"nose": "nose",
"ob-racket": "ob-racket",
"org": "org",
"org-contrib": "org-contrib",
"org-yt": "org-yt",
"php-extras": "php-extras",
"revealjs": "revealjs",
"rotate-text": "rotate-text",
"sln-mode": "sln-mode",
"ts-fold": "ts-fold",
"ws-butler": "ws-butler"
},
"locked": {
"lastModified": 1706001011,
"narHash": "sha256-J7Bs9LHdZubgNHZ6+eE/7C18lZ1P6S5/zdJSdXFItI4=",
"lastModified": 1701264882,
"narHash": "sha256-MBXR7x7Ua8qystlGr+lenwjQd7dsFNFpEFmtHhh10zM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "3df2a80f3f85f91ea06e5e91071fa74ba92e5084",
"repo": "nix-doom-emacs",
"rev": "f7413022370f24bb53cb450bfb2803233510113e",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"repo": "nix-doom-emacs",
"type": "github"
}
},
"nix-straight": {
"flake": false,
"locked": {
"lastModified": 1694361489,
"narHash": "sha256-kjDp+j6OtrmqbtjQB5uuOtjS08+kgJQuxFqhWE1Y9Rw=",
"owner": "nix-community",
"repo": "nix-straight.el",
"rev": "748be99b84be0b130e946288099806a0f16d6e57",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nix-straight.el",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1711333969,
"narHash": "sha256-5PiWGn10DQjMZee5NXzeA6ccsv60iLu+Xtw+mfvkUAs=",
"lastModified": 1695806987,
"narHash": "sha256-fX5kGs66NZIxCMcpAGIpxuftajHL8Hil1vjHmjjl118=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "57e6b3a9e4ebec5aa121188301f04a6b8c354c9b",
"rev": "f3dab3509afca932f3f4fd0908957709bb1c1f57",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
"id": "nixpkgs",
"ref": "nixpkgs-unstable",
"type": "indirect"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1711460390,
"narHash": "sha256-akSgjDZL6pVHEfSE6sz1DNSXuYX6hq+P/1Z5IoYWs7E=",
"lastModified": 1711668574,
"narHash": "sha256-u1dfs0ASQIEr1icTVrsKwg2xToIpn7ZXxW3RHfHxshg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "44733514b72e732bd49f5511bd0203dea9b9a434",
"rev": "219951b495fc2eac67b1456824cc1ec1fd2ee659",
"type": "github"
},
"original": {
@@ -292,56 +329,217 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1700856099,
"narHash": "sha256-RnEA7iJ36Ay9jI0WwP+/y4zjEhmeN6Cjs9VOFBH7eVQ=",
"lastModified": 1711703276,
"narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "0bd59c54ef06bc34eca01e37d689f5e46b3fe2f1",
"rev": "d8fe5e6c92d0d190646fb9f1056741a229980089",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nose": {
"flake": false,
"locked": {
"lastModified": 1400604510,
"narHash": "sha256-daEi8Kta1oGaDEmUUDDQMahTTPOpvNpDKk22rlr7cB0=",
"owner": "emacsattic",
"repo": "nose",
"rev": "f8528297519eba911696c4e68fa88892de9a7b72",
"type": "github"
},
"original": {
"owner": "emacsattic",
"repo": "nose",
"type": "github"
}
},
"ob-racket": {
"flake": false,
"locked": {
"lastModified": 1584656173,
"narHash": "sha256-rBUYDDCXb+3D4xTPQo9UocbTPZ32kWV1Uya/1DmZknU=",
"owner": "xchrishawk",
"repo": "ob-racket",
"rev": "83457ec9e1e96a29fd2086ed19432b9d75787673",
"type": "github"
},
"original": {
"owner": "xchrishawk",
"repo": "ob-racket",
"type": "github"
}
},
"org": {
"flake": false,
"locked": {
"lastModified": 1695726851,
"narHash": "sha256-qgbjspklSoI8M3cbCJOcUdjuijRgsL/+PSyEOW9VX4I=",
"owner": "emacs-straight",
"repo": "org-mode",
"rev": "aa9177e1a8b039c357d369c1c9aaab710bb247a9",
"type": "github"
},
"original": {
"owner": "emacs-straight",
"repo": "org-mode",
"type": "github"
}
},
"org-contrib": {
"flake": false,
"locked": {
"lastModified": 1694946041,
"narHash": "sha256-X/HFG6NZe5BY00KvGbcsIuf9R6Lg8x7Uhd0Y5+Q3qZU=",
"owner": "emacsmirror",
"repo": "org-contrib",
"rev": "5eabbf22bdd4523c922a30787e98ee66c24221aa",
"type": "github"
},
"original": {
"owner": "emacsmirror",
"repo": "org-contrib",
"type": "github"
}
},
"org-yt": {
"flake": false,
"locked": {
"lastModified": 1527381913,
"narHash": "sha256-dzQ6B7ryzatHCTLyEnRSbWO0VUiX/FHYnpHTs74aVUs=",
"owner": "TobiasZawada",
"repo": "org-yt",
"rev": "40cc1ac76d741055cbefa13860d9f070a7ade001",
"type": "github"
},
"original": {
"owner": "TobiasZawada",
"repo": "org-yt",
"type": "github"
}
},
"php-extras": {
"flake": false,
"locked": {
"lastModified": 1573312690,
"narHash": "sha256-r4WyVbzvT0ra4Z6JywNBOw5RxOEYd6Qe2IpebHXkj1U=",
"owner": "arnested",
"repo": "php-extras",
"rev": "d410c5af663c30c01d461ac476d1cbfbacb49367",
"type": "github"
},
"original": {
"owner": "arnested",
"repo": "php-extras",
"type": "github"
}
},
"revealjs": {
"flake": false,
"locked": {
"lastModified": 1695738029,
"narHash": "sha256-Z9c9Q41jMkj/DyXOiZYyIa7Gmn8VB8yauTyWrSsT+ps=",
"owner": "hakimel",
"repo": "reveal.js",
"rev": "88fbfc5751ad01e3f6adee5819eabeb9e73c3757",
"type": "github"
},
"original": {
"owner": "hakimel",
"repo": "reveal.js",
"type": "github"
}
},
"root": {
"inputs": {
"disko": "disko",
"home-manager": "home-manager",
"nixpkgs": "nixpkgs",
"nixpkgs-stable": "nixpkgs-stable",
"stylix": "stylix"
"nix-doom-emacs": "nix-doom-emacs",
"nixpkgs": "nixpkgs_2",
"nixpkgs-stable": "nixpkgs-stable"
}
},
"stylix": {
"inputs": {
"base16": "base16",
"base16-alacritty": "base16-alacritty",
"base16-alacritty-yaml": "base16-alacritty-yaml",
"base16-fish": "base16-fish",
"base16-foot": "base16-foot",
"base16-helix": "base16-helix",
"base16-kitty": "base16-kitty",
"base16-tmux": "base16-tmux",
"base16-vim": "base16-vim",
"flake-compat": "flake-compat",
"gnome-shell": "gnome-shell",
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_2"
},
"rotate-text": {
"flake": false,
"locked": {
"lastModified": 1711224130,
"narHash": "sha256-RyOvyQASi5lvKLH5ISiGGkdX1eJxYF25aQALGfN9U0k=",
"owner": "danth",
"repo": "stylix",
"rev": "53d3e5d5b36a5227b906e00d7e884dcfb7852403",
"lastModified": 1322962747,
"narHash": "sha256-SOeOgSlcEIsKhUiYDJv0p+mLUb420s9E2BmvZQvZ0wk=",
"owner": "debug-ito",
"repo": "rotate-text.el",
"rev": "48f193697db996855aee1ad2bc99b38c6646fe76",
"type": "github"
},
"original": {
"owner": "danth",
"repo": "stylix",
"owner": "debug-ito",
"repo": "rotate-text.el",
"type": "github"
}
},
"sln-mode": {
"flake": false,
"locked": {
"lastModified": 1423727528,
"narHash": "sha256-XqkqPyEJuTtFslOz1fpTf/Klbd/zA7IGpzpmum/MGao=",
"owner": "sensorflo",
"repo": "sln-mode",
"rev": "0f91d1b957c7d2a7bab9278ec57b54d57f1dbd9c",
"type": "github"
},
"original": {
"owner": "sensorflo",
"repo": "sln-mode",
"type": "github"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"ts-fold": {
"flake": false,
"locked": {
"lastModified": 1695278494,
"narHash": "sha256-O4NcUC1u08W8ZslqoA/i+iTaLotKwheURXQWBxLLMFc=",
"owner": "jcs-elpa",
"repo": "ts-fold",
"rev": "70b2c79ff4daa7351d4e2917b0343b9a18d4d4f2",
"type": "github"
},
"original": {
"owner": "jcs-elpa",
"repo": "ts-fold",
"type": "github"
}
},
"ws-butler": {
"flake": false,
"locked": {
"lastModified": 1634511126,
"narHash": "sha256-c0y0ZPtxxICPk+eaNbbQf6t+FRCliNY54CCz9QHQ8ZI=",
"owner": "hlissner",
"repo": "ws-butler",
"rev": "572a10c11b6cb88293de48acbb59a059d36f9ba5",
"type": "github"
},
"original": {
"owner": "hlissner",
"repo": "ws-butler",
"type": "github"
}
}

View File

@@ -9,13 +9,13 @@
home-manager.url = "github:nix-community/home-manager/master";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
stylix.url = "github:danth/stylix";
disko.url = "github:nix-community/disko";
disko.inputs.nixpkgs.follows = "nixpkgs";
nix-doom-emacs.url = "github:nix-community/nix-doom-emacs";
};
outputs = inputs@{ self, nixpkgs, nixpkgs-stable, home-manager, stylix, disko, ... }:
outputs = inputs@{ self, nixpkgs, nixpkgs-stable, home-manager, disko, nix-doom-emacs, ... }:
let
# --- SYSTEM SETTINGS --- #
systemSettings = {
@@ -25,7 +25,9 @@
timezone = "America/New_York"; # Time Zone
locale = "en_US.UTF-8"; # Locale
diskoConfig = "luks-btrfs-subvolumes"; # Select the disko config that was used to partition drive
hardwareConfiguration = "qemu-vm"; # Select the hardware config from hardware directory
hwConfig = "oryp7"; # Select the hardware config from hardware directory
desktop = "dwm"; # Selected window manager or desktop environment
desktopType = "x11"; # x11 or wayland
};
# --- USER SETTINGS --- #
@@ -35,8 +37,6 @@
email = "balajsra@umich.edu"; # Email (used for certain configurations)
dotfilesDir = "~/.dotfiles"; # Absolute path of the local repo
theme = "dracula"; # Selected theme from themes directory
desktop = "gnome"; # Selected window manager or desktop environment
desktopType = "x11"; # x11 or wayland
browser = "vivaldi"; # Default browser
term = "kitty"; # Default terminal command
editor = "vim"; # Default editor
@@ -75,12 +75,12 @@
inherit pkgs;
modules = [
(./. + "/profiles" + ("/" + systemSettings.profile) + "/home.nix")
nix-doom-emacs.hmModule
];
extraSpecialArgs = {
inherit pkgs-stable;
inherit systemSettings;
inherit userSettings;
inherit (inputs) stylix;
};
};
};
@@ -97,7 +97,6 @@
inherit pkgs-stable;
inherit systemSettings;
inherit userSettings;
inherit (inputs) stylix;
};
};
};

49
hosts/oryp7.nix Normal file
View File

@@ -0,0 +1,49 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "uas" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp0s20f0u3u2i5.useDHCP = lib.mkDefault true;
# networking.interfaces.enp40s0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
##########################
# Manually Added Section #
##########################
hardware.system76.enableAll = true;
hardware.system76.kernel-modules.enable = true;
services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia = {
modesetting.enable = true;
powerManagement.enable = false;
powerManagement.finegrained = false;
open = false;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
prime = {
sync.enable = true;
intelBusId = "PCI:0:2:0";
nvidiaBusId = "PCI:1:0:0";
};
};
}

View File

@@ -6,8 +6,8 @@
{
imports = [
(../../hosts + "/${systemSettings.hardwareConfiguration}.nix")
(../../system/gui + "/${userSettings.desktop}.nix")
(../../hosts + "/${systemSettings.hwConfig}.nix")
(../../system/gui + "/${systemSettings.desktop}.nix")
../../system/hardware/default.nix
../../system/security/default.nix
../../system/utilities/default.nix
@@ -56,23 +56,19 @@
LC_TIME = systemSettings.locale;
};
users.groups.${userSettings.username} = {
name = userSettings.username;
gid = 1000;
};
users.users.${userSettings.username} = {
isNormalUser = true;
description = userSettings.name;
extraGroups = [ "networkmanager" "wheel" "input" "dialout" ];
extraGroups = [ "${userSettings.username}" "networkmanager" "wheel" "input" "dialout" ];
packages = [];
uid = 1000;
};
# environment.systemPackages = with pkgs; [
# ];
environment.shells = with pkgs; [ zsh ];
users.defaultUserShell = pkgs.zsh;
programs.zsh.enable = true;
fonts.fontDir.enable = true;
# xdg.portal = {
# enable = true;
# extraPortals = [

View File

@@ -12,33 +12,16 @@
imports = [
(../../user/browser + "/${userSettings.browser}.nix")
../../user/development/default.nix
(if userSettings.editor == "emacsclient" then ../../user/development/doom-emacs.nix else (../../user/development + "/${userSettings.editor}.nix"))
../../user/gaming/default.nix
../../user/launcher/default.nix
../../user/media/default.nix
../../user/productivity/default.nix
(../../user/terminal + "/${userSettings.term}.nix")
../../user/terminal/prompt.nix
../../user/utilities/default.nix
];
# home.packages = (with pkgs; [
# ]);
xdg.enable = true;
xdg.userDirs = {
enable = true;
createDirectories = true;
music = "${config.home.homeDirectory}/Media/Music";
videos = "${config.home.homeDirectory}/Media/Videos";
pictures = "${config.home.homeDirectory}/Media/Pictures";
templates = "${config.home.homeDirectory}/Templates";
download = "${config.home.homeDirectory}/Downloads";
documents = "${config.home.homeDirectory}/Documents";
desktop = null;
publicShare = null;
};
xdg.mime.enable = true;
xdg.mimeApps.enable = true;
home.sessionVariables = {
EDITOR = userSettings.editor;
SPAWNEDITOR = userSettings.spawnEditor;

19
system/gui/awesome.nix Normal file
View File

@@ -0,0 +1,19 @@
{ config, lib, pkgs, userSettings, ... }:
{
imports = [
./default.nix
./lightdm.nix
./x11.nix
];
services.xserver.windowManager.awesome = {
enable = true;
luaModules = with pkgs.luaPackages; [
luarocks
luadbi-mysql
];
};
services.xserver.displayManager.defaultSession = "none+awesome";
}

View File

@@ -2,7 +2,6 @@
{
imports = [
./x11.nix
./fonts.nix
];
}

View File

@@ -1,11 +1,126 @@
{ config, lib, pkgs, ... }:
{ config, lib, pkgs, userSettings, ... }:
{
imports = [
./default.nix
./lightdm.nix
];
services.xserver.windowManager.dwm.enable = true;
services.xserver.displayManager.defaultSession = "none+dwm";
services.xserver = {
enable = true;
xkb = {
layout = "us";
variant = "";
options = "";
};
windowManager.dwm = {
enable = true;
# Override dwm package with personal dwm-flexipatch config
package = (pkgs.dwm.overrideAttrs (finalAttrs: previousAttrs: {
pname = previousAttrs.pname + "-flexipatch";
version = "6.5";
src = (/home + "/${userSettings.username}" + /.config/dwm-flexipatch);
# Add dependencies for dwmipc / polybar communication patches
buildInputs = previousAttrs.buildInputs ++ (with pkgs; [
# Dependencies for swallow patch
xorg.libxcb
xorg.xcbutil
# Dependencies for dwm-ipc patch
yajl
jsoncpp
]);
}));
};
displayManager = {
defaultSession = "none+dwm";
lightdm.enable = true;
};
};
# Picom Compositor
services.picom.enable = true;
# Night Light
services.redshift = {
enable = true;
package = pkgs.redshift;
executable = "/bin/redshift-gtk";
};
services.geoclue2 = {
enable = true;
};
location.provider = "geoclue2";
# File Manager
programs.thunar = {
enable = true;
plugins = with pkgs.xfce; [
thunar-volman
thunar-archive-plugin
thunar-media-tags-plugin
];
};
environment.systemPackages = with pkgs; [
# X11 Utilities
arandr
autorandr
unclutter-xfixes
# Wallpaper
nitrogen
# Terminal
kitty
# System Monitor
btop
qdirstat
gnome.gnome-disk-utility
# Media / Volume Controls
playerctl
pavucontrol
# Polybar Media Module Dependency
zscroll
# Notification Daemon
deadd-notification-center
# Automounter
udiskie
# Power Management
xfce.xfce4-power-manager
# Polybar with DWM Module
(polybar.overrideAttrs (finalAttrs: previousAttrs: {
pname = previousAttrs.pname + "-dwm-module";
version = "3.5.2";
src = fetchFromGitHub {
owner = "mihirlad55";
repo = "polybar-dwm-module";
rev = "0c3e139ac54e081c06ef60548927e679d80d4297";
hash = "sha256-ZL7yDGGiZFGgVXZXS+d3xUDhOOd5lp2mo2ipFN92mIY=";
fetchSubmodules = true;
};
# Extra dependencies for dwm module
buildInputs = previousAttrs.buildInputs ++ [
jsoncpp
git
libpulseaudio
];
# Remove patches applied by default polybar package
patches = [];
}))
];
}

View File

@@ -1,10 +1,17 @@
{ config, lib, pkgs, ... }:
{
fonts.fontDir.enable = true;
fonts.packages = with pkgs; [
corefonts
powerline
font-awesome
ubuntu_font_family
font-awesome
nerdfonts
noto-fonts-color-emoji
powerline
ipafont
baekmuk-ttf
nerdfonts
];
}

View File

@@ -1,10 +1,16 @@
{ config, lib, pkgs, ... }:
{ config, lib, pkgs, systemSettings, ... }:
{
imports = [
./default.nix
];
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
services.xserver = {
displayManager.gdm = {
enable = true;
wayland = (if systemSettings.desktopType == "x11" then false else true);
};
desktopManager.gnome.enable = true;
};
}

18
system/gui/kde.nix Normal file
View File

@@ -0,0 +1,18 @@
{ config, lib, pkgs, systemSettings, ... }:
{
imports = [
./default.nix
];
services.xserver.displayManager = {
sddm = {
enable = true;
wayland.enable = (if systemSettings.desktopType == "x11" then false else true);
};
defaultSession = (if systemSettings.desktopType == "x11" then "plasmax11" else "plasma");
};
services.desktopManager.plasma6.enable = true;
}

View File

@@ -1,5 +0,0 @@
{ config, lib, pkgs, ... }:
{
services.xserver.displayManager.lightdm.enable = true;
}

View File

@@ -1,12 +0,0 @@
{ config, lib, pkgs, ... }:
{
services.xserver = {
enable = true;
xkb = {
layout = "us";
variant = "";
options = "";
};
};
}

View File

@@ -11,4 +11,8 @@
pulse.enable = true;
jack.enable = true;
};
environment.systemPackages = with pkgs; [
playerctl
pavucontrol
];
}

View File

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

View File

@@ -1,8 +1,20 @@
{ config, lib, pkgs, ... }:
{
# Printing
services.printing.enable = true;
services.avahi.enable = true;
services.avahi.nssmdns4 = true;
services.avahi.openFirewall = true;
# Scanning
services.saned.enable = true;
environment.systemPackages = with pkgs; [
# HP Printer Drivers
hplip
# Scanner Frontend
libsForQt5.skanlite
];
}

View File

@@ -4,5 +4,6 @@
imports = [
./firewall.nix
./gpg.nix
./polkit.nix
];
}

View File

@@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
security.polkit.enable = true;
environment.systemPackages = with pkgs; [
polkit_gnome
];
}

View File

@@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
environment.systemPackages = with pkgs; [
btrbk
];
}

View File

@@ -0,0 +1,7 @@
{ config, lib, pkgs, userSettings, ... }:
{
environment.systemPackages = with pkgs; [
rclone
];
}

View File

@@ -5,5 +5,11 @@
./dbus.nix
./gnome-keyring.nix
./miscellaneous.nix
./gaming.nix
./backups.nix
./user-shell.nix
./samba.nix
./cloud.nix
./phone.nix
];
}

View File

@@ -0,0 +1,15 @@
{ config, lib, pkgs, ... }:
{
programs.gamemode = {
enable = true;
# settings = {};
# enableRenice = true;
};
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
gamescopeSession.enable = true;
};
}

View File

@@ -10,5 +10,9 @@
rsync
cryptsetup
home-manager
tree
btop
openssh
gh
];
}

View File

@@ -0,0 +1,10 @@
{ config, lib, pkgs, systemSettings, ... }:
{
programs.kdeconnect = {
enable = true;
package = (if systemSettings.desktop == "gnome"
then pkgs.gnomeExtensions.gsconnect
else pkgs.libsForQt5.kdeconnect-kde);
};
}

View File

@@ -0,0 +1,32 @@
{ config, lib, pkgs, userSettings, ... }:
{
environment.systemPackages = with pkgs; [
cifs-utils
lxqt.lxqt-policykit # provides a default authentification client for policykit
];
fileSystems."/mnt/fileserver" = {
device = "//192.168.12.5/fileserver";
fsType = "cifs";
options =
let
# this line prevents hanging on network split
automount_opts = "x-systemd.automount,noauto,x-systemd.idle-timeout=60,x-systemd.device-timeout=5s,x-systemd.mount-timeout=5s";
username = userSettings.username;
uid = config.users.users.${username}.uid;
gid = config.users.groups.${username}.gid;
in [ "${automount_opts},credentials=/etc/nixos/smb-secrets,uid=${toString uid},gid=${toString gid}" ];
# Make sure to create `/etc/nixos/smb-secrets` with following content
# where domain can be optional
# username=<USERNAME>
# domain=<DOMAIN>
# password=<PASSWORD>
};
# Samba discovery of machines and shares
networking.firewall.extraCommands = ''iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns'';
# GVFS
services.gvfs.enable = true;
}

View File

@@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
environment.shells = with pkgs; [ zsh ];
users.defaultUserShell = pkgs.zsh;
programs.zsh.enable = true;
}

8
user/development/cli.nix Normal file
View File

@@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
home.packages = (with pkgs; [
git
just
]);
}

View File

@@ -1,7 +1,8 @@
{ config, lib, pkgs, ... }:
{ config, lib, pkgs, userSettings, ... }:
{
imports = [
./vscode.nix
./cli.nix
];
}

View File

@@ -0,0 +1,8 @@
{ config, lib, pkgs, userSettings, ... }:
{
programs.doom-emacs = {
enable = true;
doomPrivateDir = (/home + "/${userSettings.username}" + /.config/doom-emacs-config);
};
}

7
user/development/vim.nix Normal file
View File

@@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
home.packages = (with pkgs; [
vim
]);
}

View File

@@ -1,12 +1,6 @@
{ config, lib, pkgs, ... }:
{
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
gamescopeSession.enable = true;
};
home.packages = (with pkgs; [
bottles
lutris

View File

@@ -1,15 +1,10 @@
{ config, lib, pkgs, ... }:
{
programs.gamemode = {
enable = true;
# settings = {};
# enableRenice = true;
};
home.packages = (with pkgs; [
mangohud
goverlay
vkbasalt
gamescope
]);
}

View File

@@ -4,5 +4,7 @@
home.packages = (with pkgs; [
blender
obs-studio
freecad
sweethome3d.application
]);
}

View File

@@ -5,5 +5,6 @@
gimp
libsForQt5.kdenlive
ffmpeg
audacity
]);
}

View File

@@ -8,5 +8,8 @@
pocket-casts
spotify
spicetify-cli
ani-cli
mangal
calibre
]);
}

View File

@@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
environment.systemPackages = with pkgs; [
qalculate-gtk
octave
];
}

8
user/terminal/prompt.nix Normal file
View File

@@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
home.packages = (with pkgs; [
starship
krabby
]);
}

View File

@@ -7,5 +7,8 @@
./file-syncing.nix
./keyboard-configuration.nix
./passwords.nix
./xdg.nix
./screenshot.nix
./downloads.nix
];
}

View File

@@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
home.packages = (with pkgs; [
qbittorrent-qt5
]);
}

View File

@@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
home.packages = (with pkgs; [
flameshot
]);
}

24
user/utilities/xdg.nix Normal file
View File

@@ -0,0 +1,24 @@
{ config, lib, pkgs, ... }:
{
xdg.enable = true;
xdg.userDirs = {
enable = true;
createDirectories = true;
music = "${config.home.homeDirectory}/Media/Music";
videos = "${config.home.homeDirectory}/Media/Videos";
pictures = "${config.home.homeDirectory}/Media/Pictures";
templates = "${config.home.homeDirectory}/Templates";
download = "${config.home.homeDirectory}/Downloads";
documents = "${config.home.homeDirectory}/Documents";
desktop = null;
publicShare = null;
extraConfig = {
XDG_GAME_DIR = "${config.home.homeDirectory}/Games";
XDG_CONFIG_HOME = "${config.home.homeDirectory}/.config";
XDG_CACHE_HOME = "${config.home.homeDirectory}/.cache";
};
};
xdg.mime.enable = true;
xdg.mimeApps.enable = true;
}