Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Edit this configuration file to define what should be installed on
- # your system. Help is available in the configuration.nix(5) man page
- # and in the NixOS manual (accessible by running ‘nixos-help’).
- ## to update system run: sudo nixos-rebuild switch
- { config, pkgs, ... }:
- {
- imports =
- [ # Include the results of the hardware scan.
- ./hardware-configuration.nix
- ];
- #https://github.com/reflex-frp/reflex-platform/blob/develop/notes/NixOS.md
- nix.binaryCaches = [ "https://cache.nixos.org/" "https://nixcache.reflex-frp.org" ];
- nix.binaryCachePublicKeys = [ "ryantrinkle.com-1:JJiAKaRv9mWgpVAz8dwewnZe0AzzEAzPkagE9SP5NWI=" ];
- systemd.extraConfig = ''
- DefaultTimeoutStopSec=10s
- DefaultTimeoutStartSec=10s
- '';
- nixpkgs.config = {
- allowUnfree = true;
- # oraclejdk.accept_license = true;
- };
- ## to install avr-gcc
- nixpkgs.config.allowUnsupportedSystem = true;
- boot.kernelPackages = pkgs.linuxPackages_4_19;
- # https://nixos.wiki/wiki/Backlight#brightnessctl
- #hardware.brightnessctl.enable = true;
- programs.adb.enable = true;
- users.users.greghab.packages =
- with pkgs;[xorg.xf86inputevdev xorg.xf86inputsynaptics xorg.xf86inputlibinput xorg.xf86videointel jq xorg.xorgserver emacs libreoffice pcmanfm lmms ardour cadence rxvt_unicode-with-plugins neofetch lxappearance pywal feh libvterm htop lmms ardour system-config-printer brlaser brscan4 paper-icon-theme breeze-gtk breeze-qt5 shadowfox rstudioWrapper R openjdk auctex mplayer mpv eclipses.eclipse-java jetbrains.idea-community android-studio kdenlive jetbrains.pycharm-community redshift texlive.combined.scheme-full evince mupdf undervolt keepassxc nextcloud-client cbatticon networkmanagerapplet chromium vim dina-font flameshot udiskie polybar arandr rofi xorg.xbacklight gtk3-x11 xorg.xmodmap obs-studio brightnessctl firefox-devedition-bin elmPackages.elm simple-scan qt5ct rPackages.Rcpp rPackages.Rcpp11 glibc gfortran pavucontrol s-tui stress haskell.compiler.ghcjs tor-browser-bundle-bin anki erlang git thunderbird haskellPackages.ghcjs-dom-jsaddle haskellPackages.jsaddle haskellPackages.jsaddle-dom stack haskellPackages.servant cabal-install ghc haskellPackages.miso discord busybox leafpad nix-zsh-completions zsh zsh-completions kdeFrameworks.kwallet kdeApplications.kwalletmanager gparted inkscape ffmpeg frei0r google-chrome gnumake dfu-programmer xournalpp zlib haskellPackages.zlib postman urbanterror haskellPackages.arbtt sshfs syncthing pandoc youtube-dl octaveFull virtualboxWithExtpack linuxPackages.virtualbox virtmanager libvirt qemu virglrenderer minitube smtube ghcid signal-desktop wxcam imagemagick appimage-run docker deluge gitlab-runner file bind ddcutil lutris playonlinux p7zip woeusb ntfs3g logisim ncdu gsmartcontrol aspell hunspell hunspellDicts.en_US-large hunspellDicts.en-us-large aspellDicts.en-computers aspellDicts.en aspellDicts.en-science javaPackages.junit_4_12 xorg.xf86inputkeyboard xorg.xf86inputlibinput xorg.xf86inputmouse xorg.xf86inputevdev xorg.xhost wmname xorg.xorgserver xorg.xf86inputsynaptics xorg.xf86inputsynaptics poppler_utils nodejs awscli aws-sam-cli mindforger unclutter-xfixes pnmixer volumeicon python37Packages.pip zip nomacs android-file-transfer mattermost-desktop x42-plugins unar unrar tigervnc remmina xorg.xcursorgen xorg.xcursorthemes hll2390dw-cups binutils-unwrapped riot-web riot-desktop steam-run steam arduino vlc vscodium slic3r openscad clojure leiningen python37Packages.tkinter python27Packages.tkinter python37Packages.jupyterlab python37Packages.jupyterlab_launcher zoom-us valgrind qtcreator jetbrains.clion kdevelop-unwrapped compton xarchiver qpdfview gnome3.file-roller xfce.thunar];
- programs.dconf.enable = true;
- #environment.systemPackages = with pkgs;
- # [ xorg.xf86inputkeyboard xorg.xf86inputlibinput xorg.xf86inputmouse xorg.xf86inputevdev xorg.xhost wmname brightnessctl];
- hardware.opengl.enable = true;
- hardware.opengl.driSupport = true;
- virtualisation.docker.enable = true;
- virtualisation.virtualbox.host.enable = true;
- users.extraGroups.vboxusers.members = [ "greghab" ];
- virtualisation.virtualbox.host.enableExtensionPack = true;
- virtualisation.libvirtd.enable = true;
- # STEAM::............................................................................
- hardware.opengl.driSupport32Bit = true;
- hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ];
- hardware.pulseaudio.support32Bit = true;
- environment.systemPackages = with pkgs; [
- steam
- (steam.override { extraPkgs = pkgs: [ mono gtk3 gtk3-x11 libgdiplus zlib ]; nativeOnly = true; }).run
- xorg.xf86inputkeyboard xorg.xf86inputlibinput xorg.xf86inputmouse xorg.xf86inputevdev xorg.xhost wmname brightnessctl xorg.xorgserver
- ];
- #.......................................................................................
- # use the systemd-boot EFI boot loader.
- boot.loader.systemd-boot.enable = true;
- boot.loader.efi.canTouchEfiVariables = true;
- networking.hostName = "nixGreg"; # Define your hostname.
- networking.networkmanager.enable = true;
- # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
- # The global useDHCP flag is deprecated, therefore explicitly set to false here.
- # Per-interface useDHCP will be mandatory in the future, so this generated config
- # replicates the default behaviour.
- networking.useDHCP = false;
- networking.interfaces.enp0s20u2u4u2.useDHCP = true;
- networking.interfaces.enp0s25.useDHCP = true;
- networking.interfaces.wlp3s0.useDHCP = true;
- # 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.
- console.keyMap = "dvorak";
- i18n = {
- # consoleFont = "Lat2-Terminus16";
- #consoleKeyMap = "dvorak";
- defaultLocale = "en_US.UTF-8";
- };
- # Set your time zone.
- time.timeZone = "America/Los_Angeles";
- # List packages installed in system profile. To search, run:
- # $ nix search wget
- # environment.systemPackages = with pkgs; [
- # wget vim
- # ];
- # Some programs need SUID wrappers, can be configured further or are
- # started in user sessions.
- # programs.mtr.enable = true;
- # programs.gnupg.agent = { enable = true; enableSSHSupport = true; };
- # List services that you want to enable:
- # Enable the OpenSSH daemon.
- services.openssh.enable = true;
- # Open ports in the firewall.
- # networking.firewall.allowedTCPPorts = [ ... ];
- # networking.firewall.allowedUDPPorts = [ ... ];
- # Or disable the firewall altogether.
- # networking.firewall.enable = false;
- # Enable CUPS to print documents.
- services.printing.enable = true;
- services.avahi.enable = true;
- services.avahi.nssmdns = true;
- #services.printing.drivers = [pkgs.brlaser, pkgs.hplipWithPlugin, pkgs.brgenml1lpr, pkgs.brgenml1cupswrapper];
- services.printing.drivers = [pkgs.brlaser pkgs.hplipWithPlugin pkgs.brgenml1lpr pkgs.brgenml1cupswrapper];
- # https://nixos.wiki/wiki/Scanners
- # hardware.sane.enable = true;
- # imports = [
- # <nixpkgs/nixos/modules/services/hardware/sane_extra_backends/brscan4.nix>
- # ./hardware-configuration.nix
- # ];
- hardware = {
- sane = {
- enable = true;
- brscan4 = {
- enable = true;
- netDevices = {
- home = { model = "HL-L2380DW"; ip = "192.168.0.171"; };
- };
- };
- };
- };
- # Enable sound.
- sound.enable = true;
- hardware.pulseaudio.enable = true;
- # Enable the X11 windowing system.
- # services.xserver.enable = true;
- # services.xserver.layout = "us";
- # services.xserver.xkbVariant = "dvp";
- # services.xserver.xkbOptions = "eurosign:e";
- # Enable touchpad support.
- # services.xserver.libinput.enable = true;
- # Enable the KDE Desktop Environment.
- # services.xserver.windowManager.i3.enable = true;
- # services.xserver.displayManager.sddm.enable = true;
- # services.xserver.desktopManager.plasma5.enable = true;
- # Define a user account. Don't forget to set a password with ‘passwd’.
- users.users.greghab = {
- isNormalUser = true;
- home = "/home/greghab";
- extraGroups = [ "wheel" "networkmanager" "video" "scanner" "lp" "vboxusers" "libvirtd" "kvm" "docker" "audio" "adbusers"]; # Enable ‘sudo’ for the user.
- }; # "jackaudio"
- programs.zsh.enable = true;
- users.extraUsers.greghab = {
- shell = pkgs.zsh;
- };
- # Start Emacs and EXWM
- # services.xserver.displayManager.startx.enable = true;
- # services.xserver = {
- # enable = true;
- # layout = "us";
- # xkbVariant = "dvp";
- # libinput = {
- # enable = true;
- # };
- # displayManager = {
- # startx.enable = true;
- # };
- # };
- # Start Xfce4
- services.xserver = {
- enable = true;
- layout = "us";
- xkbVariant = "dvp";
- libinput = {
- enable = true;
- };
- desktopManager = {
- default = "xfce";
- xterm.enable = false;
- xfce.enable = true;
- };
- };
- # https://github.com/NixOS/nixpkgs/issues/27050
- environment.variables.QT_QPA_PLATFORMTHEME = "qt5ct";
- programs.qt5ct.enable = true;
- ## trying to fix why my computer keeps suspending by itself after a given amount of time...
- services.xserver.displayManager.gdm.autoSuspend = false;
- # disable lid
- services.logind.extraConfig = "HandleLidSwitch=ignore";
- security.sudo.configFile = "%wheel ALL = (ALL) ALL";
- # This value determines the NixOS release with which your system is to be
- # compatible, in order to avoid breaking some software such as database
- # servers. You should change this only after NixOS release notes say you
- # should.
- system.stateVersion = "20.03"; # Did you read the comment?
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement