update inputs
This commit is contained in:
parent
f0c596aaf1
commit
1a8c927f8b
84
flake.lock
84
flake.lock
|
@ -25,17 +25,16 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715922722,
|
"lastModified": 1718207749,
|
||||||
"narHash": "sha256-OhV4fwcVNHpztKPML03mGmOFkYQnkctEr/ckOI8uKzc=",
|
"narHash": "sha256-eay4Vw1V8HDOJvWw9V4wPp97j3EYIHmUFcB3tCkejX4=",
|
||||||
"owner": "chayleaf",
|
"owner": "chayleaf",
|
||||||
"repo": "coop-fd",
|
"repo": "coop-fd",
|
||||||
"rev": "442f5d91bebffbf3e7c83723e9bcda87d0adee52",
|
"rev": "8a8d6d2ae8583d5ee302ded5e3604726718125d2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "chayleaf",
|
"owner": "chayleaf",
|
||||||
"repo": "coop-fd",
|
"repo": "coop-fd",
|
||||||
"rev": "442f5d91bebffbf3e7c83723e9bcda87d0adee52",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -113,11 +112,11 @@
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712014858,
|
"lastModified": 1717285511,
|
||||||
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
|
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
|
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -205,11 +204,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712452624,
|
"lastModified": 1717896375,
|
||||||
"narHash": "sha256-R35K+4krhK5B2fcV6W2HFe/uhXmP8YGTb35uZ+nDAxw=",
|
"narHash": "sha256-qI8f1XSFo1X29+RSVmYo5hDAMKKULnpmIZbRl77u21A=",
|
||||||
"owner": "fufexan",
|
"owner": "fufexan",
|
||||||
"repo": "nix-gaming",
|
"repo": "nix-gaming",
|
||||||
"rev": "06314bbf8fedd83c7253442994a2f0c81d47988e",
|
"rev": "6ed58348c20bab127555a3645e832591d2611f0c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -225,11 +224,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712459390,
|
"lastModified": 1717919703,
|
||||||
"narHash": "sha256-e12bNDottaGoBgd0AdH/bQvk854xunlWAdZwr/oHO1c=",
|
"narHash": "sha256-4i/c31+dnpv6KdUA3BhbMDS9Lvg/CDin78caYJlq0bY=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nix-index-database",
|
"repo": "nix-index-database",
|
||||||
"rev": "4676d72d872459e1e3a248d049609f110c570e9a",
|
"rev": "a157a81d0a4bc909b2b6666dd71909bcdc8cd0d6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -240,11 +239,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712760404,
|
"lastModified": 1717828156,
|
||||||
"narHash": "sha256-4zhaEW1nB+nGbCNMjOggWeY5nXs/H0Y71q0+h+jdxoU=",
|
"narHash": "sha256-YvstO0lobf3JWQuAfZCLYRTROC2ZDEgtWeQtWbO49p4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "e1c4bac14beb8c409d0534382cf967171706b9d9",
|
"rev": "057a7996d012f342a38a26261ee529cebb1755ef",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -263,11 +262,11 @@
|
||||||
"utils": "utils"
|
"utils": "utils"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710449465,
|
"lastModified": 1717515088,
|
||||||
"narHash": "sha256-2orO8nfplp6uQJBFqKkj1iyNMC6TysmwbWwbb4osTag=",
|
"narHash": "sha256-nWOLpPA7+k7V1OjXTuxdsVd5jeeI0b13Di57wvnqkic=",
|
||||||
"owner": "simple-nixos-mailserver",
|
"owner": "simple-nixos-mailserver",
|
||||||
"repo": "nixos-mailserver",
|
"repo": "nixos-mailserver",
|
||||||
"rev": "79c8cfcd5873a85559da6201b116fb38b490d030",
|
"rev": "0d51a32e4799d081f260eb4db37145f5f4ee7456",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -298,11 +297,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717670519,
|
"lastModified": 1717922286,
|
||||||
"narHash": "sha256-4p8B6Iv55BUG+d4ZJRUBhx70yWnqYlJ2EGSxx3dk4nc=",
|
"narHash": "sha256-RsV7rNWYceglPDVgVukwYfoYK2fuAgyvyvSE/Gyah+Y=",
|
||||||
"owner": "chayleaf",
|
"owner": "chayleaf",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "411826c44e54583b30f767d76489e37dabf1707c",
|
"rev": "47c40a60d0952cd6b86c171898870142b0747602",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -311,24 +310,34 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-kernel": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "lib",
|
"lastModified": 1717974879,
|
||||||
"lastModified": 1711703276,
|
"narHash": "sha256-GTO3C88+5DX171F/gVS3Qga/hOs/eRMxPFpiHq2t+D8=",
|
||||||
"narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=",
|
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "d8fe5e6c92d0d190646fb9f1056741a229980089",
|
"rev": "c7b821ba2e1e635ba5a76d299af62821cbcb09f3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"dir": "lib",
|
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-lib": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1717284937,
|
||||||
|
"narHash": "sha256-lIbdfCsf8LMFloheeE6N31+BMIeixqyQWbSr2vk79EQ=",
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
"notlua": {
|
"notlua": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -336,11 +345,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1697413333,
|
"lastModified": 1718058511,
|
||||||
"narHash": "sha256-2nmu/+QhR/VhxFFr54l0Ok/yVhLCrrYVuTgeD4LHEhE=",
|
"narHash": "sha256-OjkGD9v9hfgIkToZXoXFzvBlXQg5Dp4+dmpZUATGYdA=",
|
||||||
"owner": "chayleaf",
|
"owner": "chayleaf",
|
||||||
"repo": "notlua",
|
"repo": "notlua",
|
||||||
"rev": "ef7cdb7a883fe87238c9fff13bc14ad1fd06f4ba",
|
"rev": "a8e09538d284f35aad88e1adc9c044f4163eadf8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -371,11 +380,11 @@
|
||||||
},
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712785619,
|
"lastModified": 1717921035,
|
||||||
"narHash": "sha256-1RCStMZUGqus3DAl7jivw7XM5jpbecfqWtA1r45Ts90=",
|
"narHash": "sha256-TxZv3M3M2EromaaJCbRKWWjrnk9DSeJ139K4DkJlhAg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "a0471f14e0499a66898fc1c7d5aff259a9fa58b9",
|
"rev": "02f829e2432d4204370445272084ce22761ba4bc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -397,6 +406,7 @@
|
||||||
"nixos-mailserver": "nixos-mailserver",
|
"nixos-mailserver": "nixos-mailserver",
|
||||||
"nixos-router": "nixos-router",
|
"nixos-router": "nixos-router",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-kernel": "nixpkgs-kernel",
|
||||||
"notlua": "notlua",
|
"notlua": "notlua",
|
||||||
"notnft": "notnft",
|
"notnft": "notnft",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
|
@ -411,11 +421,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712715149,
|
"lastModified": 1717899611,
|
||||||
"narHash": "sha256-uOx7GaLV+5hekAYtm/CBr627Pi7+d1Yh70hwKmVjYYo=",
|
"narHash": "sha256-9Z95F8lnY/5sOf7Z4IdABKz1ulB0ueNrZU864rQj280=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "9ef1eca23bee5fb8080863909af3802130b2ee57",
|
"rev": "1f536afad5c18ea4ae6bb592c3fef038e1e33568",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
37
flake.nix
37
flake.nix
|
@ -4,6 +4,7 @@
|
||||||
inputs = {
|
inputs = {
|
||||||
#nixpkgs.url = "github:NixOS/nixpkgs/3dc2b4f8166f744c3b3e9ff8224e7c5d74a5424f";
|
#nixpkgs.url = "github:NixOS/nixpkgs/3dc2b4f8166f744c3b3e9ff8224e7c5d74a5424f";
|
||||||
# nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
# nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
nixpkgs-kernel.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
nixpkgs.url = "github:chayleaf/nixpkgs";
|
nixpkgs.url = "github:chayleaf/nixpkgs";
|
||||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
||||||
nix-index-database = {
|
nix-index-database = {
|
||||||
|
@ -22,7 +23,7 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
coop-fd = {
|
coop-fd = {
|
||||||
url = "github:chayleaf/coop-fd/442f5d91bebffbf3e7c83723e9bcda87d0adee52";
|
url = "github:chayleaf/coop-fd";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
home-manager = {
|
home-manager = {
|
||||||
|
@ -94,30 +95,32 @@
|
||||||
# extended lib
|
# extended lib
|
||||||
lib = nixpkgs.lib // import ./lib.nix { inherit (nixpkgs) lib; };
|
lib = nixpkgs.lib // import ./lib.nix { inherit (nixpkgs) lib; };
|
||||||
# can't use callPackage ./pkgs here, idk why; use import instead
|
# can't use callPackage ./pkgs here, idk why; use import instead
|
||||||
overlay' = args: self: super: import ./pkgs ({
|
overlay' = args: self: super: import (if args.pluginsOverlay or false then ./pkgs/nix-plugins-overlay.nix else ./pkgs) ({
|
||||||
pkgs = super;
|
pkgs = super;
|
||||||
pkgs' = self;
|
pkgs' = self;
|
||||||
lib = super.lib;
|
lib = super.lib;
|
||||||
inherit inputs;
|
inherit inputs;
|
||||||
} // args);
|
} // args);
|
||||||
overlay = overlay' { };
|
overlay = overlay' { };
|
||||||
|
nix-plugins-overlay = overlay' { pluginsOverlay = true; };
|
||||||
|
all-overlays = [ nix-plugins-overlay overlay ];
|
||||||
# I override some settings down the line, but overlays always stay the same
|
# I override some settings down the line, but overlays always stay the same
|
||||||
mkPkgs = config: import nixpkgs (config // {
|
mkPkgs = config: import nixpkgs (config // {
|
||||||
overlays = config.overlays or [ ] ++ [ overlay ];
|
overlays = config.overlays or [ ] ++ all-overlays;
|
||||||
});
|
});
|
||||||
# this is actual config, it gets processed below
|
# this is actual config, it gets processed below
|
||||||
config = let
|
config = let
|
||||||
mkBpiR3 = args: config: config // {
|
mkBpiR3 = args: config: config // {
|
||||||
system = "aarch64-linux";
|
system = "aarch64-linux";
|
||||||
modules = config.modules or [ ] ++ [ (import ./system/devices/bpi-r3-router.nix args) ];
|
modules = config.modules or [ ] ++ [
|
||||||
|
(import ./system/devices/bpi-r3-router.nix args)
|
||||||
|
];
|
||||||
};
|
};
|
||||||
routerConfig = rec {
|
routerConfig = rec {
|
||||||
system = "aarch64-linux";
|
system = "aarch64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
{
|
{ _module.args.server-config = self.nixosConfigurations.server.config;
|
||||||
_module.args.server-config = self.nixosConfigurations.server.config;
|
_module.args.notnft = inputs.notnft.lib.${system}; }
|
||||||
_module.args.notnft = inputs.notnft.lib.${system};
|
|
||||||
}
|
|
||||||
inputs.nixos-router.nixosModules.default
|
inputs.nixos-router.nixosModules.default
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
@ -150,7 +153,10 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
in {
|
in {
|
||||||
overlays.default = overlay;
|
overlays = {
|
||||||
|
default = overlay;
|
||||||
|
nix-plugins = nix-plugins-overlay;
|
||||||
|
};
|
||||||
packages = lib.genAttrs [
|
packages = lib.genAttrs [
|
||||||
"x86_64-linux"
|
"x86_64-linux"
|
||||||
"aarch64-linux"
|
"aarch64-linux"
|
||||||
|
@ -187,13 +193,16 @@
|
||||||
inherit inputs lib;
|
inherit inputs lib;
|
||||||
hardware = inputs.nixos-hardware.nixosModules;
|
hardware = inputs.nixos-hardware.nixosModules;
|
||||||
} // args.specialArgs or { };
|
} // args.specialArgs or { };
|
||||||
modules = args.modules or [ ]
|
modules = [
|
||||||
++ [
|
{ _module.args = {
|
||||||
|
pkgs-kernel = import inputs.nixpkgs-kernel { inherit (args) system; overlays = all-overlays; };
|
||||||
|
}; }
|
||||||
(getPrivSys hostname)
|
(getPrivSys hostname)
|
||||||
{ networking.hostName = lib.mkDefault hostname;
|
{ networking.hostName = lib.mkDefault hostname;
|
||||||
nixpkgs.overlays = [ overlay ]; }
|
nixpkgs.overlays = all-overlays; }
|
||||||
inputs.impermanence.nixosModule
|
inputs.impermanence.nixosModule
|
||||||
]
|
]
|
||||||
|
++ args.modules or [ ]
|
||||||
++ map (x: ./system/modules/${x}) (builtins.attrNames (builtins.readDir ./system/modules))
|
++ map (x: ./system/modules/${x}) (builtins.attrNames (builtins.readDir ./system/modules))
|
||||||
# the following is NixOS home-manager module configuration. Currently unused, but I might start using it for some hosts later.
|
# the following is NixOS home-manager module configuration. Currently unused, but I might start using it for some hosts later.
|
||||||
++ lib.optionals (home != { } && home.common.enableNixosModule or false) [
|
++ lib.optionals (home != { } && home.common.enableNixosModule or false) [
|
||||||
|
@ -207,7 +216,7 @@
|
||||||
{ nixpkgs = home.common.nixpkgs or { };
|
{ nixpkgs = home.common.nixpkgs or { };
|
||||||
nix = home.common.nix or { }; }
|
nix = home.common.nix or { }; }
|
||||||
({ config, pkgs, lib, ...}: {
|
({ config, pkgs, lib, ...}: {
|
||||||
nixpkgs.overlays = [ overlay ];
|
nixpkgs.overlays = all-overlays;
|
||||||
nix.package = lib.mkDefault pkgs.nixForNixPlugins; })
|
nix.package = lib.mkDefault pkgs.nixForNixPlugins; })
|
||||||
(getPrivUser hostname username)
|
(getPrivUser hostname username)
|
||||||
];
|
];
|
||||||
|
@ -236,7 +245,7 @@
|
||||||
++ [
|
++ [
|
||||||
(getPrivUser hostname user)
|
(getPrivUser hostname user)
|
||||||
({ pkgs, lib, ... }: {
|
({ pkgs, lib, ... }: {
|
||||||
nixpkgs.overlays = [ overlay ];
|
nixpkgs.overlays = all-overlays;
|
||||||
nix.package = lib.mkDefault pkgs.nixForNixPlugins;
|
nix.package = lib.mkDefault pkgs.nixForNixPlugins;
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
|
@ -62,9 +62,9 @@
|
||||||
openrgb piper
|
openrgb piper
|
||||||
steam-run steam
|
steam-run steam
|
||||||
# faf-client
|
# faf-client
|
||||||
(osu-lazer-bin.override {
|
#(osu-lazer-bin.override {
|
||||||
command_prefix = "env SDL_VIDEODRIVER=wayland ${obs-studio-plugins.obs-vkcapture}/bin/obs-gamecapture";
|
#command_prefix = "env SDL_VIDEODRIVER=wayland ${obs-studio-plugins.obs-vkcapture}/bin/obs-gamecapture";
|
||||||
})
|
#})
|
||||||
taisei
|
taisei
|
||||||
techmino
|
techmino
|
||||||
(wrapOBS {
|
(wrapOBS {
|
||||||
|
|
|
@ -190,7 +190,7 @@
|
||||||
text/html; ${pkgs.w3m}/bin/w3m -dump -o document_charset=%{charset} -o display_link_number=1 '%s'; nametemplate=%s.html; copiousoutput
|
text/html; ${pkgs.w3m}/bin/w3m -dump -o document_charset=%{charset} -o display_link_number=1 '%s'; nametemplate=%s.html; copiousoutput
|
||||||
'';
|
'';
|
||||||
|
|
||||||
home.file.".cache/nix-index/files".source = assert config.xdg.cacheHome == "${config.home.homeDirectory}/.cache"; inputs.nix-index-database.legacyPackages.${pkgs.system}.database;
|
home.file.".cache/nix-index/files".source = assert config.xdg.cacheHome == "${config.home.homeDirectory}/.cache"; inputs.nix-index-database.packages.${pkgs.system}.nix-index-database;
|
||||||
|
|
||||||
systemd.user.tmpfiles.rules = builtins.map (file: "r! \"/home/${config.home.username}/${file}\"") [
|
systemd.user.tmpfiles.rules = builtins.map (file: "r! \"/home/${config.home.username}/${file}\"") [
|
||||||
".local/share/clipman.json"
|
".local/share/clipman.json"
|
||||||
|
|
|
@ -22,24 +22,24 @@
|
||||||
"pinned": false,
|
"pinned": false,
|
||||||
"src": {
|
"src": {
|
||||||
"name": null,
|
"name": null,
|
||||||
"sha256": "sha256-wCIffeayOy3kEwmIKB7e+NrliuSpKXoVYC334fxVB3U=",
|
"sha256": "sha256-4jh3mDm1GpR9tQBkzx9BRsJ5awNrBgRzylyRB04LqIE=",
|
||||||
"type": "url",
|
"type": "url",
|
||||||
"url": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton9-1/GE-Proton9-1.tar.gz"
|
"url": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton9-7/GE-Proton9-7.tar.gz"
|
||||||
},
|
},
|
||||||
"version": "GE-Proton9-1"
|
"version": "GE-Proton9-7"
|
||||||
},
|
},
|
||||||
"searxng": {
|
"searxng": {
|
||||||
"cargoLocks": null,
|
"cargoLocks": null,
|
||||||
"date": "2024-03-15",
|
"date": "2024-06-07",
|
||||||
"extract": null,
|
"extract": null,
|
||||||
"name": "searxng",
|
"name": "searxng",
|
||||||
"passthru": null,
|
"passthru": null,
|
||||||
"pinned": false,
|
"pinned": false,
|
||||||
"src": {
|
"src": {
|
||||||
"sha256": "sha256-BqVnp/lByAMr/LOCGkuXCYsomu9hRBGXK3DbBQX10TA=",
|
"sha256": "sha256-WWbpfZZei3kOdN607/J2M1oSzbPZKaLbsU5gO2kIc90=",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/searxng/searxng/archive/e2af3e49702f6fb40e1614f826544dc3b03bca2f.tar.gz"
|
"url": "https://github.com/searxng/searxng/archive/f5eb56b63f250c7804e5e1cf4426e550bc933906.tar.gz"
|
||||||
},
|
},
|
||||||
"version": "e2af3e49702f6fb40e1614f826544dc3b03bca2f"
|
"version": "f5eb56b63f250c7804e5e1cf4426e550bc933906"
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -12,19 +12,19 @@
|
||||||
};
|
};
|
||||||
proton-ge = {
|
proton-ge = {
|
||||||
pname = "proton-ge";
|
pname = "proton-ge";
|
||||||
version = "GE-Proton9-1";
|
version = "GE-Proton9-7";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton9-1/GE-Proton9-1.tar.gz";
|
url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton9-7/GE-Proton9-7.tar.gz";
|
||||||
sha256 = "sha256-wCIffeayOy3kEwmIKB7e+NrliuSpKXoVYC334fxVB3U=";
|
sha256 = "sha256-4jh3mDm1GpR9tQBkzx9BRsJ5awNrBgRzylyRB04LqIE=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
searxng = {
|
searxng = {
|
||||||
pname = "searxng";
|
pname = "searxng";
|
||||||
version = "e2af3e49702f6fb40e1614f826544dc3b03bca2f";
|
version = "f5eb56b63f250c7804e5e1cf4426e550bc933906";
|
||||||
src = fetchTarball {
|
src = fetchTarball {
|
||||||
url = "https://github.com/searxng/searxng/archive/e2af3e49702f6fb40e1614f826544dc3b03bca2f.tar.gz";
|
url = "https://github.com/searxng/searxng/archive/f5eb56b63f250c7804e5e1cf4426e550bc933906.tar.gz";
|
||||||
sha256 = "sha256-BqVnp/lByAMr/LOCGkuXCYsomu9hRBGXK3DbBQX10TA=";
|
sha256 = "sha256-WWbpfZZei3kOdN607/J2M1oSzbPZKaLbsU5gO2kIc90=";
|
||||||
};
|
};
|
||||||
date = "2024-03-15";
|
date = "2024-06-07";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,6 @@ let
|
||||||
sources = import ./_sources/generated.nix {
|
sources = import ./_sources/generated.nix {
|
||||||
inherit (pkgs) fetchgit fetchurl fetchFromGitHub dockerTools;
|
inherit (pkgs) fetchgit fetchurl fetchFromGitHub dockerTools;
|
||||||
};
|
};
|
||||||
nixForNixPlugins = pkgs.nixVersions.nix_2_18;
|
|
||||||
nur = import inputs.nur {
|
nur = import inputs.nur {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
nurpkgs = pkgs;
|
nurpkgs = pkgs;
|
||||||
|
@ -20,91 +19,7 @@ in
|
||||||
|
|
||||||
{
|
{
|
||||||
inherit (inputs.nix-gaming.packages.${pkgs.system}) faf-client osu-lazer-bin;
|
inherit (inputs.nix-gaming.packages.${pkgs.system}) faf-client osu-lazer-bin;
|
||||||
inherit nixForNixPlugins;
|
matrix-appservice-discord = pkgs.callPackage ./matrix-appservice-discord { inherit (pkgs) matrix-appservice-discord; };
|
||||||
nix = nixForNixPlugins;
|
|
||||||
nixVersions = pkgs.nixVersions // {
|
|
||||||
stable = nixForNixPlugins;
|
|
||||||
unstable = nixForNixPlugins;
|
|
||||||
};
|
|
||||||
matrix-appservice-discord = pkgs.matrix-appservice-discord.overrideAttrs (old: {
|
|
||||||
doCheck = false;
|
|
||||||
patches = (old.patches or []) ++ [
|
|
||||||
# https://github.com/matrix-org/matrix-appservice-discord/pull/917
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/eb989fa710e8db4ebc8f2ce36c6679ee6cbc1a44.patch";
|
|
||||||
hash = "sha256-GPeFDw3XujqXHJveHSsBHwHuG51vad50p55FX1Esq58=";
|
|
||||||
name = "set-missing-config-defaults.patch";
|
|
||||||
})
|
|
||||||
# https://github.com/matrix-org/matrix-appservice-discord/pull/918
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/a4cd5e3a6a2d544adac2a263e164671c8a9009d9.patch";
|
|
||||||
hash = "sha256-qQJ4V6/Ns2Msu8+X8JoEycuQ2Jc90TXulsuLLmPecGU=";
|
|
||||||
name = "dont-send-filenames.patch";
|
|
||||||
})
|
|
||||||
# https://github.com/matrix-org/matrix-appservice-discord/pull/878/
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/fc850ba2473973e28858449ec4020380470d78b2.patch";
|
|
||||||
hash = "sha256-Lq0FWmR08wLsoq4APRTokZzb7U2po98pgyxH4UR/9/M=";
|
|
||||||
name = "bridge-discord-replies-1.patch";
|
|
||||||
})
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/86388901fa44d5d0f9d3dec8727c18cc00d613e7.patch";
|
|
||||||
hash = "sha256-XcLbKJPmFZElzwU4YS8Md8dNLajddJPKmau0U65bp00=";
|
|
||||||
name = "bridge-discord-replies-2.patch";
|
|
||||||
})
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/8299c626188e676723a708e49635d2c4afa26ffa.patch";
|
|
||||||
hash = "sha256-ZfUwpJ21/m3QbktbxxHyO8Lcl/IuDhaSKQRXBEPeJBo=";
|
|
||||||
name = "bridge-discord-replies-3.patch";
|
|
||||||
})
|
|
||||||
# https://github.com/matrix-org/matrix-appservice-discord/pull/819
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/1c3223387aaf78ba5637f58ca57bd8206ad0446c.patch";
|
|
||||||
hash = "sha256-3hxyqjI9F4j/XBq/59b7c2PorYRN2mR4XZJjpygs9dI=";
|
|
||||||
name = "bridge-matrix-edits-1.patch";
|
|
||||||
})
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/f8e9449908b332d97f11932fb835552adca0aa5b.patch";
|
|
||||||
hash = "sha256-1qb4Zah1XKzxTpVJqOOqz+TiXMFmnsIMZeuqJQdqSIA=";
|
|
||||||
name = "bridge-matrix-edits-2.patch";
|
|
||||||
})
|
|
||||||
./matrix-appservice-discord/disable-attachment-forwarding-to-matrix.patch
|
|
||||||
];
|
|
||||||
});
|
|
||||||
# Various patches to change Nix version of existing packages so they don't error out because of nix-plugins in nix.conf
|
|
||||||
/*nix-plugins = (pkgs.nix-plugins.override { nix = nixForNixPlugins; }).overrideAttrs (old: {
|
|
||||||
version = "13.0.0";
|
|
||||||
patches = [
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
# pull 16
|
|
||||||
url = "https://github.com/chayleaf/nix-plugins/commit/8f945cadad7f2e60e8f308b2f498ec5e16961ede.patch";
|
|
||||||
hash = "sha256-pOogMtjXYkSDtXW12TmBpGr/plnizJtud2nP3q2UldQ=";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
});*/
|
|
||||||
harmonia = (pkgs.harmonia.override { nixVersions.nix_2_21 = nixForNixPlugins; }).overrideAttrs (old: rec {
|
|
||||||
version = "0.7.3";
|
|
||||||
src = old.src.override {
|
|
||||||
rev = "refs/tags/${old.pname}-v${version}";
|
|
||||||
hash = "sha256-XtnK54HvZMKZGSCrVD0FO5PQLMo3Vkj8ezUlsfqStq0=";
|
|
||||||
};
|
|
||||||
cargoDeps = pkgs.rustPlatform.importCargoLock { lockFile = "${src}/Cargo.lock"; };
|
|
||||||
});
|
|
||||||
nix-init = pkgs.nix-init.override { nix = nixForNixPlugins; };
|
|
||||||
nix-serve = pkgs.nix-serve.override { nix = nixForNixPlugins; };
|
|
||||||
nix-serve-ng = pkgs.nix-serve-ng.override { nix = nixForNixPlugins; };
|
|
||||||
hydra_unstable = (pkgs.hydra_unstable.override {
|
|
||||||
nix = nixForNixPlugins;
|
|
||||||
}).overrideAttrs (old: {
|
|
||||||
version = "2023-12-01";
|
|
||||||
# who cares about tests amirite
|
|
||||||
doCheck = false;
|
|
||||||
src = old.src.override {
|
|
||||||
rev = "4d1c8505120961f10897b8fe9a070d4e193c9a13";
|
|
||||||
hash = "sha256-vXTuE83GL15mgZHegbllVAsVdDFcWWSayPfZxTJN5ys=";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
nurl = pkgs.nurl.override { nix = nixForNixPlugins; };
|
|
||||||
|
|
||||||
buffyboard = pkgs.callPackage ./buffyboard { };
|
buffyboard = pkgs.callPackage ./buffyboard { };
|
||||||
clang-tools_latest = pkgs.clang-tools_16;
|
clang-tools_latest = pkgs.clang-tools_16;
|
||||||
|
@ -124,9 +39,11 @@ in
|
||||||
sha256 = "sha256-6vYbNmNJBCoU23nVculac24tHqH7F4AZVftIjL93WJU=";
|
sha256 = "sha256-6vYbNmNJBCoU23nVculac24tHqH7F4AZVftIjL93WJU=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
patches = [ ];
|
||||||
});
|
});
|
||||||
kvmfrOverlay = kvmfr: kvmfr.overrideAttrs (old: {
|
kvmfrOverlay = kvmfr: kvmfr.overrideAttrs (old: {
|
||||||
inherit (pkgs'.looking-glass-client) version src;
|
inherit (pkgs'.looking-glass-client) version src;
|
||||||
|
patches = [ ./looking-glass.patch ];
|
||||||
});
|
});
|
||||||
mobile-config-firefox = callPackage ./mobile-config-firefox { };
|
mobile-config-firefox = callPackage ./mobile-config-firefox { };
|
||||||
osu-wine = callPackage ./osu-wine { };
|
osu-wine = callPackage ./osu-wine { };
|
||||||
|
@ -176,7 +93,9 @@ in
|
||||||
qemu = pkgs'.qemu_7_ccache;
|
qemu = pkgs'.qemu_7_ccache;
|
||||||
stdenv = pkgs'.ccacheStdenv;
|
stdenv = pkgs'.ccacheStdenv;
|
||||||
};
|
};
|
||||||
|
ccachePkgs = import ./ccache.nix { inherit pkgs pkgs' lib sources; };
|
||||||
|
|
||||||
|
# hardware stuff
|
||||||
|
hw.bpi-r3 = import ../system/hardware/bpi-r3/pkgs.nix { inherit pkgs pkgs' lib sources; };
|
||||||
|
hw.oneplus-enchilada = import ../system/hardware/oneplus-enchilada/pkgs.nix { inherit inputs pkgs pkgs' lib sources; };
|
||||||
}
|
}
|
||||||
// import ./ccache.nix { inherit pkgs pkgs' lib sources; }
|
|
||||||
// import ../system/hardware/bpi-r3/pkgs.nix { inherit pkgs pkgs' lib sources; }
|
|
||||||
// import ../system/hardware/oneplus-enchilada/pkgs.nix { inherit inputs pkgs pkgs' lib sources; }
|
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
{
|
{
|
||||||
"fastforwardteam" = buildFirefoxXpiAddon {
|
"fastforwardteam" = buildFirefoxXpiAddon {
|
||||||
pname = "fastforwardteam";
|
pname = "fastforwardteam";
|
||||||
version = "0.2334";
|
version = "0.2383";
|
||||||
addonId = "addon@fastforward.team";
|
addonId = "addon@fastforward.team";
|
||||||
url = "https://addons.mozilla.org/firefox/downloads/file/4177101/fastforwardteam-0.2334.xpi";
|
url = "https://addons.mozilla.org/firefox/downloads/file/4258067/fastforwardteam-0.2383.xpi";
|
||||||
sha256 = "d790219622469f08316b41c0d01abf2b584a37fa87b45666a74bd30cffb95ed0";
|
sha256 = "eec6328df3df1afe2cb6a331f6907669d804235551ea766d48655f8f831caf28";
|
||||||
meta = with lib;
|
meta = with lib;
|
||||||
{
|
{
|
||||||
homepage = "https://fastforward.team";
|
homepage = "https://fastforward.team";
|
||||||
|
@ -23,10 +23,10 @@
|
||||||
};
|
};
|
||||||
"rikaitan" = buildFirefoxXpiAddon {
|
"rikaitan" = buildFirefoxXpiAddon {
|
||||||
pname = "rikaitan";
|
pname = "rikaitan";
|
||||||
version = "24.3.7.1";
|
version = "24.5.21.0";
|
||||||
addonId = "tatsu@autistici.org";
|
addonId = "tatsu@autistici.org";
|
||||||
url = "https://addons.mozilla.org/firefox/downloads/file/4246908/rikaitan-24.3.7.1.xpi";
|
url = "https://addons.mozilla.org/firefox/downloads/file/4291845/rikaitan-24.5.21.0.xpi";
|
||||||
sha256 = "db849343b029b2f1b510cc66032157502e3fe9e6168072d27e8aad9867b6ec17";
|
sha256 = "a2a94d88af04023f14daaafda1f6ca7a7197f2ab92ada08ee2e9e4292d57a391";
|
||||||
meta = with lib;
|
meta = with lib;
|
||||||
{
|
{
|
||||||
homepage = "https://github.com/Ajatt-Tools/rikaitan";
|
homepage = "https://github.com/Ajatt-Tools/rikaitan";
|
||||||
|
|
24
pkgs/looking-glass.patch
Normal file
24
pkgs/looking-glass.patch
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
diff --git a/kvmfr.c b/kvmfr.c
|
||||||
|
index 121aae5b..4c386f98 100644
|
||||||
|
--- a/kvmfr.c
|
||||||
|
+++ b/kvmfr.c
|
||||||
|
@@ -30,6 +30,7 @@
|
||||||
|
#include <linux/highmem.h>
|
||||||
|
#include <linux/memremap.h>
|
||||||
|
#include <linux/version.h>
|
||||||
|
+#include <linux/vmalloc.h>
|
||||||
|
|
||||||
|
#include <asm/io.h>
|
||||||
|
|
||||||
|
@@ -539,7 +540,11 @@ static int __init kvmfr_module_init(void)
|
||||||
|
if (kvmfr->major < 0)
|
||||||
|
goto out_free;
|
||||||
|
|
||||||
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 0)
|
||||||
|
kvmfr->pClass = class_create(THIS_MODULE, KVMFR_DEV_NAME);
|
||||||
|
+#else
|
||||||
|
+ kvmfr->pClass = class_create(KVMFR_DEV_NAME);
|
||||||
|
+#endif
|
||||||
|
if (IS_ERR(kvmfr->pClass))
|
||||||
|
goto out_unreg;
|
||||||
|
|
47
pkgs/matrix-appservice-discord/default.nix
Normal file
47
pkgs/matrix-appservice-discord/default.nix
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
{ matrix-appservice-discord, fetchpatch }:
|
||||||
|
|
||||||
|
matrix-appservice-discord.overrideAttrs (old: {
|
||||||
|
doCheck = false;
|
||||||
|
patches = (old.patches or []) ++ [
|
||||||
|
# https://github.com/matrix-org/matrix-appservice-discord/pull/917
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/eb989fa710e8db4ebc8f2ce36c6679ee6cbc1a44.patch";
|
||||||
|
hash = "sha256-GPeFDw3XujqXHJveHSsBHwHuG51vad50p55FX1Esq58=";
|
||||||
|
name = "set-missing-config-defaults.patch";
|
||||||
|
})
|
||||||
|
# https://github.com/matrix-org/matrix-appservice-discord/pull/918
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/a4cd5e3a6a2d544adac2a263e164671c8a9009d9.patch";
|
||||||
|
hash = "sha256-qQJ4V6/Ns2Msu8+X8JoEycuQ2Jc90TXulsuLLmPecGU=";
|
||||||
|
name = "dont-send-filenames.patch";
|
||||||
|
})
|
||||||
|
# https://github.com/matrix-org/matrix-appservice-discord/pull/878/
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/fc850ba2473973e28858449ec4020380470d78b2.patch";
|
||||||
|
hash = "sha256-Lq0FWmR08wLsoq4APRTokZzb7U2po98pgyxH4UR/9/M=";
|
||||||
|
name = "bridge-discord-replies-1.patch";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/86388901fa44d5d0f9d3dec8727c18cc00d613e7.patch";
|
||||||
|
hash = "sha256-XcLbKJPmFZElzwU4YS8Md8dNLajddJPKmau0U65bp00=";
|
||||||
|
name = "bridge-discord-replies-2.patch";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/8299c626188e676723a708e49635d2c4afa26ffa.patch";
|
||||||
|
hash = "sha256-ZfUwpJ21/m3QbktbxxHyO8Lcl/IuDhaSKQRXBEPeJBo=";
|
||||||
|
name = "bridge-discord-replies-3.patch";
|
||||||
|
})
|
||||||
|
# https://github.com/matrix-org/matrix-appservice-discord/pull/819
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/1c3223387aaf78ba5637f58ca57bd8206ad0446c.patch";
|
||||||
|
hash = "sha256-3hxyqjI9F4j/XBq/59b7c2PorYRN2mR4XZJjpygs9dI=";
|
||||||
|
name = "bridge-matrix-edits-1.patch";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/matrix-org/matrix-appservice-discord/commit/f8e9449908b332d97f11932fb835552adca0aa5b.patch";
|
||||||
|
hash = "sha256-1qb4Zah1XKzxTpVJqOOqz+TiXMFmnsIMZeuqJQdqSIA=";
|
||||||
|
name = "bridge-matrix-edits-2.patch";
|
||||||
|
})
|
||||||
|
./disable-attachment-forwarding-to-matrix.patch
|
||||||
|
];
|
||||||
|
})
|
46
pkgs/nix-plugins-overlay.nix
Normal file
46
pkgs/nix-plugins-overlay.nix
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
{ pkgs, pkgs', ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
nixForNixPlugins = pkgs.nixVersions.nix_2_18;
|
||||||
|
in {
|
||||||
|
inherit nixForNixPlugins;
|
||||||
|
nix = nixForNixPlugins;
|
||||||
|
nixVersions = pkgs.nixVersions // {
|
||||||
|
stable = nixForNixPlugins;
|
||||||
|
unstable = nixForNixPlugins;
|
||||||
|
};
|
||||||
|
# Various patches to change Nix version of existing packages so they don't error out because of nix-plugins in nix.conf
|
||||||
|
/*nix-plugins = (pkgs.nix-plugins.override { nix = nixForNixPlugins; }).overrideAttrs (old: {
|
||||||
|
version = "13.0.0";
|
||||||
|
patches = [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
# pull 16
|
||||||
|
url = "https://github.com/chayleaf/nix-plugins/commit/8f945cadad7f2e60e8f308b2f498ec5e16961ede.patch";
|
||||||
|
hash = "sha256-pOogMtjXYkSDtXW12TmBpGr/plnizJtud2nP3q2UldQ=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
});*/
|
||||||
|
harmonia = (pkgs.harmonia.override { nixVersions.nix_2_21 = nixForNixPlugins; }).overrideAttrs (old: rec {
|
||||||
|
version = "0.7.3";
|
||||||
|
src = old.src.override {
|
||||||
|
rev = "refs/tags/${old.pname}-v${version}";
|
||||||
|
hash = "sha256-XtnK54HvZMKZGSCrVD0FO5PQLMo3Vkj8ezUlsfqStq0=";
|
||||||
|
};
|
||||||
|
cargoDeps = pkgs'.rustPlatform.importCargoLock { lockFile = "${src}/Cargo.lock"; };
|
||||||
|
});
|
||||||
|
nix-init = pkgs.nix-init.override { nix = nixForNixPlugins; };
|
||||||
|
nix-serve = pkgs.nix-serve.override { nix = nixForNixPlugins; };
|
||||||
|
nix-serve-ng = pkgs.nix-serve-ng.override { nix = nixForNixPlugins; };
|
||||||
|
hydra_unstable = (pkgs.hydra_unstable.override {
|
||||||
|
nix = nixForNixPlugins;
|
||||||
|
}).overrideAttrs (old: {
|
||||||
|
version = "2023-12-01";
|
||||||
|
# who cares about tests amirite
|
||||||
|
doCheck = false;
|
||||||
|
src = old.src.override {
|
||||||
|
rev = "4d1c8505120961f10897b8fe9a070d4e193c9a13";
|
||||||
|
hash = "sha256-vXTuE83GL15mgZHegbllVAsVdDFcWWSayPfZxTJN5ys=";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
nurl = pkgs.nurl.override { nix = nixForNixPlugins; };
|
||||||
|
}
|
|
@ -1,4 +1,5 @@
|
||||||
{ pkgs
|
{ pkgs
|
||||||
|
, pkgs-kernel
|
||||||
, config
|
, config
|
||||||
, ... }:
|
, ... }:
|
||||||
|
|
||||||
|
@ -8,7 +9,7 @@
|
||||||
generic-extlinux-compatible.enable = true;
|
generic-extlinux-compatible.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.kernelPackages = pkgs.linuxPackagesFor (pkgs.buildLinuxWithCcache pkgs.linux_bpiR3);
|
boot.kernelPackages = pkgs-kernel.linuxPackagesFor (pkgs-kernel.ccachePkgs.buildLinuxWithCcache pkgs-kernel.hw.bpi-r3.linux);
|
||||||
|
|
||||||
hardware.deviceTree.enable = true;
|
hardware.deviceTree.enable = true;
|
||||||
hardware.deviceTree.filter = "mt7986a-bananapi-bpi-r3.dtb";
|
hardware.deviceTree.filter = "mt7986a-bananapi-bpi-r3.dtb";
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
, ... }:
|
, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
armTrustedFirmwareBpiR3 = { bootDevice, uboot ? null }: pkgs.buildArmTrustedFirmware rec {
|
mkArmTrustedFirmwareBpiR3 = { bootDevice, uboot ? null }: pkgs.buildArmTrustedFirmware rec {
|
||||||
inherit (sources.atf-bpir3) src;
|
inherit (sources.atf-bpir3) src;
|
||||||
patches = [ ./bpi-r3-atf-backport-mkimage-support.patch ];
|
patches = [ ./bpi-r3-atf-backport-mkimage-support.patch ];
|
||||||
extraMakeFlags = assert builtins.elem bootDevice [
|
extraMakeFlags = assert builtins.elem bootDevice [
|
||||||
|
@ -36,7 +36,7 @@ let
|
||||||
# CONFIG_DISTRO_DEFAULTS - surely this won't hurt, it adds autocomplete and stuff and doesn't weight much in the large scale of things
|
# CONFIG_DISTRO_DEFAULTS - surely this won't hurt, it adds autocomplete and stuff and doesn't weight much in the large scale of things
|
||||||
# CONFIG_SYS_BOOTM_LEN - increase max initrd? size
|
# CONFIG_SYS_BOOTM_LEN - increase max initrd? size
|
||||||
# CONFIG_ZSTD - allow zstd initrd
|
# CONFIG_ZSTD - allow zstd initrd
|
||||||
ubootConfig = storage: ''
|
mkUbootConfig = storage: ''
|
||||||
CONFIG_AUTOBOOT=y
|
CONFIG_AUTOBOOT=y
|
||||||
CONFIG_BOOTCOMMAND="${builtins.replaceStrings [ "\n" ] [ "; " ] ''
|
CONFIG_BOOTCOMMAND="${builtins.replaceStrings [ "\n" ] [ "; " ] ''
|
||||||
setenv boot_prefixes /@boot/ /@/ /boot/ /
|
setenv boot_prefixes /@boot/ /@/ /boot/ /
|
||||||
|
@ -61,9 +61,9 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
in rec {
|
in rec {
|
||||||
ubootBpiR3Sd = pkgs.buildUBoot {
|
sd.uboot = pkgs.buildUBoot {
|
||||||
defconfig = "mt7986a_bpir3_sd_defconfig";
|
defconfig = "mt7986a_bpir3_sd_defconfig";
|
||||||
extraConfig = ubootConfig "sd";
|
extraConfig = mkUbootConfig "sd";
|
||||||
src = ubootSrc;
|
src = ubootSrc;
|
||||||
version = ubootVersion;
|
version = ubootVersion;
|
||||||
extraMeta.platforms = [ "aarch64-linux" ];
|
extraMeta.platforms = [ "aarch64-linux" ];
|
||||||
|
@ -71,52 +71,52 @@ in rec {
|
||||||
patches = [ ./mt7986-default-bootcmd.patch ];
|
patches = [ ./mt7986-default-bootcmd.patch ];
|
||||||
filesToInstall = [ "u-boot.bin" ];
|
filesToInstall = [ "u-boot.bin" ];
|
||||||
};
|
};
|
||||||
ubootBpiR3Emmc = pkgs.buildUBoot {
|
emmc.uboot = pkgs.buildUBoot {
|
||||||
defconfig = "mt7986a_bpir3_emmc_defconfig";
|
defconfig = "mt7986a_bpir3_emmc_defconfig";
|
||||||
extraConfig = ubootConfig "emmc";
|
extraConfig = mkUbootConfig "emmc";
|
||||||
src = ubootSrc;
|
src = ubootSrc;
|
||||||
version = ubootVersion;
|
version = ubootVersion;
|
||||||
extraMeta.platforms = [ "aarch64-linux" ];
|
extraMeta.platforms = [ "aarch64-linux" ];
|
||||||
patches = [ ./mt7986-default-bootcmd.patch ];
|
patches = [ ./mt7986-default-bootcmd.patch ];
|
||||||
filesToInstall = [ "u-boot.bin" ];
|
filesToInstall = [ "u-boot.bin" ];
|
||||||
};
|
};
|
||||||
armTrustedFirmwareBpiR3Sd = armTrustedFirmwareBpiR3 { uboot = ubootBpiR3Sd; bootDevice = "sdmmc"; };
|
sd.armTrustedFirmware = mkArmTrustedFirmwareBpiR3 { inherit (sd) uboot; bootDevice = "sdmmc"; };
|
||||||
armTrustedFirmwareBpiR3Emmc = armTrustedFirmwareBpiR3 { uboot = ubootBpiR3Emmc; bootDevice = "emmc"; };
|
emmc.armTrustedFirmware = mkArmTrustedFirmwareBpiR3 { inherit (emmc) uboot; bootDevice = "emmc"; };
|
||||||
bpiR3StuffCombined = pkgs.stdenvNoCC.mkDerivation {
|
combinedStuff = pkgs.stdenvNoCC.mkDerivation {
|
||||||
name = "bpi-r3-stuff";
|
name = "bpi-r3-stuff";
|
||||||
unpackPhase = "true";
|
unpackPhase = "true";
|
||||||
buildPhase = "true";
|
buildPhase = "true";
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/sd
|
mkdir -p $out/sd
|
||||||
mkdir -p $out/emmc
|
mkdir -p $out/emmc
|
||||||
cp ${bpiR3StuffEmmc}/* $out/emmc
|
cp ${emmc.stuff}/* $out/emmc
|
||||||
cp ${bpiR3StuffSd}/* $out/sd
|
cp ${sd.stuff}/* $out/sd
|
||||||
'';
|
'';
|
||||||
fixupPhase = "true";
|
fixupPhase = "true";
|
||||||
};
|
};
|
||||||
bpiR3StuffEmmc = pkgs.stdenvNoCC.mkDerivation {
|
emmc.stuff = pkgs.stdenvNoCC.mkDerivation {
|
||||||
name = "bpi-r3-stuff-emmc";
|
name = "bpi-r3-stuff-emmc";
|
||||||
unpackPhase = "true";
|
unpackPhase = "true";
|
||||||
buildPhase = "true";
|
buildPhase = "true";
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
cp ${ubootBpiR3Emmc}/*.* $out
|
cp ${emmc.uboot}/*.* $out
|
||||||
cp ${armTrustedFirmwareBpiR3Emmc}/*.* $out
|
cp ${emmc.armTrustedFirmware}/*.* $out
|
||||||
'';
|
'';
|
||||||
fixupPhase = "true";
|
fixupPhase = "true";
|
||||||
};
|
};
|
||||||
bpiR3StuffSd = pkgs.stdenvNoCC.mkDerivation {
|
sd.stuff = pkgs.stdenvNoCC.mkDerivation {
|
||||||
name = "bpi-r3-stuff-sd";
|
name = "bpi-r3-stuff-sd";
|
||||||
unpackPhase = "true";
|
unpackPhase = "true";
|
||||||
buildPhase = "true";
|
buildPhase = "true";
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
cp ${ubootBpiR3Sd}/*.* $out
|
cp ${sd.uboot}/*.* $out
|
||||||
cp ${armTrustedFirmwareBpiR3Sd}/*.* $out
|
cp ${sd.armTrustedFirmware}/*.* $out
|
||||||
'';
|
'';
|
||||||
fixupPhase = "true";
|
fixupPhase = "true";
|
||||||
};
|
};
|
||||||
linux_bpiR3 = pkgs.linux_latest.override {
|
linux = pkgs.linux_latest.override {
|
||||||
ignoreConfigErrors = false;
|
ignoreConfigErrors = false;
|
||||||
# there's probably more enabled-by-default configs that are better left disabled, but whatever
|
# there's probably more enabled-by-default configs that are better left disabled, but whatever
|
||||||
structuredExtraConfig = with lib.kernel; {
|
structuredExtraConfig = with lib.kernel; {
|
||||||
|
@ -351,5 +351,5 @@ in rec {
|
||||||
XEN_PVHVM.tristate = lib.mkForce null; XEN_SAVE_RESTORE.tristate = lib.mkForce null; XEN_SYS_HYPERVISOR.tristate = lib.mkForce null;
|
XEN_PVHVM.tristate = lib.mkForce null; XEN_SAVE_RESTORE.tristate = lib.mkForce null; XEN_SYS_HYPERVISOR.tristate = lib.mkForce null;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
linuxPackages_bpiR3 = pkgs.linuxPackagesFor linux_bpiR3;
|
linuxPackages = pkgs.linuxPackagesFor linux;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{ pkgs
|
{ pkgs
|
||||||
|
, pkgs-kernel
|
||||||
, lib
|
, lib
|
||||||
, config
|
, config
|
||||||
, inputs
|
, inputs
|
||||||
|
@ -7,6 +8,8 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
cfg = config.phone;
|
cfg = config.phone;
|
||||||
|
hw = pkgs.hw.oneplus-enchilada;
|
||||||
|
hw-kernel = pkgs-kernel.hw.oneplus-enchilada;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
@ -27,16 +30,21 @@ in
|
||||||
|
|
||||||
config = lib.mkMerge [
|
config = lib.mkMerge [
|
||||||
{
|
{
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
(self: super: {
|
||||||
|
inherit (self.hw.oneplus-enchilada) pd-mapper qrtr rmtfs tqftpserv;
|
||||||
|
})
|
||||||
|
];
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
mobile.quirks.qualcomm.sdm845-modem.enable = true;
|
mobile.quirks.qualcomm.sdm845-modem.enable = true;
|
||||||
mobile.quirks.audio.alsa-ucm-meld = true;
|
mobile.quirks.audio.alsa-ucm-meld = true;
|
||||||
environment.systemPackages = [ pkgs.alsa-ucm-conf-enchilada ];
|
environment.systemPackages = [ hw.alsa-ucm-conf ];
|
||||||
systemd.services.q6voiced = {
|
systemd.services.q6voiced = {
|
||||||
description = "QDSP6 driver daemon";
|
description = "QDSP6 driver daemon";
|
||||||
after = [ "ModemManager.service" "dbus.socket" ];
|
after = [ "ModemManager.service" "dbus.socket" ];
|
||||||
wantedBy = [ "ModemManager.service" ];
|
wantedBy = [ "ModemManager.service" ];
|
||||||
requires = [ "dbus.socket" ];
|
requires = [ "dbus.socket" ];
|
||||||
serviceConfig.ExecStart = "${pkgs.q6voiced}/bin/q6voiced hw:0,6";
|
serviceConfig.ExecStart = "${hw.q6voiced}/bin/q6voiced hw:0,6";
|
||||||
};
|
};
|
||||||
# TODO when testing PipeWire instead of PulseAudio, the following is needed:
|
# TODO when testing PipeWire instead of PulseAudio, the following is needed:
|
||||||
# https://gitlab.freedesktop.org/pipewire/wireplumber/-/blob/master/docs/rst/daemon/configuration/migration.rst
|
# https://gitlab.freedesktop.org/pipewire/wireplumber/-/blob/master/docs/rst/daemon/configuration/migration.rst
|
||||||
|
@ -62,8 +70,8 @@ in
|
||||||
percentageAction = 3;
|
percentageAction = 3;
|
||||||
criticalPowerAction = "PowerOff";
|
criticalPowerAction = "PowerOff";
|
||||||
};
|
};
|
||||||
hardware.firmware = lib.mkAfter [ pkgs.firmware-oneplus-sdm845 ];
|
hardware.firmware = lib.mkAfter [ hw.firmware ];
|
||||||
boot.kernelPackages = lib.mkForce (pkgs.linuxPackagesFor pkgs.linux_enchilada_ccache);
|
boot.kernelPackages = lib.mkForce (pkgs-kernel.linuxPackagesFor hw-kernel.linux_ccache);
|
||||||
hardware.deviceTree.enable = true;
|
hardware.deviceTree.enable = true;
|
||||||
hardware.deviceTree.name = "qcom/sdm845-oneplus-enchilada.dtb";
|
hardware.deviceTree.name = "qcom/sdm845-oneplus-enchilada.dtb";
|
||||||
# loglevel=7 console=ttyMSM0,115200 is a way to delay boot
|
# loglevel=7 console=ttyMSM0,115200 is a way to delay boot
|
||||||
|
@ -79,7 +87,7 @@ in
|
||||||
"firmware-oneplus-sdm845"
|
"firmware-oneplus-sdm845"
|
||||||
"firmware-oneplus-sdm845-xz"
|
"firmware-oneplus-sdm845-xz"
|
||||||
];
|
];
|
||||||
system.build.uboot = pkgs.ubootImageEnchilada;
|
system.build.uboot = pkgs.ubootImage;
|
||||||
boot.initrd.includeDefaultModules = false;
|
boot.initrd.includeDefaultModules = false;
|
||||||
boot.initrd.availableKernelModules = [
|
boot.initrd.availableKernelModules = [
|
||||||
"sd_mod"
|
"sd_mod"
|
||||||
|
@ -187,7 +195,7 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.initrd.extraUtilsCommands = ''
|
boot.initrd.extraUtilsCommands = ''
|
||||||
copy_bin_and_libs ${pkgs.adbd}/bin/adbd
|
copy_bin_and_libs ${hw.adbd}/bin/adbd
|
||||||
cp -pv ${pkgs.glibc.out}/lib/libnss_files.so.* $out/lib
|
cp -pv ${pkgs.glibc.out}/lib/libnss_files.so.* $out/lib
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -222,7 +230,7 @@ in
|
||||||
description = "adb daemon";
|
description = "adb daemon";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = "${pkgs.adbd}/bin/adbd";
|
ExecStart = "${hw.adbd}/bin/adbd";
|
||||||
Restart = "always";
|
Restart = "always";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -35,7 +35,7 @@ in {
|
||||||
meta.license = lib.licenses.mit;
|
meta.license = lib.licenses.mit;
|
||||||
};
|
};
|
||||||
|
|
||||||
alsa-ucm-conf-enchilada = pkgs.stdenvNoCC.mkDerivation {
|
alsa-ucm-conf = pkgs.stdenvNoCC.mkDerivation {
|
||||||
pname = "alsa-ucm-conf-enchilada";
|
pname = "alsa-ucm-conf-enchilada";
|
||||||
version = "unstable-2022-12-08";
|
version = "unstable-2022-12-08";
|
||||||
src = pkgs.fetchFromGitLab {
|
src = pkgs.fetchFromGitLab {
|
||||||
|
@ -55,7 +55,7 @@ in {
|
||||||
meta.priority = -10;
|
meta.priority = -10;
|
||||||
};
|
};
|
||||||
|
|
||||||
ubootEnchilada = pkgs.buildUBoot {
|
uboot = pkgs.buildUBoot {
|
||||||
defconfig = "qcom_defconfig";
|
defconfig = "qcom_defconfig";
|
||||||
version = "unstable-2023-12-11";
|
version = "unstable-2023-12-11";
|
||||||
src = pkgs.fetchFromGitLab {
|
src = pkgs.fetchFromGitLab {
|
||||||
|
@ -73,7 +73,7 @@ in {
|
||||||
filesToInstall = [ "u-boot-nodtb.bin" "u-boot-dtb.bin" "u-boot.dtb" ];
|
filesToInstall = [ "u-boot-nodtb.bin" "u-boot-dtb.bin" "u-boot.dtb" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
ubootImageEnchilada = pkgs.stdenvNoCC.mkDerivation {
|
ubootImage = pkgs.stdenvNoCC.mkDerivation {
|
||||||
name = "u-boot-enchilada.img";
|
name = "u-boot-enchilada.img";
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
# available from mobile-nixos's overlay
|
# available from mobile-nixos's overlay
|
||||||
|
@ -97,13 +97,13 @@ in {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
firmware-oneplus-sdm845 = pkgs.stdenvNoCC.mkDerivation {
|
firmware = pkgs.stdenvNoCC.mkDerivation {
|
||||||
name = "firmware-oneplus-sdm845";
|
name = "firmware-oneplus-sdm845";
|
||||||
src = pkgs.fetchFromGitLab {
|
src = pkgs.fetchFromGitLab {
|
||||||
owner = "sdm845-mainline";
|
owner = "sdm845-mainline";
|
||||||
repo = "firmware-oneplus-sdm845";
|
repo = "firmware-oneplus-sdm845";
|
||||||
rev = "dc9c77f220d104d7224c03fcbfc419a03a58765e";
|
rev = "176ca713448c5237a983fb1f158cf3a5c251d775";
|
||||||
hash = "sha256-jrbWIS4T9HgBPYOV2MqPiRQCxGMDEfQidKw9Jn5pgBI=";
|
hash = "sha256-ZrBvYO+MY0tlamJngdwhCsI1qpA/2FXoyEys5FAYLj4=";
|
||||||
};
|
};
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
cp -a . "$out"
|
cp -a . "$out"
|
||||||
|
@ -119,13 +119,13 @@ in {
|
||||||
meta.license = lib.licenses.unfreeRedistributableFirmware;
|
meta.license = lib.licenses.unfreeRedistributableFirmware;
|
||||||
};
|
};
|
||||||
|
|
||||||
linux_enchilada = pkgs.linux_latest.override {
|
linux = pkgs.linux_latest.override {
|
||||||
# TODO: uncomment
|
# TODO: uncomment
|
||||||
# ignoreConfigErrors = false;
|
# ignoreConfigErrors = false;
|
||||||
kernelPatches = [
|
kernelPatches = [
|
||||||
{
|
{
|
||||||
name = "linux_6_8";
|
name = "linux_6_9";
|
||||||
patch = ./linux_6_8.patch;
|
patch = ./linux_6_9.patch;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "config_fixes";
|
name = "config_fixes";
|
||||||
|
@ -627,5 +627,5 @@ in {
|
||||||
XEN_PVHVM.tristate = lib.mkForce null; XEN_SAVE_RESTORE.tristate = lib.mkForce null; XEN_SYS_HYPERVISOR.tristate = lib.mkForce null;
|
XEN_PVHVM.tristate = lib.mkForce null; XEN_SAVE_RESTORE.tristate = lib.mkForce null; XEN_SYS_HYPERVISOR.tristate = lib.mkForce null;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
linux_enchilada_ccache = pkgs'.buildLinuxWithCcache pkgs'.linux_enchilada;
|
linux_ccache = pkgs'.ccachePkgs.buildLinuxWithCcache pkgs'.hw.oneplus-enchilada.linux;
|
||||||
}
|
}
|
||||||
|
|
|
@ -72,7 +72,7 @@ in {
|
||||||
};
|
};
|
||||||
services.nextcloud = {
|
services.nextcloud = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.nextcloud28;
|
package = pkgs.nextcloud29;
|
||||||
autoUpdateApps.enable = true;
|
autoUpdateApps.enable = true;
|
||||||
# TODO: use socket auth and remove the next line
|
# TODO: use socket auth and remove the next line
|
||||||
database.createLocally = false;
|
database.createLocally = false;
|
||||||
|
|
|
@ -133,7 +133,7 @@ in {
|
||||||
extraGroups = [ "wheel" ];
|
extraGroups = [ "wheel" ];
|
||||||
};
|
};
|
||||||
# nixos-hardware uses mkDefault here, so we use slightly higher priority
|
# nixos-hardware uses mkDefault here, so we use slightly higher priority
|
||||||
services.xserver.libinput.enable = mkForceDefault (!cfg.minimal);
|
services.libinput.enable = mkForceDefault (!cfg.minimal);
|
||||||
programs.fuse.userAllowOther = true;
|
programs.fuse.userAllowOther = true;
|
||||||
# autologin once after boot
|
# autologin once after boot
|
||||||
# --skip-login means directly call login instead of first asking for username
|
# --skip-login means directly call login instead of first asking for username
|
||||||
|
@ -190,6 +190,9 @@ in {
|
||||||
})
|
})
|
||||||
|
|
||||||
(lib.mkIf (!cfg.minimal) {
|
(lib.mkIf (!cfg.minimal) {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
unixtools.xxd
|
||||||
|
];
|
||||||
hardware.pulseaudio.enable = false;
|
hardware.pulseaudio.enable = false;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
|
|
Loading…
Reference in a new issue