summaryrefslogtreecommitdiff
path: root/test-vm.nix
diff options
context:
space:
mode:
authorKjetil Orbekk <kj@orbekk.com>2020-10-17 14:22:42 -0400
committerKjetil Orbekk <kj@orbekk.com>2020-10-17 14:22:42 -0400
commitca905367b59f1cd0bfd0c7c92dcd6d22a5eac0c8 (patch)
tree7c95f7492135a5ec4f5eeddb9e20462e9fa6e890 /test-vm.nix
parentc8b0fb66d2b2a91fe78f0bb849d6a0709bde6bcb (diff)
test vm file for dotfiles development
Diffstat (limited to 'test-vm.nix')
-rw-r--r--test-vm.nix65
1 files changed, 65 insertions, 0 deletions
diff --git a/test-vm.nix b/test-vm.nix
new file mode 100644
index 0000000..9e7afe0
--- /dev/null
+++ b/test-vm.nix
@@ -0,0 +1,65 @@
+# nix-build '<nixpkgs/nixos>' -A vm -I nixos-config ./test-vm.nix
+{ config, lib, pkgs, ... }:
+let
+ dotfiles = ./.;
+in
+{
+ fonts = {
+ enableDefaultFonts = true;
+ fonts = with pkgs; [ fira-code dejavu_fonts steamPackages.steam-fonts wqy_microhei ];
+ };
+
+ services.xserver = {
+ enable = true;
+ windowManager.xmonad = {
+ enable = true;
+ enableContribAndExtras = true;
+ extraPackages = hpkgs: [ hpkgs.xmobar hpkgs.split ];
+ };
+
+ displayManager.autoLogin.enable = true;
+ displayManager.autoLogin.user = "orbekk";
+ displayManager.sddm.enable = true;
+ };
+
+ virtualisation.memorySize = 1024;
+ #virtualisation.qemu.options = [ "-full-screen -sdl" ];
+
+ programs.zsh.enable = true;
+ users.users.orbekk = {
+ isNormalUser = true;
+ home = "/home/orbekk";
+ extraGroups = ["wheel"];
+ password = "";
+ shell = pkgs.zsh;
+ };
+
+ environment.systemPackages = with pkgs; [
+ git
+ stow
+ dmenu
+ emacs
+ rxvt_unicode-with-plugins
+ trayer
+ xbindkeys
+ xorg.xbacklight
+ xorg.xev
+ xscreensaver
+ xsel
+ xss-lock
+ ];
+
+ systemd.services.orbekk-setup = {
+ description = "Home directory setup";
+ path = config.environment.systemPackages;
+ script = ''
+ cd ~orbekk
+ cp -r ${dotfiles} dotfiles
+ # git clone ${dotfiles} dotfiles
+ '';
+ serviceConfig = {
+ User = "orbekk";
+ };
+ wantedBy = ["default.target" "display-manager.service"];
+ };
+}