oizys/configuration.nix

157 lines
3.2 KiB
Nix
Raw Normal View History

2022-11-03 18:24:52 -05:00
{ lib, config, pkgs, ... }:
2020-10-24 22:55:15 -05:00
{
2022-11-03 18:24:52 -05:00
imports =
[
2022-11-08 23:38:25 -06:00
<nixpkgs/nixos/modules/installer/virtualbox-demo.nix>
2022-11-03 18:24:52 -05:00
];
2022-11-08 23:38:25 -06:00
2022-11-03 18:24:52 -05:00
nix.package = pkgs.nixUnstable;
2022-11-10 20:06:35 -06:00
nixpkgs.config.allowUnfree = true;
2022-11-03 18:24:52 -05:00
nix.extraOptions = ''
experimental-features = nix-command flakes
'';
2022-11-10 20:06:35 -06:00
2022-11-10 13:50:17 -06:00
# todo import from a different file
2022-11-09 13:45:01 -06:00
nixpkgs.overlays = [
2022-11-10 11:54:59 -06:00
(self: super:
2022-11-09 13:45:01 -06:00
{
2022-11-10 20:06:35 -06:00
wavebox = super.wavebox.overrideAttrs
(old: {
version = "10.107.10";
src = super.fetchurl {
url = "https://download.wavebox.app/stable/linux/tar/Wavebox_10.107.10-2.tar.gz";
sha256 = "sha256-cbcAmnq9rJlQy6Y+06G647R72HWcK97KgSsYgusSB58=";
};
nativeBuildInputs = with pkgs; [
autoPatchelfHook
makeWrapper
qt5.wrapQtAppsHook
];
buildInputs = with pkgs.xorg; [
libXdmcp
libXScrnSaver
libXtst
libXdamage
] ++
(with pkgs; [
alsa-lib
gtk3
nss
mesa
]);
postFixup = ''
# make xdg-open overrideable at runtime
makeWrapper $out/opt/wavebox/wavebox $out/bin/wavebox \
--suffix PATH : ${super.xdg-utils}/bin
'';
});
2022-11-10 20:09:49 -06:00
2022-11-10 20:06:35 -06:00
picom = super.picom.overrideAttrs (o: {
src = pkgs.fetchFromGitHub {
repo = "picom";
owner = "ibhagwan";
rev = "44b4970f70d6b23759a61a2b94d9bfb4351b41b1";
sha256 = "0iff4bwpc00xbjad0m000midslgx12aihs33mdvfckr75r114ylh";
2022-11-10 11:51:16 -06:00
};
2022-11-09 13:45:01 -06:00
});
2022-11-10 20:06:35 -06:00
})
2022-11-09 13:45:01 -06:00
];
2022-11-03 18:24:52 -05:00
# networking.hostName = "nixos"; # Define your hostname.
2022-11-10 11:54:59 -06:00
time.timeZone = "America/Chicago";
2022-11-03 18:24:52 -05:00
programs.zsh.enable = true;
2020-10-24 22:55:15 -05:00
2022-11-10 11:54:59 -06:00
# overwrite demo as default login
2022-11-10 20:09:49 -06:00
services.xserver = {
enable = true;
displayManager.autoLogin.enable = lib.mkForce false;
windowManager.qtile.enable = true;
};
2022-11-03 18:24:52 -05:00
# Define a user account. Don't forget to set a password with passwd.
2022-11-10 20:09:49 -06:00
users = {
defaultUserShell = pkgs.zsh;
users.daylin = {
shell = pkgs.zsh;
isNormalUser = true;
extraGroups = [ "wheel" ]; # Enable sudo for the user.
packages = with pkgs; [
];
};
2022-11-03 18:24:52 -05:00
};
2022-11-11 09:20:51 -06:00
fonts.fonts = with pkgs; [
noto-fonts
noto-fonts-emoji
noto-fonts-extra
(nerdfonts.override { fonts = [ "FiraCode" "FiraMono" ]; })
];
2022-11-10 20:09:49 -06:00
# for compatibility add zsh to list of /etc/shells
environment.shells = with pkgs; [ zsh ];
2020-11-08 01:01:15 -06:00
environment.systemPackages = with pkgs; [
2022-11-09 13:19:54 -06:00
2022-11-03 18:24:52 -05:00
fuse
zsh
wget
2022-11-04 11:53:59 -05:00
gnumake
gcc
2022-11-03 18:24:52 -05:00
git
2022-11-04 11:53:59 -05:00
2022-11-08 23:58:31 -06:00
vim
2022-11-04 11:13:49 -05:00
neovim
2022-11-09 00:17:54 -06:00
starship
2022-11-08 23:58:31 -06:00
gh
2022-11-03 18:24:52 -05:00
nixpkgs-fmt
2022-11-10 13:50:22 -06:00
xdotool
2022-11-04 11:13:49 -05:00
wezterm
2022-11-10 13:50:22 -06:00
eww
rofi
dunst
2022-11-10 20:06:35 -06:00
picom
2022-11-10 13:50:22 -06:00
2022-11-09 13:45:01 -06:00
(python3.withPackages (p: with p;
[ pynvim ]))
2022-11-10 11:51:16 -06:00
2022-11-10 13:50:17 -06:00
firefox
2022-11-10 11:51:16 -06:00
wavebox
2022-11-10 13:50:22 -06:00
2022-11-10 13:50:17 -06:00
(vivaldi.override {
proprietaryCodecs = true;
enableWidevine = false;
})
go
rustup
2022-11-09 13:45:01 -06:00
];
2022-11-11 09:20:51 -06:00
environment.etc = {
issue.source = ./etc/issue;
};
2022-11-09 13:45:01 -06:00
environment.variables = {
NIX_LD_LIBRARY_PATH = with pkgs; lib.makeLibraryPath [
stdenv.cc.cc
openssl
zlib # for delta
fuse # for libfuse/Neovim Appimage
];
NIX_LD = lib.fileContents "${pkgs.stdenv.cc}/nix-support/dynamic-linker";
};
}