updating config

This commit is contained in:
Chris Cochrun 2022-06-17 09:46:23 -05:00
parent 264e4295aa
commit 270b92d0c2
8 changed files with 339 additions and 46 deletions

View file

@ -28,8 +28,8 @@ stdenv.mkDerivation rec {
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "a-parhom"; owner = "a-parhom";
repo = "LightlyShaders"; repo = "LightlyShaders";
rev = "0294499afece1620f47fa38fa74fa8604077347f"; rev = "4d649f8d9874b3ab251588fdaa2eac4bb74b1125";
sha256 = "8EL1e4YKY63U7kvqBLfqSzYHdls1BD6OYh4X5+B7EcQ="; sha256 = "c/zbYmOXhl0xX+Rjw5eU48jQqA+OAxsh/pvWXo5bakA=";
}; };
# dontWrapQtApps = true; # dontWrapQtApps = true;

View file

@ -29,18 +29,53 @@ Both include the home-manager module. Primarily I chose that route so that I cou
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager/master"; home-manager = {
home-manager.inputs.nixpkgs.follows = "nixpkgs"; url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "github:vaxerski/Hyprland";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = { nixpkgs, home-manager, ... }: outputs = { nixpkgs, home-manager, hyprland, ... }:
let let
system = "x86_64-linux"; system = "x86_64-linux";
username = "chris"; username = "chris";
localOverlay = final: prev: {
myAwesome = final.awesome.overrideAttrs (old: rec {
pname = "myAwesome";
version = "git-20220508-c539e0e";
src = prev.fetchFromGitHub {
owner = "awesomeWM";
repo = "awesome";
rev = "c539e0e4350a42f813952fc28dd8490f42d934b3";
sha256 = "EDAL7NnLF2BiVI8DAlEciiZtDmwXOzCPypGTrlN/OoQ=";
};
});
qt5ct = final.qt5ct.overrideAttrs (old: rec {
patches = (old.patches or []) ++ [
../../qt5ct.patch
];
});
emacsPgtkNativeComp = final.emacsPgtkNativeComp.overrideAttrs (old: rec {
pname = "emacs";
src = prev.fetchFromTarball {
url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz;
sha256 = "09rsqmz7i7lyays59b9600z11qqr6h6lcskw1zzp54yw2csxn2ix";
};
});
};
pkgs = import nixpkgs { pkgs = import nixpkgs {
inherit system; inherit system;
config = { allowUnfree = true; }; config = { allowUnfree = true; };
# overlays = [
# hyprland.overlay
# localOverlay
# ];
}; };
lib = nixpkgs.lib; lib = nixpkgs.lib;
@ -49,13 +84,16 @@ Both include the home-manager module. Primarily I chose that route so that I cou
nixosConfigurations = { nixosConfigurations = {
syl = lib.nixosSystem { syl = lib.nixosSystem {
inherit system; inherit system;
# inherit pkgs;
modules = [ modules = [
./system/syl/configuration.nix ./system/syl/configuration.nix
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
hyprland.nixosModules.default
{ {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.chris = import ./user/home.nix; home-manager.users.chris = import ./user/home.nix;
programs.hyprland.enable = true;
} }
]; ];
}; };
@ -105,7 +143,7 @@ services.xserver = {
enable = true; enable = true;
windowManager.awesome = { windowManager.awesome = {
enable = true; enable = true;
package = pkgs.myAwesome; # package = pkgs.myAwesome;
}; };
displayManager.sddm.enable = true; displayManager.sddm.enable = true;
desktopManager.plasma5.enable = true; desktopManager.plasma5.enable = true;
@ -150,6 +188,42 @@ programs.fish.enable = true;
programs.zsh.enable = true; programs.zsh.enable = true;
#+end_src #+end_src
#+NAME: samba
#+begin_src nix
services.samba-wsdd.enable = true;
services.samba = {
enable = true;
extraConfig = ''
workgroup = WORKGROUP
server string = smbnix
netbios name = smbnix
security = user
#use sendfile = yes
#max protocol = smb2
# note: localhost is the ipv6 localhost ::1
hosts allow = 192.168.0. 127.0.0.1 localhost
hosts deny = 0.0.0.0/0
guest account = nobody
map to guest = bad user
'';
shares = {
public = {
path = "/home/chris/Public";
"read only" = false;
browsable = true;
"guest ok" = true;
comment = "Share";
};
};
};
#+end_src
#+NAME: podman
#+begin_src nix
virtualisation.podman.enable = true;
virtualisation.docker.enable = true;
#+end_src
*** Packages *** Packages
Here are a list of packages that I like to have on all machines. Here are a list of packages that I like to have on all machines.
#+NAME: general-packages #+NAME: general-packages
@ -187,6 +261,7 @@ libimobiledevice
sddm-kcm sddm-kcm
ydotool ydotool
bottles bottles
podman-compose
exa exa
imv imv
feh feh
@ -247,11 +322,15 @@ macchina
gimp gimp
powertop powertop
quickemu quickemu
OVMFFull
element-desktop-wayland
# hyprland
#+end_src #+end_src
Here are some dev tools that I often have on a few devices. Here are some dev tools that I often have on a few devices.
#+NAME: dev-tools #+NAME: dev-tools
#+begin_src nix #+begin_src nix
android-tools
nix-index nix-index
meson meson
ninja ninja
@ -294,11 +373,11 @@ For some reason the emacs overlay has a specific sha256. So I'll create it in ea
{ {
myAwesome = super.awesome.overrideAttrs (old: rec { myAwesome = super.awesome.overrideAttrs (old: rec {
pname = "myAwesome"; pname = "myAwesome";
version = "git-20220508-c539e0e"; version = "git-20220614-3a54221";
src = super.fetchFromGitHub { src = super.fetchFromGitHub {
owner = "awesomeWM"; owner = "awesomeWM";
repo = "awesome"; repo = "awesome";
rev = "c539e0e4350a42f813952fc28dd8490f42d934b3"; rev = "3a542219f3bf129546ae79eb20e384ea28fa9798";
sha256 = "EDAL7NnLF2BiVI8DAlEciiZtDmwXOzCPypGTrlN/OoQ="; sha256 = "EDAL7NnLF2BiVI8DAlEciiZtDmwXOzCPypGTrlN/OoQ=";
}; };
}); });
@ -359,6 +438,8 @@ Notice how I am including all of my software here. It may be a big file, but hav
networking.useDHCP = false; networking.useDHCP = false;
networking.interfaces.wlp170s0.useDHCP = true; networking.interfaces.wlp170s0.useDHCP = true;
<<podman>>
# Select internationalisation properties. # Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
@ -471,6 +552,7 @@ Notice how I am including all of my software here. It may be a big file, but hav
]; ];
<<emacs>> <<emacs>>
<<samba>>
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
# started in user sessions. # started in user sessions.
@ -680,6 +762,7 @@ Kaladin is my desktop machine. A powerhouse for the most part with a recent i7 a
]; ];
<<emacs>> <<emacs>>
<<samba>>
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
# started in user sessions. # started in user sessions.

View file

@ -1,17 +1,37 @@
{ {
"nodes": { "nodes": {
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1650374568,
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "b4a34015c698c7793d592d66adbab377907a2be8",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"flake-compat": "flake-compat",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ],
"nmd": "nmd",
"nmt": "nmt",
"utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1653153149, "lastModified": 1655199284,
"narHash": "sha256-8B/tWWZziFq4DqnAm9uO7M4Z4PNfllYg5+teX1e5yDQ=", "narHash": "sha256-R/g2ZWplGWVOfm2TyB4kR+YcOE/uWkgjkYrl/RYgJ/U=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "94780dd888881bf35165dfdd334a57ef6b14ead8", "rev": "87d30c164849a7471d99749aa4d2d28b81564f69",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -21,13 +41,34 @@
"type": "github" "type": "github"
} }
}, },
"hyprland": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"wlroots": "wlroots"
},
"locked": {
"lastModified": 1655154988,
"narHash": "sha256-yjVNcLIqUkyhHbOS9lSWFurQx/qKD9YMPpQJpX5nqq4=",
"owner": "vaxerski",
"repo": "Hyprland",
"rev": "fa6530c7e8f5f79041a28456ca91d4641c7ad354",
"type": "github"
},
"original": {
"owner": "vaxerski",
"repo": "Hyprland",
"type": "github"
}
},
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1653060744, "lastModified": 1655130522,
"narHash": "sha256-kfRusllRumpt33J1hPV+CeCCylCXEU7e0gn2/cIM7cY=", "narHash": "sha256-5dzlxE4okyu+M39yeVtHWQXzDZQxFF5rUB1iY9R6Lb4=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "dfd82985c273aac6eced03625f454b334daae2e8", "rev": "13f08d71ceff5101321e0291854495a1ec153a5e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -37,11 +78,77 @@
"type": "github" "type": "github"
} }
}, },
"nmd": {
"flake": false,
"locked": {
"lastModified": 1653339422,
"narHash": "sha256-8nc7lcYOgih3YEmRMlBwZaLLJYpLPYKBlewqHqx8ieg=",
"owner": "rycee",
"repo": "nmd",
"rev": "9e7a20e6ee3f6751f699f79c0b299390f81f7bcd",
"type": "gitlab"
},
"original": {
"owner": "rycee",
"repo": "nmd",
"type": "gitlab"
}
},
"nmt": {
"flake": false,
"locked": {
"lastModified": 1648075362,
"narHash": "sha256-u36WgzoA84dMVsGXzml4wZ5ckGgfnvS0ryzo/3zn/Pc=",
"owner": "rycee",
"repo": "nmt",
"rev": "d83601002c99b78c89ea80e5e6ba21addcfe12ae",
"type": "gitlab"
},
"original": {
"owner": "rycee",
"repo": "nmt",
"type": "gitlab"
}
},
"root": { "root": {
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"hyprland": "hyprland",
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
} }
},
"utils": {
"locked": {
"lastModified": 1653893745,
"narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"wlroots": {
"flake": false,
"locked": {
"host": "gitlab.freedesktop.org",
"lastModified": 1654618691,
"narHash": "sha256-8y3u8CoigjoZOVbA2wCWBHlDNEakv0AVxU46/cOC00s=",
"owner": "wlroots",
"repo": "wlroots",
"rev": "b89ed9015c3fbe8d339e9d65cf70fdca6e5645bc",
"type": "gitlab"
},
"original": {
"host": "gitlab.freedesktop.org",
"owner": "wlroots",
"repo": "wlroots",
"type": "gitlab"
}
} }
}, },
"root": "root", "root": "root",

