adding syl to the configurations
This commit is contained in:
parent
6f0633de2c
commit
d4daad8279
|
@ -97,8 +97,6 @@ with lib;
|
||||||
nssmdns = true;
|
nssmdns = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.portals.extraPortals = [ "xdg-desktop-portal-kde" ];
|
|
||||||
|
|
||||||
# Enable sound.
|
# Enable sound.
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
[
|
[
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
/etc/nixos/cachix.nix
|
/etc/nixos/cachix.nix
|
||||||
|
../../packages/base-packages.nix
|
||||||
|
../../packages/desktop-packages.nix
|
||||||
|
../../modules/base.nix
|
||||||
|
../../modules/emacs.nix
|
||||||
|
../../modules/desktop.nix
|
||||||
];
|
];
|
||||||
nix = {
|
|
||||||
extraOptions = "experimental-features = nix-command flakes";
|
|
||||||
package = pkgs.nixVersions.unstable;
|
|
||||||
};
|
|
||||||
|
|
||||||
networking.hostName = "syl"; # Define your hostname.
|
networking.hostName = "syl"; # Define your hostname.
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
|
@ -19,35 +19,14 @@
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
boot.initrd.kernelModules = [ "i915" ];
|
boot.initrd.kernelModules = [ "i915" ];
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
|
||||||
|
|
||||||
boot.kernelParams = [ "mem_sleep_default=deep" "nvme.noacpi=1" ];
|
boot.kernelParams = [ "mem_sleep_default=deep" "nvme.noacpi=1" ];
|
||||||
hardware.cpu.intel.updateMicrocode =
|
hardware.cpu.intel.updateMicrocode =
|
||||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
|
||||||
hardware.acpilight.enable = lib.mkDefault true;
|
hardware.acpilight.enable = lib.mkDefault true;
|
||||||
|
|
||||||
networking.interfaces.wlp170s0.useDHCP = true;
|
networking.interfaces.wlp170s0.useDHCP = true;
|
||||||
|
|
||||||
virtualisation.podman.enable = true;
|
|
||||||
# virtualisation.docker.enable = true;
|
|
||||||
virtualisation.libvirtd = {
|
|
||||||
enable = true;
|
|
||||||
qemu = {
|
|
||||||
runAsRoot = false;
|
|
||||||
ovmf = {
|
|
||||||
enable = true;
|
|
||||||
packages = [
|
|
||||||
pkgs.OVMFFull.fd
|
|
||||||
pkgs.pkgsCross.aarch64-multiplatform.OVMF.fd
|
|
||||||
];
|
|
||||||
};
|
|
||||||
swtpm.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware.uinput.enable = true;
|
hardware.uinput.enable = true;
|
||||||
|
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
|
|
||||||
nixpkgs.config.packageOverrides = pkgs: {
|
nixpkgs.config.packageOverrides = pkgs: {
|
||||||
|
@ -65,74 +44,6 @@
|
||||||
|
|
||||||
services.xserver.videoDrivers = ["intel"];
|
services.xserver.videoDrivers = ["intel"];
|
||||||
|
|
||||||
boot.supportedFilesystems = [ "ntfs" ];
|
|
||||||
services.xserver = {
|
|
||||||
enable = true;
|
|
||||||
autorun = false;
|
|
||||||
# windowManager.awesome = {
|
|
||||||
# enable = true;
|
|
||||||
# package = pkgs.awesome;
|
|
||||||
# };
|
|
||||||
displayManager = {
|
|
||||||
startx.enable = true;
|
|
||||||
sddm = {
|
|
||||||
enable = false;
|
|
||||||
};
|
|
||||||
session = [
|
|
||||||
{
|
|
||||||
manage = "desktop";
|
|
||||||
name = "Hyprland";
|
|
||||||
start = ''
|
|
||||||
/home/chris/bin/hyprland &
|
|
||||||
waitPID=$!
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
desktopManager.plasma5 = {
|
|
||||||
enable = true;
|
|
||||||
runUsingSystemd = true;
|
|
||||||
};
|
|
||||||
# desktopManager.gnome.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.greetd = {
|
|
||||||
enable = true;
|
|
||||||
settings = rec {
|
|
||||||
initial_session = {
|
|
||||||
command = "dbus-run-session startplasma-wayland";
|
|
||||||
user = "chris";
|
|
||||||
};
|
|
||||||
default_session = {
|
|
||||||
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time -r --window-padding 2 --cmd 'dbus-run-session startplasma-wayland'";
|
|
||||||
user = "greeter";
|
|
||||||
};
|
|
||||||
plasma_session = {
|
|
||||||
command = "dbus-run-session startplasma-wayland";
|
|
||||||
user = "chris";
|
|
||||||
};
|
|
||||||
hyprland_session = {
|
|
||||||
command = "/home/chris/bin/hyprland";
|
|
||||||
user = "chris";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.etc."greetd/environments".text = ''
|
|
||||||
/home/chris/bin/hyprland
|
|
||||||
fish
|
|
||||||
bash
|
|
||||||
dbus-run-session startplasma-wayland
|
|
||||||
'';
|
|
||||||
|
|
||||||
programs.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.avahi = {
|
|
||||||
enable = true;
|
|
||||||
nssmdns = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Configure keymap in X11
|
# Configure keymap in X11
|
||||||
services.xserver.layout = "us";
|
services.xserver.layout = "us";
|
||||||
|
@ -151,22 +62,6 @@
|
||||||
services.fprintd.enable = true;
|
services.fprintd.enable = true;
|
||||||
# programs.qt5ct.enable = true;
|
# programs.qt5ct.enable = true;
|
||||||
|
|
||||||
# Enable sound.
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
services.pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
alsa.support32Bit = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
wireplumber.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Needed for some pipewire progs and other gtk apps
|
|
||||||
programs.dconf.enable = true;
|
|
||||||
|
|
||||||
# Turn on flatpak
|
|
||||||
services.flatpak.enable = true;
|
|
||||||
|
|
||||||
# Some other things
|
# Some other things
|
||||||
services.thermald.enable = true;
|
services.thermald.enable = true;
|
||||||
services.power-profiles-daemon.enable = false;
|
services.power-profiles-daemon.enable = false;
|
||||||
|
@ -193,201 +88,16 @@
|
||||||
# Enable touchpad support (enabled default in most desktopManager).
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
services.xserver.libinput.enable = true;
|
services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
# Set default shell to be dash for speed
|
|
||||||
# Apparently this is bad because a lot of nix relies on bash
|
|
||||||
# environment.binsh = "${pkgs.dash}/bin/dash";
|
|
||||||
|
|
||||||
environment.homeBinInPath = true;
|
|
||||||
programs.fish.enable = true;
|
|
||||||
programs.zsh.enable = true;
|
|
||||||
|
|
||||||
environment.variables = {
|
|
||||||
EDITOR = "emacsclient -t -a";
|
|
||||||
VISUAL = "emacsclient -c -a";
|
|
||||||
# Fixing Qt apps in other environments
|
|
||||||
# Thought I needed this but apparently they are working fine without it.
|
|
||||||
# QT_XCB_GL_INTEGRATION = "xcb_egl";
|
|
||||||
# QT_QPA_PLATFORM_PLUGIN_PATH = "${pkgs.qt5.qtbase.bin}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms";
|
|
||||||
VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl");
|
|
||||||
# QT_QPA_PLATFORMTHEME = "qt5ct";
|
|
||||||
# QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
|
||||||
# QT_QPA_PLATFORM = "wayland;xcb";
|
|
||||||
# QT_AUTO_SCREEN_SCALE_FACTOR = "1";
|
|
||||||
};
|
|
||||||
|
|
||||||
# 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.chris = {
|
users.users.chris = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "adbusers" "wheel" "networkmanager" "input" "uinput" ];
|
extraGroups = [ "adbusers" "wheel" "networkmanager" "input" "uinput" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.adb.enable = true;
|
|
||||||
services.udev.packages = [ pkgs.android-udev-rules ];
|
|
||||||
|
|
||||||
programs.partition-manager.enable = true;
|
programs.partition-manager.enable = true;
|
||||||
programs.kdeconnect.enable = true;
|
programs.kdeconnect.enable = true;
|
||||||
|
|
||||||
security.pam.services.kwallet = {
|
|
||||||
name = "kwallet";
|
|
||||||
enableKwallet = true;
|
|
||||||
};
|
|
||||||
security.pam.services.sddm.enableKwallet = true;
|
|
||||||
|
|
||||||
# virtualisation.waydroid.enable = true;
|
# virtualisation.waydroid.enable = true;
|
||||||
|
|
||||||
# nixpkgs.config.firefox.enableTridactyl = true;
|
|
||||||
|
|
||||||
import ../../pkgs/base-packges.nix;
|
|
||||||
import ../../pkgs/desktop-packges.nix;
|
|
||||||
|
|
||||||
services.emacs = {
|
|
||||||
enable = true;
|
|
||||||
package = with pkgs; ((emacsPackagesFor emacsPgtk).emacsWithPackages
|
|
||||||
(epkgs: with epkgs; [
|
|
||||||
vterm
|
|
||||||
magit
|
|
||||||
pdf-tools
|
|
||||||
consult-eglot
|
|
||||||
org
|
|
||||||
org-roam
|
|
||||||
command-log-mode
|
|
||||||
all-the-icons
|
|
||||||
doom-modeline
|
|
||||||
doom-themes
|
|
||||||
rainbow-delimiters
|
|
||||||
smartparens
|
|
||||||
aggressive-indent
|
|
||||||
adaptive-wrap
|
|
||||||
which-key
|
|
||||||
exec-path-from-shell
|
|
||||||
no-littering
|
|
||||||
tree-sitter
|
|
||||||
tree-sitter-langs
|
|
||||||
rustic
|
|
||||||
evil
|
|
||||||
evil-collection
|
|
||||||
general
|
|
||||||
evil-escape
|
|
||||||
evil-surround
|
|
||||||
evil-org
|
|
||||||
org-super-agenda
|
|
||||||
websocket
|
|
||||||
org-roam-ui
|
|
||||||
org-present
|
|
||||||
org-modern
|
|
||||||
org-re-reveal
|
|
||||||
org-re-reveal-ref
|
|
||||||
org-re-reveal-citeproc
|
|
||||||
ox-reveal
|
|
||||||
oer-reveal
|
|
||||||
ox-spectacle
|
|
||||||
unicode-fonts
|
|
||||||
emojify
|
|
||||||
undo-tree
|
|
||||||
visual-fill-column
|
|
||||||
toc-org
|
|
||||||
pulsar
|
|
||||||
vertico
|
|
||||||
consult
|
|
||||||
marginalia
|
|
||||||
all-the-icons-completion
|
|
||||||
embark
|
|
||||||
embark-consult
|
|
||||||
corfu
|
|
||||||
orderless
|
|
||||||
cape
|
|
||||||
devdocs
|
|
||||||
yasnippet
|
|
||||||
tempel
|
|
||||||
projectile
|
|
||||||
simple-httpd
|
|
||||||
avy
|
|
||||||
evil-avy
|
|
||||||
ace-link
|
|
||||||
ace-window
|
|
||||||
helpful
|
|
||||||
format-all
|
|
||||||
web-mode
|
|
||||||
lua-mode
|
|
||||||
nix-mode
|
|
||||||
cmake-mode
|
|
||||||
fennel-mode
|
|
||||||
yaml-mode
|
|
||||||
docker
|
|
||||||
docker-tramp
|
|
||||||
fish-mode
|
|
||||||
markdown-mode
|
|
||||||
qml-mode
|
|
||||||
csv-mode
|
|
||||||
restclient
|
|
||||||
ob-restclient
|
|
||||||
dart-mode
|
|
||||||
flutter
|
|
||||||
hover
|
|
||||||
direnv
|
|
||||||
all-the-icons-dired
|
|
||||||
dired-single
|
|
||||||
dired-rainbow
|
|
||||||
diredfl
|
|
||||||
dired-rsync
|
|
||||||
fd-dired
|
|
||||||
ledger-mode
|
|
||||||
org-msg
|
|
||||||
calfw
|
|
||||||
calfw-org
|
|
||||||
calfw-ical
|
|
||||||
org-caldav
|
|
||||||
org-wild-notifier
|
|
||||||
magit
|
|
||||||
sly
|
|
||||||
nov
|
|
||||||
elfeed
|
|
||||||
elfeed-org
|
|
||||||
bongo
|
|
||||||
emms
|
|
||||||
transmission
|
|
||||||
hass
|
|
||||||
pass
|
|
||||||
password-store
|
|
||||||
password-store-otp
|
|
||||||
plz
|
|
||||||
ement
|
|
||||||
mastodon
|
|
||||||
qrencode
|
|
||||||
gcmh
|
|
||||||
use-package
|
|
||||||
esh-autosuggest
|
|
||||||
pkgs.mu
|
|
||||||
]));
|
|
||||||
defaultEditor = true;
|
|
||||||
};
|
|
||||||
services.samba-wsdd.enable = true;
|
|
||||||
services.samba = {
|
|
||||||
enable = true;
|
|
||||||
extraConfig = ''
|
|
||||||
workgroup = WORKGROUP
|
|
||||||
server string = smbnix
|
|
||||||
netbios name = smbnix
|
|
||||||
security = user
|
|
||||||
#use sendfile = yes
|
|
||||||
#max protocol = smb2
|
|
||||||
# note: localhost is the ipv6 localhost ::1
|
|
||||||
hosts allow = 192.168.0. 127.0.0.1 localhost
|
|
||||||
hosts deny = 0.0.0.0/0
|
|
||||||
guest account = nobody
|
|
||||||
map to guest = bad user
|
|
||||||
'';
|
|
||||||
shares = {
|
|
||||||
public = {
|
|
||||||
path = "/home/chris/Public";
|
|
||||||
"read only" = false;
|
|
||||||
browsable = true;
|
|
||||||
"guest ok" = true;
|
|
||||||
comment = "Share";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
# started in user sessions.
|
# started in user sessions.
|
||||||
# programs.mtr.enable = true;
|
# programs.mtr.enable = true;
|
||||||
|
|
Loading…
Reference in a new issue