Added scripts to collect/deploy configs. Updated i3 and nixos configs.
This commit is contained in:
235
nixos/configuration.nix
Normal file
235
nixos/configuration.nix
Normal file
@@ -0,0 +1,235 @@
|
||||
# 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’).
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
./security.nix
|
||||
];
|
||||
|
||||
# Use the systemd-boot EFI boot loader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
networking = {
|
||||
hostName = "lenovo";
|
||||
#wireless.enable = true;
|
||||
useDHCP = false;
|
||||
#wicd.enable = true;
|
||||
networkmanager.enable = true;
|
||||
};
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n = {
|
||||
consoleFont = "Lat2-Terminus16";
|
||||
consoleKeyMap = "us";
|
||||
defaultLocale = "en_US.UTF-8";
|
||||
};
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "Europe/Prague";
|
||||
|
||||
# List packages installed in system profile. To search by name, run:
|
||||
# $ nix-env -qaP | grep wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
wget
|
||||
bind
|
||||
vim
|
||||
firefox
|
||||
ranger
|
||||
keepass
|
||||
tdesktop
|
||||
st
|
||||
fish
|
||||
transmission_gtk
|
||||
wireshark
|
||||
vlc
|
||||
mpv
|
||||
moc
|
||||
libmtp
|
||||
go-mtpfs
|
||||
usbutils
|
||||
binutils-unwrapped
|
||||
patchelf
|
||||
file
|
||||
w3m
|
||||
xpdf
|
||||
highlight
|
||||
mediainfo
|
||||
evince
|
||||
notepadqq
|
||||
gnome3.adwaita-icon-theme
|
||||
gnome3.gedit
|
||||
gnome3.eog
|
||||
gnome3.nautilus
|
||||
gnome3.evolution
|
||||
gnome3.gnome-keyring
|
||||
libsecret
|
||||
gnome3.file-roller
|
||||
gnome3.seahorse
|
||||
gnome3.gcr
|
||||
gnome3.dconf
|
||||
gimp
|
||||
# libreoffice-fresh
|
||||
xfontsel
|
||||
xorg.xbacklight
|
||||
volumeicon
|
||||
ntfs3g
|
||||
htop
|
||||
git
|
||||
lm_sensors
|
||||
pavucontrol
|
||||
openjdk8
|
||||
#openjdk10
|
||||
visualvm
|
||||
scala
|
||||
dotty
|
||||
sbt
|
||||
jetbrains.idea-community
|
||||
protobuf3_5
|
||||
openssl
|
||||
openssl.dev
|
||||
pv
|
||||
#virtualbox
|
||||
baobab
|
||||
graphviz
|
||||
wirelesstools
|
||||
mattermost-desktop
|
||||
openfortivpn
|
||||
simplenote
|
||||
i3lock
|
||||
scrot
|
||||
imagemagick
|
||||
xautolock
|
||||
squashfsTools
|
||||
#skypeforlinux
|
||||
atom
|
||||
vscode
|
||||
rpm
|
||||
unzip
|
||||
chromium
|
||||
masterpdfeditor
|
||||
telnet
|
||||
geteltorito
|
||||
gradle
|
||||
nix-index
|
||||
zoom-us
|
||||
krita
|
||||
maven
|
||||
nodejs
|
||||
jmeter
|
||||
mongodb-tools
|
||||
screen
|
||||
p7zip
|
||||
zlib.static
|
||||
zlib.dev
|
||||
gcc
|
||||
#nextcloud-client
|
||||
cmake
|
||||
gnumake
|
||||
gperf
|
||||
#calibre
|
||||
netcat-gnu
|
||||
smartmontools
|
||||
teamviewer
|
||||
unrar
|
||||
tcpdump
|
||||
tcpflow
|
||||
falkon
|
||||
androidenv.androidPkgs_9_0.platform-tools
|
||||
(python2.withPackages(ps: with ps; [ virtualenvwrapper jenkins-job-builder ]))
|
||||
];
|
||||
|
||||
fonts.fonts = with pkgs; [
|
||||
source-code-pro
|
||||
liberation_ttf
|
||||
];
|
||||
|
||||
nixpkgs.config = {
|
||||
allowUnfree = true;
|
||||
android_sdk.accept_license = true;
|
||||
};
|
||||
|
||||
# Some programs need SUID wrappers, can be configured further or are
|
||||
# started in user sessions.
|
||||
# programs.bash.enableCompletion = true;
|
||||
# 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;
|
||||
services.teamviewer.enable = true;
|
||||
|
||||
# Open ports in the firewall.
|
||||
networking.firewall.allowedTCPPorts = [ 88 8443 111 1039 1047 1048 2049 ];
|
||||
networking.firewall.allowedUDPPorts = [ 111 1039 1047 1048 2049 ];
|
||||
# Or disable the firewall altogether.
|
||||
networking.firewall.enable = true;
|
||||
|
||||
# Enable CUPS to print documents.
|
||||
services.printing.enable = true;
|
||||
services.printing.drivers = [ pkgs.splix ];
|
||||
|
||||
services.mongodb.enable = true;
|
||||
|
||||
# keyring
|
||||
services.gnome3.gnome-keyring.enable = true;
|
||||
services.gnome3.seahorse.enable = true;
|
||||
services.gnome3.at-spi2-core.enable = true;
|
||||
|
||||
#programs.sway.enable = true;
|
||||
|
||||
# Enable the X11 windowing system.
|
||||
services.xserver.enable = true;
|
||||
services.xserver.layout = "us,ru";
|
||||
services.xserver.xkbOptions = "grp:caps_toggle";
|
||||
|
||||
# Enable touchpad support.
|
||||
services.xserver.libinput.enable = true;
|
||||
|
||||
services.xserver.displayManager.lightdm.enable = true;
|
||||
services.xserver.windowManager.i3.enable = true;
|
||||
|
||||
sound.enable = true;
|
||||
hardware.pulseaudio.enable = true;
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.extraUsers.nnm = {
|
||||
isNormalUser = true;
|
||||
uid = 1000;
|
||||
shell = pkgs.fish;
|
||||
extraGroups = ["audio" "networkmanager" "wireshark" "vboxusers"];
|
||||
};
|
||||
|
||||
fileSystems."/export/development" = {
|
||||
device = "/home/nnm/development";
|
||||
options = [ "bind" ];
|
||||
};
|
||||
|
||||
fileSystems."/mnt/Downloads-pc" = {
|
||||
device = "192.168.1.2:/Downloads";
|
||||
fsType = "nfs";
|
||||
options = ["x-systemd.automount,noauto"];
|
||||
};
|
||||
|
||||
services.nfs.server.enable = true;
|
||||
services.nfs.server.exports = ''
|
||||
/export 192.168.1.2(rw,fsid=0,no_subtree_check)
|
||||
/export/development 192.168.1.2(rw,nohide,insecure,no_subtree_check)
|
||||
'';
|
||||
|
||||
#virtualisation.virtualbox.host.enable = true;
|
||||
#virtualisation.virtualbox.host.enableExtensionPack = true;
|
||||
|
||||
# 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 = "19.03"; # Did you read the comment?
|
||||
}
|
||||
Reference in New Issue
Block a user