This commit is contained in:
Inex Code 2019-12-25 14:19:09 +03:00
commit 68fc993953
8 changed files with 306 additions and 0 deletions

14
LICENSE Normal file
View File

@ -0,0 +1,14 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.

121
Laptop/configuration.nix Normal file
View File

@ -0,0 +1,121 @@
# 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
./software.nix
./modules/gnome.nix
./modules/zsh.nix
];
nixpkgs.config.allowUnfree = true;
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
# Networking
networking = {
hostName = "inex-hp-envy";
networkmanager.enable = true;
useDHCP = false;
interfaces = {
enp7s0 = {
useDHCP = true;
};
wlp8s0 = {
useDHCP = true;
};
};
firewall = {
allowedTCPPorts = [ 1716 ];
allowedUDPPorts = [ 1716 ];
};
};
# BLuetooth and audio
sound.enable = true;
hardware = {
bluetooth = {
enable = true;
package = pkgs.bluezFull;
};
pulseaudio = {
enable = true;
package = pkgs.pulseaudioFull;
extraModules = [ pkgs.pulseaudio-modules-bt ];
};
};
# Select internationalisation properties.
# i18n = {
# consoleFont = "Lat2-Terminus16";
# consoleKeyMap = "us";
# defaultLocale = "en_US.UTF-8";
# };
# Set your time zone.
time.timeZone = "Europe/Moscow";
# List services that you want to enable:
# Enable CUPS to print documents.
services.printing.enable = true;
# Enable the X11 windowing system.
services.xserver = {
enable = true;
layout = "us";
videoDrivers = [ "intel" "nv" ];
libinput.enable = true;
exportConfiguration = true;
wacom.enable = true;
#xkbOptions = "eurosign:e";
#displayManager.startx.enable = true;
};
# Video driver
hardware = {
bumblebee = {
enable = true;
driver = "nouveau";
};
opengl = {
enable = true;
driSupport32Bit = true;
}; /*
nvidia = {
modesetting.enable = true;
optimus_prime = {
enable = true;
allowExternalGpu = true;
nvidiaBusId = "PCI:1:0:0";
intelBusId = "PCI:0:2:0";
};
}; */
};
# Define a user account. Don't forget to set a password with passwd.
users.users.inex = {
isNormalUser = true;
home = "/home/inex";
description = "Inex Code";
extraGroups = [ "wheel" "networkmanager" "jackaudio" "audio" ]; # Enable sudo for the user.
};
# 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.09"; # Did you read the comment?}
}

26
Laptop/jacked.nix Normal file
View File

@ -0,0 +1,26 @@
{ config, pkgs, ... }:
{
imports =
[
./configuration.nix
];
services.jack = {
alsa = {
enable = true;
support32Bit = true;
};
jackd = {
enable = true;
};
};
environment.systemPackages = [
pkgs.ardour
# pkgs.cadence
pkgs.qjackctl
];
}

27
Laptop/modules/gnome.nix Normal file
View File

@ -0,0 +1,27 @@
{ config, pkgs, ... }:
{
# Enable the GNOME Desktop Environment.
services.xserver = {
displayManager = {
gdm = {
enable = true;
wayland = true;
};
};
desktopManager = {
gnome3.enable = true;
};
};
qt5.platformTheme = "gnome";
environment.systemPackages = with pkgs; [
gnome3.pomodoro
gnome3.gnome-tweaks
gnome3.networkmanager-openvpn
gnomeExtensions.gsconnect
paper-icon-theme
];
}

42
Laptop/modules/zsh.nix Normal file
View File

@ -0,0 +1,42 @@
{ config, pkgs, ... }:
{
users.defaultUserShell = pkgs.zsh;
programs.zsh = {
enable = true;
#interactiveShellInit = "ponysay -q";
autosuggestions = {
enable = true;
};
syntaxHighlighting = {
enable = true;
};
ohMyZsh = {
enable = true;
plugins = [
"git"
"python"
"man"
"z"
"catimg"
"copyfile"
"encode64"
"extract"
"lol"
"npm"
"pip"
];
theme = "spaceship";
customPkgs = with pkgs; [
pkgs.nix-zsh-completions
pkgs.spaceship-prompt
pkgs.zsh-autosuggestions
pkgs.zsh-syntax-highlighting
];
};
};
environment.systemPackages = with pkgs; [
zsh-autosuggestions
zsh-syntax-highlighting
];
}

58
Laptop/software.nix Normal file
View File

@ -0,0 +1,58 @@
{ config, pkgs, ... }:
{
environment.systemPackages = with pkgs; [
# Utils
cool-retro-term
tmux
ponysay
neovim
neofetch
pciutils
openvpn
git
# Encrypted folders
encfs
gencfsm
# Browsers
firefox
# Messangers
tdesktop
discord
riot-desktop
# Games
steam
openttd
lutris-unwrapped
# Development
vscode
ansible
octaveFull
texlive.combined.scheme-full
gcc-unwrapped
python3Full
# Screen recording
obs-studio
peek
# Graphics
krita
gmic_krita_qt
# Audio
audacity
lmms
picard
# Documents
anki
libreoffice
];
}

BIN
nixos-inex.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

18
readme.md Normal file
View File

@ -0,0 +1,18 @@
# Inex Code's NixOS config
![Logo](nixos-inex.png)
## Profiles
### default
Defined in configuration.nix
### jacked
Extends default profile with JACK and Ardour
## Modules
- gnome
- zsh