So I’ve been learning about overlays recently and I created one for wezterm which removes all x11 dependencies from the package since I am using wayland. When trying to switch to a flake which integrates it, I am having some trouble.
I was wondering 2 things
- Is there a more efficient way to declare all those arguments to be empty?
- How do I get Wezterm to compile without worrying about X11 dependencies?
The flake and the overlay are below with the input I get when building it.
# how to add an overlay to a flake in here
# https://nixos.wiki/wiki/Overlays#In_a_Nix_flake
{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-utils.url = github:numtide/flake-utils;
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
#for use in home-manager
hyprland.url = "github:hyprwm/Hyprland";
};
# add sops.nix
# and refactor flake for multiple machines
# including nix-darwin
# inspired by https://gitlab.com/rprospero/dotfiles/-/blob/master/flake.nix
#outputs = { self, nixpkgs, flake-utils, home-manager, sops-nix, hyprland }: {
outputs = { nixpkgs, ... } @inputs : {
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
# ...
system = "x86_64-linux"; #builtins.currentSystem;
specialArgs = { inherit inputs; };
modules = [
./configuration.nix
#stolen from https://rycee.gitlab.io/home-manager/index.html#sec-flakes-nixos-module
inputs.home-manager.nixosModules.home-manager
{
nixpkgs.overlays = [
(final: prev: { wezterm = prev.wezterm.override {
libX11 = "";
libxcb = "";
libxkbcommon = "";
xcbutil = "";
xcbutilimage = "";
xcbutilkeysyms = "";
xcbutilwm = "";
}; })
];
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.watashi = import ./home.nix;
}
];
};
homeConfigurations = {
"g0vib@m1" = inputs.home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages."aarch64-linux";
modules = [
./users/g0vib.nix
./users/common.nix
{
home = {
username = "g0vib";
homeDirectory = "/home/g0vib";
stateVersion = "23.05";
};
}
# install hyprland
inputs.hyprland.homeManagerModules.default
{
wayland.windowManager.hyprland = {
enable = true;
xwayland = {
enable = false;
};
};
}
];
};
};
};
}
Here is the output I get when trying to switch to a configuration with the overlay.
sudo nixos-rebuild switch --upgrade --flake flake.nix
path '/home/watashi/my-nixos/flake.nix' does not contain a 'flake.nix', searching up
warning: Git tree '/home/watashi/my-nixos' is dirty
building the system configuration...
path '/home/watashi/my-nixos/flake.nix' does not contain a 'flake.nix', searching up
warning: Git tree '/home/watashi/my-nixos' is dirty
error: builder for '/nix/store/91ym9rlxaw5f6j8qrb93qi8k4xxmk523-wezterm-20230712-072601-f4abf8fd.drv' failed with exit code 101;
last 10 log lines:
> Perhaps you should add the directory containing `x11.pc'
> to the PKG_CONFIG_PATH environment variable
> No package 'x11' found
> Package x11 was not found in the pkg-config search path.
> Perhaps you should add the directory containing `x11.pc'
> to the PKG_CONFIG_PATH environment variable
> No package 'x11' found
> ', /build/cargo-vendor-dir/x11-2.21.0/build.rs:42:14
> note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
> warning: build failed, waiting for other jobs to finish...
For full logs, run 'nix log /nix/store/91ym9rlxaw5f6j8qrb93qi8k4xxmk523-wezterm-20230712-072601-f4abf8fd.drv'.
error: 1 dependencies of derivation '/nix/store/db728wng2m25k9qldx73lfd6g06dhg79-hm_.zshrc.drv' failed to build
error: 1 dependencies of derivation '/nix/store/nd6cwxr0h416cscvyqym5vkb165yp1zp-home-manager-path.drv' failed to build
error: 1 dependencies of derivation '/nix/store/0nyaj0cw1y22897pbbj4migyxcp0xlz1-home-manager-generation.drv' failed to build
error: 1 dependencies of derivation '/nix/store/8315ch1vqz085h1ki3n4ljqrbppl4ihj-user-environment.drv' failed to build
error: 1 dependencies of derivation '/nix/store/kfsv0w87lqcc4cfa6ibl1mafw56h7d73-etc.drv' failed to build
error: 1 dependencies of derivation '/nix/store/5rayjrs9l6l8z5a2lgnkmbjgj7mja3w7-nixos-system-nixos-23.11.20230718.684c17c.drv' failed to build