View file

@ -3,18 +3,53 @@
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager/master"; home-manager = {
home-manager.inputs.nixpkgs.follows = "nixpkgs"; url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "github:vaxerski/Hyprland";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = { nixpkgs, home-manager, ... }: outputs = { nixpkgs, home-manager, hyprland, ... }:
let let
system = "x86_64-linux"; system = "x86_64-linux";
username = "chris"; username = "chris";
localOverlay = final: prev: {
myAwesome = final.awesome.overrideAttrs (old: rec {
pname = "myAwesome";
version = "git-20220508-c539e0e";
src = prev.fetchFromGitHub {
owner = "awesomeWM";
repo = "awesome";
rev = "c539e0e4350a42f813952fc28dd8490f42d934b3";
sha256 = "EDAL7NnLF2BiVI8DAlEciiZtDmwXOzCPypGTrlN/OoQ=";
};
});
qt5ct = final.qt5ct.overrideAttrs (old: rec {
patches = (old.patches or []) ++ [
../../qt5ct.patch
];
});
emacsPgtkNativeComp = final.emacsPgtkNativeComp.overrideAttrs (old: rec {
pname = "emacs";
src = prev.fetchFromTarball {
url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz;
sha256 = "09rsqmz7i7lyays59b9600z11qqr6h6lcskw1zzp54yw2csxn2ix";
};
});
};
pkgs = import nixpkgs { pkgs = import nixpkgs {
inherit system; inherit system;
config = { allowUnfree = true; }; config = { allowUnfree = true; };
# overlays = [
# hyprland.overlay
# localOverlay
# ];
}; };
lib = nixpkgs.lib; lib = nixpkgs.lib;
@ -23,13 +58,16 @@
nixosConfigurations = { nixosConfigurations = {
syl = lib.nixosSystem { syl = lib.nixosSystem {
inherit system; inherit system;
# inherit pkgs;
modules = [ modules = [
./system/syl/configuration.nix ./system/syl/configuration.nix
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
hyprland.nixosModules.default
{ {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.chris = import ./user/home.nix; home-manager.users.chris = import ./user/home.nix;
programs.hyprland.enable = true;
} }
]; ];
}; };

View file

@ -17,7 +17,7 @@ if [ $(pgrep -c emacsclient) -gt 0 ]; then
fi fi
else else
if [ $KDE_FULL_SESSION = "true" ]; then if [ $KDE_FULL_SESSION = "true" ]; then
/home/chris/bin/ww -f emacs -c emacsclient /home/chris/bin/ww -fa Emacs -c emacsclient
exit exit
else else
# WAYLAND # WAYLAND

View file

@ -1,4 +1,4 @@
#!/bin/bash #!/usr/bin/env bash
# dependencies: mpv youtube-dl fzf rofi/dmenu # dependencies: mpv youtube-dl fzf rofi/dmenu
# search videos and playlists on youtube and play them in mpv, without an API # search videos and playlists on youtube and play them in mpv, without an API
# usage: # usage:

View file

@ -48,7 +48,7 @@
enable = true; enable = true;
windowManager.awesome = { windowManager.awesome = {
enable = true; enable = true;
package = pkgs.myAwesome; # package = pkgs.myAwesome;
}; };
displayManager.sddm.enable = true; displayManager.sddm.enable = true;
desktopManager.plasma5.enable = true; desktopManager.plasma5.enable = true;
@ -166,6 +166,7 @@
sddm-kcm sddm-kcm
ydotool ydotool
bottles bottles
podman-compose
exa exa
imv imv
feh feh
@ -226,12 +227,16 @@
gimp gimp
powertop powertop
quickemu quickemu
OVMFFull
element-desktop-wayland
# hyprland
blender blender
neofetch neofetch
ethminer ethminer
lutris lutris
protonup protonup
# Dev tools # Dev tools
android-tools
nix-index nix-index
meson meson
ninja ninja
@ -266,11 +271,11 @@
{ {
myAwesome = super.awesome.overrideAttrs (old: rec { myAwesome = super.awesome.overrideAttrs (old: rec {
pname = "myAwesome"; pname = "myAwesome";
version = "git-20220508-c539e0e"; version = "git-20220614-3a54221";
src = super.fetchFromGitHub { src = super.fetchFromGitHub {
owner = "awesomeWM"; owner = "awesomeWM";
repo = "awesome"; repo = "awesome";
rev = "c539e0e4350a42f813952fc28dd8490f42d934b3"; rev = "3a542219f3bf129546ae79eb20e384ea28fa9798";
sha256 = "EDAL7NnLF2BiVI8DAlEciiZtDmwXOzCPypGTrlN/OoQ="; sha256 = "EDAL7NnLF2BiVI8DAlEciiZtDmwXOzCPypGTrlN/OoQ=";
}; };
}); });
@ -292,6 +297,32 @@
enable = true; enable = true;
package = with pkgs; ((emacsPackagesFor emacsPgtkNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ])); package = with pkgs; ((emacsPackagesFor emacsPgtkNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ]));
}; };
services.samba-wsdd.enable = true;
services.samba = {
enable = true;
extraConfig = ''
workgroup = WORKGROUP
server string = smbnix
netbios name = smbnix
security = user
#use sendfile = yes
#max protocol = smb2
# note: localhost is the ipv6 localhost ::1
hosts allow = 192.168.0. 127.0.0.1 localhost
hosts deny = 0.0.0.0/0
guest account = nobody
map to guest = bad user
'';
shares = {
public = {
path = "/home/chris/Public";
"read only" = false;
browsable = true;
"guest ok" = true;
comment = "Share";
};
};
};
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
# started in user sessions. # started in user sessions.

