mesa-git, sway
This commit is contained in:
parent
2b4dfd663b
commit
11e50f4b7d
25 changed files with 551 additions and 7338 deletions
|
@ -1,12 +0,0 @@
|
|||
{
|
||||
nix = {
|
||||
settings = {
|
||||
substituters = [
|
||||
"https://nix-community.cachix.org"
|
||||
];
|
||||
trusted-public-keys = [
|
||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
{
|
||||
nix = {
|
||||
settings = {
|
||||
substituters = [
|
||||
"https://nix-gaming.cachix.org"
|
||||
];
|
||||
trusted-public-keys = [
|
||||
"nix-gaming.cachix.org-1:nbjlureqMbRAxR1gJ/f3hxemL9svXaZF/Ees8vCUUs4="
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -21,13 +21,15 @@
|
|||
boot = {
|
||||
loader.systemd-boot.enable = true;
|
||||
loader.efi.canTouchEfiVariables = true;
|
||||
kernelPackages = pkgs.linuxPackagesFor ( pkgs.linux_6_6 );
|
||||
kernelParams = [ "nouveau.config=NvGspRm=1" "quiet" ];
|
||||
kernelPackages = pkgs.linuxPackagesFor ( pkgs.linux_latest );
|
||||
};
|
||||
|
||||
# Enable flatpaks
|
||||
|
||||
services.flatpak.enable = true;
|
||||
programs.thefuck.enable = true;
|
||||
chaotic.mesa-git.enable = true;
|
||||
|
||||
environment.sessionVariables = {
|
||||
NIXPKGS_ALLOW_UNFREE="1";
|
||||
|
@ -61,7 +63,7 @@
|
|||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "unstable"; # "23.05"; # Did you read the comment?
|
||||
system.stateVersion = "23.05"; # "23.05"; # Did you read the comment?
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
|
|
481
flake.lock
481
flake.lock
|
@ -21,6 +21,152 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"attic": {
|
||||
"inputs": {
|
||||
"crane": [
|
||||
"chaotic",
|
||||
"crane"
|
||||
],
|
||||
"flake-compat": [
|
||||
"chaotic",
|
||||
"flake-compat"
|
||||
],
|
||||
"flake-utils": [
|
||||
"chaotic",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707922053,
|
||||
"narHash": "sha256-wSZjK+rOXn+UQiP1NbdNn5/UW6UcBxjvlqr2wh++MbM=",
|
||||
"rev": "6eabc3f02fae3683bffab483e614bebfcd476b21",
|
||||
"revCount": 193,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/zhaofengli/attic/0.1.193%2Brev-6eabc3f02fae3683bffab483e614bebfcd476b21/018da817-367d-75ac-bd41-470d92844bf2/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/zhaofengli/attic/0.1.%2A.tar.gz"
|
||||
}
|
||||
},
|
||||
"chaotic": {
|
||||
"inputs": {
|
||||
"attic": "attic",
|
||||
"compare-to": "compare-to",
|
||||
"conduit": "conduit",
|
||||
"crane": "crane",
|
||||
"fenix": "fenix",
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-schemas": "flake-schemas",
|
||||
"flake-utils": "flake-utils",
|
||||
"home-manager": "home-manager_2",
|
||||
"jovian": "jovian",
|
||||
"jujutsu": "jujutsu",
|
||||
"niri": "niri",
|
||||
"nix-filter": "nix-filter",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"systems": "systems_2",
|
||||
"yafas": "yafas"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709211633,
|
||||
"narHash": "sha256-0O6sAGJqVlbL2oatQPOqoefM7IFBfzXkr61JcOmmsdI=",
|
||||
"owner": "chaotic-cx",
|
||||
"repo": "nyx",
|
||||
"rev": "39b0ccd13d13867e27cb6e27511c621b8e414ac8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "chaotic-cx",
|
||||
"ref": "nyxpkgs-unstable",
|
||||
"repo": "nyx",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"compare-to": {
|
||||
"locked": {
|
||||
"lastModified": 1695341185,
|
||||
"narHash": "sha256-htO6DSbWyCgaDkxi7foPjXwJFPzGjVt3RRUbPSpNtZY=",
|
||||
"rev": "98b8e330823a3570d328720f87a1153f8a7f2224",
|
||||
"revCount": 2,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/chaotic-cx/nix-empty-flake/0.1.2%2Brev-98b8e330823a3570d328720f87a1153f8a7f2224/018aba35-d228-7fa9-b205-7616c89ef4e0/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/chaotic-cx/nix-empty-flake/%3D0.1.2.tar.gz"
|
||||
}
|
||||
},
|
||||
"conduit": {
|
||||
"inputs": {
|
||||
"attic": [
|
||||
"chaotic",
|
||||
"attic"
|
||||
],
|
||||
"crane": [
|
||||
"chaotic",
|
||||
"crane"
|
||||
],
|
||||
"fenix": [
|
||||
"chaotic",
|
||||
"fenix"
|
||||
],
|
||||
"flake-compat": [
|
||||
"chaotic",
|
||||
"flake-compat"
|
||||
],
|
||||
"flake-utils": [
|
||||
"chaotic",
|
||||
"flake-utils"
|
||||
],
|
||||
"nix-filter": [
|
||||
"chaotic",
|
||||
"nix-filter"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1708926554,
|
||||
"narHash": "sha256-NRfhf/+Scj23L6HysGoFT9+CQmegHCec91OxKFeSg+0=",
|
||||
"owner": "girlbossceo",
|
||||
"repo": "conduwuit",
|
||||
"rev": "ca281b21db6640890828d2b6db743e9db33cc012",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
"owner": "girlbossceo",
|
||||
"repo": "conduwuit",
|
||||
"type": "gitlab"
|
||||
}
|
||||
},
|
||||
"crane": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706473297,
|
||||
"narHash": "sha256-FbxuYIrHaXpsYCLtI1gCNJhd+qvERjPibXL3ctmVaCs=",
|
||||
"rev": "fe812ef0dad5bb93a56c599d318be176d080281d",
|
||||
"revCount": 493,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/ipetkov/crane/0.16.1/018d51be-1c17-765e-babc-c9e3bc8a5a14/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/ipetkov/crane/%2A.tar.gz"
|
||||
}
|
||||
},
|
||||
"darwin": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -43,7 +189,43 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fenix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-analyzer-src": "rust-analyzer-src"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706768574,
|
||||
"narHash": "sha256-4o6TMpzBHO659EiJTzd/EGQGUDdbgwKwhqf3u6b23U8=",
|
||||
"rev": "668102037129923cd0fc239d864fce71eabdc6a3",
|
||||
"revCount": 1762,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/nix-community/fenix/0.1.1762%2Brev-668102037129923cd0fc239d864fce71eabdc6a3/018d63bb-6455-7a2f-98c6-74a36b8216a4/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/nix-community/fenix/0.1.%2A.tar.gz"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"revCount": 57,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/edolstra/flake-compat/%2A.tar.gz"
|
||||
}
|
||||
},
|
||||
"flake-compat_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1673956053,
|
||||
|
@ -77,6 +259,40 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-schemas": {
|
||||
"locked": {
|
||||
"lastModified": 1693491534,
|
||||
"narHash": "sha256-ifw8Td8kD08J8DxFbYjeIx5naHcDLz7s2IFP3X42I/U=",
|
||||
"rev": "c702cbb663d6d70bbb716584a2ee3aeb35017279",
|
||||
"revCount": 21,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.1/018a4c59-80e1-708a-bb4d-854930c20f72/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.1.tar.gz"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": [
|
||||
"chaotic",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709126324,
|
||||
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
|
||||
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
|
||||
"revCount": 91,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/numtide/flake-utils/0.1.91%2Brev-d465f4819400de7c8d874d50b982301f28a84605/018defde-b702-7c49-9ad0-aa7e8781287b/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/numtide/flake-utils/0.1.%2A.tar.gz"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -98,10 +314,130 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1702537497,
|
||||
"narHash": "sha256-br4Z7OFEHWN8oOnKf40BoS6QFt1EyVLqwaVGBG7/DT8=",
|
||||
"rev": "7a88cdedbda35f808ed2f329a7a811e0511870f9",
|
||||
"revCount": 3192,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/nix-community/home-manager/0.1.3192%2Brev-7a88cdedbda35f808ed2f329a7a811e0511870f9/018c6725-7e9b-7e8e-bb57-f493c0e4f7dc/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/nix-community/home-manager/0.1.%2A.tar.gz"
|
||||
}
|
||||
},
|
||||
"jovian": {
|
||||
"inputs": {
|
||||
"nix-github-actions": "nix-github-actions",
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709142038,
|
||||
"narHash": "sha256-ZjP808isgLwuiqxSU1CYFyafm5GF80aYw1CXJbnVsgs=",
|
||||
"owner": "Jovian-Experiments",
|
||||
"repo": "Jovian-NixOS",
|
||||
"rev": "b83751a057acbb5f989193773841217ddc93d1f8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Jovian-Experiments",
|
||||
"repo": "Jovian-NixOS",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"jujutsu": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"chaotic",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709157367,
|
||||
"narHash": "sha256-PK/2Q4f5xZvqCj2sETsfL1AdazMYnaowACn34f6GV58=",
|
||||
"owner": "martinvonz",
|
||||
"repo": "jj",
|
||||
"rev": "e8f01ce19acd99c06ced9656eebfd0f8f5910a2a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "martinvonz",
|
||||
"repo": "jj",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"niri": {
|
||||
"inputs": {
|
||||
"crane": [
|
||||
"chaotic",
|
||||
"crane"
|
||||
],
|
||||
"fenix": [
|
||||
"chaotic",
|
||||
"fenix"
|
||||
],
|
||||
"flake-utils": [
|
||||
"chaotic",
|
||||
"flake-utils"
|
||||
],
|
||||
"nix-filter": [
|
||||
"chaotic",
|
||||
"nix-filter"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709185909,
|
||||
"narHash": "sha256-nmEqyuUisbdy/ZaWi/9lCwVtpU+lG2GXZWQYcKC7vl8=",
|
||||
"owner": "YaLTeR",
|
||||
"repo": "niri",
|
||||
"rev": "28977d1d3fd7883a7f757a1ba4e636bdacf9d0be",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "YaLTeR",
|
||||
"repo": "niri",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-filter": {
|
||||
"locked": {
|
||||
"lastModified": 1705332318,
|
||||
"narHash": "sha256-kcw1yFeJe9N4PjQji9ZeX47jg0p9A0DuU4djKvg1a7I=",
|
||||
"owner": "numtide",
|
||||
"repo": "nix-filter",
|
||||
"rev": "3449dc925982ad46246cfc36469baf66e1b64f17",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "nix-filter",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-gaming": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709168939,
|
||||
|
@ -117,6 +453,29 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-github-actions": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"jovian",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1690328911,
|
||||
"narHash": "sha256-fxtExYk+aGf2YbjeWQ8JY9/n9dwuEt+ma1eUFzF8Jeo=",
|
||||
"owner": "zhaofengli",
|
||||
"repo": "nix-github-actions",
|
||||
"rev": "96df4a39c52f53cb7098b923224d8ce941b64747",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "zhaofengli",
|
||||
"ref": "matrix-name",
|
||||
"repo": "nix-github-actions",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1703013332,
|
||||
|
@ -151,7 +510,37 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1702780907,
|
||||
"narHash": "sha256-blbrBBXjjZt6OKTcYX1jpe9SRof2P9ZYWPzq22tzXAA=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "1e2e384c5b7c50dbf8e9c441a9e58d85f408b01f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-23.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1709150264,
|
||||
"narHash": "sha256-HofykKuisObPUfj0E9CJVfaMhawXkYx3G8UIFR/XQ38=",
|
||||
"rev": "9099616b93301d5cf84274b184a3a5ec69e94e08",
|
||||
"revCount": 589696,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.1.589696%2Brev-9099616b93301d5cf84274b184a3a5ec69e94e08/018df3e5-846d-74da-b6a7-4656c4e990d6/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/NixOS/nixpkgs/0.1.%2A.tar.gz"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1708751719,
|
||||
"narHash": "sha256-0uWOKSpXJXmXswOvDM5Vk3blB74apFB6rNGWV5IjoN0=",
|
||||
|
@ -167,7 +556,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1709150264,
|
||||
"narHash": "sha256-HofykKuisObPUfj0E9CJVfaMhawXkYx3G8UIFR/XQ38=",
|
||||
|
@ -186,14 +575,59 @@
|
|||
"root": {
|
||||
"inputs": {
|
||||
"agenix": "agenix",
|
||||
"chaotic": "chaotic",
|
||||
"nix-gaming": "nix-gaming",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"swayfx": "swayfx"
|
||||
}
|
||||
},
|
||||
"rust-analyzer-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1706735270,
|
||||
"narHash": "sha256-IJk+UitcJsxzMQWm9pa1ZbJBriQ4ginXOlPyVq+Cu40=",
|
||||
"owner": "rust-lang",
|
||||
"repo": "rust-analyzer",
|
||||
"rev": "42cb1a2bd79af321b0cc503d2960b73f34e2f92b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "rust-lang",
|
||||
"ref": "nightly",
|
||||
"repo": "rust-analyzer",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"chaotic",
|
||||
"jujutsu",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"jujutsu",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707444620,
|
||||
"narHash": "sha256-P8kRkiJLFttN+hbAOlm11wPxUrQZqKle+QtVCqFiGXY=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "78503e9199010a4df714f29a4f9c00eb2ccae071",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"swayfx": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-compat": "flake-compat_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
|
@ -226,6 +660,45 @@
|
|||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"yafas": {
|
||||
"inputs": {
|
||||
"flake-schemas": [
|
||||
"chaotic",
|
||||
"flake-schemas"
|
||||
],
|
||||
"systems": [
|
||||
"chaotic",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1695926485,
|
||||
"narHash": "sha256-wNFFnItckgSs8XeYhhv8vlJs2WF09fSQaWgw4xkDqHQ=",
|
||||
"rev": "7772afd6686458ca0ddbc599a52cf5d337367653",
|
||||
"revCount": 4,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/UbiqueLambda/yafas/0.1.4%2Brev-7772afd6686458ca0ddbc599a52cf5d337367653/018add18-ebb4-72c6-93fe-d1d8da361703/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/UbiqueLambda/yafas/0.1.%2A.tar.gz"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
|
@ -3,8 +3,9 @@
|
|||
|
||||
inputs = {
|
||||
nixpkgs = {
|
||||
url = "github:NixOS/nixpkgs/nixos-unstable"; # git+file:///home/grimmauld/nixpkgs?ref=nixos-unstable";
|
||||
url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
};
|
||||
chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
|
||||
agenix.url = "github:ryantm/agenix";
|
||||
swayfx = {
|
||||
url = "github:WillPower3309/swayfx";
|
||||
|
@ -13,7 +14,7 @@
|
|||
nix-gaming.url = "github:fufexan/nix-gaming";
|
||||
};
|
||||
|
||||
outputs = inputs @ { self, agenix, nix-gaming, nixpkgs, swayfx, ... }: let
|
||||
outputs = inputs @ { self, agenix, nix-gaming, nixpkgs, chaotic, swayfx, ... }: let
|
||||
system = "x86_64-linux";
|
||||
|
||||
# pkg-overlays = import nixpkgs {
|
||||
|
@ -32,6 +33,7 @@
|
|||
# ({ config, pkgs, ... }: { nixpkgs.overlays = [ (import ./overlay.nix {inherit inputs system;} ) ]; })
|
||||
agenix.nixosModules.default
|
||||
nix-gaming.nixosModules.pipewireLowLatency
|
||||
chaotic.nixosModules.default
|
||||
# ./kernel.nix
|
||||
./configuration.nix
|
||||
# ./modules/accessibility.nix
|
||||
|
@ -53,6 +55,7 @@
|
|||
./modules/opengl.nix
|
||||
./modules/kvm.nix
|
||||
./modules/toolchains.nix
|
||||
./modules/tui.nix
|
||||
# ./cachix.nix
|
||||
{ environment.systemPackages = [ agenix.packages.${system}.default ]; }
|
||||
];
|
||||
|
|
|
@ -6,14 +6,13 @@
|
|||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
./modules/nvidia.nix
|
||||
# ./modules/nvidia.nix
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.kernelParams = [ "quiet" ]; # no more explicit modeset since 545
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/3a4a7076-98e7-4ecd-bb07-7e182a04ceac";
|
||||
|
|
44
kernel.nix
44
kernel.nix
|
@ -1,44 +0,0 @@
|
|||
{ config, pkgs, fetchpatch, ... }:
|
||||
{
|
||||
boot.kernelPackages = let
|
||||
# nixpkgs.localSystem = {
|
||||
# gcc.arch = "icelake-client";
|
||||
# gcc.tune = "icelake-client";
|
||||
# system = "x86_64-linux";
|
||||
# };
|
||||
linux_custom_pkg = { fetchurl, buildLinux, ... } @ args:
|
||||
buildLinux (args // rec {
|
||||
version = "6.6.4-clearlinux";
|
||||
modDirVersion = "6.6.4";
|
||||
allowImportFromDerivation = true;
|
||||
|
||||
# src = fetchurl {
|
||||
# url = "mirror://kernel/linux/kernel/v6.x/linux-6.6.4.tar.xz";
|
||||
# sha256 = "SeSWYMk9jW1Y8Rg2DTyoExaV7DRmkmPKjwQch22pPkU=";
|
||||
# };
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner="clearlinux-pkgs";
|
||||
repo="linux";
|
||||
rev="6.6.4-1389";
|
||||
hash="sha256-hCdhE9nqby86k4u8g8zBiMy5R7v/YeVlKMSs871d6Ak=";
|
||||
};
|
||||
|
||||
extraMakeFlags = [
|
||||
"-j 10"
|
||||
"-l"
|
||||
# "CXXFLAGS='-O3' CFLAGS='-O3' KCFLAGS='-O3' KCPPFLAGS='-O3'"
|
||||
];
|
||||
|
||||
kernelPatches = [
|
||||
# pkgs.kernelPatches.bridge_stp_helper
|
||||
# pkgs.kernelPatches.modinst_arg_list_too_long
|
||||
];
|
||||
|
||||
extraConfig = ''
|
||||
'';
|
||||
|
||||
} // (args.argsOverride or {}));
|
||||
linux_custom = pkgs.callPackage linux_custom_pkg{};
|
||||
in
|
||||
pkgs.recurseIntoAttrs (pkgs.linuxPackagesFor linux_custom);
|
||||
}
|
6239
modules/Cargo.lock
generated
6239
modules/Cargo.lock
generated
File diff suppressed because it is too large
Load diff
|
@ -1,11 +0,0 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
environment.sessionVariables = {
|
||||
QT_ACCESSIBILITY="1";
|
||||
};
|
||||
environment.systemPackages = with pkgs; [
|
||||
orca # screenreader
|
||||
kmag # magnifier
|
||||
|
||||
];
|
||||
}
|
|
@ -1,8 +1,13 @@
|
|||
{ ... }:
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
virtualisation.libvirtd.enable = true;
|
||||
programs.virt-manager.enable = true;
|
||||
|
||||
virtualisation.libvirtd.qemu.ovmf.packages = [
|
||||
# pkgs.pkgsCross.aarch64-multiplatform.OVMF.fd # AAVMF
|
||||
pkgs.OVMF.fd
|
||||
];
|
||||
virtualisation.spiceUSBRedirection.enable = true;
|
||||
# security.wrappers.spice-client-glib-usb-acl-helper.source = "${pkgs.spice_gtk}/bin/spice-client-glib-usb-acl-helper";
|
||||
# home manager
|
||||
# dconf.settings = {
|
||||
# "org/virt-manager/virt-manager/connections" = {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
jetbrains.clion
|
||||
jetbrains.pycharm-community
|
||||
jetbrains.idea-community
|
||||
cudatoolkit_11
|
||||
# cudatoolkit_11
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
{
|
||||
boot.extraModulePackages = [ config.boot.kernelPackages.nvidia_x11 ];
|
||||
hardware.nvidia = {
|
||||
# Modesetting is required.
|
||||
modesetting.enable = true;
|
||||
|
@ -17,7 +18,7 @@ hardware.nvidia = {
|
|||
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
|
||||
# Only available from driver 515.43.04+
|
||||
# Currently alpha-quality/buggy, so false is currently the recommended setting.
|
||||
open = false;
|
||||
open = true;
|
||||
|
||||
# Enable the Nvidia settings menu,
|
||||
# accessible via `nvidia-settings`.
|
||||
|
@ -29,6 +30,10 @@ hardware.nvidia = {
|
|||
|
||||
hardware.nvidia.prime = {
|
||||
sync.enable = true;
|
||||
# offload = {
|
||||
# enable = true;
|
||||
# enableOffloadCmd = true;
|
||||
# };
|
||||
|
||||
# Make sure to use the correct Bus ID values for your system!
|
||||
intelBusId = "PCI:0:2:0";
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
{
|
||||
{pkgs, ...}: {
|
||||
# Enable OpenGL
|
||||
hardware.opengl = {
|
||||
enable = true;
|
||||
driSupport = true;
|
||||
driSupport32Bit = true;
|
||||
extraPackages = with pkgs; [];
|
||||
};
|
||||
|
||||
environment.sessionVariables = {
|
||||
|
@ -12,5 +13,7 @@
|
|||
__GL_SYNC_TO_VBLANK = "0";
|
||||
__GL_THREADED_OPTIMIZATIONS = "1";
|
||||
__GL_VRR_ALLOWED = "1";
|
||||
# MESA_LOADER_DRIVER_OVERRIDE="zink";
|
||||
# FLATPAK_GL_DRIVERS="mesa-git";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
{pkgs, lib, config, ...} : {
|
||||
environment.systemPackages = with pkgs; [
|
||||
sunshine
|
||||
];
|
||||
|
||||
security.wrappers = {
|
||||
sunshine = {
|
||||
owner = "root";
|
||||
group = "root";
|
||||
capabilities = "cap_sys_admin+p";
|
||||
source = "${pkgs.sunshine}/bin/sunshine";
|
||||
};
|
||||
};
|
||||
|
||||
services.udev.packages = with pkgs; [
|
||||
(writeTextDir "lib/udev/rules.d/85-sunshine.rules" ''KERNEL=="uinput", SUBSYSTEM=="misc", OPTIONS+="static_node=uinput", TAG+="uaccess"'')
|
||||
];
|
||||
}
|
|
@ -37,6 +37,9 @@
|
|||
waybar
|
||||
dmenu
|
||||
wmenu
|
||||
grim
|
||||
slurp
|
||||
wofi
|
||||
];
|
||||
extraOptions = [
|
||||
"--unsupported-gpu"
|
||||
|
@ -48,6 +51,7 @@
|
|||
export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
|
||||
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||
export MOZ_ENABLE_WAYLAND=1
|
||||
# export MESA_LOADER_DRIVER_OVERRIDE="zink"
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,10 +1,4 @@
|
|||
{pkgs, ...}: {
|
||||
virtualisation.libvirtd.qemu.ovmf.packages = [
|
||||
# pkgs.pkgsCross.aarch64-multiplatform.OVMF.fd # AAVMF
|
||||
pkgs.OVMF.fd
|
||||
];
|
||||
virtualisation.spiceUSBRedirection.enable = true;
|
||||
# security.wrappers.spice-client-glib-usb-acl-helper.source = "${pkgs.spice_gtk}/bin/spice-client-glib-usb-acl-helper";
|
||||
programs.droidcam.enable = true;
|
||||
environment.systemPackages = with pkgs; [
|
||||
spice-gtk
|
||||
|
@ -43,6 +37,7 @@ export __NV_PRIME_RENDER_OFFLOAD=1
|
|||
export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0
|
||||
export __GLX_VENDOR_LIBRARY_NAME=nvidia
|
||||
export __VK_LAYER_NV_optimus=NVIDIA_only
|
||||
export DRI_PRIME=1
|
||||
exec "$@"
|
||||
'')
|
||||
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
{ ... }:
|
||||
{
|
||||
|
||||
}
|
|
@ -1,161 +0,0 @@
|
|||
{ lib
|
||||
, rustPlatform
|
||||
, stdenvNoCC
|
||||
, fetchFromGitHub
|
||||
, fetchYarnDeps
|
||||
, wrapGAppsHook
|
||||
, esbuild
|
||||
, glib-networking
|
||||
, nodejs
|
||||
, openssl
|
||||
, pkg-config
|
||||
, pnpm-lock-export
|
||||
, prefetch-yarn-deps
|
||||
, webkitgtk
|
||||
, yarn
|
||||
, makeDesktopItem
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "theseus";
|
||||
version = "0.6.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "modrinth";
|
||||
repo = "theseus";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-ted5EBlF1IRpWo//wOxgPHrGKLphqAPQ0R3q14DpUS4=";
|
||||
|
||||
nativeBuildInputs = [ pnpm-lock-export ];
|
||||
postFetch = ''
|
||||
(cd $out/theseus_gui && pnpm-lock-export --schema yarn.lock@v1)
|
||||
'';
|
||||
};
|
||||
|
||||
frontend = stdenvNoCC.mkDerivation {
|
||||
pname = "theseus-ui";
|
||||
|
||||
inherit version src;
|
||||
|
||||
sourceRoot = "${src.name}/theseus_gui";
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
yarnLock = "${src}/theseus_gui/yarn.lock";
|
||||
hash = "sha256-2ywL7K2rEl3tR4KLhxDPzG7ixGWDFjg2S5RTBT+SOWQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs
|
||||
yarn
|
||||
prefetch-yarn-deps
|
||||
];
|
||||
|
||||
env.ESBUILD_BINARY_PATH = lib.getExe (esbuild.overrideAttrs (final: _: {
|
||||
version = "0.17.19";
|
||||
src = fetchFromGitHub {
|
||||
owner = "evanw";
|
||||
repo = "esbuild";
|
||||
rev = "v${final.version}";
|
||||
hash = "sha256-PLC7OJLSOiDq4OjvrdfCawZPfbfuZix4Waopzrj8qsU=";
|
||||
};
|
||||
goModules = esbuild.goModules.overrideAttrs ({
|
||||
inherit (final) src;
|
||||
outputHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ=";
|
||||
});
|
||||
}));
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace yarn.lock --replace \
|
||||
'tauri-plugin-window-state-api@0.0.0' \
|
||||
'tauri-plugin-window-state-api@github:tauri-apps/tauri-plugin-window-state#v1'
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
|
||||
export HOME=$(mktemp -d)
|
||||
yarn config --offline set yarn-offline-mirror $offlineCache
|
||||
fixup-yarn-lock yarn.lock
|
||||
yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
|
||||
patchShebangs node_modules/
|
||||
|
||||
runHook postConfigure
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
yarn --offline build
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
cp -r dist $out
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = pname;
|
||||
desktopName = "Modrinth Theseus Launcher";
|
||||
exec = "theseus_gui";
|
||||
icon = pname;
|
||||
comment = description;
|
||||
categories = [ "Game" ];
|
||||
startupNotify = false;
|
||||
};
|
||||
|
||||
description = "Modrinth game launcher";
|
||||
in
|
||||
rustPlatform.buildRustPackage {
|
||||
inherit pname version src frontend description;
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"tauri-plugin-single-instance-0.0.0" = "sha256-G4h2OXKPpZMmradutdUWxGG5axL9XMz2ACAe8AQ40eg=";
|
||||
};
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapGAppsHook
|
||||
pkg-config
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
install -Dm0644 {${desktopItem},$out}/share/applications/${pname}.desktop
|
||||
|
||||
pushd ${src}/theseus_gui/src-tauri/icons
|
||||
for file in *.png; do
|
||||
install -Dm0644 $file $out/share/icons/hicolor/''${file//.png}/apps/${pname}.png
|
||||
done
|
||||
popd
|
||||
wrapProgram $out/bin/theseus_gui --set WEBKIT_DISABLE_COMPOSITING_MODE 1 # X11 is weird, this is required for some reason....
|
||||
'';
|
||||
|
||||
buildInputs = [
|
||||
openssl
|
||||
webkitgtk
|
||||
glib-networking
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
ln -s $frontend theseus_gui/dist
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
inherit description;
|
||||
longDescription = ''
|
||||
A game launcher which can be used as a CLI, GUI, and a library for creating and playing modrinth projects.
|
||||
'';
|
||||
homepage = "https://github.com/modrinth/theseus";
|
||||
changelog = "https://github.com/modrinth/theseus/releases/tag/v${version}";
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.grimmauld ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -66,7 +66,7 @@ in {
|
|||
# mason-nvim
|
||||
# mason-lspconfig-nvim
|
||||
# coc-rust-analyzer
|
||||
rust-tools-nvim
|
||||
# rust-tools-nvim
|
||||
vim-vsnip
|
||||
cmp-path
|
||||
cmp-nvim-lsp-signature-help
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
{pkgs, }: {
|
||||
{pkgs, ... }: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
fbcat
|
||||
gomuks
|
||||
bluetuith
|
||||
spotify-tui
|
||||
ranger
|
||||
alacritty
|
||||
];
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
extraGroups = [ "networkmanager" "wheel" "input" "video" "lp" "scanner" "libvirtd" "pipewire" ];
|
||||
packages = with pkgs; [
|
||||
webcord
|
||||
discord
|
||||
heroic
|
||||
plasma-browser-integration
|
||||
pdfarranger
|
||||
|
@ -24,9 +25,8 @@
|
|||
prusa-slicer
|
||||
freecad
|
||||
openscad
|
||||
prismlauncher
|
||||
# blender
|
||||
gomuks
|
||||
fbcat
|
||||
wootility
|
||||
# (callPackage ./theseus-modrinth.nix {})
|
||||
# osu-lazer-bin
|
||||
|
@ -41,5 +41,12 @@
|
|||
})
|
||||
];
|
||||
};
|
||||
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
gamescopeSession.enable = true;
|
||||
gamescopeSession.env = { DRI_PRIME = "1"; };
|
||||
};
|
||||
|
||||
services.udev.packages = [ pkgs.wooting-udev-rules ];
|
||||
}
|
||||
|
|
|
@ -5,9 +5,28 @@
|
|||
wlr.enable = true;
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-wlr
|
||||
# xdg-desktop-portal-kde
|
||||
# xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-kde
|
||||
xdg-desktop-portal-gtk
|
||||
];
|
||||
wlr.settings = {
|
||||
screencastExternal = {
|
||||
output_name = "HDMI-A-1";
|
||||
max_fps = 60;
|
||||
# exec_before = "disable_notifications.sh";
|
||||
# exec_after = "enable_notifications.sh";
|
||||
chooser_type = "simple";
|
||||
chooser_cmd = "${pkgs.slurp}/bin/slurp -f %o -or";
|
||||
};
|
||||
screencastInternal = {
|
||||
output_name = "eDP-1";
|
||||
max_fps = 144;
|
||||
# exec_before = "disable_notifications.sh";
|
||||
# exec_after = "enable_notifications.sh";
|
||||
chooser_type = "simple";
|
||||
chooser_cmd = "${pkgs.slurp}/bin/slurp -f %o -or";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
environment.sessionVariables = {
|
||||
|
|
|
@ -2,10 +2,15 @@
|
|||
# Enable the X11 windowing system.
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
videoDrivers = ["nvidia"];
|
||||
videoDrivers = [ "nouveau" "fbdev" "modesetting" ];
|
||||
# videoDrivers = [ "nouveau" ];
|
||||
displayManager = {
|
||||
sddm.enable = true;
|
||||
defaultSession = "plasma";
|
||||
# lightdm.enable = true;
|
||||
sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
};
|
||||
defaultSession = "sway";
|
||||
};
|
||||
desktopManager = {
|
||||
plasma6.enable = true;
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
|
||||
index 44c6a82..e5a98b3 100644
|
||||
--- a/arch/x86/Kconfig
|
||||
+++ b/arch/x86/Kconfig
|
||||
@@ -1002,6 +1002,12 @@ config NR_CPUS
|
||||
|
||||
config SCHED_SMT
|
||||
def_bool y if SMP
|
||||
+ depends on SMP
|
||||
+ ---help---
|
||||
+ SMT scheduler support improves the CPU scheduler's decision making
|
||||
+ when dealing with Intel Pentium 4 chips with HyperThreading at a
|
||||
+ cost of slightly increased overhead in some places. If unsure say
|
||||
+ N here.
|
||||
|
||||
config SCHED_MC
|
||||
def_bool y
|
|
@ -1,790 +0,0 @@
|
|||
From 70d4906b87983ed2ed5da78930a701625d881dd0 Mon Sep 17 00:00:00 2001
|
||||
From: graysky <therealgraysky@proton.me>
|
||||
Date: Thu, 5 Jan 2023 14:29:37 -0500
|
||||
|
||||
FEATURES
|
||||
This patch adds additional CPU options to the Linux kernel accessible under:
|
||||
Processor type and features --->
|
||||
Processor family --->
|
||||
|
||||
With the release of gcc 11.1 and clang 12.0, several generic 64-bit levels are
|
||||
offered which are good for supported Intel or AMD CPUs:
|
||||
• x86-64-v2
|
||||
• x86-64-v3
|
||||
• x86-64-v4
|
||||
|
||||
Users of glibc 2.33 and above can see which level is supported by current
|
||||
hardware by running:
|
||||
/lib/ld-linux-x86-64.so.2 --help | grep supported
|
||||
|
||||
Alternatively, compare the flags from /proc/cpuinfo to this list.[1]
|
||||
|
||||
CPU-specific microarchitectures include:
|
||||
• AMD Improved K8-family
|
||||
• AMD K10-family
|
||||
• AMD Family 10h (Barcelona)
|
||||
• AMD Family 14h (Bobcat)
|
||||
• AMD Family 16h (Jaguar)
|
||||
• AMD Family 15h (Bulldozer)
|
||||
• AMD Family 15h (Piledriver)
|
||||
• AMD Family 15h (Steamroller)
|
||||
• AMD Family 15h (Excavator)
|
||||
• AMD Family 17h (Zen)
|
||||
• AMD Family 17h (Zen 2)
|
||||
• AMD Family 19h (Zen 3)†
|
||||
• AMD Family 19h (Zen 4)§
|
||||
• Intel Silvermont low-power processors
|
||||
• Intel Goldmont low-power processors (Apollo Lake and Denverton)
|
||||
• Intel Goldmont Plus low-power processors (Gemini Lake)
|
||||
• Intel 1st Gen Core i3/i5/i7 (Nehalem)
|
||||
• Intel 1.5 Gen Core i3/i5/i7 (Westmere)
|
||||
• Intel 2nd Gen Core i3/i5/i7 (Sandybridge)
|
||||
• Intel 3rd Gen Core i3/i5/i7 (Ivybridge)
|
||||
• Intel 4th Gen Core i3/i5/i7 (Haswell)
|
||||
• Intel 5th Gen Core i3/i5/i7 (Broadwell)
|
||||
• Intel 6th Gen Core i3/i5/i7 (Skylake)
|
||||
• Intel 6th Gen Core i7/i9 (Skylake X)
|
||||
• Intel 8th Gen Core i3/i5/i7 (Cannon Lake)
|
||||
• Intel 10th Gen Core i7/i9 (Ice Lake)
|
||||
• Intel Xeon (Cascade Lake)
|
||||
• Intel Xeon (Cooper Lake)*
|
||||
• Intel 3rd Gen 10nm++ i3/i5/i7/i9-family (Tiger Lake)*
|
||||
• Intel 4th Gen 10nm++ Xeon (Sapphire Rapids)‡
|
||||
• Intel 11th Gen i3/i5/i7/i9-family (Rocket Lake)‡
|
||||
• Intel 12th Gen i3/i5/i7/i9-family (Alder Lake)‡
|
||||
• Intel 13th Gen i3/i5/i7/i9-family (Raptor Lake)§
|
||||
• Intel 14th Gen i3/i5/i7/i9-family (Meteor Lake)§
|
||||
• Intel 5th Gen 10nm++ Xeon (Emerald Rapids)§
|
||||
|
||||
Notes: If not otherwise noted, gcc >=9.1 is required for support.
|
||||
*Requires gcc >=10.1 or clang >=10.0
|
||||
†Required gcc >=10.3 or clang >=12.0
|
||||
‡Required gcc >=11.1 or clang >=12.0
|
||||
§Required gcc >=13.0 or clang >=15.0.5
|
||||
|
||||
It also offers to compile passing the 'native' option which, "selects the CPU
|
||||
to generate code for at compilation time by determining the processor type of
|
||||
the compiling machine. Using -march=native enables all instruction subsets
|
||||
supported by the local machine and will produce code optimized for the local
|
||||
machine under the constraints of the selected instruction set."[2]
|
||||
|
||||
Users of Intel CPUs should select the 'Intel-Native' option and users of AMD
|
||||
CPUs should select the 'AMD-Native' option.
|
||||
|
||||
MINOR NOTES RELATING TO INTEL ATOM PROCESSORS
|
||||
This patch also changes -march=atom to -march=bonnell in accordance with the
|
||||
gcc v4.9 changes. Upstream is using the deprecated -match=atom flags when I
|
||||
believe it should use the newer -march=bonnell flag for atom processors.[3]
|
||||
|
||||
It is not recommended to compile on Atom-CPUs with the 'native' option.[4] The
|
||||
recommendation is to use the 'atom' option instead.
|
||||
|
||||
BENEFITS
|
||||
Small but real speed increases are measurable using a make endpoint comparing
|
||||
a generic kernel to one built with one of the respective microarchs.
|
||||
|
||||
See the following experimental evidence supporting this statement:
|
||||
https://github.com/graysky2/kernel_gcc_patch
|
||||
|
||||
REQUIREMENTS
|
||||
linux version 5.17+
|
||||
gcc version >=9.0 or clang version >=9.0
|
||||
|
||||
ACKNOWLEDGMENTS
|
||||
This patch builds on the seminal work by Jeroen.[5]
|
||||
|
||||
REFERENCES
|
||||
1. https://gitlab.com/x86-psABIs/x86-64-ABI/-/commit/77566eb03bc6a326811cb7e9
|
||||
2. https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html#index-x86-Options
|
||||
3. https://bugzilla.kernel.org/show_bug.cgi?id=77461
|
||||
4. https://github.com/graysky2/kernel_gcc_patch/issues/15
|
||||
5. http://www.linuxforge.net/docs/linux/linux-gcc.php
|
||||
---
|
||||
arch/x86/Kconfig.cpu | 427 ++++++++++++++++++++++++++++++--
|
||||
arch/x86/Makefile | 44 +++-
|
||||
arch/x86/include/asm/vermagic.h | 74 ++++++
|
||||
3 files changed, 528 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/arch/x86/Kconfig.cpu b/arch/x86/Kconfig.cpu
|
||||
index 542377cd419d..f589971df2d3 100644
|
||||
--- a/arch/x86/Kconfig.cpu
|
||||
+++ b/arch/x86/Kconfig.cpu
|
||||
@@ -157,7 +157,7 @@ config MPENTIUM4
|
||||
|
||||
|
||||
config MK6
|
||||
- bool "K6/K6-II/K6-III"
|
||||
+ bool "AMD K6/K6-II/K6-III"
|
||||
depends on X86_32
|
||||
help
|
||||
Select this for an AMD K6-family processor. Enables use of
|
||||
@@ -165,7 +165,7 @@ config MK6
|
||||
flags to GCC.
|
||||
|
||||
config MK7
|
||||
- bool "Athlon/Duron/K7"
|
||||
+ bool "AMD Athlon/Duron/K7"
|
||||
depends on X86_32
|
||||
help
|
||||
Select this for an AMD Athlon K7-family processor. Enables use of
|
||||
@@ -173,12 +173,106 @@ config MK7
|
||||
flags to GCC.
|
||||
|
||||
config MK8
|
||||
- bool "Opteron/Athlon64/Hammer/K8"
|
||||
+ bool "AMD Opteron/Athlon64/Hammer/K8"
|
||||
help
|
||||
Select this for an AMD Opteron or Athlon64 Hammer-family processor.
|
||||
Enables use of some extended instructions, and passes appropriate
|
||||
optimization flags to GCC.
|
||||
|
||||
+config MK8SSE3
|
||||
+ bool "AMD Opteron/Athlon64/Hammer/K8 with SSE3"
|
||||
+ help
|
||||
+ Select this for improved AMD Opteron or Athlon64 Hammer-family processors.
|
||||
+ Enables use of some extended instructions, and passes appropriate
|
||||
+ optimization flags to GCC.
|
||||
+
|
||||
+config MK10
|
||||
+ bool "AMD 61xx/7x50/PhenomX3/X4/II/K10"
|
||||
+ help
|
||||
+ Select this for an AMD 61xx Eight-Core Magny-Cours, Athlon X2 7x50,
|
||||
+ Phenom X3/X4/II, Athlon II X2/X3/X4, or Turion II-family processor.
|
||||
+ Enables use of some extended instructions, and passes appropriate
|
||||
+ optimization flags to GCC.
|
||||
+
|
||||
+config MBARCELONA
|
||||
+ bool "AMD Barcelona"
|
||||
+ help
|
||||
+ Select this for AMD Family 10h Barcelona processors.
|
||||
+
|
||||
+ Enables -march=barcelona
|
||||
+
|
||||
+config MBOBCAT
|
||||
+ bool "AMD Bobcat"
|
||||
+ help
|
||||
+ Select this for AMD Family 14h Bobcat processors.
|
||||
+
|
||||
+ Enables -march=btver1
|
||||
+
|
||||
+config MJAGUAR
|
||||
+ bool "AMD Jaguar"
|
||||
+ help
|
||||
+ Select this for AMD Family 16h Jaguar processors.
|
||||
+
|
||||
+ Enables -march=btver2
|
||||
+
|
||||
+config MBULLDOZER
|
||||
+ bool "AMD Bulldozer"
|
||||
+ help
|
||||
+ Select this for AMD Family 15h Bulldozer processors.
|
||||
+
|
||||
+ Enables -march=bdver1
|
||||
+
|
||||
+config MPILEDRIVER
|
||||
+ bool "AMD Piledriver"
|
||||
+ help
|
||||
+ Select this for AMD Family 15h Piledriver processors.
|
||||
+
|
||||
+ Enables -march=bdver2
|
||||
+
|
||||
+config MSTEAMROLLER
|
||||
+ bool "AMD Steamroller"
|
||||
+ help
|
||||
+ Select this for AMD Family 15h Steamroller processors.
|
||||
+
|
||||
+ Enables -march=bdver3
|
||||
+
|
||||
+config MEXCAVATOR
|
||||
+ bool "AMD Excavator"
|
||||
+ help
|
||||
+ Select this for AMD Family 15h Excavator processors.
|
||||
+
|
||||
+ Enables -march=bdver4
|
||||
+
|
||||
+config MZEN
|
||||
+ bool "AMD Zen"
|
||||
+ help
|
||||
+ Select this for AMD Family 17h Zen processors.
|
||||
+
|
||||
+ Enables -march=znver1
|
||||
+
|
||||
+config MZEN2
|
||||
+ bool "AMD Zen 2"
|
||||
+ help
|
||||
+ Select this for AMD Family 17h Zen 2 processors.
|
||||
+
|
||||
+ Enables -march=znver2
|
||||
+
|
||||
+config MZEN3
|
||||
+ bool "AMD Zen 3"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION >= 100300) || (CC_IS_CLANG && CLANG_VERSION >= 120000)
|
||||
+ help
|
||||
+ Select this for AMD Family 19h Zen 3 processors.
|
||||
+
|
||||
+ Enables -march=znver3
|
||||
+
|
||||
+config MZEN4
|
||||
+ bool "AMD Zen 4"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION >= 130000) || (CC_IS_CLANG && CLANG_VERSION >= 160000)
|
||||
+ help
|
||||
+ Select this for AMD Family 19h Zen 4 processors.
|
||||
+
|
||||
+ Enables -march=znver4
|
||||
+
|
||||
config MCRUSOE
|
||||
bool "Crusoe"
|
||||
depends on X86_32
|
||||
@@ -270,7 +364,7 @@ config MPSC
|
||||
in /proc/cpuinfo. Family 15 is an older Xeon, Family 6 a newer one.
|
||||
|
||||
config MCORE2
|
||||
- bool "Core 2/newer Xeon"
|
||||
+ bool "Intel Core 2"
|
||||
help
|
||||
|
||||
Select this for Intel Core 2 and newer Core 2 Xeons (Xeon 51xx and
|
||||
@@ -278,6 +372,8 @@ config MCORE2
|
||||
family in /proc/cpuinfo. Newer ones have 6 and older ones 15
|
||||
(not a typo)
|
||||
|
||||
+ Enables -march=core2
|
||||
+
|
||||
config MATOM
|
||||
bool "Intel Atom"
|
||||
help
|
||||
@@ -287,6 +383,212 @@ config MATOM
|
||||
accordingly optimized code. Use a recent GCC with specific Atom
|
||||
support in order to fully benefit from selecting this option.
|
||||
|
||||
+config MNEHALEM
|
||||
+ bool "Intel Nehalem"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 1st Gen Core processors in the Nehalem family.
|
||||
+
|
||||
+ Enables -march=nehalem
|
||||
+
|
||||
+config MWESTMERE
|
||||
+ bool "Intel Westmere"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for the Intel Westmere formerly Nehalem-C family.
|
||||
+
|
||||
+ Enables -march=westmere
|
||||
+
|
||||
+config MSILVERMONT
|
||||
+ bool "Intel Silvermont"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for the Intel Silvermont platform.
|
||||
+
|
||||
+ Enables -march=silvermont
|
||||
+
|
||||
+config MGOLDMONT
|
||||
+ bool "Intel Goldmont"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for the Intel Goldmont platform including Apollo Lake and Denverton.
|
||||
+
|
||||
+ Enables -march=goldmont
|
||||
+
|
||||
+config MGOLDMONTPLUS
|
||||
+ bool "Intel Goldmont Plus"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for the Intel Goldmont Plus platform including Gemini Lake.
|
||||
+
|
||||
+ Enables -march=goldmont-plus
|
||||
+
|
||||
+config MSANDYBRIDGE
|
||||
+ bool "Intel Sandy Bridge"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 2nd Gen Core processors in the Sandy Bridge family.
|
||||
+
|
||||
+ Enables -march=sandybridge
|
||||
+
|
||||
+config MIVYBRIDGE
|
||||
+ bool "Intel Ivy Bridge"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 3rd Gen Core processors in the Ivy Bridge family.
|
||||
+
|
||||
+ Enables -march=ivybridge
|
||||
+
|
||||
+config MHASWELL
|
||||
+ bool "Intel Haswell"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 4th Gen Core processors in the Haswell family.
|
||||
+
|
||||
+ Enables -march=haswell
|
||||
+
|
||||
+config MBROADWELL
|
||||
+ bool "Intel Broadwell"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 5th Gen Core processors in the Broadwell family.
|
||||
+
|
||||
+ Enables -march=broadwell
|
||||
+
|
||||
+config MSKYLAKE
|
||||
+ bool "Intel Skylake"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 6th Gen Core processors in the Skylake family.
|
||||
+
|
||||
+ Enables -march=skylake
|
||||
+
|
||||
+config MSKYLAKEX
|
||||
+ bool "Intel Skylake X"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 6th Gen Core processors in the Skylake X family.
|
||||
+
|
||||
+ Enables -march=skylake-avx512
|
||||
+
|
||||
+config MCANNONLAKE
|
||||
+ bool "Intel Cannon Lake"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 8th Gen Core processors
|
||||
+
|
||||
+ Enables -march=cannonlake
|
||||
+
|
||||
+config MICELAKE
|
||||
+ bool "Intel Ice Lake"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for 10th Gen Core processors in the Ice Lake family.
|
||||
+
|
||||
+ Enables -march=icelake-client
|
||||
+
|
||||
+config MCASCADELAKE
|
||||
+ bool "Intel Cascade Lake"
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for Xeon processors in the Cascade Lake family.
|
||||
+
|
||||
+ Enables -march=cascadelake
|
||||
+
|
||||
+config MCOOPERLAKE
|
||||
+ bool "Intel Cooper Lake"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 100100) || (CC_IS_CLANG && CLANG_VERSION >= 100000)
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for Xeon processors in the Cooper Lake family.
|
||||
+
|
||||
+ Enables -march=cooperlake
|
||||
+
|
||||
+config MTIGERLAKE
|
||||
+ bool "Intel Tiger Lake"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 100100) || (CC_IS_CLANG && CLANG_VERSION >= 100000)
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for third-generation 10 nm process processors in the Tiger Lake family.
|
||||
+
|
||||
+ Enables -march=tigerlake
|
||||
+
|
||||
+config MSAPPHIRERAPIDS
|
||||
+ bool "Intel Sapphire Rapids"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 110000) || (CC_IS_CLANG && CLANG_VERSION >= 120000)
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for fourth-generation 10 nm process processors in the Sapphire Rapids family.
|
||||
+
|
||||
+ Enables -march=sapphirerapids
|
||||
+
|
||||
+config MROCKETLAKE
|
||||
+ bool "Intel Rocket Lake"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 110000) || (CC_IS_CLANG && CLANG_VERSION >= 120000)
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for eleventh-generation processors in the Rocket Lake family.
|
||||
+
|
||||
+ Enables -march=rocketlake
|
||||
+
|
||||
+config MALDERLAKE
|
||||
+ bool "Intel Alder Lake"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 110000) || (CC_IS_CLANG && CLANG_VERSION >= 120000)
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for twelfth-generation processors in the Alder Lake family.
|
||||
+
|
||||
+ Enables -march=alderlake
|
||||
+
|
||||
+config MRAPTORLAKE
|
||||
+ bool "Intel Raptor Lake"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION >= 130000) || (CC_IS_CLANG && CLANG_VERSION >= 150500)
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for thirteenth-generation processors in the Raptor Lake family.
|
||||
+
|
||||
+ Enables -march=raptorlake
|
||||
+
|
||||
+config MMETEORLAKE
|
||||
+ bool "Intel Meteor Lake"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION >= 130000) || (CC_IS_CLANG && CLANG_VERSION >= 150500)
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for fourteenth-generation processors in the Meteor Lake family.
|
||||
+
|
||||
+ Enables -march=meteorlake
|
||||
+
|
||||
+config MEMERALDRAPIDS
|
||||
+ bool "Intel Emerald Rapids"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 130000) || (CC_IS_CLANG && CLANG_VERSION >= 150500)
|
||||
+ select X86_P6_NOP
|
||||
+ help
|
||||
+
|
||||
+ Select this for fifth-generation 10 nm process processors in the Emerald Rapids family.
|
||||
+
|
||||
+ Enables -march=emeraldrapids
|
||||
+
|
||||
config GENERIC_CPU
|
||||
bool "Generic-x86-64"
|
||||
depends on X86_64
|
||||
@@ -294,6 +596,50 @@ config GENERIC_CPU
|
||||
Generic x86-64 CPU.
|
||||
Run equally well on all x86-64 CPUs.
|
||||
|
||||
+config GENERIC_CPU2
|
||||
+ bool "Generic-x86-64-v2"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 110000) || (CC_IS_CLANG && CLANG_VERSION >= 120000)
|
||||
+ depends on X86_64
|
||||
+ help
|
||||
+ Generic x86-64 CPU.
|
||||
+ Run equally well on all x86-64 CPUs with min support of x86-64-v2.
|
||||
+
|
||||
+config GENERIC_CPU3
|
||||
+ bool "Generic-x86-64-v3"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 110000) || (CC_IS_CLANG && CLANG_VERSION >= 120000)
|
||||
+ depends on X86_64
|
||||
+ help
|
||||
+ Generic x86-64-v3 CPU with v3 instructions.
|
||||
+ Run equally well on all x86-64 CPUs with min support of x86-64-v3.
|
||||
+
|
||||
+config GENERIC_CPU4
|
||||
+ bool "Generic-x86-64-v4"
|
||||
+ depends on (CC_IS_GCC && GCC_VERSION > 110000) || (CC_IS_CLANG && CLANG_VERSION >= 120000)
|
||||
+ depends on X86_64
|
||||
+ help
|
||||
+ Generic x86-64 CPU with v4 instructions.
|
||||
+ Run equally well on all x86-64 CPUs with min support of x86-64-v4.
|
||||
+
|
||||
+config MNATIVE_INTEL
|
||||
+ bool "Intel-Native optimizations autodetected by the compiler"
|
||||
+ help
|
||||
+
|
||||
+ Clang 3.8, GCC 4.2 and above support -march=native, which automatically detects
|
||||
+ the optimum settings to use based on your processor. Do NOT use this
|
||||
+ for AMD CPUs. Intel Only!
|
||||
+
|
||||
+ Enables -march=native
|
||||
+
|
||||
+config MNATIVE_AMD
|
||||
+ bool "AMD-Native optimizations autodetected by the compiler"
|
||||
+ help
|
||||
+
|
||||
+ Clang 3.8, GCC 4.2 and above support -march=native, which automatically detects
|
||||
+ the optimum settings to use based on your processor. Do NOT use this
|
||||
+ for Intel CPUs. AMD Only!
|
||||
+
|
||||
+ Enables -march=native
|
||||
+
|
||||
endchoice
|
||||
|
||||
config X86_GENERIC
|
||||
@@ -318,9 +664,17 @@ config X86_INTERNODE_CACHE_SHIFT
|
||||
config X86_L1_CACHE_SHIFT
|
||||
int
|
||||
default "7" if MPENTIUM4 || MPSC
|
||||
- default "6" if MK7 || MK8 || MPENTIUMM || MCORE2 || MATOM || MVIAC7 || X86_GENERIC || GENERIC_CPU
|
||||
+ default "6" if MK7 || MK8 || MPENTIUMM || MCORE2 || MATOM || MVIAC7 || MK8SSE3 || MK10 \
|
||||
+ || MBARCELONA || MBOBCAT || MJAGUAR || MBULLDOZER || MPILEDRIVER || MSTEAMROLLER \
|
||||
+ || MEXCAVATOR || MZEN || MZEN2 || MZEN3 || MZEN4 || MNEHALEM || MWESTMERE || MSILVERMONT \
|
||||
+ || MGOLDMONT || MGOLDMONTPLUS || MSANDYBRIDGE || MIVYBRIDGE || MHASWELL || MBROADWELL \
|
||||
+ || MSKYLAKE || MSKYLAKEX || MCANNONLAKE || MICELAKE || MCASCADELAKE || MCOOPERLAKE \
|
||||
+ || MTIGERLAKE || MSAPPHIRERAPIDS || MROCKETLAKE || MALDERLAKE || MRAPTORLAKE || MMETEORLAKE \
|
||||
+ || MEMERALDRAPIDS || MNATIVE_INTEL || MNATIVE_AMD || X86_GENERIC || GENERIC_CPU || GENERIC_CPU2 \
|
||||
+ || GENERIC_CPU3 || GENERIC_CPU4
|
||||
default "4" if MELAN || M486SX || M486 || MGEODEGX1
|
||||
- default "5" if MWINCHIP3D || MWINCHIPC6 || MCRUSOE || MEFFICEON || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2 || MGEODE_LX
|
||||
+ default "5" if MWINCHIP3D || MWINCHIPC6 || MCRUSOE || MEFFICEON || MCYRIXIII || MK6 || MPENTIUMIII \
|
||||
+ || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2 || MGEODE_LX
|
||||
|
||||
config X86_F00F_BUG
|
||||
def_bool y
|
||||
@@ -332,15 +686,27 @@ config X86_INVD_BUG
|
||||
|
||||
config X86_ALIGNMENT_16
|
||||
def_bool y
|
||||
- depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || MELAN || MK6 || M586MMX || M586TSC || M586 || M486SX || M486 || MVIAC3_2 || MGEODEGX1
|
||||
+ depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || MELAN || MK6 || M586MMX || M586TSC \
|
||||
+ || M586 || M486SX || M486 || MVIAC3_2 || MGEODEGX1
|
||||
|
||||
config X86_INTEL_USERCOPY
|
||||
def_bool y
|
||||
- depends on MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M586MMX || X86_GENERIC || MK8 || MK7 || MEFFICEON || MCORE2
|
||||
+ depends on MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M586MMX || X86_GENERIC \
|
||||
+ || MK8 || MK7 || MEFFICEON || MCORE2 || MNEHALEM || MWESTMERE || MSILVERMONT || MGOLDMONT \
|
||||
+ || MGOLDMONTPLUS || MSANDYBRIDGE || MIVYBRIDGE || MHASWELL || MBROADWELL || MSKYLAKE || MSKYLAKEX \
|
||||
+ || MCANNONLAKE || MICELAKE || MCASCADELAKE || MCOOPERLAKE || MTIGERLAKE || MSAPPHIRERAPIDS \
|
||||
+ || MROCKETLAKE || MALDERLAKE || MRAPTORLAKE || MMETEORLAKE || MEMERALDRAPIDS || MNATIVE_INTEL
|
||||
|
||||
config X86_USE_PPRO_CHECKSUM
|
||||
def_bool y
|
||||
- depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MK8 || MVIAC3_2 || MVIAC7 || MEFFICEON || MGEODE_LX || MCORE2 || MATOM
|
||||
+ depends on MWINCHIP3D || MWINCHIPC6 || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM \
|
||||
+ || MPENTIUMIII || MPENTIUMII || M686 || MK8 || MVIAC3_2 || MVIAC7 || MEFFICEON || MGEODE_LX \
|
||||
+ || MCORE2 || MATOM || MK8SSE3 || MK10 || MBARCELONA || MBOBCAT || MJAGUAR || MBULLDOZER \
|
||||
+ || MPILEDRIVER || MSTEAMROLLER || MEXCAVATOR || MZEN || MZEN2 || MZEN3 || MZEN4 || MNEHALEM \
|
||||
+ || MWESTMERE || MSILVERMONT || MGOLDMONT || MGOLDMONTPLUS || MSANDYBRIDGE || MIVYBRIDGE \
|
||||
+ || MHASWELL || MBROADWELL || MSKYLAKE || MSKYLAKEX || MCANNONLAKE || MICELAKE \
|
||||
+ || MCASCADELAKE || MCOOPERLAKE || MTIGERLAKE || MSAPPHIRERAPIDS || MROCKETLAKE \
|
||||
+ || MALDERLAKE || MRAPTORLAKE || MMETEORLAKE || MEMERALDRAPIDS || MNATIVE_INTEL || MNATIVE_AMD
|
||||
|
||||
#
|
||||
# P6_NOPs are a relatively minor optimization that require a family >=
|
||||
@@ -356,32 +722,63 @@ config X86_USE_PPRO_CHECKSUM
|
||||
config X86_P6_NOP
|
||||
def_bool y
|
||||
depends on X86_64
|
||||
- depends on (MCORE2 || MPENTIUM4 || MPSC)
|
||||
+ depends on (MCORE2 || MPENTIUM4 || MPSC || MNEHALEM || MWESTMERE || MSILVERMONT || MGOLDMONT \
|
||||
+ || MGOLDMONTPLUS || MSANDYBRIDGE || MIVYBRIDGE || MHASWELL || MBROADWELL || MSKYLAKE \
|
||||
+ || MSKYLAKEX || MCANNONLAKE || MICELAKE || MCASCADELAKE || MCOOPERLAKE || MTIGERLAKE \
|
||||
+ || MSAPPHIRERAPIDS || MROCKETLAKE || MALDERLAKE || MRAPTORLAKE || MMETEORLAKE || MEMERALDRAPIDS \
|
||||
+ || MNATIVE_INTEL)
|
||||
|
||||
config X86_TSC
|
||||
def_bool y
|
||||
- depends on (MWINCHIP3D || MCRUSOE || MEFFICEON || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2 || MVIAC7 || MGEODEGX1 || MGEODE_LX || MCORE2 || MATOM) || X86_64
|
||||
+ depends on (MWINCHIP3D || MCRUSOE || MEFFICEON || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM \
|
||||
+ || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2 || MVIAC7 || MGEODEGX1 \
|
||||
+ || MGEODE_LX || MCORE2 || MATOM || MK8SSE3 || MK10 || MBARCELONA || MBOBCAT || MJAGUAR || MBULLDOZER \
|
||||
+ || MPILEDRIVER || MSTEAMROLLER || MEXCAVATOR || MZEN || MZEN2 || MZEN3 || MZEN4 || MNEHALEM \
|
||||
+ || MWESTMERE || MSILVERMONT || MGOLDMONT || MGOLDMONTPLUS || MSANDYBRIDGE || MIVYBRIDGE || MHASWELL \
|
||||
+ || MBROADWELL || MSKYLAKE || MSKYLAKEX || MCANNONLAKE || MICELAKE || MCASCADELAKE || MCOOPERLAKE \
|
||||
+ || MTIGERLAKE || MSAPPHIRERAPIDS || MROCKETLAKE || MALDERLAKE || MRAPTORLAKE || MMETEORLAKE || MEMERALDRAPIDS \
|
||||
+ || MNATIVE_INTEL || MNATIVE_AMD) || X86_64
|
||||
|
||||
config X86_CMPXCHG64
|
||||
def_bool y
|
||||
- depends on X86_PAE || X86_64 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586TSC || M586MMX || MATOM || MGEODE_LX || MGEODEGX1 || MK6 || MK7 || MK8
|
||||
+ depends on X86_PAE || X86_64 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 \
|
||||
+ || M586TSC || M586MMX || MATOM || MGEODE_LX || MGEODEGX1 || MK6 || MK7 || MK8 || MK8SSE3 || MK10 \
|
||||
+ || MBARCELONA || MBOBCAT || MJAGUAR || MBULLDOZER || MPILEDRIVER || MSTEAMROLLER || MEXCAVATOR || MZEN \
|
||||
+ || MZEN2 || MZEN3 || MZEN4 || MNEHALEM || MWESTMERE || MSILVERMONT || MGOLDMONT || MGOLDMONTPLUS \
|
||||
+ || MSANDYBRIDGE || MIVYBRIDGE || MHASWELL || MBROADWELL || MSKYLAKE || MSKYLAKEX || MCANNONLAKE \
|
||||
+ || MICELAKE || MCASCADELAKE || MCOOPERLAKE || MTIGERLAKE || MSAPPHIRERAPIDS || MROCKETLAKE \
|
||||
+ || MALDERLAKE || MRAPTORLAKE || MMETEORLAKE || MEMERALDRAPIDS || MNATIVE_INTEL || MNATIVE_AMD
|
||||
|
||||
# this should be set for all -march=.. options where the compiler
|
||||
# generates cmov.
|
||||
config X86_CMOV
|
||||
def_bool y
|
||||
- depends on (MK8 || MK7 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MVIAC3_2 || MVIAC7 || MCRUSOE || MEFFICEON || X86_64 || MATOM || MGEODE_LX)
|
||||
+ depends on (MK8 || MK7 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 \
|
||||
+ || MVIAC3_2 || MVIAC7 || MCRUSOE || MEFFICEON || X86_64 || MATOM || MGEODE_LX || MK8SSE3 || MK10 \
|
||||
+ || MBARCELONA || MBOBCAT || MJAGUAR || MBULLDOZER || MPILEDRIVER || MSTEAMROLLER || MEXCAVATOR \
|
||||
+ || MZEN || MZEN2 || MZEN3 || MZEN4 || MNEHALEM || MWESTMERE || MSILVERMONT || MGOLDMONT \
|
||||
+ || MGOLDMONTPLUS || MSANDYBRIDGE || MIVYBRIDGE || MHASWELL || MBROADWELL || MSKYLAKE || MSKYLAKEX \
|
||||
+ || MCANNONLAKE || MICELAKE || MCASCADELAKE || MCOOPERLAKE || MTIGERLAKE || MSAPPHIRERAPIDS \
|
||||
+ || MROCKETLAKE || MALDERLAKE || MRAPTORLAKE || MMETEORLAKE || MEMERALDRAPIDS || MNATIVE_INTEL || MNATIVE_AMD)
|
||||
|
||||
config X86_MINIMUM_CPU_FAMILY
|
||||
int
|
||||
default "64" if X86_64
|
||||
- default "6" if X86_32 && (MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MVIAC3_2 || MVIAC7 || MEFFICEON || MATOM || MCRUSOE || MCORE2 || MK7 || MK8)
|
||||
+ default "6" if X86_32 && (MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 \
|
||||
+ || MVIAC3_2 || MVIAC7 || MEFFICEON || MATOM || MCRUSOE || MCORE2 || MK7 || MK8 || MK8SSE3 \
|
||||
+ || MK10 || MBARCELONA || MBOBCAT || MJAGUAR || MBULLDOZER || MPILEDRIVER || MSTEAMROLLER \
|
||||
+ || MEXCAVATOR || MZEN || MZEN2 || MZEN3 || MZEN4 || MNEHALEM || MWESTMERE || MSILVERMONT \
|
||||
+ || MGOLDMONT || MGOLDMONTPLUS || MSANDYBRIDGE || MIVYBRIDGE || MHASWELL || MBROADWELL \
|
||||
+ || MSKYLAKE || MSKYLAKEX || MCANNONLAKE || MICELAKE || MCASCADELAKE || MCOOPERLAKE \
|
||||
+ || MTIGERLAKE || MSAPPHIRERAPIDS || MROCKETLAKE || MALDERLAKE || MRAPTORLAKE || MRAPTORLAKE \
|
||||
+ || MNATIVE_INTEL || MNATIVE_AMD)
|
||||
default "5" if X86_32 && X86_CMPXCHG64
|
||||
default "4"
|
||||
|
||||
config X86_DEBUGCTLMSR
|
||||
def_bool y
|
||||
- depends on !(MK6 || MWINCHIPC6 || MWINCHIP3D || MCYRIXIII || M586MMX || M586TSC || M586 || M486SX || M486) && !UML
|
||||
+ depends on !(MK6 || MWINCHIPC6 || MWINCHIP3D || MCYRIXIII || M586MMX || M586TSC || M586 \
|
||||
+ || M486SX || M486) && !UML
|
||||
|
||||
config IA32_FEAT_CTL
|
||||
def_bool y
|
||||
diff --git a/arch/x86/Makefile b/arch/x86/Makefile
|
||||
index 415a5d138de4..17b1e039d955 100644
|
||||
--- a/arch/x86/Makefile
|
||||
+++ b/arch/x86/Makefile
|
||||
@@ -151,8 +151,48 @@ else
|
||||
# FIXME - should be integrated in Makefile.cpu (Makefile_32.cpu)
|
||||
cflags-$(CONFIG_MK8) += -march=k8
|
||||
cflags-$(CONFIG_MPSC) += -march=nocona
|
||||
- cflags-$(CONFIG_MCORE2) += -march=core2
|
||||
- cflags-$(CONFIG_MATOM) += -march=atom
|
||||
+ cflags-$(CONFIG_MK8SSE3) += -march=k8-sse3
|
||||
+ cflags-$(CONFIG_MK10) += -march=amdfam10
|
||||
+ cflags-$(CONFIG_MBARCELONA) += -march=barcelona
|
||||
+ cflags-$(CONFIG_MBOBCAT) += -march=btver1
|
||||
+ cflags-$(CONFIG_MJAGUAR) += -march=btver2
|
||||
+ cflags-$(CONFIG_MBULLDOZER) += -march=bdver1
|
||||
+ cflags-$(CONFIG_MPILEDRIVER) += -march=bdver2 -mno-tbm
|
||||
+ cflags-$(CONFIG_MSTEAMROLLER) += -march=bdver3 -mno-tbm
|
||||
+ cflags-$(CONFIG_MEXCAVATOR) += -march=bdver4 -mno-tbm
|
||||
+ cflags-$(CONFIG_MZEN) += -march=znver1
|
||||
+ cflags-$(CONFIG_MZEN2) += -march=znver2
|
||||
+ cflags-$(CONFIG_MZEN3) += -march=znver3
|
||||
+ cflags-$(CONFIG_MZEN4) += -march=znver4
|
||||
+ cflags-$(CONFIG_MNATIVE_INTEL) += -march=native
|
||||
+ cflags-$(CONFIG_MNATIVE_AMD) += -march=native
|
||||
+ cflags-$(CONFIG_MATOM) += -march=bonnell
|
||||
+ cflags-$(CONFIG_MCORE2) += -march=core2
|
||||
+ cflags-$(CONFIG_MNEHALEM) += -march=nehalem
|
||||
+ cflags-$(CONFIG_MWESTMERE) += -march=westmere
|
||||
+ cflags-$(CONFIG_MSILVERMONT) += -march=silvermont
|
||||
+ cflags-$(CONFIG_MGOLDMONT) += -march=goldmont
|
||||
+ cflags-$(CONFIG_MGOLDMONTPLUS) += -march=goldmont-plus
|
||||
+ cflags-$(CONFIG_MSANDYBRIDGE) += -march=sandybridge
|
||||
+ cflags-$(CONFIG_MIVYBRIDGE) += -march=ivybridge
|
||||
+ cflags-$(CONFIG_MHASWELL) += -march=haswell
|
||||
+ cflags-$(CONFIG_MBROADWELL) += -march=broadwell
|
||||
+ cflags-$(CONFIG_MSKYLAKE) += -march=skylake
|
||||
+ cflags-$(CONFIG_MSKYLAKEX) += -march=skylake-avx512
|
||||
+ cflags-$(CONFIG_MCANNONLAKE) += -march=cannonlake
|
||||
+ cflags-$(CONFIG_MICELAKE) += -march=icelake-client
|
||||
+ cflags-$(CONFIG_MCASCADELAKE) += -march=cascadelake
|
||||
+ cflags-$(CONFIG_MCOOPERLAKE) += -march=cooperlake
|
||||
+ cflags-$(CONFIG_MTIGERLAKE) += -march=tigerlake
|
||||
+ cflags-$(CONFIG_MSAPPHIRERAPIDS) += -march=sapphirerapids
|
||||
+ cflags-$(CONFIG_MROCKETLAKE) += -march=rocketlake
|
||||
+ cflags-$(CONFIG_MALDERLAKE) += -march=alderlake
|
||||
+ cflags-$(CONFIG_MRAPTORLAKE) += -march=raptorlake
|
||||
+ cflags-$(CONFIG_MMETEORLAKE) += -march=meteorlake
|
||||
+ cflags-$(CONFIG_MEMERALDRAPIDS) += -march=emeraldrapids
|
||||
+ cflags-$(CONFIG_GENERIC_CPU2) += -march=x86-64-v2
|
||||
+ cflags-$(CONFIG_GENERIC_CPU3) += -march=x86-64-v3
|
||||
+ cflags-$(CONFIG_GENERIC_CPU4) += -march=x86-64-v4
|
||||
cflags-$(CONFIG_GENERIC_CPU) += -mtune=generic
|
||||
KBUILD_CFLAGS += $(cflags-y)
|
||||
|
||||
diff --git a/arch/x86/include/asm/vermagic.h b/arch/x86/include/asm/vermagic.h
|
||||
index 75884d2cdec3..02c1386eb653 100644
|
||||
--- a/arch/x86/include/asm/vermagic.h
|
||||
+++ b/arch/x86/include/asm/vermagic.h
|
||||
@@ -17,6 +17,54 @@
|
||||
#define MODULE_PROC_FAMILY "586MMX "
|
||||
#elif defined CONFIG_MCORE2
|
||||
#define MODULE_PROC_FAMILY "CORE2 "
|
||||
+#elif defined CONFIG_MNATIVE_INTEL
|
||||
+#define MODULE_PROC_FAMILY "NATIVE_INTEL "
|
||||
+#elif defined CONFIG_MNATIVE_AMD
|
||||
+#define MODULE_PROC_FAMILY "NATIVE_AMD "
|
||||
+#elif defined CONFIG_MNEHALEM
|
||||
+#define MODULE_PROC_FAMILY "NEHALEM "
|
||||
+#elif defined CONFIG_MWESTMERE
|
||||
+#define MODULE_PROC_FAMILY "WESTMERE "
|
||||
+#elif defined CONFIG_MSILVERMONT
|
||||
+#define MODULE_PROC_FAMILY "SILVERMONT "
|
||||
+#elif defined CONFIG_MGOLDMONT
|
||||
+#define MODULE_PROC_FAMILY "GOLDMONT "
|
||||
+#elif defined CONFIG_MGOLDMONTPLUS
|
||||
+#define MODULE_PROC_FAMILY "GOLDMONTPLUS "
|
||||
+#elif defined CONFIG_MSANDYBRIDGE
|
||||
+#define MODULE_PROC_FAMILY "SANDYBRIDGE "
|
||||
+#elif defined CONFIG_MIVYBRIDGE
|
||||
+#define MODULE_PROC_FAMILY "IVYBRIDGE "
|
||||
+#elif defined CONFIG_MHASWELL
|
||||
+#define MODULE_PROC_FAMILY "HASWELL "
|
||||
+#elif defined CONFIG_MBROADWELL
|
||||
+#define MODULE_PROC_FAMILY "BROADWELL "
|
||||
+#elif defined CONFIG_MSKYLAKE
|
||||
+#define MODULE_PROC_FAMILY "SKYLAKE "
|
||||
+#elif defined CONFIG_MSKYLAKEX
|
||||
+#define MODULE_PROC_FAMILY "SKYLAKEX "
|
||||
+#elif defined CONFIG_MCANNONLAKE
|
||||
+#define MODULE_PROC_FAMILY "CANNONLAKE "
|
||||
+#elif defined CONFIG_MICELAKE
|
||||
+#define MODULE_PROC_FAMILY "ICELAKE "
|
||||
+#elif defined CONFIG_MCASCADELAKE
|
||||
+#define MODULE_PROC_FAMILY "CASCADELAKE "
|
||||
+#elif defined CONFIG_MCOOPERLAKE
|
||||
+#define MODULE_PROC_FAMILY "COOPERLAKE "
|
||||
+#elif defined CONFIG_MTIGERLAKE
|
||||
+#define MODULE_PROC_FAMILY "TIGERLAKE "
|
||||
+#elif defined CONFIG_MSAPPHIRERAPIDS
|
||||
+#define MODULE_PROC_FAMILY "SAPPHIRERAPIDS "
|
||||
+#elif defined CONFIG_ROCKETLAKE
|
||||
+#define MODULE_PROC_FAMILY "ROCKETLAKE "
|
||||
+#elif defined CONFIG_MALDERLAKE
|
||||
+#define MODULE_PROC_FAMILY "ALDERLAKE "
|
||||
+#elif defined CONFIG_MRAPTORLAKE
|
||||
+#define MODULE_PROC_FAMILY "RAPTORLAKE "
|
||||
+#elif defined CONFIG_MMETEORLAKE
|
||||
+#define MODULE_PROC_FAMILY "METEORLAKE "
|
||||
+#elif defined CONFIG_MEMERALDRAPIDS
|
||||
+#define MODULE_PROC_FAMILY "EMERALDRAPIDS "
|
||||
#elif defined CONFIG_MATOM
|
||||
#define MODULE_PROC_FAMILY "ATOM "
|
||||
#elif defined CONFIG_M686
|
||||
@@ -35,6 +83,32 @@
|
||||
#define MODULE_PROC_FAMILY "K7 "
|
||||
#elif defined CONFIG_MK8
|
||||
#define MODULE_PROC_FAMILY "K8 "
|
||||
+#elif defined CONFIG_MK8SSE3
|
||||
+#define MODULE_PROC_FAMILY "K8SSE3 "
|
||||
+#elif defined CONFIG_MK10
|
||||
+#define MODULE_PROC_FAMILY "K10 "
|
||||
+#elif defined CONFIG_MBARCELONA
|
||||
+#define MODULE_PROC_FAMILY "BARCELONA "
|
||||
+#elif defined CONFIG_MBOBCAT
|
||||
+#define MODULE_PROC_FAMILY "BOBCAT "
|
||||
+#elif defined CONFIG_MBULLDOZER
|
||||
+#define MODULE_PROC_FAMILY "BULLDOZER "
|
||||
+#elif defined CONFIG_MPILEDRIVER
|
||||
+#define MODULE_PROC_FAMILY "PILEDRIVER "
|
||||
+#elif defined CONFIG_MSTEAMROLLER
|
||||
+#define MODULE_PROC_FAMILY "STEAMROLLER "
|
||||
+#elif defined CONFIG_MJAGUAR
|
||||
+#define MODULE_PROC_FAMILY "JAGUAR "
|
||||
+#elif defined CONFIG_MEXCAVATOR
|
||||
+#define MODULE_PROC_FAMILY "EXCAVATOR "
|
||||
+#elif defined CONFIG_MZEN
|
||||
+#define MODULE_PROC_FAMILY "ZEN "
|
||||
+#elif defined CONFIG_MZEN2
|
||||
+#define MODULE_PROC_FAMILY "ZEN2 "
|
||||
+#elif defined CONFIG_MZEN3
|
||||
+#define MODULE_PROC_FAMILY "ZEN3 "
|
||||
+#elif defined CONFIG_MZEN4
|
||||
+#define MODULE_PROC_FAMILY "ZEN4 "
|
||||
#elif defined CONFIG_MELAN
|
||||
#define MODULE_PROC_FAMILY "ELAN "
|
||||
#elif defined CONFIG_MCRUSOE
|
||||
--
|
||||
2.39.0
|
||||
|
Loading…
Reference in a new issue