#g 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, ... }: let colors = config.colors; schema = pkgs.gsettings-desktop-schemas; datadir = "${schema}/share/gsettings-schemas/${schema.name}"; in { programs.droidcam.enable = true; programs.sway = { enable = true; wrapperFeatures.gtk = true; extraPackages = with pkgs; [ bemenu brightnessctl gammastep grim i3status-rust kanshi mako picom slurp swayidle swaylock swaynotificationcenter swayr wf-recorder wofi ]; extraSessionCommands = ""; }; xdg.portal.enable = true; boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ]; colors = { background = "#282a36"; foreground = "#f8f8f2"; black = "#1E2029"; red = "#ff5555"; green = "#50fa7b"; yellow = "#f1fa8c"; cyan = "#8be9fd"; magenta = "#bd93f9"; blue = "#61bfff"; white = "#ffffff"; }; environment = { etc = { "sway/config".source = ../dotfiles/sway/config; "sway/status.toml".source = ../dotfiles/sway/status.toml; "xdg/alacritty/alacritty.yml".text = '' font: normal: family: CaskaydiaCove Nerd Font size: 12 draw_bold_text_with_bright_colors: true colors: primary: background: "${colors.background}" foreground: "${colors.foreground}" normal: black: "${colors.black}" red: "${colors.red}" green: "${colors.green}" yellow: "${colors.yellow}" cyan: "${colors.cyan}" magenta: "${colors.magenta}" blue: "${colors.blue}" white: "${colors.white}" window: dynamic_title: true opacity: 0.98 env: TERM: xterm-256color key_bindings: - { key: Escape, mods: Control, action: ToggleViMode } ''; "wezterm.lua".source = ../dotfiles/wezterm.lua; }; }; qt.platformTheme = "qt5ct"; hardware.pulseaudio.enable = false; security.rtkit.enable = true; services.pipewire = { enable = true; alsa.enable = true; pulse.enable = true; jack.enable = true; }; services.udev.packages = [ (pkgs.writeTextFile { name = "uinput.rules"; text = '' KERNEL=="uinput", GROUP="users", MODE="0660", OPTIONS+="static_node=uinput" ''; destination = "/etc/udev/rules.d/80-uinput.rules"; }) ]; services.ratbagd.enable = true; fonts.enableDefaultPackages = true; fonts.fontconfig.antialias = true; fonts.packages = with pkgs; [ corefonts emacs-all-the-icons-fonts fira-code noto-fonts noto-fonts-emoji (nerdfonts.override { fonts = [ "CascadiaCode" "Meslo" ]; }) ]; nixpkgs.config.allowUnfree = true; environment.pathsToLink = [ "/libexec" ]; environment.systemPackages = with pkgs; [ polkit_gnome # firefox also needs: # # gfx.webrenderer.enabled = true # widget.wayland-dmabuf-vaapi.enabled = true # # check in `about:support` that # * Composing -> Webrenderer firefox-wayland libva libva-utils mesa librsvg mypaint mypaint-brushes arc-theme capitaine-cursors dracula-theme elementary-xfce-icon-theme glib gsettings-desktop-schemas gtk-engine-murrine gtk_engines hicolor-icon-theme libsForQt5.qtstyleplugins lxappearance numix-icon-theme numix-cursor-theme alacritty gimp imv inkscape keepassxc libreoffice libsecret mpv mumble neofetch nodePackages.insect pavucontrol pcmanfm qrencode remmina wezterm uxplay solaar gdk-pixbuf clipman wdisplays wl-clipboard xdg_utils xfce.thunar xfce.thunar-volman wtype (pkgs.writeTextFile { name = "startsway"; destination = "/bin/startsway"; executable = true; text = '' #! ${pkgs.bash}/bin/bash export GTK_ICON_THEME=Dracula export GTK_THEME=Dracula export _JAVA_AWT_WM_NOREPARENTING=1 export MOZ_DBUS_REMOTE=1 export MOZ_ENABLE_WAYLAND=1 export MOZ_USE_XINPUT2=1 export QT_AUTO_SCREEN_SCALE_FACTOR=0 export QT_QPA_PLATFORM=wayland-egl export QT_WAYLAND_FORCE_DPI=96 export SDL_VIDEODRIVER=wayland export WEZTERM_CONFIG_FILE=/etc/wezterm.lua export XDG_CURRENT_DESKTOP=sway export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS export XDG_SESSION_TYPE=wayland ${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway ''; }) ]; hardware.bluetooth.enable = true; services.blueman.enable = true; services.syncthing = { enable = true; dataDir = "/home/stefan"; openDefaultPorts = true; user = "stefan"; group = "users"; }; services.printing.enable = true; services.printing.drivers = [ pkgs.gutenprint ]; services.avahi = { enable = true; nssmdns4 = true; publish = { enable = true; addresses = true; workstation = true; userServices = true; }; }; }