adding nix-bitcoin

This commit is contained in:
Chris Cochrun 2022-09-18 05:43:46 -05:00
parent d7f84eb77b
commit 16b430074d
7 changed files with 174 additions and 160 deletions

View file

@ -39,46 +39,51 @@ Both include the home-manager module. Primarily I chose that route so that I cou
url = "github:vaxerski/Hyprland"; url = "github:vaxerski/Hyprland";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
emacs.url = "github:nix-community/emacs-overlay"; emacs = {
url = "github:nix-community/emacs-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-bitcoin = {
url = "github:fort-nix/nix-bitcoin/release";
};
}; };
outputs = { nixpkgs, nixpkgs-stable, home-manager, hyprland, emacs, ... }: outputs = { nixpkgs, nixpkgs-stable, home-manager, hyprland, emacs, nix-bitcoin, ... }:
let let
system = "x86_64-linux"; system = "x86_64-linux";
username = "chris"; username = "chris";
pkgsForSystem = import nixpkgs {
inherit system;
config = { allowUnfree = true; };
overlays = [
emacs.overlay
localOverlay = final: prev: { (self: super:
myAwesome = final.awesome.overrideAttrs (old: rec { {
pname = "myAwesome"; awesome = super.awesome.overrideAttrs (old: rec {
version = "git-20220508-c539e0e"; pname = "awesome";
src = prev.fetchFromGitHub { version = "git-20220614-3a54221";
src = super.fetchFromGitHub {
owner = "awesomeWM"; owner = "awesomeWM";
repo = "awesome"; repo = "awesome";
rev = "c539e0e4350a42f813952fc28dd8490f42d934b3"; rev = "3a542219f3bf129546ae79eb20e384ea28fa9798";
sha256 = "4z3w6iuv+Gw2xRvhv2AX4suO6dl82woJn0p1nkEx3uM="; sha256 = "4z3w6iuv+Gw2xRvhv2AX4suO6dl82woJn0p1nkEx3uM=";
}; };
patches = [];
}); });
qt5ct = final.qt5ct.overrideAttrs (old: rec { }
)
(self: super:
{
qt5ct = super.qt5ct.overrideAttrs (old: rec {
patches = (old.patches or []) ++ [ patches = (old.patches or []) ++ [
../../qt5ct.patch ../../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 {
inherit system;
config = { allowUnfree = true; };
# overlays = [
# hyprland.overlay
# localOverlay
# ];
}; };
lib = nixpkgs.lib; lib = nixpkgs.lib;
@ -88,7 +93,7 @@ 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 emacs; pkgs = pkgsForSystem;
modules = [ modules = [
./system/syl/configuration.nix ./system/syl/configuration.nix
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
@ -103,6 +108,7 @@ Both include the home-manager module. Primarily I chose that route so that I cou
}; };
kaladin = lib.nixosSystem { kaladin = lib.nixosSystem {
inherit system; inherit system;
pkgs = pkgsForSystem;
modules = [ modules = [
./system/kaladin/configuration.nix ./system/kaladin/configuration.nix
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
@ -117,6 +123,7 @@ Both include the home-manager module. Primarily I chose that route so that I cou
inherit system; inherit system;
modules = [ modules = [
./system/dalinar/configuration.nix ./system/dalinar/configuration.nix
nix-bitcoin.nixosModules.default
]; ];
}; };
}; };
@ -155,7 +162,7 @@ services.xserver = {
enable = true; enable = true;
windowManager.awesome = { windowManager.awesome = {
enable = true; enable = true;
package = pkgs.myAwesome; package = pkgs.awesome;
}; };
displayManager.sddm = { displayManager.sddm = {
enable = true; enable = true;
@ -644,15 +651,6 @@ Notice how I am including all of my software here. It may be a big file, but hav
<<lightlyshaders>> <<lightlyshaders>>
]; ];
nixpkgs.overlays = [
(import (builtins.fetchTarball {
url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz;
}))
<<overlays>>
];
services.emacs = { services.emacs = {
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 ]));
@ -1089,6 +1087,14 @@ Dalinar's config is of course server oriented.
# enableSSHSupport = true; # enableSSHSupport = true;
# }; # };
nix-bitcoin = {
generateSecrets = true;
operator = {
enable = true;
name = "chris";
};
};
# List services that you want to enable: # List services that you want to enable:
services.locate = { services.locate = {
@ -1109,6 +1115,19 @@ Dalinar's config is of course server oriented.
dataDir = "/storage/monero"; dataDir = "/storage/monero";
}; };
services.bitcoind = {
enable = true;
};
services.clightning = {
enable = true;
};
services.rtl = {
enable = true;
nodes.clightning.enable = true;
};
# DDCLIENT # DDCLIENT
services.ddclient = { services.ddclient = {
enable = true; enable = true;
@ -1203,6 +1222,10 @@ Dalinar's config is of course server oriented.
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "22.05"; # Did you read the comment? system.stateVersion = "22.05"; # Did you read the comment?
# The nix-bitcoin release version that your config is compatible with.
# When upgrading to a backwards-incompatible release, nix-bitcoin will display an
# an error and provide instructions for migrating your config to the new release.
nix-bitcoin.configVersion = "0.0.77";
} }
#+end_src #+end_src

View file

@ -3,14 +3,16 @@
"emacs": { "emacs": {
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
"nixpkgs": "nixpkgs" "nixpkgs": [
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1663242403, "lastModified": 1663410592,
"narHash": "sha256-Y0gpc46wE6nqp0Viv6qRK+lCBnwrrqkl3MmDGKVSH4A=", "narHash": "sha256-WkcXd6uAfSfJscflb2ivOPqCgCyQGo4nUkQwIUTXtjg=",
"owner": "nix-community", "owner": "nix-community",
"repo": "emacs-overlay", "repo": "emacs-overlay",
"rev": "6d21d47c97f12d1dcb7d1726a9a4ae22aad11442", "rev": "350a3df35560f727046192cefd19e0d7e496a652",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -42,11 +44,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1663227421, "lastModified": 1663328500,
"narHash": "sha256-8M2ZQPLQw0CUylKbF8pgDMQ5vxOH4i0rxwUhtPIsf7Q=", "narHash": "sha256-7n+J/exp8ky4dmk02y5a9R7CGmJvHpzrHMzfEkMtSWA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "5408e27961599b1350b651f88715daf6e67244a7", "rev": "5427f3d1f0ea4357cd4af0bffee7248d640c6ffc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -64,11 +66,11 @@
"wlroots": "wlroots" "wlroots": "wlroots"
}, },
"locked": { "locked": {
"lastModified": 1663169416, "lastModified": 1663413006,
"narHash": "sha256-BGN7XiiLx1D03L5j6OL7WPknxlt5cSejqfR+xQXpv5E=", "narHash": "sha256-eXLuq2YH/uYA6lVzZW5j+mW2c3jgrNuKbLxKLqXreyo=",
"owner": "vaxerski", "owner": "vaxerski",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "037d4ed422bb3bb34617f444a360a8abab6863cb", "rev": "151e013241e29d0f4f2619db17257343503e20ea",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -79,41 +81,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1663235518, "lastModified": 1663268520,
"narHash": "sha256-q8zLK6rK/CLXEguaPgm9yQJcY0VQtOBhAT9EV2UFK/A=", "narHash": "sha256-Jf6wkoMOhWUdx9d9UarWHExvOUDzVa98OsPYvbNLVYo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "2277e4c9010b0f27585eb0bed0a86d7cbc079354",
"type": "github"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1663067291,
"narHash": "sha256-1BTrqhLMamWf53sJobtMiUDI91PEw6xF8YEwg2VE8w4=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d86a4619b7e80bddb6c01bc01a954f368c56d1df", "rev": "823e2c9b0a0ec8b61b6583f48338072f137b6889",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-22.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1663087123,
"narHash": "sha256-cNIRkF/J4mRxDtNYw+9/fBNq/NOA2nCuPOa3EdIyeDs=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "9608ace7009ce5bc3aeb940095e01553e635cbc7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -123,12 +95,28 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-stable": {
"locked": {
"lastModified": 1663244735,
"narHash": "sha256-+EukKkeAx6ithOLM1u5x4D12ZFuoi6vpPYjhNDmLz1o=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "178fea1414ae708a5704490f4c49ec3320be9815",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-22.05",
"repo": "nixpkgs",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"emacs": "emacs", "emacs": "emacs",
"home-manager": "home-manager", "home-manager": "home-manager",
"hyprland": "hyprland", "hyprland": "hyprland",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs",
"nixpkgs-stable": "nixpkgs-stable" "nixpkgs-stable": "nixpkgs-stable"
} }
}, },

View file

@ -12,46 +12,51 @@
url = "github:vaxerski/Hyprland"; url = "github:vaxerski/Hyprland";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
emacs.url = "github:nix-community/emacs-overlay"; emacs = {
url = "github:nix-community/emacs-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-bitcoin = {
url = "github:fort-nix/nix-bitcoin/release";
};
}; };
outputs = { nixpkgs, nixpkgs-stable, home-manager, hyprland, emacs, ... }: outputs = { nixpkgs, nixpkgs-stable, home-manager, hyprland, emacs, nix-bitcoin, ... }:
let let
system = "x86_64-linux"; system = "x86_64-linux";
username = "chris"; username = "chris";
pkgsForSystem = import nixpkgs {
inherit system;
config = { allowUnfree = true; };
overlays = [
emacs.overlay
localOverlay = final: prev: { (self: super:
myAwesome = final.awesome.overrideAttrs (old: rec { {
pname = "myAwesome"; awesome = super.awesome.overrideAttrs (old: rec {
version = "git-20220508-c539e0e"; pname = "awesome";
src = prev.fetchFromGitHub { version = "git-20220614-3a54221";
src = super.fetchFromGitHub {
owner = "awesomeWM"; owner = "awesomeWM";
repo = "awesome"; repo = "awesome";
rev = "c539e0e4350a42f813952fc28dd8490f42d934b3"; rev = "3a542219f3bf129546ae79eb20e384ea28fa9798";
sha256 = "4z3w6iuv+Gw2xRvhv2AX4suO6dl82woJn0p1nkEx3uM="; sha256 = "4z3w6iuv+Gw2xRvhv2AX4suO6dl82woJn0p1nkEx3uM=";
}; };
patches = [];
}); });
qt5ct = final.qt5ct.overrideAttrs (old: rec { }
)
(self: super:
{
qt5ct = super.qt5ct.overrideAttrs (old: rec {
patches = (old.patches or []) ++ [ patches = (old.patches or []) ++ [
../../qt5ct.patch ../../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 {
inherit system;
config = { allowUnfree = true; };
# overlays = [
# hyprland.overlay
# localOverlay
# ];
}; };
lib = nixpkgs.lib; lib = nixpkgs.lib;
@ -61,7 +66,7 @@
nixosConfigurations = { nixosConfigurations = {
syl = lib.nixosSystem { syl = lib.nixosSystem {
inherit system; inherit system;
# inherit emacs; pkgs = pkgsForSystem;
modules = [ modules = [
./system/syl/configuration.nix ./system/syl/configuration.nix
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
@ -76,6 +81,7 @@
}; };
kaladin = lib.nixosSystem { kaladin = lib.nixosSystem {
inherit system; inherit system;
pkgs = pkgsForSystem;
modules = [ modules = [
./system/kaladin/configuration.nix ./system/kaladin/configuration.nix
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
@ -90,6 +96,7 @@
inherit system; inherit system;
modules = [ modules = [
./system/dalinar/configuration.nix ./system/dalinar/configuration.nix
nix-bitcoin.nixosModules.default
]; ];
}; };
}; };

View file

@ -5,8 +5,12 @@ export MOZ_ENABLE_WAYLAND=1
# exec ydotoold & # exec ydotoold &
# exec systemctl enable --user --now libinput-gestures & # exec systemctl enable --user --now libinput-gestures &
# exec emacs --daemon & # exec emacs --daemon &
# exec greenclip daemon &
exec systemctl --user restart nextcloud-client exec latte-dock &
exec systemctl --user restart emacs
sleep 5
systemctl --user restart jellyfin-mpv-shim.service &
systemctl --user restart nextcloud-client.service &
systemctl --user restart emacs.service &
exec greenclip daemon &

View file

@ -107,6 +107,14 @@
# enableSSHSupport = true; # enableSSHSupport = true;
# }; # };
nix-bitcoin = {
generateSecrets = true;
operator = {
enable = true;
name = "chris";
};
};
# List services that you want to enable: # List services that you want to enable:
services.locate = { services.locate = {
@ -127,6 +135,19 @@
dataDir = "/storage/monero"; dataDir = "/storage/monero";
}; };
services.bitcoind = {
enable = true;
};
services.clightning = {
enable = true;
};
services.rtl = {
enable = true;
nodes.clightning.enable = true;
};
# DDCLIENT # DDCLIENT
services.ddclient = { services.ddclient = {
enable = true; enable = true;
@ -221,4 +242,8 @@
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "22.05"; # Did you read the comment? system.stateVersion = "22.05"; # Did you read the comment?
# The nix-bitcoin release version that your config is compatible with.
# When upgrading to a backwards-incompatible release, nix-bitcoin will display an
# an error and provide instructions for migrating your config to the new release.
nix-bitcoin.configVersion = "0.0.77";
} }

View file

@ -68,7 +68,7 @@
enable = true; enable = true;
windowManager.awesome = { windowManager.awesome = {
enable = true; enable = true;
package = pkgs.myAwesome; package = pkgs.awesome;
}; };
displayManager.sddm = { displayManager.sddm = {
enable = true; enable = true;

View file

@ -66,7 +66,7 @@
enable = true; enable = true;
windowManager.awesome = { windowManager.awesome = {
enable = true; enable = true;
package = pkgs.myAwesome; package = pkgs.awesome;
}; };
displayManager.sddm = { displayManager.sddm = {
enable = true; enable = true;
@ -356,39 +356,6 @@
(libsForQt5.callPackage ../../LightlyShaders {}) (libsForQt5.callPackage ../../LightlyShaders {})
]; ];
nixpkgs.overlays = [
(import (builtins.fetchTarball {
url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz;
}))
(self: super:
{
myAwesome = super.awesome.overrideAttrs (old: rec {
pname = "myAwesome";
version = "git-20220614-3a54221";
src = super.fetchFromGitHub {
owner = "awesomeWM";
repo = "awesome";
rev = "3a542219f3bf129546ae79eb20e384ea28fa9798";
sha256 = "4z3w6iuv+Gw2xRvhv2AX4suO6dl82woJn0p1nkEx3uM=";
};
patches = [];
});
}
)
(self: super:
{
qt5ct = super.qt5ct.overrideAttrs (old: rec {
patches = (old.patches or []) ++ [
../../qt5ct.patch
];
});
}
)
];
services.emacs = { services.emacs = {
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 ]));