View file

@ -32,6 +32,9 @@
networking.useDHCP = false; networking.useDHCP = false;
networking.interfaces.wlp170s0.useDHCP = true; networking.interfaces.wlp170s0.useDHCP = true;
virtualisation.podman.enable = true;
virtualisation.docker.enable = true;
# Select internationalisation properties. # Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
@ -55,7 +58,7 @@
enable = true; enable = true;
windowManager.awesome = { windowManager.awesome = {
enable = true; enable = true;
package = pkgs.myAwesome; # package = pkgs.myAwesome;
}; };
displayManager.sddm.enable = true; displayManager.sddm.enable = true;
desktopManager.plasma5.enable = true; desktopManager.plasma5.enable = true;
@ -186,6 +189,7 @@
sddm-kcm sddm-kcm
ydotool ydotool
bottles bottles
podman-compose
exa exa
imv imv
feh feh
@ -246,6 +250,9 @@
gimp gimp
powertop powertop
quickemu quickemu
OVMFFull
element-desktop-wayland
# hyprland
neofetch neofetch
afetch afetch
yafetch yafetch
@ -255,6 +262,7 @@
fet-sh fet-sh
macchina macchina
# Dev tools # Dev tools
android-tools
nix-index nix-index
meson meson
ninja ninja
@ -289,11 +297,11 @@
{ {
myAwesome = super.awesome.overrideAttrs (old: rec { myAwesome = super.awesome.overrideAttrs (old: rec {
pname = "myAwesome"; pname = "myAwesome";
version = "git-20220508-c539e0e"; version = "git-20220614-3a54221";
src = super.fetchFromGitHub { src = super.fetchFromGitHub {
owner = "awesomeWM"; owner = "awesomeWM";
repo = "awesome"; repo = "awesome";
rev = "c539e0e4350a42f813952fc28dd8490f42d934b3"; rev = "3a542219f3bf129546ae79eb20e384ea28fa9798";
sha256 = "EDAL7NnLF2BiVI8DAlEciiZtDmwXOzCPypGTrlN/OoQ="; sha256 = "EDAL7NnLF2BiVI8DAlEciiZtDmwXOzCPypGTrlN/OoQ=";
}; };
}); });
@ -315,6 +323,32 @@
enable = true; enable = true;
package = with pkgs; ((emacsPackagesFor emacsPgtkNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ])); package = with pkgs; ((emacsPackagesFor emacsPgtkNativeComp).emacsWithPackages (epkgs: [ epkgs.vterm epkgs.magit epkgs.pdf-tools pkgs.mu ]));
}; };
services.samba-wsdd.enable = true;
services.samba = {
enable = true;
extraConfig = ''
workgroup = WORKGROUP
server string = smbnix
netbios name = smbnix
security = user
#use sendfile = yes
#max protocol = smb2
# note: localhost is the ipv6 localhost ::1
hosts allow = 192.168.0. 127.0.0.1 localhost
hosts deny = 0.0.0.0/0
guest account = nobody
map to guest = bad user
'';
shares = {
public = {
path = "/home/chris/Public";
"read only" = false;
browsable = true;
"guest ok" = true;
comment = "Share";
};
};
};
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
# started in user sessions. # started in user sessions.