Deploy script
This commit is contained in:
parent
54c96acfc3
commit
c171631192
188
flake.nix
188
flake.nix
@ -2,99 +2,111 @@
|
|||||||
description =
|
description =
|
||||||
"A collection of crap, hacks and copy-paste to make my localhosts boot";
|
"A collection of crap, hacks and copy-paste to make my localhosts boot";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs-mopidy = {
|
nixpkgs-mopidy = {
|
||||||
type = "github";
|
type = "github";
|
||||||
owner = "NickHU";
|
owner = "NickHU";
|
||||||
repo = "nixpkgs";
|
repo = "nixpkgs";
|
||||||
ref = "mopidy";
|
ref = "mopidy";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
|
||||||
NUR = {
|
|
||||||
type = "github";
|
|
||||||
owner = "nix-community";
|
|
||||||
repo = "NUR";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
base16-unclaimed-schemes = {
|
|
||||||
type = "github";
|
|
||||||
owner = "chriskempson";
|
|
||||||
repo = "base16-unclaimed-schemes";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
home-manager = {
|
|
||||||
type = "github";
|
|
||||||
owner = "rycee";
|
|
||||||
repo = "home-manager";
|
|
||||||
ref = "bqv-flakes";
|
|
||||||
};
|
|
||||||
materia-theme = {
|
|
||||||
type = "github";
|
|
||||||
owner = "nana-4";
|
|
||||||
repo = "materia-theme";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
nixpkgs-old = {
|
|
||||||
type = "github";
|
|
||||||
owner = "nixos";
|
|
||||||
repo = "nixpkgs";
|
|
||||||
ref = "nixos-19.03";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
weechat-scripts = {
|
|
||||||
type = "github";
|
|
||||||
owner = "weechat";
|
|
||||||
repo = "scripts";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
simple-nixos-mailserver = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver";
|
|
||||||
ref = "master";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
nixpkgs-wayland = {
|
|
||||||
type = "github";
|
|
||||||
owner = "colemickens";
|
|
||||||
repo = "nixpkgs-wayland";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
weechat-notify-send = {
|
|
||||||
type = "github";
|
|
||||||
owner = "s3rvac";
|
|
||||||
repo = "weechat-notify-send";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
yt-utilities = {
|
|
||||||
type = "git";
|
|
||||||
url = "ssh://git@github.com/serokell/yt-utilities";
|
|
||||||
ref = "flake";
|
|
||||||
};
|
|
||||||
mobile-broadband-provider-info = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://gitlab.gnome.org/GNOME/mobile-broadband-provider-info";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
nixos-fhs-compat = {
|
|
||||||
type = "github";
|
|
||||||
owner = "balsoft";
|
|
||||||
repo = "nixos-fhs-compat";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
NUR = {
|
||||||
|
type = "github";
|
||||||
|
owner = "nix-community";
|
||||||
|
repo = "NUR";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
base16-unclaimed-schemes = {
|
||||||
|
type = "github";
|
||||||
|
owner = "chriskempson";
|
||||||
|
repo = "base16-unclaimed-schemes";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
home-manager = {
|
||||||
|
type = "github";
|
||||||
|
owner = "rycee";
|
||||||
|
repo = "home-manager";
|
||||||
|
ref = "bqv-flakes";
|
||||||
|
};
|
||||||
|
materia-theme = {
|
||||||
|
type = "github";
|
||||||
|
owner = "nana-4";
|
||||||
|
repo = "materia-theme";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
nixpkgs-old = {
|
||||||
|
type = "github";
|
||||||
|
owner = "nixos";
|
||||||
|
repo = "nixpkgs";
|
||||||
|
ref = "nixos-19.03";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
weechat-scripts = {
|
||||||
|
type = "github";
|
||||||
|
owner = "weechat";
|
||||||
|
repo = "scripts";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
simple-nixos-mailserver = {
|
||||||
|
type = "git";
|
||||||
|
url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver";
|
||||||
|
ref = "master";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
nixpkgs-wayland = {
|
||||||
|
type = "github";
|
||||||
|
owner = "colemickens";
|
||||||
|
repo = "nixpkgs-wayland";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
weechat-notify-send = {
|
||||||
|
type = "github";
|
||||||
|
owner = "s3rvac";
|
||||||
|
repo = "weechat-notify-send";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
yt-utilities = {
|
||||||
|
type = "git";
|
||||||
|
url = "ssh://git@github.com/serokell/yt-utilities";
|
||||||
|
ref = "flake";
|
||||||
|
};
|
||||||
|
mobile-broadband-provider-info = {
|
||||||
|
type = "git";
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/mobile-broadband-provider-info";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
nixos-fhs-compat = {
|
||||||
|
type = "github";
|
||||||
|
owner = "balsoft";
|
||||||
|
repo = "nixos-fhs-compat";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
outputs = { nixpkgs, nix, self, ... }@inputs: {
|
outputs = { nixpkgs, nix, self, ... }@inputs: {
|
||||||
nixosConfigurations = with nixpkgs.lib;
|
nixosConfigurations = with nixpkgs.lib;
|
||||||
let
|
let
|
||||||
hosts = map (fname: builtins.head (builtins.match "(.*)\\.nix" fname))
|
hosts = map (fname: builtins.head (builtins.match "(.*)\\.nix" fname))
|
||||||
(builtins.attrNames (builtins.readDir ./hardware-configuration));
|
(builtins.attrNames (builtins.readDir ./hardware-configuration));
|
||||||
mkHost = name:
|
mkHost = name:
|
||||||
nixosSystem {
|
nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [ (import ./default.nix) ];
|
modules = [ (import ./default.nix) ];
|
||||||
specialArgs = { inherit inputs name; };
|
specialArgs = { inherit inputs name; };
|
||||||
};
|
};
|
||||||
in genAttrs hosts mkHost;
|
in genAttrs hosts mkHost;
|
||||||
legacyPackages.x86_64-linux =
|
legacyPackages.x86_64-linux =
|
||||||
(builtins.head (builtins.attrValues self.nixosConfigurations)).pkgs;
|
(builtins.head (builtins.attrValues self.nixosConfigurations)).pkgs;
|
||||||
|
|
||||||
|
# nix run github:serokell/deploy
|
||||||
|
# Because sudo requires local presence of my Yubikey, we have to manually activate the system
|
||||||
|
# sudo nix-env -p /nix/var/nix/profiles/system --set /nix/var/nix/profiles/per-user/balsoft/system;
|
||||||
|
# sudo /nix/var/nix/profiles/system/bin/switch-to-configuration switch
|
||||||
|
deploy = {
|
||||||
|
user = "balsoft";
|
||||||
|
nodes = builtins.mapAttrs (_: conf: {
|
||||||
|
hostname = conf.config.networking.hostName;
|
||||||
|
profiles.system.path = conf.config.system.build.toplevel;
|
||||||
|
}) self.nixosConfigurations;
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,9 @@
|
|||||||
|
|
||||||
;;; Code:
|
;;; Code:
|
||||||
|
|
||||||
|
(require 'package)
|
||||||
|
|
||||||
|
(package-initialize)
|
||||||
|
|
||||||
(eval-when-compile
|
(eval-when-compile
|
||||||
(require 'use-package))
|
(require 'use-package))
|
||||||
|
@ -37,6 +37,7 @@
|
|||||||
nix-patch
|
nix-patch
|
||||||
inputs.yt-utilities.defaultPackage.x86_64-linux
|
inputs.yt-utilities.defaultPackage.x86_64-linux
|
||||||
pass-wayland
|
pass-wayland
|
||||||
|
papirus-icon-theme
|
||||||
] ++ (with pkgs.kdeApplications; [
|
] ++ (with pkgs.kdeApplications; [
|
||||||
ark
|
ark
|
||||||
dolphin
|
dolphin
|
||||||
|
@ -49,8 +49,8 @@ in {
|
|||||||
gtk = {
|
gtk = {
|
||||||
enable = true;
|
enable = true;
|
||||||
iconTheme = {
|
iconTheme = {
|
||||||
name = "Adwaita";
|
name = "Papirus-Dark";
|
||||||
package = pkgs.gnome3.adwaita-icon-theme;
|
package = pkgs.papirus-icon-theme;
|
||||||
};
|
};
|
||||||
theme = {
|
theme = {
|
||||||
name = "Generated";
|
name = "Generated";
|
||||||
|
@ -8,7 +8,7 @@ with import ../../../support.nix { inherit lib config; }; {
|
|||||||
pkgs.flatpak
|
pkgs.flatpak
|
||||||
pkgs.firefox
|
pkgs.firefox
|
||||||
pkgs.systemd
|
pkgs.systemd
|
||||||
pkgs.gnome3.adwaita-icon-theme
|
pkgs.papirus-icon-theme
|
||||||
];
|
];
|
||||||
nixpkgs.config.firefox.enablePlasmaBrowserIntegration = true;
|
nixpkgs.config.firefox.enablePlasmaBrowserIntegration = true;
|
||||||
environment.sessionVariables = {
|
environment.sessionVariables = {
|
||||||
@ -127,7 +127,7 @@ with import ../../../support.nix { inherit lib config; }; {
|
|||||||
contrast = 4;
|
contrast = 4;
|
||||||
widgetStyle = "Breeze";
|
widgetStyle = "Breeze";
|
||||||
};
|
};
|
||||||
Icons = { Theme = "Adwaita"; };
|
Icons = { Theme = "Papirus-Dark"; };
|
||||||
};
|
};
|
||||||
home-manager.users.balsoft.home.activation."user-places.xbel" = {
|
home-manager.users.balsoft.home.activation."user-places.xbel" = {
|
||||||
data = ''
|
data = ''
|
||||||
|
Loading…
Reference in New Issue
Block a user