Merge branch 'master' of github.com:ahub2/my-scripts

master
Alex 2022-12-15 22:56:27 -06:00
commit 258e165b47
5 changed files with 318 additions and 0 deletions

View File

@ -0,0 +1,200 @@
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
#./gaming-configuration.nix
./sway-configuration.nix
];
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "22.05"; # Did you read the comment?
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
system.copySystemConfiguration = true;
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "bismarck"; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
#networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
services.connman.enable = true;
networking.wireless.iwd.enable = true;
services.connman.wifi.backend = "iwd";
# Open ports in the firewall.
networking.firewall.allowedTCPPorts = [ 67 68 53 ];
networking.firewall.allowedTCPPortRanges = [
{ from = 56881; to = 56889; }
{ from = 27036; to = 27037; }
];
# networking.firewall.allowedUDPPorts = [ ... ];
networking.firewall.allowedUDPPortRanges = [
{ from = 27000; to = 27036; }
];
# Or disable the firewall altogether.
# networking.firewall.enable = false;
# Set your time zone.
time.timeZone = "America/Chicago";
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
console = {
font = "Lat2-Terminus16";
#keyMap = "us";
useXkbConfig = true; # use xkbOptions in tty.
};
#Define a user account. Don't forget to set a password with passwd.
users.users.alex = {
isNormalUser = true;
shell = pkgs.zsh;
extraGroups = [ "wheel" ]; # Enable sudo for the user.
packages = with pkgs; [
librewolf
yt-dlp
zathura
sfeed
chromium
brave
keepassxc
];
};
security.sudo.extraRules = [{
runAs = "root";
groups = [ "wheel" ];
commands = [{
command = "/run/current-system/sw/bin/poweroff";
options = [ "NOPASSWD" ];
} {
command = "/run/current-system/sw/bin/reboot";
options = [ "NOPASSWD" ];
}];
}];
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
programs.mtr.enable = true;
services.pcscd.enable = true;
programs.gnupg.agent = {
enable = true;
pinentryFlavor = "curses";
enableSSHSupport = true;
};
environment.systemPackages = with pkgs; [
glib # gsettings
dracula-theme # gtk theme
gnome3.adwaita-icon-theme # default gnome cursors
zsh
noto-fonts
noto-fonts-extra
noto-fonts-emoji
noto-fonts-cjk-sans
nerdfonts
zip
unzip
p7zip
pavucontrol
pamixer
pulsemixer
imagemagick
ffmpegthumbnailer
file
viu
bat
pavucontrol
neovim
pfetch
htop-vim
lf
mpv
mpd
ncmpcpp
libnotify
lynx
mutt-wizard
pass
neomutt
notmuch
isync
pinentry-curses
connman-gtk
openssl
git
shellcheck
jq
monero-cli
bc
gnome.zenity
cura
udisks2
udiskie
python3
python3.pkgs.pip
chafa
];
fonts.fonts = with pkgs; [
noto-fonts
noto-fonts-extra
noto-fonts-emoji
noto-fonts-cjk-sans
nerdfonts
];
#enable flatpak
services.flatpak.enable = true;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
services.pipewire.wireplumber.enable = true;
# xdg-desktop-portal works by exposing a series of D-Bus interfaces
# known as portals under a well-known name
# (org.freedesktop.portal.Desktop) and object path
# (/org/freedesktop/portal/desktop).
# The portal interfaces include APIs for file access, opening URIs,
# printing and others.
services.dbus.enable = true;
xdg.portal = {
enable = true;
wlr.enable = true;
# gtk portal needed to make gtk apps happy
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
gtkUsePortal = true;
};
}

View File

@ -0,0 +1,29 @@
{ config, pkgs, lib, ... }: {
#enable nonfree packages
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
lutris
radeontop
];
#add 32bit support for graphics
hardware.opengl.driSupport32Bit = true;
#nixpkgs.config.packageOverrides = pkgs: {
# steam = pkgs.steam.override {
# extraPkgs = pkgs: with pkgs; [
# libgdiplus
# libpng
# ];
# };
#};
programs.steam = {
enable = false;
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
};
}

View File

@ -0,0 +1,58 @@
#!/bin/sh
mkdir ~/docs/
mkdir ~/dl/
mkdir ~/media/
mkdir -p ~/.local/share/gnupg/
mkdir -p ~/.config/mpd/playlists
mkdir -p ~/.local/share/desktop
#setup .zprofile and zsh history file
cd ~ || return
ln -s ~/.profile ~/.zprofile
mkdir -p ~/.cache/zsh
touch ~/.cache/zsh/history
<<<<<<< HEAD
sh ~/.local/scripts/install.sh add-repos ~/.local/installers/nixos/repos.list
#link rofi themes directory so that theming works
mkdir -p "$HOME"/.local/share/rofi/
ln -s "$HOME"/.local/src/base16-rofi/themes/ "$HOME"/.local/share/rofi/themes
=======
#sh ~/.local/scripts/install.sh add-repos ~/.local/installers/nixos/repos.list
#link rofi themes directory so that theming works
#mkdir -p "$HOME"/.local/share/rofi/
#ln -s "$HOME"/.local/src/base16-rofi/themes/ "$HOME"/.local/share/rofi/themes
>>>>>>> tmp
#set limits for esync
#sudo sh -c "echo '$USER hard nofile 524288' >> /etc/security/limits.conf"
#set limits for monero
#sudo sh -c "echo '$USER hard memlock 2048' >> /etc/security/limits.conf"
#sudo sh -c "echo '$USER hard memlock 2048' >> /etc/security/limits.conf"
#fix issue with arduino ide and tiling wms
#sudo sh -c 'echo "export _JAVA_AWT_WM_NONREPARENTING=1" >> /etc/profile.d/jre.sh'
#download collapse OS
mkdir -p "$HOME"/.local/src/
cd "$HOME"/.local/src/
wget http://collapseos.org/files/collapseos-latest.tar.gz
cd -
#set wallpaper
<<<<<<< HEAD
ln -s ~/media/img/wallpapers/alena-aenami-eclipse-1k.jpg ~/.config/wall
=======
#ln -s ~/media/img/wallpapers/alena-aenami-eclipse-1k.jpg ~/.config/wall
>>>>>>> tmp
#link Xresources for xwayland
ln -s ~/.config/Xresources ~/.Xdefaults

View File

@ -0,0 +1,3 @@
https://github.com/aarowill/base16-alacritty.git
https://github.com/rkubosz/base16-sway.git
https://gitlab.com/jordiorlando/base16-rofi.git

View File

@ -0,0 +1,28 @@
{ config, pkgs, lib, ... }: {
environment.systemPackages = with pkgs; [
wayland
sway
waylock
swayidle
grim
slurp
wl-clipboard
mako
swaybg
waybar
xwayland
gammastep
bemenu
imv
foot
autotiling
];
# enable sway window manager
programs.sway = {
enable = true;
wrapperFeatures.gtk = true;
};
}