Table of Contents
- Modules
- NixOS
- Options
shabka.useColemakKeyboardLayout
shabka.home-manager.config
shabka.users
shabka.hardware.intel_backlight.enable
shabka.hardware.machine
shabka.serial_console.enable
shabka.openvpn.client.expressvpn.enable
shabka.virtualisation.docker
shabka.gnupg.enable
shabka.plex
shabka.plex.enable
shabka.plex.dataDir
shabka.printing.enable
shabka.tmux.enable
shabka.workstation.enable
shabka.workstation.fonts.enable
shabka.workstation.gnome-keyring.enable
shabka.workstation.networking.enable
shabka.workstation.power.enable
shabka.workstation.redshift.enable
shabka.workstation.sound.enable
shabka.workstation.teamviewer.enable
shabka.workstation.virtualbox.enable
shabka.workstation.xorg.enable
- Options
- Home
- Options
shabka.useColemakKeyboardLayout
shabka.nixosConfig
shabka.gnupg.enable
shabka.batteryNotifier
shabka.git.enable
shabka.less.enable
shabka.neovim.enable
shabka.neovim.extraRC
shabka.neovim.extraKnownPlugins
shabka.neovim.extraPluginDictionaries
shabka.pet.enable
shabka.taskwarrior.enable
shabka.timewarrior.enable
shabka.theme
shabka.workstation.enable
shabka.workstation.alacritty.enable
shabka.workstation.chromium.enable
shabka.workstation.dropbox.enable
shabka.workstation.dunst.enable
shabka.workstation.firefox.enable
shabka.workstation.greenclip.enable
shabka.workstation.locker.enable
shabka.workstation.mysql-workbench.enable
shabka.workstation.rofi.enable
shabka.workstation.termite.enable
shabka.windowManager
- Options
- NixOS
The NixOS module wraps around the upstream NixOS module to provide some sensible configuration for the NixOS boxes.
- type: boolean
- default:
false
When this option is enabled, the keyboard layout is set to Colemak in early console (i.e initrd), the console and the Xorg server.
- type: Function
- default:
{ name, uid, isAdmin, nixosConfig }: {...}: {}
This option is a function that takes name
, uid
, isAdmin
and
nixosConfig
as parameters and returns a new function that gets set to
home-manager.users.<name>
to configure the home directory of the user.
See the home module for more information.
- type: attrs of user to
{ uid, isAdmin, home }
. - default: See users module.
This option controls the users that get created on the NixOS system.
They automatically inherit the home manager set inshabka.home-manager.config
.
- type: boolean
- default: false
When this option is enabled, The group of the
/sys/class/backlight/*/brightness files is changed to the group video
so the user can change the brightness without the need of root.
- type: string
- default: empty string
This option describes the make-model, or role of the machine for automatic hardware setup. See the hardware folder.
- type: boolean
- default: false
When this option is enabled, the serial console is enabled for the kernel and for GRUB. Although, GRUB is not automatically enabled, instead you should do so in the host configuration.
- type: boolean
- default: false
Enabling this option will install the ExpressVPN services, but will not enable any of them.
TODO(low): define the keys and passwords per host.
- type: boolean
- default: false
Enabling this option will install and enable Docker.
- type: boolean
- default: false
Enabling this option will enable the gnupg agent and the browser socket.
- type: boolean
- default: false
Enabling this option will enable the Plex media server.
- type: str
- default:
""
Set the dataDir of the Plex Media Server
- type: boolean
- default: false
Enable printing
TODO(low): add an option to configure the drivers
- type: boolean
- default: false
Enable TMux program, pre-configured with my preference.
- type: boolean
- default: false
This option is a meta for all the following options, enabling it will enable them all. Set this to true when setting up a workstation.
- type: boolean
- default: false
Enable this option to install powerline-fonts
and enable fontDir and
ghostscriptFonts.
- type: boolean
- default: false
Enable this option to start the Gnome3 keyring.
- type: boolean
- default: false
Enable this option to start the Network Manager.
- type: boolean
- default: false
Enable power management.
- type: boolean
- default: false
Enables the redshift service for tunning out blue colors in the dark.
- type: boolean
- default: false
Enables sound via Pule audio and installs pavucontrol in the system packages.
- type: boolean
- default: false
Install the TeamViewer application and installs and enables the TeamViewer service.
- type: boolean
- default: false
Install and enable VirtualBox with extension pack.
- type: boolean
- default: false
Enable Xorg and:
- Set the display manager to lightdm
- Enable libinput and naturalScrolling
- Install the Gnome3 and Plasma5 desktop managers
The NixOS module wraps around the upstream home-manager module to provide some sensible configuration for all my Unix boxes.
- type: boolean
- default:
false
When this option is enabled, the keyboard layout is set to Colemak in early console (i.e initrd), the console and the Xorg server.
- type: boolean
- default:
{}
This option is set by the NixOS module for communicating the system configuration down to the home-manager configuration.
- type: boolean
- default: false
Enabling this option will enable the gnupg agent and the browser socket.
This module provides a systemd service that notifies the user when the notifyCapacity is reached and automatically hibernate when the hibernateCapacity is reached.
- type: boolean
- default: false
Enable this to enable the batteryNotifier.
- type: str
- default: "BAT0"
The device representing the battery in your laptop, it must exist under
/sys/class/power_supply/
.
- type: integer
- default: 10
The percentage of the battery when reached a notification will be sent to the user.
- type: integer
- default: 10
The percentage of the battery when reached, the system will hibernate.
- type: boolean
- default: false
Install and configure git.
- type: boolean
- default: false
Install and configure less.
- type: boolean
- default: false
Install and configure neovim.
- type: str
- default: ""
Extra NeoVim configuration.
- type: attrs
- default: {}
Extra NeoVim known plugins
- type: list
- default: []
Extra NeoVim plugin dictionary.
- type: boolean
- default: false
Install and configure neovim.
- type: boolean
- default: false
Install and configure taskwarrior.
- type: boolean
- default: false
Install and configure timewarrior.
- type: string
- default: "seoul256"
This options controls the theme of all of the applications supported by the theme. Please see the theme folder
- type: boolean
- default: false
This option is a meta for all the following options, enabling it will enable them all. Set this to true when setting up a workstation.
- type: boolean
- default: false
Install and configure alacritty.
- type: boolean
- default: false
Install and configure chromium with all my profiles and generate and install surfingkeys.
- type: boolean
- default: false
Install and configure dropbox.
- type: boolean
- default: false
Install and configure dunst.
- type: boolean
- default: false
Install and configure firefox.
- type: boolean
- default: false
Install and configure greenclip.
- type: boolean
- default: false
Install and configure the screen locker.
- type: boolean
- default: false
Install and configure mysql-workbench.
- type: boolean
- default: false
Install and configure rofi.
- type: boolean
- default: false
Install and configure termite.
- type: str
- default: "i3"
Select the window manager, currently supported i3, Plasma5 and Gnome3.