Merge branch 'wayland'
This commit is contained in:
commit
3efd371fbb
283
flake.lock
generated
283
flake.lock
generated
@ -1,27 +1,5 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"android-nixpkgs": {
|
|
||||||
"inputs": {
|
|
||||||
"devshell": "devshell",
|
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1636661994,
|
|
||||||
"narHash": "sha256-EQ1jTIGAtb2DCippFWPXume+j8Xw02VnT/M35Prlovc=",
|
|
||||||
"owner": "tadfisher",
|
|
||||||
"repo": "android-nixpkgs",
|
|
||||||
"rev": "3ca481a473cb07fdc25b7d4c2cdd5960391aba90",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tadfisher",
|
|
||||||
"repo": "android-nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"base16": {
|
"base16": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
@ -88,28 +66,29 @@
|
|||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"devshell": {
|
"cachix": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1636119665,
|
"lastModified": 1642244250,
|
||||||
"narHash": "sha256-e11Z9PyH9hdgTm4Vyl8S5iTwrv0um6+srzb1Ba+YUHA=",
|
"narHash": "sha256-vWpUEqQdVP4srj+/YLJRTN9vjpTs4je0cdWKXPbDItc=",
|
||||||
"owner": "numtide",
|
"owner": "nixos",
|
||||||
"repo": "devshell",
|
"repo": "nixpkgs",
|
||||||
"rev": "ab14b1a3cb253f58e02f5f849d621292fbf81fad",
|
"rev": "0fd9ee1aa36ce865ad273f4f07fdc093adeb5c00",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "numtide",
|
"owner": "nixos",
|
||||||
"repo": "devshell",
|
"ref": "nixos-21.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1634851050,
|
"lastModified": 1638122382,
|
||||||
"narHash": "sha256-N83GlSGPJJdcqhUxSCS/WwW5pksYf3VP1M13cDRTSVA=",
|
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "c91f3de5adaf1de973b797ef7485e441a65b8935",
|
"rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -119,6 +98,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1642700792,
|
||||||
|
"narHash": "sha256-XqHrk7hFb+zBvRg6Ghl+AZDq03ov6OshJLiSWOoX5es=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "846b2ae0fc4cc943637d3d1def4454213e203cba",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1634851050,
|
"lastModified": 1634851050,
|
||||||
"narHash": "sha256-N83GlSGPJJdcqhUxSCS/WwW5pksYf3VP1M13cDRTSVA=",
|
"narHash": "sha256-N83GlSGPJJdcqhUxSCS/WwW5pksYf3VP1M13cDRTSVA=",
|
||||||
@ -140,11 +134,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1636520380,
|
"lastModified": 1642676973,
|
||||||
"narHash": "sha256-gBiQ8+AQG6Dia34rqJDuqs6VFe/J1SjIhOZBeTXCKQI=",
|
"narHash": "sha256-bLQ6n0pXYaIuNSyJnm30JGCfjmuTi59qAmj8S2ExDXI=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "1e5c8e9bff00d0844bc3d25d1a98eab5633e600b",
|
"rev": "7eb5106548eaab99ebeb21c87f93092de54fe931",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -155,10 +149,7 @@
|
|||||||
},
|
},
|
||||||
"home-manager_2": {
|
"home-manager_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": "nixpkgs_5"
|
||||||
"vscode-server-fixup",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1635839387,
|
"lastModified": 1635839387,
|
||||||
@ -174,22 +165,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"i3lock-fancy-rapid": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1618965247,
|
|
||||||
"narHash": "sha256-EoX8ts0yV/zkb4wgEh4P8noU+UraRS4w9pp+76v+Nm0=",
|
|
||||||
"owner": "yvbbrjdr",
|
|
||||||
"repo": "i3lock-fancy-rapid",
|
|
||||||
"rev": "6eeebd4caa177b82fa5010b5e8828cce3f89fb97",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "yvbbrjdr",
|
|
||||||
"repo": "i3lock-fancy-rapid",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"lowdown-src": {
|
"lowdown-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@ -209,11 +184,11 @@
|
|||||||
"materia-theme": {
|
"materia-theme": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1620818711,
|
"lastModified": 1638461758,
|
||||||
"narHash": "sha256-0eCAfm/MWXv6BbCl2vbVbvgv8DiUH09TAUhoKq7Ow0k=",
|
"narHash": "sha256-+E8eJQcDw4F12MmGrCoFUeGFZzYZWQtY7PVhXVAZRFY=",
|
||||||
"owner": "nana-4",
|
"owner": "nana-4",
|
||||||
"repo": "materia-theme",
|
"repo": "materia-theme",
|
||||||
"rev": "76cac96ca7fe45dc9e5b9822b0fbb5f4cad47984",
|
"rev": "af63425f9bbb2ac9bc4853a4357457d743c65308",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -248,50 +223,38 @@
|
|||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1636573809,
|
"lastModified": 1642777172,
|
||||||
"narHash": "sha256-fZqSolh+RfJnqK9zR9TFEMFII+ayo4V9DA21xuI9nhA=",
|
"narHash": "sha256-Sh37PkGIiMhhaiM33+TvacbgQHtg93YITMY0orGJ7y8=",
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"repo": "nix",
|
"repo": "nix",
|
||||||
"rev": "52a3b2ee6367306a3f17fe9a2d0e2e4096852e05",
|
"rev": "5f08db69d18ea5b868cbb58993822e7dd0307518",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"id": "nix",
|
"owner": "nixos",
|
||||||
"type": "indirect"
|
"repo": "nix",
|
||||||
}
|
|
||||||
},
|
|
||||||
"nix-direnv": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1634795676,
|
|
||||||
"narHash": "sha256-p2xWs0I1hrZLiWU1P4cCGNSRuhRsbTFxsMYNVWocS4I=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nix-direnv",
|
|
||||||
"rev": "a3d08b6c8fa2a976aba430c733f54cf97d9046b0",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nix-direnv",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixos-rocm": {
|
"nix-alien": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs_3"
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"poetry2nix": "poetry2nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1630800478,
|
"lastModified": 1642257542,
|
||||||
"narHash": "sha256-dHaXN5bdf1RTK9YpYscflmdBqz2XV01Lit0xXRjLDkc=",
|
"narHash": "sha256-znJjO+22bmYIcMvXTNoxkGrPyCEKhjNpwu/R4gLuKYY=",
|
||||||
"owner": "nixos-rocm",
|
"owner": "thiagokokada",
|
||||||
"repo": "nixos-rocm",
|
"repo": "nix-alien",
|
||||||
"rev": "cb12dc5cf144469b39f47b6be2e162f3202b142f",
|
"rev": "039e009b74b4310986696e28808342741079c7ee",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos-rocm",
|
"owner": "thiagokokada",
|
||||||
"ref": "4.3.x",
|
"repo": "nix-alien",
|
||||||
"repo": "nixos-rocm",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -325,13 +288,28 @@
|
|||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-21_11": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1638371214,
|
||||||
|
"narHash": "sha256-0kE6KhgH7n0vyuX4aUoGsGIQOqjIx2fJavpCWtn73rc=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "a640d8394f34714578f3e6335fc767d0755d78f9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"ref": "nixos-21.11",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs-master": {
|
"nixpkgs-master": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1636683649,
|
"lastModified": 1642799162,
|
||||||
"narHash": "sha256-4wDfn9pmGX5WBEttGxYVYliZm2zeZeBLl0ytowHnvXE=",
|
"narHash": "sha256-6KJlDYBM2YUfHyjn3J3iCmNpjKIBUfmenfAGtmVWLoI=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "77e7d796b838eae999b7649495770345b54825d2",
|
"rev": "af1309ca38c3d727e5100c18f66f19cf9c0530be",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -344,11 +322,11 @@
|
|||||||
"nixpkgs-mozilla": {
|
"nixpkgs-mozilla": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1636569584,
|
"lastModified": 1638887313,
|
||||||
"narHash": "sha256-iDFogua24bhFJZSxG/jhZbbNxDXuKP9S/pyRIYzrRPM=",
|
"narHash": "sha256-FMYV6rVtvSIfthgC1sK1xugh3y7muoQcvduMdriz4ag=",
|
||||||
"owner": "mozilla",
|
"owner": "mozilla",
|
||||||
"repo": "nixpkgs-mozilla",
|
"repo": "nixpkgs-mozilla",
|
||||||
"rev": "9f70f86d73fa97e043bebeb58e5676d157069cfb",
|
"rev": "7c1e8b1dd6ed0043fb4ee0b12b815256b0b9de6f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -375,17 +353,38 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1632411313,
|
"lastModified": 1642707142,
|
||||||
"narHash": "sha256-lekODc44lVo9/0EwGiX6LoEt2KhiPdcfNopealMJ7n4=",
|
"narHash": "sha256-BzH6xhnkn52yF4+A8C8slWFQRMInS5VYlzrH/rN1bnA=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "51bcdc4cdaac48535dabf0ad4642a66774c609ed",
|
"rev": "6f07605b6916abee5435ea1145a7541299a87c1b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-21.11",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "51bcdc4cdaac48535dabf0ad4642a66774c609ed",
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-wayland": {
|
||||||
|
"inputs": {
|
||||||
|
"cachix": "cachix",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1642775155,
|
||||||
|
"narHash": "sha256-yQMXrsAxYTbrSr5DGpCsyrWIeBbs/f0S9Uc0/fUABHo=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs-wayland",
|
||||||
|
"rev": "a38c5dfa2998e6dddd39a5e119672110a91b79a6",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs-wayland",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -406,27 +405,26 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1630761588,
|
"lastModified": 1642799162,
|
||||||
"narHash": "sha256-7GXckvZy7DGh2KIyfdArqwnyeSc5Owy1fumEDQyd8eY=",
|
"narHash": "sha256-6KJlDYBM2YUfHyjn3J3iCmNpjKIBUfmenfAGtmVWLoI=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a51aa6523bd8ee985bc70987909eff235900197a",
|
"rev": "af1309ca38c3d727e5100c18f66f19cf9c0530be",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1636443933,
|
"lastModified": 1642635915,
|
||||||
"narHash": "sha256-ABJmNQdzFWWxaqkb0C0kd9f/MmUtmnQrxm9sZPhgm/s=",
|
"narHash": "sha256-vabPA32j81xBO5m3+qXndWp5aqepe+vu96Wkd9UnngM=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "9e70e9f732fbb15872cb4ea11bd43c14328a0b69",
|
"rev": "6d8215281b2f87a5af9ed7425a26ac575da0438f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -436,14 +434,46 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1641528457,
|
||||||
|
"narHash": "sha256-FyU9E63n1W7Ql4pMnhW2/rO9OftWZ37pLppn/c1aisY=",
|
||||||
|
"path": "/nix/store/pwz0d92vl5hjrvhiri3qzazxjnf1r8wy-source",
|
||||||
|
"rev": "ff377a78794d412a35245e05428c8f95fef3951f",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"poetry2nix": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"nixpkgs": "nixpkgs_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1642215333,
|
||||||
|
"narHash": "sha256-hOs6lr62ITT8gAnpj5C248K0PW4IrCuXzgoan+VUgiM=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "poetry2nix",
|
||||||
|
"rev": "7b5c8e3b838d534e0d4dcaa6bbe6530086ebf407",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "poetry2nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"qbittorrent-ee": {
|
"qbittorrent-ee": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1635705887,
|
"lastModified": 1641579458,
|
||||||
"narHash": "sha256-MiAfqcalfk6CWBtLtENnwc0W17MLSZOoLuzfu/xP4Pw=",
|
"narHash": "sha256-7jbG8kQkLyKP03Ta2LNIEctAEbVb4o/opWiaYP15ZAc=",
|
||||||
"owner": "c0re100",
|
"owner": "c0re100",
|
||||||
"repo": "qBittorrent-Enhanced-Edition",
|
"repo": "qBittorrent-Enhanced-Edition",
|
||||||
"rev": "a3955360cd527a641d4623fd84609bc072c574e2",
|
"rev": "fd047415f4fa9d99edabd4a0cb285bb8d30c8c50",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -454,21 +484,19 @@
|
|||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"android-nixpkgs": "android-nixpkgs",
|
|
||||||
"base16": "base16",
|
"base16": "base16",
|
||||||
"base16-horizon-scheme": "base16-horizon-scheme",
|
"base16-horizon-scheme": "base16-horizon-scheme",
|
||||||
"base16-tokyonight-scheme": "base16-tokyonight-scheme",
|
"base16-tokyonight-scheme": "base16-tokyonight-scheme",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"i3lock-fancy-rapid": "i3lock-fancy-rapid",
|
|
||||||
"materia-theme": "materia-theme",
|
"materia-theme": "materia-theme",
|
||||||
"multimc-cracked": "multimc-cracked",
|
"multimc-cracked": "multimc-cracked",
|
||||||
"nix": "nix",
|
"nix": "nix",
|
||||||
"nix-direnv": "nix-direnv",
|
"nix-alien": "nix-alien",
|
||||||
"nixos-rocm": "nixos-rocm",
|
|
||||||
"nixpkgs": "nixpkgs_4",
|
"nixpkgs": "nixpkgs_4",
|
||||||
"nixpkgs-master": "nixpkgs-master",
|
"nixpkgs-master": "nixpkgs-master",
|
||||||
"nixpkgs-mozilla": "nixpkgs-mozilla",
|
"nixpkgs-mozilla": "nixpkgs-mozilla",
|
||||||
"nixpkgs-stable": "nixpkgs-stable",
|
"nixpkgs-stable": "nixpkgs-stable",
|
||||||
|
"nixpkgs-wayland": "nixpkgs-wayland",
|
||||||
"qbittorrent-ee": "qbittorrent-ee",
|
"qbittorrent-ee": "qbittorrent-ee",
|
||||||
"rycee": "rycee",
|
"rycee": "rycee",
|
||||||
"simple-nixos-mailserver": "simple-nixos-mailserver",
|
"simple-nixos-mailserver": "simple-nixos-mailserver",
|
||||||
@ -482,11 +510,11 @@
|
|||||||
"rycee": {
|
"rycee": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1636603333,
|
"lastModified": 1642777133,
|
||||||
"narHash": "sha256-VnTFUNJZE2eNnjsPgTVqqHQtcHXe0udFBHPqXljRLwE=",
|
"narHash": "sha256-sJuwCblryqBK4oTsq/MSZIpKgaB4XpfHCfG1kzmKbHM=",
|
||||||
"owner": "rycee",
|
"owner": "rycee",
|
||||||
"repo": "nur-expressions",
|
"repo": "nur-expressions",
|
||||||
"rev": "12ffa46d3f18d1a439a63fb78a83db8e9637a12f",
|
"rev": "fdd004510ccd5fe3fd63a38124578a58b2b21c8e",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -502,14 +530,15 @@
|
|||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"nixpkgs-21_05": "nixpkgs-21_05",
|
"nixpkgs-21_05": "nixpkgs-21_05",
|
||||||
|
"nixpkgs-21_11": "nixpkgs-21_11",
|
||||||
"utils": "utils"
|
"utils": "utils"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1636315032,
|
"lastModified": 1638911354,
|
||||||
"narHash": "sha256-hbMXt0/PYssN92hfZwIoAnavyBbcLEpHJS3eMAK6H6c=",
|
"narHash": "sha256-hNhzLOp+dApEY15vwLAQZu+sjEQbJcOXCaSfAT6lpsQ=",
|
||||||
"owner": "simple-nixos-mailserver",
|
"owner": "simple-nixos-mailserver",
|
||||||
"repo": "nixos-mailserver",
|
"repo": "nixos-mailserver",
|
||||||
"rev": "6e8142862f23ab99e1cc57838c02b733361e8d50",
|
"rev": "6e3a7b2ea6f0d68b82027b988aa25d3423787303",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -535,7 +564,7 @@
|
|||||||
},
|
},
|
||||||
"vscode-server-fixup": {
|
"vscode-server-fixup": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils_3",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
@ -575,11 +604,11 @@
|
|||||||
"zsh-cod": {
|
"zsh-cod": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1627976995,
|
"lastModified": 1642757985,
|
||||||
"narHash": "sha256-CJDZK/3TCk+Zb6IZk41L1crboED4FZFhrSJJmHF6yBk=",
|
"narHash": "sha256-gn1MXy2kRCZqYewsxr+ZRwhxwUlD6TM1bt0mRDYnRZ8=",
|
||||||
"owner": "dim-an",
|
"owner": "dim-an",
|
||||||
"repo": "cod",
|
"repo": "cod",
|
||||||
"rev": "5e815b558bbc1c2a48df090c9ab6d0dad8e6f551",
|
"rev": "de10c9bfff394dd59f302515776f1413f26e5a49",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -607,11 +636,11 @@
|
|||||||
"zsh-you-should-use": {
|
"zsh-you-should-use": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1628094370,
|
"lastModified": 1638894143,
|
||||||
"narHash": "sha256-hTJjeJT9szHl9HXDHaSEmkv3wOARORs7sQA8/MjkfIo=",
|
"narHash": "sha256-g4Fw0TwyajZnWQ8fvJvobyt98nRgg08uxK6yNEABo8Y=",
|
||||||
"owner": "MichaelAquilina",
|
"owner": "MichaelAquilina",
|
||||||
"repo": "zsh-you-should-use",
|
"repo": "zsh-you-should-use",
|
||||||
"rev": "ccc7e7f75bd7169758a1c931ea574b96b71aa9a0",
|
"rev": "773ae5f414b296b4100f1ab6668ecffdab795128",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
26
flake.nix
26
flake.nix
@ -4,17 +4,16 @@
|
|||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
nixpkgs-master.url = "github:nixos/nixpkgs/master";
|
nixpkgs-master.url = "github:nixos/nixpkgs/master";
|
||||||
# nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-21.05";
|
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-21.11";
|
||||||
nixpkgs-stable.url = "github:nixos/nixpkgs/51bcdc4cdaac48535dabf0ad4642a66774c609ed";
|
nixpkgs-wayland = {
|
||||||
|
url = "github:nix-community/nixpkgs-wayland";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
nix.url = "github:nixos/nix";
|
nix.url = "github:nixos/nix";
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
android-nixpkgs = {
|
|
||||||
url = "github:tadfisher/android-nixpkgs";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
base16.url = "github:alukardbf/base16-nix";
|
base16.url = "github:alukardbf/base16-nix";
|
||||||
base16-horizon-scheme = {
|
base16-horizon-scheme = {
|
||||||
url = "github:michael-ball/base16-horizon-scheme";
|
url = "github:michael-ball/base16-horizon-scheme";
|
||||||
@ -24,10 +23,6 @@
|
|||||||
url = "github:alukardbf/base16-tokyonight-scheme";
|
url = "github:alukardbf/base16-tokyonight-scheme";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
i3lock-fancy-rapid = {
|
|
||||||
url = "github:yvbbrjdr/i3lock-fancy-rapid";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
materia-theme = {
|
materia-theme = {
|
||||||
url = "github:nana-4/materia-theme";
|
url = "github:nana-4/materia-theme";
|
||||||
flake = false;
|
flake = false;
|
||||||
@ -40,19 +35,14 @@
|
|||||||
submodules = true;
|
submodules = true;
|
||||||
type = "git";
|
type = "git";
|
||||||
};
|
};
|
||||||
nixos-rocm = {
|
nix-alien = {
|
||||||
url = "github:nixos-rocm/nixos-rocm/4.3.x";
|
url = "github:thiagokokada/nix-alien";
|
||||||
# inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
nixpkgs-mozilla = {
|
nixpkgs-mozilla = {
|
||||||
url = "github:mozilla/nixpkgs-mozilla";
|
url = "github:mozilla/nixpkgs-mozilla";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
nix-direnv = {
|
|
||||||
url = "github:nix-community/nix-direnv";
|
|
||||||
flake = false;
|
|
||||||
# inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
qbittorrent-ee = {
|
qbittorrent-ee = {
|
||||||
url = "github:c0re100/qBittorrent-Enhanced-Edition";
|
url = "github:c0re100/qBittorrent-Enhanced-Edition";
|
||||||
flake = false;
|
flake = false;
|
||||||
|
@ -28,12 +28,4 @@
|
|||||||
deviceSpecific.wireguard.enable = true;
|
deviceSpecific.wireguard.enable = true;
|
||||||
|
|
||||||
hardware.video.hidpi.enable = lib.mkForce false;
|
hardware.video.hidpi.enable = lib.mkForce false;
|
||||||
|
|
||||||
services.xserver.config = ''
|
|
||||||
Section "InputClass"
|
|
||||||
Identifier "C-Media USB Headphone Set"
|
|
||||||
MatchUSBID "0d8c:000c"
|
|
||||||
Option "Ignore" "true"
|
|
||||||
EndSection
|
|
||||||
'';
|
|
||||||
}
|
}
|
||||||
|
Binary file not shown.
@ -47,16 +47,19 @@ let
|
|||||||
|
|
||||||
activate-secrets = pkgs.writeShellScriptBin "activate-secrets" ''
|
activate-secrets = pkgs.writeShellScriptBin "activate-secrets" ''
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
export PATH="${with pkgs; lib.makeBinPath [ gnupg git coreutils ]}:/run/wrappers/bin/:$PATH"
|
||||||
|
export SHELL=${pkgs.runtimeShell}
|
||||||
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
|
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
|
||||||
if [ -d "${password-store}/.git" ]; then
|
if [ -d "${password-store}/.git" ]; then
|
||||||
cd "${password-store}"; ${pkgs.git}/bin/git pull
|
cd "${password-store}"; git pull
|
||||||
else
|
else
|
||||||
${pkgs.git}/bin/git clone ${
|
echo "${lib.escapeShellArg config.secretsConfig.repo}"
|
||||||
|
git clone ${
|
||||||
lib.escapeShellArg config.secretsConfig.repo
|
lib.escapeShellArg config.secretsConfig.repo
|
||||||
} "${password-store}"
|
} "${password-store}"
|
||||||
fi
|
fi
|
||||||
cat ${password-store}/spotify.gpg | ${pkgs.gnupg}/bin/gpg --decrypt > /dev/null
|
cat ${password-store}/spotify.gpg | ${pkgs.gnupg}/bin/gpg --decrypt > /dev/null
|
||||||
sudo systemctl restart ${allServices}
|
[ ! -z "${allServices}" ] && sudo systemctl restart ${allServices}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
decrypt = name: cfg:
|
decrypt = name: cfg:
|
||||||
@ -118,7 +121,7 @@ in {
|
|||||||
options.secretsConfig = {
|
options.secretsConfig = {
|
||||||
repo = lib.mkOption {
|
repo = lib.mkOption {
|
||||||
type = str;
|
type = str;
|
||||||
default = "ssh://gitea@gitea.ataraxiadev.com:AtaraxiaDev/pass.git";
|
default = "git@github.com:AlukardBF/pass.git";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -148,14 +151,14 @@ in {
|
|||||||
Service = {
|
Service = {
|
||||||
Environment = [
|
Environment = [
|
||||||
"PASSWORD_STORE_DIR=${password-store}"
|
"PASSWORD_STORE_DIR=${password-store}"
|
||||||
"PATH=${lib.makeBinPath [ pkgs.pass pkgs.inotify-tools pkgs.gnupg ]}"
|
"PATH=${with pkgs; lib.makeBinPath [ pass inotify-tools gnupg git ]}"
|
||||||
];
|
];
|
||||||
ExecStart = toString (pkgs.writeShellScript "pass-store-sync" ''
|
ExecStart = toString (pkgs.writeShellScript "pass-store-sync" ''
|
||||||
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
|
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
|
||||||
while inotifywait "$PASSWORD_STORE_DIR" -r -e move -e close_write -e create -e delete --exclude .git; do
|
while inotifywait "$PASSWORD_STORE_DIR" -r -e move -e close_write -e create -e delete --exclude .git; do
|
||||||
sleep 0.1
|
sleep 1
|
||||||
pass git add --all
|
pass git add --all
|
||||||
pass git commit -m "change"
|
pass git commit -m "$(date +%F)_$(date+%T)"
|
||||||
pass git pull --rebase
|
pass git pull --rebase
|
||||||
pass git push
|
pass git push
|
||||||
done
|
done
|
||||||
@ -169,7 +172,7 @@ in {
|
|||||||
};
|
};
|
||||||
programs.password-store = {
|
programs.password-store = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.pass-nodmenu;
|
package = pkgs.pass-wayland;
|
||||||
settings.PASSWORD_STORE_DIR = password-store;
|
settings.PASSWORD_STORE_DIR = password-store;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
messenger.cmd
|
messenger.cmd
|
||||||
"${pkgs.keepassxc}/bin/keepassxc --keyfile=/home/alukard/.passwords.key /home/alukard/nixos-config/misc/Passwords.kdbx"
|
"${pkgs.keepassxc}/bin/keepassxc --keyfile=/home/alukard/.passwords.key /home/alukard/nixos-config/misc/Passwords.kdbx"
|
||||||
"${term.cmd} -e spt"
|
"${term.cmd} -e spt"
|
||||||
"${pkgs.feh}/bin/feh --bg-fill ${/. + ../misc/wallpaper}"
|
# "${pkgs.feh}/bin/feh --bg-fill ${/. + ../misc/wallpaper}"
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.sessionVariables = {
|
environment.sessionVariables = {
|
||||||
|
@ -4,6 +4,8 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
config = {
|
config = {
|
||||||
vo = "gpu";
|
vo = "gpu";
|
||||||
|
gpu-context = "wayland";
|
||||||
|
save-position-on-quit = "yes";
|
||||||
hwdec = if config.deviceSpecific.devInfo.gpu.vendor == "nvidia" then
|
hwdec = if config.deviceSpecific.devInfo.gpu.vendor == "nvidia" then
|
||||||
"vdpau"
|
"vdpau"
|
||||||
else
|
else
|
||||||
@ -11,10 +13,11 @@
|
|||||||
ytdl-format = if config.deviceSpecific.isLaptop then
|
ytdl-format = if config.deviceSpecific.isLaptop then
|
||||||
"bestvideo[height<=?1080]+bestaudio/best"
|
"bestvideo[height<=?1080]+bestaudio/best"
|
||||||
else
|
else
|
||||||
"bestvideo+bestaudio/best";
|
"bestvideo[height<=?2160]+bestaudio/best";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
home-manager.users.alukard.home.file.".config/youtube-dl/config" = {
|
# TODO: --cookies-from-browser
|
||||||
|
home-manager.users.alukard.home.file.".config/yt-dlp/config" = {
|
||||||
text = ''
|
text = ''
|
||||||
--cookie=/var/secrets/yt-cookie
|
--cookie=/var/secrets/yt-cookie
|
||||||
--mark-watched
|
--mark-watched
|
||||||
|
@ -9,12 +9,15 @@ with config.deviceSpecific; {
|
|||||||
exa
|
exa
|
||||||
fd
|
fd
|
||||||
ffmpeg.bin
|
ffmpeg.bin
|
||||||
git-filter-repo
|
# git-filter-repo
|
||||||
glib
|
glib
|
||||||
# gptfdisk
|
# gptfdisk
|
||||||
libqalculate
|
libqalculate
|
||||||
lm_sensors
|
lm_sensors
|
||||||
|
lnav
|
||||||
|
nix-alien
|
||||||
nix-prefetch-git
|
nix-prefetch-git
|
||||||
|
nix-index-update
|
||||||
p7zip
|
p7zip
|
||||||
# (p7zip.override { enableUnfree = true; })
|
# (p7zip.override { enableUnfree = true; })
|
||||||
pciutils
|
pciutils
|
||||||
@ -28,7 +31,7 @@ with config.deviceSpecific; {
|
|||||||
unzip
|
unzip
|
||||||
usbutils
|
usbutils
|
||||||
wget
|
wget
|
||||||
youtube-dl
|
yt-dlp
|
||||||
zip
|
zip
|
||||||
|
|
||||||
# tui
|
# tui
|
||||||
@ -44,39 +47,45 @@ with config.deviceSpecific; {
|
|||||||
# gui
|
# gui
|
||||||
audacity
|
audacity
|
||||||
blueman
|
blueman
|
||||||
bookworm
|
# bookworm
|
||||||
discord
|
discord
|
||||||
element-desktop
|
element-desktop
|
||||||
feh
|
feh
|
||||||
gnome.eog
|
|
||||||
gparted
|
gparted
|
||||||
keepassxc
|
keepassxc
|
||||||
persepolis
|
# persepolis
|
||||||
pinta
|
pinta
|
||||||
qbittorrent
|
qbittorrent
|
||||||
|
qimgv
|
||||||
quodlibet
|
quodlibet
|
||||||
scrcpy
|
scrcpy
|
||||||
system-config-printer
|
system-config-printer
|
||||||
tdesktop
|
tdesktop
|
||||||
xarchiver
|
xarchiver
|
||||||
xfce4-14.thunar
|
|
||||||
xfce4-14.xfce4-taskmanager
|
|
||||||
youtube-to-mpv
|
youtube-to-mpv
|
||||||
zathura
|
zathura
|
||||||
zoom-us
|
|
||||||
|
# libsForQt5.networkmanager-qt
|
||||||
|
# networkmanagerapplet
|
||||||
|
xdg-utils
|
||||||
|
|
||||||
# awesome-shell
|
# awesome-shell
|
||||||
lnav
|
curlie
|
||||||
|
duf
|
||||||
|
zsh-z
|
||||||
] ++ lib.optionals (!(isVM || isISO)) [
|
] ++ lib.optionals (!(isVM || isISO)) [
|
||||||
libreoffice
|
libreoffice
|
||||||
] ++ lib.optionals isGaming [
|
] ++ lib.optionals isGaming [
|
||||||
# ceserver
|
# ceserver
|
||||||
# ckan
|
# ckan
|
||||||
|
gamescope
|
||||||
goverlay
|
goverlay
|
||||||
multimc
|
multimc
|
||||||
lutris
|
lutris
|
||||||
obs-studio
|
obs-studio
|
||||||
reshade-shaders
|
reshade-shaders
|
||||||
|
# (retroarch.override { cores = [ libretro.genesis-plus-gx ]; })
|
||||||
|
protontricks
|
||||||
vkBasalt
|
vkBasalt
|
||||||
# wine
|
# wine
|
||||||
# winetricks
|
# winetricks
|
||||||
|
@ -5,13 +5,14 @@ let
|
|||||||
in
|
in
|
||||||
{
|
{
|
||||||
defaultApplications.dmenu = {
|
defaultApplications.dmenu = {
|
||||||
cmd = "${pkgs.rofi}/bin/rofi -show run";
|
cmd = "${pkgs.rofi-wayland}/bin/rofi -show run";
|
||||||
desktop = "rofi";
|
desktop = "rofi";
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.alukard = {
|
home-manager.users.alukard = {
|
||||||
programs.rofi = {
|
programs.rofi = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = pkgs.rofi-wayland;
|
||||||
font = "${thm.fonts.mono.family} ${thm.fontSizes.header.str}";
|
font = "${thm.fonts.mono.family} ${thm.fontSizes.header.str}";
|
||||||
terminal = config.defaultApplications.term.cmd;
|
terminal = config.defaultApplications.term.cmd;
|
||||||
theme = "${themeFile}";
|
theme = "${themeFile}";
|
||||||
|
@ -8,108 +8,127 @@ in
|
|||||||
programs.vscode = {
|
programs.vscode = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.vscode;
|
package = pkgs.vscode;
|
||||||
extensions = with pkgs.vscode-extensions; ([
|
extensions = pkgs.vscode-utils.extensionsFromVscodeMarketplace [
|
||||||
alefragnani.project-manager
|
|
||||||
arrterian.nix-env-selector
|
|
||||||
bbenoist.nix
|
|
||||||
codezombiech.gitignore
|
|
||||||
coenraads.bracket-pair-colorizer-2
|
|
||||||
eamodio.gitlens
|
|
||||||
github.vscode-pull-request-github
|
|
||||||
mhutchie.git-graph
|
|
||||||
ms-vscode-remote.remote-ssh
|
|
||||||
naumovs.color-highlight
|
|
||||||
shardulm94.trailing-spaces
|
|
||||||
streetsidesoftware.code-spell-checker
|
|
||||||
tomoki1207.pdf
|
|
||||||
tyriar.sort-lines
|
|
||||||
yzhang.markdown-all-in-one
|
|
||||||
]) ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
|
|
||||||
{
|
{
|
||||||
name = "awesome-flutter-snippets";
|
|
||||||
publisher = "nash";
|
|
||||||
version = "3.0.2";
|
|
||||||
sha256 = "sha256-GQ42tySMD74F0umBlfBCbcjRsop8lKn/9RrwFM40PwE=";
|
|
||||||
} {
|
|
||||||
name = "better-comments";
|
name = "better-comments";
|
||||||
publisher = "aaron-bond";
|
publisher = "aaron-bond";
|
||||||
version = "2.1.0";
|
version = "2.1.0";
|
||||||
sha256 = "sha256-l7MG2bpfTgVgC+xLal6ygbxrrRoNONzOWjs3fZeZtU4=";
|
sha256 = "0kmmk6bpsdrvbb7dqf0d3annpg41n9g6ljzc1dh0akjzpbchdcwp";
|
||||||
|
} {
|
||||||
|
name = "Bookmarks";
|
||||||
|
publisher = "alefragnani";
|
||||||
|
version = "13.2.2";
|
||||||
|
sha256 = "17fyk8hr9ml0fx6qfyrkd0hbsb9r9s4s95w3yzly2glbwpwn5mm5";
|
||||||
|
} {
|
||||||
|
name = "project-manager";
|
||||||
|
publisher = "alefragnani";
|
||||||
|
version = "12.4.0";
|
||||||
|
sha256 = "0q6zkz7pqz2prmr01h17h9a5q6cn6bjgcxggy69c84j8h2w905wy";
|
||||||
|
} {
|
||||||
|
name = "nix-env-selector";
|
||||||
|
publisher = "arrterian";
|
||||||
|
version = "1.0.7";
|
||||||
|
sha256 = "0mralimyzhyp4x9q98x3ck64ifbjqdp8cxcami7clvdvkmf8hxhf";
|
||||||
|
} {
|
||||||
|
name = "Nix";
|
||||||
|
publisher = "bbenoist";
|
||||||
|
version = "1.0.1";
|
||||||
|
sha256 = "0zd0n9f5z1f0ckzfjr38xw2zzmcxg1gjrava7yahg5cvdcw6l35b";
|
||||||
} {
|
} {
|
||||||
name = "better-toml";
|
name = "better-toml";
|
||||||
publisher = "bungcip";
|
publisher = "bungcip";
|
||||||
version = "0.3.2";
|
version = "0.3.2";
|
||||||
sha256 = "sha256-g+LfgjAnSuSj/nSmlPdB0t29kqTmegZB5B1cYzP8kCI=";
|
sha256 = "08lhzhrn6p0xwi0hcyp6lj9bvpfj87vr99klzsiy8ji7621dzql3";
|
||||||
} {
|
|
||||||
name = "bookmarks";
|
|
||||||
publisher = "alefragnani";
|
|
||||||
version = "13.2.2";
|
|
||||||
sha256 = "sha256-pdZi+eWLPuHp94OXpIlOOS29IGgze4dNd4DWlCGa3p0=";
|
|
||||||
} {
|
|
||||||
name = "codeacejumper";
|
|
||||||
publisher = "lucax88x";
|
|
||||||
version = "3.3.2";
|
|
||||||
sha256 = "sha256-Fltl6ryBK2g2WWxV2Ru74cSYwqxgfFGclLlm8ChwRQk=";
|
|
||||||
} {
|
|
||||||
name = "dart-code";
|
|
||||||
publisher = "dart-code";
|
|
||||||
version = "3.28.0";
|
|
||||||
sha256 = "sha256-m0cZLAlVtjfvkIXlFssDQcNhqpjRrW1JTaUsohnY/14=";
|
|
||||||
} {
|
|
||||||
name = "vscode-env";
|
|
||||||
publisher = "irongeek";
|
|
||||||
version = "0.1.0";
|
|
||||||
sha256 = "sha256-URq90lOFtPCNfSIl2NUwihwRQyqgDysGmBc3NG7o7vk=";
|
|
||||||
} {
|
|
||||||
name = "flutter";
|
|
||||||
publisher = "dart-code";
|
|
||||||
version = "3.28.0";
|
|
||||||
sha256 = "sha256-3+PGSuJe32F2i1g9+/6GkcSYEMsjXZMK4xv4xPjzXvM=";
|
|
||||||
} {
|
|
||||||
name = "flutter-tree";
|
|
||||||
publisher = "marcelovelasquez";
|
|
||||||
version = "1.0.0";
|
|
||||||
sha256 = "sha256-+gQH7so9m/HvO0tDKaiNTP+2pTCvNdecJK60sgTY9CE=";
|
|
||||||
} {
|
|
||||||
name = "gruvbox-material";
|
|
||||||
publisher = "sainnhe";
|
|
||||||
version = "6.4.6";
|
|
||||||
sha256 = "sha256-rm/S4SAZ/z8Svd0wZyaYOZUxcUSMmBE0xUk+16drrZ8=";
|
|
||||||
} {
|
|
||||||
name = "vscode-hexdump";
|
|
||||||
publisher = "slevesque";
|
|
||||||
version = "1.8.1";
|
|
||||||
sha256 = "sha256-BNPRXRiM0OujxUZhBHREtaa0VrbuhhQ2CG3PUCyxga8=";
|
|
||||||
} {
|
|
||||||
name = "material-icon-theme";
|
|
||||||
publisher = "pkief";
|
|
||||||
version = "4.10.0";
|
|
||||||
sha256 = "sha256-4CzjUz/n/lQ7tLXuKEzmSkSE1jinpTZWDy11KHq7P4U=";
|
|
||||||
} {
|
} {
|
||||||
name = "path-intellisense";
|
name = "path-intellisense";
|
||||||
publisher = "christian-kohler";
|
publisher = "christian-kohler";
|
||||||
version = "2.4.2";
|
version = "2.7.0";
|
||||||
sha256 = "sha256-bPemoDmhBANjbn19ThKTZEjKLbQ5SlVFJp22K4kNjag=";
|
sha256 = "11jbaz8dlr9zmamikgii6pvbncsm61bhkipfarlqrisgfk99im9w";
|
||||||
} {
|
} {
|
||||||
name = "plantuml";
|
name = "gitignore";
|
||||||
publisher = "jebbs";
|
publisher = "codezombiech";
|
||||||
version = "2.16.0";
|
version = "0.7.0";
|
||||||
sha256 = "sha256-E29zGwHzVTARVGKn0JHpyKx3NCBNUSUSngmUvi0Hfo8=";
|
sha256 = "0fm4sxx1cb679vn4v85dw8dfp5x0p74m9p2b56gqkvdap0f2q351";
|
||||||
} {
|
} {
|
||||||
name = "code-spell-checker-russian";
|
name = "dart-code";
|
||||||
publisher = "streetsidesoftware";
|
publisher = "Dart-Code";
|
||||||
version = "2.0.1";
|
version = "3.33.20220111";
|
||||||
sha256 = "sha256-GC1zQp/2BxPLrCBCgKhxHkvX0bM3OAYSvI2C9SSHthQ=";
|
sha256 = "14jc0vh7swn2ijmgc496wjfrk5mbv4yrjpzxq3n9z1l5390sz30x";
|
||||||
} {
|
} {
|
||||||
name = "tokyo-night";
|
name = "flutter";
|
||||||
publisher = "enkia";
|
publisher = "Dart-Code";
|
||||||
version = "0.7.9";
|
version = "3.32.0";
|
||||||
sha256 = "sha256-2+md3lkBew1u+XkAM4e7i4OMNvyyJlZA4OT3WvMUkfk=";
|
sha256 = "02zk6889n9m4s44ygnid28mg9bghrdcj0wg8ma1g1yqx7jv554l6";
|
||||||
} {
|
} {
|
||||||
name = "wal-theme";
|
name = "wal-theme";
|
||||||
publisher = "dlasagno";
|
publisher = "dlasagno";
|
||||||
version = "1.2.0";
|
version = "1.2.0";
|
||||||
sha256 = "sha256-X16N5ClNVLtWST64ybJUEIRo6WgDCzODhBA9ScAHI5w=";
|
sha256 = "17130z04jg8hhj1k62q3d3lni10hajrckf1y95bbnm2d57j8spjz";
|
||||||
|
} {
|
||||||
|
name = "gitlens";
|
||||||
|
publisher = "eamodio";
|
||||||
|
version = "11.7.0";
|
||||||
|
sha256 = "0apjjlfdwljqih394ggz2d8m599pyyjrb0b4cfcz83601b7hk3x6";
|
||||||
|
} {
|
||||||
|
name = "tokyo-night";
|
||||||
|
publisher = "enkia";
|
||||||
|
version = "0.8.4";
|
||||||
|
sha256 = "15ab2k0xs8kvws8zq0irch4cvq1dc0zr3xynj0qn78zzbgwq92c7";
|
||||||
|
} {
|
||||||
|
name = "vscode-pull-request-github";
|
||||||
|
publisher = "GitHub";
|
||||||
|
version = "0.35.2022012009";
|
||||||
|
sha256 = "0rbky4cy6r0nw32pqfjj854nj9kf3f5dc6v38mf4wvzmxd5nb6bj";
|
||||||
|
} {
|
||||||
|
name = "vscode-env";
|
||||||
|
publisher = "IronGeek";
|
||||||
|
version = "0.1.0";
|
||||||
|
sha256 = "1ygfx1p38dqpk032n3x0591i274a63axh992gn6z1d45ag9bs6ji";
|
||||||
|
} {
|
||||||
|
name = "plantuml";
|
||||||
|
publisher = "jebbs";
|
||||||
|
version = "2.17.2";
|
||||||
|
sha256 = "0yxnfq34g563w96dwfirqscjfclhzr48yb9cwfjjf0c0l638x9vv";
|
||||||
|
} {
|
||||||
|
name = "codeacejumper";
|
||||||
|
publisher = "lucax88x";
|
||||||
|
version = "3.3.2";
|
||||||
|
sha256 = "02a5f0lg0rmrjjf52z30mk19ii71pcdxjmbcb4v6haw1pkm6anqn";
|
||||||
|
} {
|
||||||
|
name = "flutter-tree";
|
||||||
|
publisher = "marcelovelasquez";
|
||||||
|
version = "1.0.0";
|
||||||
|
sha256 = "08glv02b5d5f4jfdfddg62jvdzscinl2jhsb7gpz36rxrbp0f17s";
|
||||||
|
} {
|
||||||
|
name = "git-graph";
|
||||||
|
publisher = "mhutchie";
|
||||||
|
version = "1.30.0";
|
||||||
|
sha256 = "000zhgzijf3h6abhv4p3cz99ykj6489wfn81j0s691prr8q9lxxh";
|
||||||
|
} {
|
||||||
|
name = "remote-ssh";
|
||||||
|
publisher = "ms-vscode-remote";
|
||||||
|
version = "0.71.2021121615";
|
||||||
|
sha256 = "1lh08157z7lialb0dxls9fhahmf5l9wz6x2anwrnycvs512lpr1p";
|
||||||
|
} {
|
||||||
|
name = "awesome-flutter-snippets";
|
||||||
|
publisher = "Nash";
|
||||||
|
version = "3.0.2";
|
||||||
|
sha256 = "009z6k719w0sypzsk53wiard3j3d8bq9b0g9s82vw3wc4jvkc3hr";
|
||||||
|
} {
|
||||||
|
name = "color-highlight";
|
||||||
|
publisher = "naumovs";
|
||||||
|
version = "2.5.0";
|
||||||
|
sha256 = "0ri1rylg0r9r1kdc67815gjlq5fwnb26xpyziva6a40brrbh70vm";
|
||||||
|
} {
|
||||||
|
name = "material-icon-theme";
|
||||||
|
publisher = "PKief";
|
||||||
|
version = "4.11.0";
|
||||||
|
sha256 = "1l2s8j645riqjmj09i3v71s8ycin5vd6brdp35z472fnk6wyi1y6";
|
||||||
|
} {
|
||||||
|
name = "gruvbox-material";
|
||||||
|
publisher = "sainnhe";
|
||||||
|
version = "6.5.0";
|
||||||
|
sha256 = "1r9kgwrh6jjp8i6aa07prhrb398d5isf9ics4wmdbvd6k0gnzf8n";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
userSettings = {
|
userSettings = {
|
||||||
@ -171,6 +190,8 @@ in
|
|||||||
"git-graph.repository.sign.commits" = true;
|
"git-graph.repository.sign.commits" = true;
|
||||||
"git-graph.repository.sign.tags" = true;
|
"git-graph.repository.sign.tags" = true;
|
||||||
"remote.SSH.configFile" = "/home/alukard/.ssh/remote_config";
|
"remote.SSH.configFile" = "/home/alukard/.ssh/remote_config";
|
||||||
|
"editor.bracketPairColorization.enabled" = true;
|
||||||
|
"editor.guides.bracketPairs" = "active";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -4,10 +4,12 @@
|
|||||||
binaryCaches = [
|
binaryCaches = [
|
||||||
"https://cache.nixos.org"
|
"https://cache.nixos.org"
|
||||||
"https://nix-community.cachix.org"
|
"https://nix-community.cachix.org"
|
||||||
|
"https://nixpkgs-wayland.cachix.org"
|
||||||
];
|
];
|
||||||
binaryCachePublicKeys = [
|
binaryCachePublicKeys = [
|
||||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
|
"nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA="
|
||||||
];
|
];
|
||||||
|
|
||||||
registry.self.flake = inputs.self;
|
registry.self.flake = inputs.self;
|
||||||
|
@ -13,6 +13,7 @@ in
|
|||||||
with lib; {
|
with lib; {
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
inputs.nixpkgs-wayland.overlay
|
inputs.nixpkgs-wayland.overlay
|
||||||
|
inputs.nix-alien.overlay
|
||||||
(self: super:
|
(self: super:
|
||||||
rec {
|
rec {
|
||||||
inherit inputs;
|
inherit inputs;
|
||||||
@ -20,7 +21,7 @@ with lib; {
|
|||||||
android-emulator = self.callPackage ./packages/android-emulator.nix { };
|
android-emulator = self.callPackage ./packages/android-emulator.nix { };
|
||||||
bibata-cursors = pkgs.callPackage ./packages/bibata-cursors.nix { };
|
bibata-cursors = pkgs.callPackage ./packages/bibata-cursors.nix { };
|
||||||
ceserver = pkgs.callPackage ./packages/ceserver.nix { };
|
ceserver = pkgs.callPackage ./packages/ceserver.nix { };
|
||||||
i3lock-fancy-rapid = pkgs.callPackage ./packages/i3lock-fancy-rapid.nix { };
|
gamescope = pkgs.callPackage ./packages/gamescope.nix { };
|
||||||
ibm-plex-powerline = pkgs.callPackage ./packages/ibm-plex-powerline.nix { };
|
ibm-plex-powerline = pkgs.callPackage ./packages/ibm-plex-powerline.nix { };
|
||||||
mpris-ctl = pkgs.callPackage ./packages/mpris-ctl.nix { };
|
mpris-ctl = pkgs.callPackage ./packages/mpris-ctl.nix { };
|
||||||
multimc = pkgs.qt5.callPackage ./packages/multimc.nix { multimc-repo = inputs.multimc-cracked; };
|
multimc = pkgs.qt5.callPackage ./packages/multimc.nix { multimc-repo = inputs.multimc-cracked; };
|
||||||
@ -42,8 +43,8 @@ with lib; {
|
|||||||
src = super.fetchFromGitHub {
|
src = super.fetchFromGitHub {
|
||||||
owner = "digint";
|
owner = "digint";
|
||||||
repo = "btrbk";
|
repo = "btrbk";
|
||||||
rev = "cb38b7efa411f08fd3d7a65e19a8cef385eda0b8";
|
rev = "c5273a8745fa60fc52b3180fa210ec3048e6a419";
|
||||||
sha256 = "sha256-426bjK7EDq5LHb3vNS8XYnAuA6TUKXNOVrjGMR70bio=";
|
sha256 = "sha256-Q5KIndnXtTJmqVjmuucutWPggLey7ceT9sqeEInC8vw=";
|
||||||
};
|
};
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
wrapProgram $out/bin/btrbk \
|
wrapProgram $out/bin/btrbk \
|
||||||
|
81
profiles/packages/gamescope.nix
Normal file
81
profiles/packages/gamescope.nix
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
{ lib, stdenv, fetchFromGitHub, meson, pkgconfig, libdrm, xorg
|
||||||
|
, wayland, wayland-protocols, libxkbcommon, libcap
|
||||||
|
, SDL2, mesa, libinput, pixman, xcbutilerrors, xcbutilwm, glslang
|
||||||
|
, ninja, makeWrapper, xwayland, libuuid, xcbutilrenderutil
|
||||||
|
, pipewire, stb, writeText, wlroots, vulkan-loader, vulkan-headers, libkrb5 }:
|
||||||
|
|
||||||
|
let
|
||||||
|
stbpc = writeText "stbpc" ''
|
||||||
|
prefix=${stb}
|
||||||
|
includedir=''${prefix}/include/stb
|
||||||
|
Cflags: -I''${includedir}
|
||||||
|
Name: stb
|
||||||
|
Version: ${stb.version}
|
||||||
|
Description: stb
|
||||||
|
'';
|
||||||
|
stb_ = stb.overrideAttrs (oldAttrs: rec {
|
||||||
|
installPhase = ''
|
||||||
|
${oldAttrs.installPhase}
|
||||||
|
install -Dm644 ${stbpc} $out/lib/pkgconfig/stb.pc
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
vulkan-headers_ = vulkan-headers.overrideAttrs (oldAttrs: rec {
|
||||||
|
version = "1.2.189.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "KhronosGroup";
|
||||||
|
repo = "Vulkan-Headers";
|
||||||
|
rev = "sdk-${version}";
|
||||||
|
sha256 = "1qggc7dv9jr83xr9w2h375wl3pz3rfgrk9hnrjmylkg9gz4p9q03";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
vulkan-loader_ = (vulkan-loader.overrideAttrs (oldAttrs: rec {
|
||||||
|
version = "1.2.189.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "KhronosGroup";
|
||||||
|
repo = "Vulkan-Loader";
|
||||||
|
rev = "sdk-${version}";
|
||||||
|
sha256 = "1745fdzi0n5qj2s41q6z1y52cq8pwswvh1a32d3n7kl6bhksagp6";
|
||||||
|
};
|
||||||
|
})).override { vulkan-headers = vulkan-headers_; };
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
pname = "gamescope";
|
||||||
|
version = "3.9.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Plagman";
|
||||||
|
repo = "gamescope";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "05a1sj1fl9wpb9jys515m96958cxmgim8i7zc5mn44rjijkfbfcb";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
substituteInPlace meson.build \
|
||||||
|
--replace "'examples=false'" "'examples=false', 'logind-provider=systemd', 'libseat=disabled'"
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
wrapProgram $out/bin/gamescope \
|
||||||
|
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libkrb5 ]}" \
|
||||||
|
--prefix PATH : "${lib.makeBinPath [ xwayland ]}"
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildInputs = with xorg; [
|
||||||
|
libX11 libXdamage libXcomposite libXrender libXext libXxf86vm
|
||||||
|
libXtst libdrm vulkan-loader_ wayland wayland-protocols
|
||||||
|
libxkbcommon libcap SDL2 mesa libinput pixman xcbutilerrors
|
||||||
|
xcbutilwm libXi libXres libuuid xcbutilrenderutil xwayland
|
||||||
|
pipewire wlroots libkrb5
|
||||||
|
];
|
||||||
|
nativeBuildInputs = [ meson pkgconfig glslang ninja makeWrapper stb_ ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "The micro-compositor formerly known as steamcompmgr";
|
||||||
|
license = licenses.bsd2;
|
||||||
|
homepage = src.meta.homepage;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ ];
|
||||||
|
};
|
||||||
|
}
|
@ -1,25 +0,0 @@
|
|||||||
{ stdenv, fetchFromGitHub, i3lock, xorg, inputs, pkgs }:
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "i3lock-fancy-rapid";
|
|
||||||
src = inputs.i3lock-fancy-rapid;
|
|
||||||
# src = fetchFromGitHub {
|
|
||||||
# owner = "yvbbrjdr";
|
|
||||||
# repo = "i3lock-fancy-rapid";
|
|
||||||
# rev = "c67f09bc8a48798c7c820d7d4749240b10865ce0";
|
|
||||||
# sha256 = "0jhvlj6v6wx70239pgkjxd42z1s2bzfg886ra6n1rzsdclf4rkc6";
|
|
||||||
# };
|
|
||||||
buildInputs = [ i3lock xorg.libX11 ];
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/bin
|
|
||||||
cp i3lock-fancy-rapid $out/bin/i3lock-fancy-rapid
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with pkgs.lib; {
|
|
||||||
description = "A faster implementation of i3lock-fancy. It is blazing fast and provides a fully configurable box blur. It uses linear-time box blur and accelerates using OpenMP.";
|
|
||||||
homepage = https://github.com/yvbbrjdr/i3lock-fancy-rapid;
|
|
||||||
maintainers = with maintainers; [ ];
|
|
||||||
license = licenses.bsd3;
|
|
||||||
platforms = platforms.linux;
|
|
||||||
};
|
|
||||||
}
|
|
@ -3,11 +3,11 @@
|
|||||||
let
|
let
|
||||||
yt-mpv = pkgs.writeShellScriptBin "yt-mpv" ''
|
yt-mpv = pkgs.writeShellScriptBin "yt-mpv" ''
|
||||||
if [[ "$1" != "--no-video" ]]; then
|
if [[ "$1" != "--no-video" ]]; then
|
||||||
${pkgs.libnotify}/bin/notify-send -t 3000 --icon=video-television "Playing Video" "$(${pkgs.xclip}/bin/xclip -o)"
|
${pkgs.libnotify}/bin/notify-send -t 3000 --icon=video-television "Playing Video" "$(${pkgs.wl-clipboard}/bin/wl-paste)"
|
||||||
${pkgs.mpv}/bin/mpv --fs "$(${pkgs.xclip}/bin/xclip -o)"
|
${pkgs.mpv}/bin/mpv --fs "$(${pkgs.wl-clipboard}/bin/wl-paste)"
|
||||||
else
|
else
|
||||||
${pkgs.libnotify}/bin/notify-send -t 3000 --icon=video-television "Playing Audio" "$(${pkgs.xclip}/bin/xclip -o)"
|
${pkgs.libnotify}/bin/notify-send -t 3000 --icon=video-television "Playing Audio" "$(${pkgs.wl-clipboard}/bin/wl-paste)"
|
||||||
${term} -e ${pkgs.mpv}/bin/mpv --no-video "$(${pkgs.xclip}/bin/xclip -o)"
|
${term} -e ${pkgs.mpv}/bin/mpv --no-video "$(${pkgs.wl-clipboard}/bin/wl-paste)"
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
|
@ -28,12 +28,6 @@ with config.deviceSpecific; {
|
|||||||
interval = "weekly";
|
interval = "weekly";
|
||||||
};
|
};
|
||||||
|
|
||||||
services.redshift = {
|
|
||||||
enable = true;
|
|
||||||
temperature.day = 6500;
|
|
||||||
temperature.night = 3000;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.thermald.enable = isLaptop;
|
services.thermald.enable = isLaptop;
|
||||||
|
|
||||||
services.tlp = {
|
services.tlp = {
|
||||||
@ -69,6 +63,14 @@ with config.deviceSpecific; {
|
|||||||
|
|
||||||
home-manager.users.alukard.services.udiskie.enable = true;
|
home-manager.users.alukard.services.udiskie.enable = true;
|
||||||
|
|
||||||
|
home-manager.users.alukard.services.gammastep = {
|
||||||
|
enable = true;
|
||||||
|
latitude = 48.79;
|
||||||
|
longitude = 44.78;
|
||||||
|
temperature.day = 6500;
|
||||||
|
temperature.night = 3000;
|
||||||
|
};
|
||||||
|
|
||||||
services.upower.enable = true;
|
services.upower.enable = true;
|
||||||
|
|
||||||
systemd.services.systemd-udev-settle.enable = false;
|
systemd.services.systemd-udev-settle.enable = false;
|
||||||
|
@ -1,51 +0,0 @@
|
|||||||
{ config, lib, pkgs, inputs, ... }: {
|
|
||||||
home-manager.users.alukard = rec {
|
|
||||||
imports = [ inputs.android-nixpkgs.hmModule ];
|
|
||||||
|
|
||||||
android-sdk = {
|
|
||||||
enable = true;
|
|
||||||
path = "${config.home-manager.users.alukard.home.homeDirectory}/.android/sdk";
|
|
||||||
packages = sdk: with sdk; [
|
|
||||||
build-tools-31-0-0
|
|
||||||
build-tools-29-0-2
|
|
||||||
cmdline-tools-latest
|
|
||||||
patcher-v4
|
|
||||||
platform-tools
|
|
||||||
platforms-android-30
|
|
||||||
|
|
||||||
|
|
||||||
emulator
|
|
||||||
system-images-android-30-google-apis-x86-64
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
home.sessionVariables = {
|
|
||||||
ANDROID_HOME = android-sdk.path;
|
|
||||||
ANDROID_SDK_ROOT = android-sdk.path;
|
|
||||||
JAVA_HOME = pkgs.jdk11.home;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = let
|
|
||||||
android-emulator = pkgs.android-emulator.override {
|
|
||||||
name = "flutter-emulator";
|
|
||||||
avdHomeDir = config.home-manager.users.alukard.home.homeDirectory;
|
|
||||||
sdk = android-sdk.path;
|
|
||||||
platformVersion = "30";
|
|
||||||
systemImageType = "google_apis";
|
|
||||||
abiVersion = "x86_64";
|
|
||||||
deviceType = "pixel";
|
|
||||||
# enableGPU = true;
|
|
||||||
};
|
|
||||||
in [
|
|
||||||
pkgs.flutter
|
|
||||||
android-emulator
|
|
||||||
# jdk11
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.sessionVariables = {
|
|
||||||
ANDROID_HOME = config.home-manager.users.alukard.android-sdk.path;
|
|
||||||
ANDROID_SDK_ROOT = config.home-manager.users.alukard.android-sdk.path;
|
|
||||||
JAVA_HOME = pkgs.jdk11.home;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,51 +0,0 @@
|
|||||||
{ pkgs, config, lib, ... }:
|
|
||||||
let
|
|
||||||
thm = config.lib.base16.theme;
|
|
||||||
in {
|
|
||||||
home-manager.users.alukard = {
|
|
||||||
services.dunst = {
|
|
||||||
enable = true;
|
|
||||||
iconTheme = {
|
|
||||||
name = "${thm.iconTheme}";
|
|
||||||
package = thm.iconPackage;
|
|
||||||
};
|
|
||||||
settings = {
|
|
||||||
global = {
|
|
||||||
geometry = "500x5-30+50";
|
|
||||||
transparency = 10;
|
|
||||||
frame_color = "#${thm.base05-hex}";
|
|
||||||
separator_color = "#${thm.base05-hex}";
|
|
||||||
font = "${thm.fonts.main.family} ${thm.fontSizes.normal.str}";
|
|
||||||
padding = 15;
|
|
||||||
horizontal_padding = 17;
|
|
||||||
word_wrap = true;
|
|
||||||
follow = "keyboard";
|
|
||||||
format = ''
|
|
||||||
%s %p %I
|
|
||||||
%b'';
|
|
||||||
markup = "full";
|
|
||||||
};
|
|
||||||
|
|
||||||
urgency_low = {
|
|
||||||
background = "#${thm.base01-hex}";
|
|
||||||
foreground = "#${thm.base05-hex}";
|
|
||||||
timeout = 8;
|
|
||||||
};
|
|
||||||
|
|
||||||
urgency_normal = {
|
|
||||||
background = "#${thm.base01-hex}";
|
|
||||||
foreground = "#${thm.base08-hex}";
|
|
||||||
timeout = 12;
|
|
||||||
};
|
|
||||||
|
|
||||||
urgency_critical = {
|
|
||||||
background = "#${thm.base01-hex}";
|
|
||||||
foreground = "#${thm.base0D-hex}";
|
|
||||||
timeout = 20;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
xsession.windowManager.i3.config.startup =
|
|
||||||
[{ command = "${pkgs.dunst}/bin/dunst"; }];
|
|
||||||
};
|
|
||||||
}
|
|
@ -33,7 +33,7 @@ in {
|
|||||||
];
|
];
|
||||||
gtk.iconCache.enable = true;
|
gtk.iconCache.enable = true;
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
services.dbus.packages = with pkgs; [ gnome3.dconf gcr ];
|
services.dbus.packages = with pkgs; [ dconf gcr ];
|
||||||
home-manager.users.alukard = {
|
home-manager.users.alukard = {
|
||||||
gtk = {
|
gtk = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -1,194 +0,0 @@
|
|||||||
{ pkgs, config, lib, ... }:
|
|
||||||
let
|
|
||||||
thm = config.lib.base16.theme;
|
|
||||||
apps = config.defaultApplications;
|
|
||||||
# lock = pkgs.writeShellScript "lock" "sudo /run/current-system/sw/bin/lock";
|
|
||||||
in {
|
|
||||||
environment.sessionVariables._JAVA_AWT_WM_NONREPARENTING = "1";
|
|
||||||
|
|
||||||
home-manager.users.alukard.xsession.windowManager.i3 = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.i3-gaps;
|
|
||||||
config = rec {
|
|
||||||
assigns = {
|
|
||||||
"" = [
|
|
||||||
{ class = "spotify"; }
|
|
||||||
{ title = "spt"; }
|
|
||||||
];
|
|
||||||
"" = [
|
|
||||||
{ class = "^Telegram"; }
|
|
||||||
];
|
|
||||||
};
|
|
||||||
fonts = {
|
|
||||||
names = [ "${thm.fonts.main.family}" ];
|
|
||||||
style = "Regular";
|
|
||||||
size = thm.fontSizes.micro.float;
|
|
||||||
};
|
|
||||||
|
|
||||||
bars = [ ];
|
|
||||||
|
|
||||||
colors = rec {
|
|
||||||
background = "#${thm.base00-hex}";
|
|
||||||
unfocused = {
|
|
||||||
text = "#${thm.base02-hex}";
|
|
||||||
border = "#${thm.base01-hex}";
|
|
||||||
background = "#${thm.base00-hex}";
|
|
||||||
childBorder = "#${thm.base01-hex}";
|
|
||||||
indicator = "#${thm.base07-hex}";
|
|
||||||
};
|
|
||||||
focusedInactive = unfocused;
|
|
||||||
urgent = unfocused // {
|
|
||||||
text = "#${thm.base05-hex}";
|
|
||||||
border = "#${thm.base09-hex}";
|
|
||||||
childBorder = "#${thm.base09-hex}";
|
|
||||||
};
|
|
||||||
focused = unfocused // {
|
|
||||||
childBorder = "#${thm.base03-hex}";
|
|
||||||
border = "#${thm.base03-hex}";
|
|
||||||
background = "#${thm.base01-hex}";
|
|
||||||
text = "#${thm.base05-hex}";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gaps = {
|
|
||||||
inner = 6;
|
|
||||||
smartGaps = true;
|
|
||||||
smartBorders = "on";
|
|
||||||
};
|
|
||||||
focus.mouseWarping = false;
|
|
||||||
focus.followMouse = false;
|
|
||||||
modifier = "Mod4";
|
|
||||||
window = {
|
|
||||||
border = 1;
|
|
||||||
titlebar = false;
|
|
||||||
hideEdgeBorders = "smart";
|
|
||||||
commands = [
|
|
||||||
{
|
|
||||||
command = "border pixel 2px";
|
|
||||||
criteria = { window_role = "popup"; };
|
|
||||||
}
|
|
||||||
{
|
|
||||||
command = "move to workspace ";
|
|
||||||
criteria = { class = "Spotify"; };
|
|
||||||
}
|
|
||||||
{
|
|
||||||
command = "floating enable";
|
|
||||||
criteria = { instance = "origin.exe"; };
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
startup = lib.mkIf (!config.deviceSpecific.isISO) (map (command: { inherit command; }) config.startupApplications);
|
|
||||||
keybindings = let
|
|
||||||
script = name: content: "exec ${pkgs.writeScript name content}";
|
|
||||||
workspaces = (builtins.genList (x: [ (toString x) (toString x) ]) 10)
|
|
||||||
++ [ [ "c" "" ] [ "t" "" ] ];
|
|
||||||
in ({
|
|
||||||
"${modifier}+q" = "kill";
|
|
||||||
"${modifier}+Shift+q" = "move container to workspace temp; [workspace=__focused__] kill; workspace temp; move container to workspace temp; workspace temp";
|
|
||||||
"${modifier}+w" = "exec ${apps.dmenu.cmd}";
|
|
||||||
"${modifier}+Return" = "exec ${apps.term.cmd}";
|
|
||||||
"${modifier}+e" = "exec ${apps.editor.cmd}";
|
|
||||||
"${modifier}+o" = "layout toggle all";
|
|
||||||
|
|
||||||
"${modifier}+Left" = "focus child; focus left";
|
|
||||||
"${modifier}+Right" = "focus child; focus right";
|
|
||||||
"${modifier}+Up" = "focus child; focus up";
|
|
||||||
"${modifier}+Down" = "focus child; focus down";
|
|
||||||
"${modifier}+Control+Left" = "focus parent; focus left";
|
|
||||||
"${modifier}+Control+Right" = "focus parent; focus right";
|
|
||||||
"${modifier}+Control+Up" = "focus parent; focus up";
|
|
||||||
"${modifier}+Control+Down" = "focus parent; focus down";
|
|
||||||
"${modifier}+Shift+Up" = "move up";
|
|
||||||
"${modifier}+Shift+Down" = "move down";
|
|
||||||
"${modifier}+Shift+Right" = "move right";
|
|
||||||
"${modifier}+Shift+Left" = "move left";
|
|
||||||
|
|
||||||
"${modifier}+bracketleft" = "workspace prev";
|
|
||||||
"${modifier}+bracketright" = "workspace next";
|
|
||||||
|
|
||||||
"${modifier}+f" = "fullscreen toggle";
|
|
||||||
"${modifier}+r" = "mode resize";
|
|
||||||
"${modifier}+Shift+f" = "floating toggle";
|
|
||||||
"${modifier}+Escape" = "exec ${apps.monitor.cmd}";
|
|
||||||
|
|
||||||
"${modifier}+j" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl prev";
|
|
||||||
"${modifier}+k" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl pp";
|
|
||||||
"${modifier}+l" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl next";
|
|
||||||
"${modifier}+m" = "exec ${pkgs.pamixer}/bin/pamixer -t";
|
|
||||||
"${modifier}+comma" = "exec ${pkgs.pamixer}/bin/pamixer -d 5";
|
|
||||||
"${modifier}+period" = "exec ${pkgs.pamixer}/bin/pamixer -i 5";
|
|
||||||
"${modifier}+Shift+comma" = "exec ${pkgs.pamixer}/bin/pamixer -d 2";
|
|
||||||
"${modifier}+Shift+period" = "exec ${pkgs.pamixer}/bin/pamixer -i 2";
|
|
||||||
"${modifier}+i" = "exec ${pkgs.pavucontrol}/bin/pavucontrol";
|
|
||||||
|
|
||||||
"${modifier}+d" = "exec ${apps.fm.cmd}";
|
|
||||||
"${modifier}+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv";
|
|
||||||
"${modifier}+Shift+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv --no-video";
|
|
||||||
|
|
||||||
"${modifier}+Shift+l" = "exec ${pkgs.i3lock-fancy-rapid}/bin/i3lock-fancy-rapid 8 3";
|
|
||||||
|
|
||||||
"${modifier}+Print" = script "screenshot"
|
|
||||||
"${pkgs.maim}/bin/maim ~/Pictures/$(date +%s).png";
|
|
||||||
"${modifier}+Control+Print" = script "screenshot-copy"
|
|
||||||
"${pkgs.maim}/bin/maim | ${pkgs.xclip}/bin/xclip -selection clipboard -t image/png";
|
|
||||||
"--release ${modifier}+Shift+Print" = script "screenshot-area"
|
|
||||||
"${pkgs.maim}/bin/maim -s ~/Pictures/$(date +%s).png";
|
|
||||||
"--release ${modifier}+Control+Shift+Print" = script "screenshot-area-copy"
|
|
||||||
"${pkgs.maim}/bin/maim -s | ${pkgs.xclip}/bin/xclip -selection clipboard -t image/png";
|
|
||||||
|
|
||||||
"${modifier}+x" = "move workspace to output right";
|
|
||||||
"${modifier}+F5" = "reload";
|
|
||||||
"${modifier}+Shift+F5" = "exit";
|
|
||||||
"${modifier}+Shift+h" = "layout splith";
|
|
||||||
"${modifier}+Shift+v" = "layout splitv";
|
|
||||||
"${modifier}+h" = "split h";
|
|
||||||
"${modifier}+v" = "split v";
|
|
||||||
"${modifier}+F1" = "move to scratchpad";
|
|
||||||
"${modifier}+F2" = "scratchpad show";
|
|
||||||
"${modifier}+F12" = "exec xset dpms force off";
|
|
||||||
|
|
||||||
"XF86AudioPlay" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl pp";
|
|
||||||
"XF86AudioNext" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl next";
|
|
||||||
"XF86AudioPrev" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl prev";
|
|
||||||
"XF86AudioLowerVolume" = "exec ${pkgs.pamixer}/bin/pamixer -d 5";
|
|
||||||
"XF86AudioRaiseVolume" = "exec ${pkgs.pamixer}/bin/pamixer -i 5";
|
|
||||||
"XF86AudioMute" = "exec ${pkgs.pamixer}/bin/pamixer -t";
|
|
||||||
"Shift+XF86AudioLowerVolume" = "exec ${pkgs.pamixer}/bin/pamixer -d 2";
|
|
||||||
"Shift+XF86AudioRaiseVolume" = "exec ${pkgs.pamixer}/bin/pamixer -i 2";
|
|
||||||
"--release button2" = "kill";
|
|
||||||
"--whole-window ${modifier}+button2" = "kill";
|
|
||||||
|
|
||||||
} // builtins.listToAttrs (builtins.map (x: {
|
|
||||||
name = "${modifier}+${builtins.elemAt x 0}";
|
|
||||||
value = "workspace ${builtins.elemAt x 1}";
|
|
||||||
}) workspaces) // builtins.listToAttrs (builtins.map (x: {
|
|
||||||
name = "${modifier}+Shift+${builtins.elemAt x 0}";
|
|
||||||
value = "move container to workspace ${builtins.elemAt x 1}";
|
|
||||||
}) workspaces)
|
|
||||||
);
|
|
||||||
workspaceLayout = "tabbed";
|
|
||||||
};
|
|
||||||
extraConfig = ''
|
|
||||||
default_border pixel 1
|
|
||||||
hide_edge_borders smart
|
|
||||||
|
|
||||||
# Set colors
|
|
||||||
set $base00 #${thm.base00-hex}
|
|
||||||
set $base01 #${thm.base01-hex}
|
|
||||||
set $base02 #${thm.base02-hex}
|
|
||||||
set $base03 #${thm.base03-hex}
|
|
||||||
set $base04 #${thm.base04-hex}
|
|
||||||
set $base05 #${thm.base05-hex}
|
|
||||||
set $base06 #${thm.base06-hex}
|
|
||||||
set $base07 #${thm.base07-hex}
|
|
||||||
set $base08 #${thm.base08-hex}
|
|
||||||
set $base09 #${thm.base09-hex}
|
|
||||||
set $base0A #${thm.base0A-hex}
|
|
||||||
set $base0B #${thm.base0B-hex}
|
|
||||||
set $base0C #${thm.base0C-hex}
|
|
||||||
set $base0D #${thm.base0D-hex}
|
|
||||||
set $base0E #${thm.base0E-hex}
|
|
||||||
set $base0F #${thm.base0F-hex}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
@ -4,16 +4,17 @@ let
|
|||||||
thm = config.lib.base16.theme;
|
thm = config.lib.base16.theme;
|
||||||
in {
|
in {
|
||||||
home-manager.users.alukard = {
|
home-manager.users.alukard = {
|
||||||
xsession.windowManager.i3.config.bars = [{
|
# xsession.windowManager.i3.config.bars = [{
|
||||||
|
wayland.windowManager.sway.config.bars = [{
|
||||||
id = "default";
|
id = "default";
|
||||||
|
position = "top";
|
||||||
|
statusCommand = "${pkgs.i3status-rust}/bin/i3status-rs ~/.config/i3status-rust/config-top.toml";
|
||||||
|
workspaceNumbers = false;
|
||||||
fonts = {
|
fonts = {
|
||||||
names = [ "${thm.fonts.powerline.family}" "${thm.fonts.icon.family}" "${thm.fonts.iconFallback.family}" ];
|
names = [ "${thm.fonts.powerline.family}" "${thm.fonts.icon.family}" "${thm.fonts.iconFallback.family}" ];
|
||||||
style = "Regular";
|
style = "Regular";
|
||||||
size = thm.fontSizes.micro.float;
|
size = thm.fontSizes.micro.float;
|
||||||
};
|
};
|
||||||
position = "top";
|
|
||||||
statusCommand = "${pkgs.i3status-rust}/bin/i3status-rs";
|
|
||||||
workspaceNumbers = false;
|
|
||||||
colors = let
|
colors = let
|
||||||
default = {
|
default = {
|
||||||
background = "#${thm.base00-hex}";
|
background = "#${thm.base00-hex}";
|
||||||
@ -29,143 +30,101 @@ in {
|
|||||||
urgentWorkspace = default // { text = "#${thm.base09-hex}"; };
|
urgentWorkspace = default // { text = "#${thm.base09-hex}"; };
|
||||||
bindingMode = default // { text = "#${thm.base0A-hex}"; };
|
bindingMode = default // { text = "#${thm.base0A-hex}"; };
|
||||||
};
|
};
|
||||||
|
|
||||||
}];
|
}];
|
||||||
|
|
||||||
xdg.configFile."i3status-rust/config.toml".text = lib.concatStrings [''
|
programs.i3status-rust = {
|
||||||
|
enable = true;
|
||||||
[theme]
|
bars.top = {
|
||||||
name = "solarized-dark"
|
settings = {
|
||||||
[theme.overrides]
|
theme = {
|
||||||
idle_bg = "#${thm.base00-hex}"
|
name = "solarized-dark";
|
||||||
idle_fg = "#${thm.base05-hex}"
|
overrides = {
|
||||||
info_bg = "#${thm.base0C-hex}"
|
idle_bg = "#${thm.base00-hex}";
|
||||||
info_fg = "#${thm.base00-hex}"
|
idle_fg = "#${thm.base05-hex}";
|
||||||
good_bg = "#${thm.base0B-hex}"
|
info_bg = "#${thm.base0C-hex}";
|
||||||
good_fg = "#${thm.base00-hex}"
|
info_fg = "#${thm.base00-hex}";
|
||||||
warning_bg = "#${thm.base0A-hex}"
|
good_bg = "#${thm.base0B-hex}";
|
||||||
warning_fg = "#${thm.base00-hex}"
|
good_fg = "#${thm.base00-hex}";
|
||||||
critical_bg = "#${thm.base08-hex}"
|
warning_bg = "#${thm.base0A-hex}";
|
||||||
critical_fg = "#${thm.base00-hex}"
|
warning_fg = "#${thm.base00-hex}";
|
||||||
|
critical_bg = "#${thm.base08-hex}";
|
||||||
|
critical_fg = "#${thm.base00-hex}";
|
||||||
# Material Icons Cheatsheet [https://shanfan.github.io/material-icons-cheatsheet/]
|
};
|
||||||
# Font Awesome Cheatsheet [https://fontawesome.com/icons?d=gallery&m=free]
|
};
|
||||||
[icons]
|
icons = {
|
||||||
name = "awesome5"
|
name = "awesome5";
|
||||||
[icons.overrides]
|
overrides = {
|
||||||
backlight_empty = " 🌑 "
|
backlight_empty = " 🌑 ";
|
||||||
backlight_full = " 🌕 "
|
backlight_full = " 🌕 ";
|
||||||
backlight_partial1 = " 🌘 "
|
backlight_partial1 = " 🌘 ";
|
||||||
backlight_partial2 = " 🌗 "
|
backlight_partial2 = " 🌗 ";
|
||||||
backlight_partial3 = " 🌖 "
|
backlight_partial3 = " 🌖 ";
|
||||||
# bat_charging = ""
|
cpu = "";
|
||||||
# bat_discharging = ""
|
net_wired = "";
|
||||||
# bat_full = ""
|
net_wireless = "";
|
||||||
# bat = ""
|
};
|
||||||
# cogs = ""
|
};
|
||||||
cpu = ""
|
};
|
||||||
# gpu = ""
|
blocks = [
|
||||||
# mail = ""
|
{
|
||||||
memory_mem = ""
|
block = "net";
|
||||||
memory_swap = ""
|
device = if config.device == "Dell-Laptop" then
|
||||||
music_next = ""
|
"wlo1"
|
||||||
music_pause = ""
|
else if config.device == "AMD-Workstation" then
|
||||||
music_play = ""
|
"enp9s0"
|
||||||
music_prev = ""
|
else "";
|
||||||
music = ""
|
}
|
||||||
net_down = ""
|
] ++ lib.optionals config.deviceSpecific.isLaptop [
|
||||||
net_up = ""
|
{
|
||||||
### net_up = ""
|
block = "battery";
|
||||||
net_wired = ""
|
interval = 10;
|
||||||
net_wireless = ""
|
format = "{percentage} {time}";
|
||||||
### net_wired = ""
|
}
|
||||||
### net_wireless = ""
|
{
|
||||||
# ping = ""
|
block = "backlight";
|
||||||
# thermometer = ""
|
}
|
||||||
# time = ""
|
] ++ [
|
||||||
# toggle_off = ""
|
{
|
||||||
# toggle_on = ""
|
block = "custom";
|
||||||
# update = ""
|
command = "${scripts.weather}";
|
||||||
# uptime = ""
|
interval = 600;
|
||||||
volume_empty = ""
|
}
|
||||||
volume_full = ""
|
{
|
||||||
volume_half = ""
|
block = "sound";
|
||||||
volume_muted = ""
|
driver = "auto";
|
||||||
# weather_clouds = ""
|
}
|
||||||
# weather_default = ""
|
{
|
||||||
# weather_rain = ""
|
block = "temperature";
|
||||||
# weather_snow = ""
|
# collapsed = false;
|
||||||
# weather_sun = ""
|
chip = if config.device == "Dell-Laptop" then
|
||||||
# weather_thunder = ""
|
"*-isa-*"
|
||||||
# xrandr = ""
|
else if config.device == "AMD-Workstation" then
|
||||||
|
"*-pci-*"
|
||||||
# [[block]]
|
else "*-pci-*";
|
||||||
# block = "music"
|
}
|
||||||
# buttons = ["play", "next"]
|
{
|
||||||
|
block = "cpu";
|
||||||
[[block]]
|
interval = 1;
|
||||||
block = "net"
|
format = "{utilization} {frequency}";
|
||||||
''
|
}
|
||||||
(if config.device == "Dell-Laptop" then ''
|
{
|
||||||
device = "wlo1"
|
block = "custom";
|
||||||
'' else "")
|
command = "${scripts.df}";
|
||||||
(if config.device == "AMD-Workstation" then ''
|
interval = 60;
|
||||||
device = "enp9s0"
|
}
|
||||||
'' else "")
|
{
|
||||||
(if config.deviceSpecific.isLaptop then ''
|
block = "memory";
|
||||||
[[block]]
|
display_type = "memory";
|
||||||
block = "battery"
|
format_mem = "{mem_avail;G}";
|
||||||
interval = 10
|
format_swap = "{swap_free;G}";
|
||||||
format = "{percentage} {time}"
|
}
|
||||||
|
{
|
||||||
[[block]]
|
block = "time";
|
||||||
block = "backlight"
|
interval = 1;
|
||||||
'' else "")
|
format = "%a %Y/%m/%d %T";
|
||||||
''
|
}
|
||||||
[[block]]
|
];
|
||||||
block = "custom"
|
};
|
||||||
command = "${scripts.weather}"
|
};
|
||||||
interval = 600
|
|
||||||
|
|
||||||
[[block]]
|
|
||||||
block = "sound"
|
|
||||||
driver = "auto"
|
|
||||||
''
|
|
||||||
(if config.device == "Dell-Laptop" then ''
|
|
||||||
|
|
||||||
[[block]]
|
|
||||||
block = "custom"
|
|
||||||
command = "${scripts.cputemp}"
|
|
||||||
interval = 5
|
|
||||||
|
|
||||||
'' else "")
|
|
||||||
''
|
|
||||||
[[block]]
|
|
||||||
block = "cpu"
|
|
||||||
interval = 1
|
|
||||||
format = "{utilization} {frequency}"
|
|
||||||
|
|
||||||
[[block]]
|
|
||||||
block = "memory"
|
|
||||||
display_type = "memory"
|
|
||||||
format_mem = "{mem_avail;G}"
|
|
||||||
format_swap = "{swap_free;G}"
|
|
||||||
|
|
||||||
[[block]]
|
|
||||||
block = "custom"
|
|
||||||
command = "${scripts.df}"
|
|
||||||
interval = 60
|
|
||||||
|
|
||||||
[[block]]
|
|
||||||
block = "custom"
|
|
||||||
command = "${scripts.vpn-status}"
|
|
||||||
interval = 60
|
|
||||||
|
|
||||||
[[block]]
|
|
||||||
block = "time"
|
|
||||||
interval = 1
|
|
||||||
format = "%a %Y/%m/%d %T"
|
|
||||||
''];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
{ pkgs, lib, config, ... }:
|
{ pkgs, lib, config, ... }:
|
||||||
with config.lib.base16.theme; {
|
with config.lib.base16.theme; {
|
||||||
xdg.portal.enable = true;
|
|
||||||
services.dbus.packages =
|
services.dbus.packages =
|
||||||
[ pkgs.systemd iconPackage ];
|
[ pkgs.systemd iconPackage ];
|
||||||
services.udev.packages = [ pkgs.libmtp pkgs.media-player-info ];
|
services.udev.packages = [ pkgs.libmtp pkgs.media-player-info ];
|
||||||
|
@ -15,8 +15,8 @@ with config.deviceSpecific; {
|
|||||||
|
|
||||||
location = lib.mkIf (!isServer) {
|
location = lib.mkIf (!isServer) {
|
||||||
provider = "manual";
|
provider = "manual";
|
||||||
latitude = 48.78583;
|
latitude = 48.79;
|
||||||
longitude = 44.77973;
|
longitude = 44.78;
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.alukard = {
|
home-manager.users.alukard = {
|
||||||
|
30
profiles/workspace/mako.nix
Normal file
30
profiles/workspace/mako.nix
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
{ pkgs, config, ... }: {
|
||||||
|
home-manager.users.alukard = {
|
||||||
|
systemd.user.services.mako = {
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${pkgs.mako}/bin/mako";
|
||||||
|
};
|
||||||
|
Install = {
|
||||||
|
WantedBy = [ "sway-session.target" ];
|
||||||
|
};
|
||||||
|
Unit = {
|
||||||
|
After = [ "sway-session.target" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
programs.mako = with config.lib.base16; {
|
||||||
|
enable = true;
|
||||||
|
layer = "overlay";
|
||||||
|
font = "${theme.fonts.mono.family} ${theme.fontSizes.normal.str}";
|
||||||
|
width = 500;
|
||||||
|
height = 80;
|
||||||
|
defaultTimeout = 10000;
|
||||||
|
maxVisible = 10;
|
||||||
|
backgroundColor = "#${theme.base00-hex}AA";
|
||||||
|
textColor = "#${theme.base05-hex}";
|
||||||
|
borderColor = "#${theme.base0D-hex}AA";
|
||||||
|
progressColor = "over #${theme.base0B-hex}";
|
||||||
|
iconPath = "${theme.iconPackage}/share/icons/${theme.iconTheme}";
|
||||||
|
maxIconSize = 24;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
304
profiles/workspace/sway/default.nix
Executable file
304
profiles/workspace/sway/default.nix
Executable file
@ -0,0 +1,304 @@
|
|||||||
|
{ pkgs, lib, config, ... }:
|
||||||
|
let
|
||||||
|
thm = config.lib.base16.theme;
|
||||||
|
apps = config.defaultApplications;
|
||||||
|
# lock_fork =
|
||||||
|
# pkgs.writeShellScript "lock_fork" "sudo /run/current-system/sw/bin/lock &";
|
||||||
|
# lock = pkgs.writeShellScript "lock"
|
||||||
|
# "swaymsg 'output * dpms off'; sudo /run/current-system/sw/bin/lock; swaymsg 'output * dpms on'";
|
||||||
|
in {
|
||||||
|
programs.sway.enable = true;
|
||||||
|
programs.sway.wrapperFeatures.gtk = true;
|
||||||
|
programs.sway.extraPackages = lib.mkForce (with pkgs; [
|
||||||
|
swayidle
|
||||||
|
swaylock-effects
|
||||||
|
xwayland
|
||||||
|
wl-clipboard
|
||||||
|
libsForQt5.qt5.qtwayland
|
||||||
|
gsettings_desktop_schemas
|
||||||
|
]);
|
||||||
|
|
||||||
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
extraPortals = with pkgs; [ xdg-desktop-portal-wlr xdg-desktop-portal-gtk ];
|
||||||
|
gtkUsePortal = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.alukard.extraGroups = [ "sway" ];
|
||||||
|
|
||||||
|
environment.loginShellInit = lib.mkAfter ''
|
||||||
|
[[ "$(tty)" == /dev/tty1 ]] && {
|
||||||
|
pass unlock
|
||||||
|
exec sway 2> /tmp/sway.debug.log
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
home-manager.users.alukard.wayland.windowManager.sway = let
|
||||||
|
gsettings = "${pkgs.glib}/bin/gsettings";
|
||||||
|
gnomeSchema = "org.gnome.desktop.interface";
|
||||||
|
importGsettings = pkgs.writeShellScript "import_gsettings.sh" ''
|
||||||
|
config="/home/alukard/.config/gtk-3.0/settings.ini"
|
||||||
|
if [ ! -f "$config" ]; then exit 1; fi
|
||||||
|
gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||||
|
icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||||
|
cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||||
|
font_name="$(grep 'gtk-font-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||||
|
${gsettings} set ${gnomeSchema} gtk-theme "$gtk_theme"
|
||||||
|
${gsettings} set ${gnomeSchema} icon-theme "$icon_theme"
|
||||||
|
${gsettings} set ${gnomeSchema} cursor-theme "$cursor_theme"
|
||||||
|
${gsettings} set ${gnomeSchema} font-name "$font_name"
|
||||||
|
'';
|
||||||
|
in {
|
||||||
|
enable = true;
|
||||||
|
config = rec {
|
||||||
|
assigns = {
|
||||||
|
# "" = [
|
||||||
|
# { class = "Chromium"; }
|
||||||
|
# { app_id = "firefox"; }
|
||||||
|
# { class = "Firefox"; }
|
||||||
|
# ];
|
||||||
|
"" = [
|
||||||
|
{ class = "spotify"; }
|
||||||
|
{ title = "spt"; }
|
||||||
|
];
|
||||||
|
"" = [
|
||||||
|
{ class = "^Telegram"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
fonts = {
|
||||||
|
names = [ "${thm.fonts.main.family}" ];
|
||||||
|
style = "Regular";
|
||||||
|
size = thm.fontSizes.micro.float;
|
||||||
|
};
|
||||||
|
|
||||||
|
bars = [ ];
|
||||||
|
|
||||||
|
colors = rec {
|
||||||
|
background = "#${thm.base00-hex}";
|
||||||
|
unfocused = {
|
||||||
|
text = "#${thm.base02-hex}";
|
||||||
|
border = "#${thm.base01-hex}";
|
||||||
|
background = "#${thm.base00-hex}";
|
||||||
|
childBorder = "#${thm.base01-hex}";
|
||||||
|
indicator = "#${thm.base07-hex}";
|
||||||
|
};
|
||||||
|
focusedInactive = unfocused;
|
||||||
|
urgent = unfocused // {
|
||||||
|
text = "#${thm.base05-hex}";
|
||||||
|
border = "#${thm.base09-hex}";
|
||||||
|
childBorder = "#${thm.base09-hex}";
|
||||||
|
};
|
||||||
|
focused = unfocused // {
|
||||||
|
childBorder = "#${thm.base03-hex}";
|
||||||
|
border = "#${thm.base03-hex}";
|
||||||
|
background = "#${thm.base01-hex}";
|
||||||
|
text = "#${thm.base05-hex}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gaps = {
|
||||||
|
inner = 15;
|
||||||
|
smartGaps = true;
|
||||||
|
smartBorders = "on";
|
||||||
|
};
|
||||||
|
focus.followMouse = false;
|
||||||
|
focus.forceWrapping = false;
|
||||||
|
modifier = "Mod4";
|
||||||
|
window = {
|
||||||
|
border = 0;
|
||||||
|
titlebar = false;
|
||||||
|
commands = [
|
||||||
|
{
|
||||||
|
command = "border pixel 2px";
|
||||||
|
criteria = { window_role = "popup"; };
|
||||||
|
}
|
||||||
|
{
|
||||||
|
command = "sticky enable";
|
||||||
|
criteria = { floating = ""; };
|
||||||
|
}
|
||||||
|
{
|
||||||
|
command = "move to workspace ";
|
||||||
|
criteria = { class = "Spotify"; };
|
||||||
|
}
|
||||||
|
{
|
||||||
|
command = "floating enable";
|
||||||
|
criteria = { instance = "origin.exe"; };
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
startup = (map (command: { inherit command; }) config.startupApplications)
|
||||||
|
++ [
|
||||||
|
{ command = "${importGsettings}"; always = true; }
|
||||||
|
{
|
||||||
|
always = true;
|
||||||
|
command = ''
|
||||||
|
swayidle -w timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' '';
|
||||||
|
}
|
||||||
|
# {
|
||||||
|
# command =
|
||||||
|
# "swayidle -w before-sleep '${lock_fork}' lock '${lock_fork}' unlock 'pkill -9 swaylock'";
|
||||||
|
# }
|
||||||
|
];
|
||||||
|
|
||||||
|
keybindings = let
|
||||||
|
script = name: content: "exec ${pkgs.writeScript name content}";
|
||||||
|
workspaces = (builtins.genList (x: [ (toString x) (toString x) ]) 10)
|
||||||
|
++ [ [ "c" "" ] [ "t" "" ] ];
|
||||||
|
in ({
|
||||||
|
"${modifier}+q" = "kill";
|
||||||
|
"${modifier}+Shift+q" =
|
||||||
|
"move container to workspace temp; [workspace=__focused__] kill; workspace temp; move container to workspace temp; workspace temp";
|
||||||
|
"${modifier}+w" = "exec ${apps.dmenu.cmd}";
|
||||||
|
"${modifier}+Return" = "exec ${apps.term.cmd}";
|
||||||
|
"${modifier}+e" = "exec ${apps.editor.cmd}";
|
||||||
|
"${modifier}+o" = "layout toggle all";
|
||||||
|
|
||||||
|
"${modifier}+Left" = "focus child; focus left";
|
||||||
|
"${modifier}+Right" = "focus child; focus right";
|
||||||
|
"${modifier}+Up" = "focus child; focus up";
|
||||||
|
"${modifier}+Down" = "focus child; focus down";
|
||||||
|
"${modifier}+Control+Left" = "focus parent; focus left";
|
||||||
|
"${modifier}+Control+Right" = "focus parent; focus right";
|
||||||
|
"${modifier}+Control+Up" = "focus parent; focus up";
|
||||||
|
"${modifier}+Control+Down" = "focus parent; focus down";
|
||||||
|
"${modifier}+Shift+Up" = "move up";
|
||||||
|
"${modifier}+Shift+Down" = "move down";
|
||||||
|
"${modifier}+Shift+Right" = "move right";
|
||||||
|
"${modifier}+Shift+Left" = "move left";
|
||||||
|
|
||||||
|
"${modifier}+bracketleft" = "workspace prev";
|
||||||
|
"${modifier}+bracketright" = "workspace next";
|
||||||
|
|
||||||
|
# "${modifier}+a" = "focus child; focus left";
|
||||||
|
# "${modifier}+d" = "focus child; focus right";
|
||||||
|
# "${modifier}+w" = "focus child; focus up";
|
||||||
|
# "${modifier}+s" = "focus child; focus down";
|
||||||
|
# "${modifier}+Control+a" = "focus parent; focus left";
|
||||||
|
# "${modifier}+Control+d" = "focus parent; focus right";
|
||||||
|
# "${modifier}+Control+w" = "focus parent; focus up";
|
||||||
|
# "${modifier}+Control+s" = "focus parent; focus down";
|
||||||
|
# "${modifier}+Shift+w" = "move up";
|
||||||
|
# "${modifier}+Shift+s" = "move down";
|
||||||
|
# "${modifier}+Shift+d" = "move right";
|
||||||
|
# "${modifier}+Shift+a" = "move left";
|
||||||
|
|
||||||
|
"${modifier}+f" = "fullscreen toggle; floating toggle";
|
||||||
|
"${modifier}+r" = "mode resize";
|
||||||
|
"${modifier}+Shift+f" = "floating toggle";
|
||||||
|
|
||||||
|
"${modifier}+Escape" = "exec ${apps.monitor.cmd}";
|
||||||
|
|
||||||
|
"${modifier}+j" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl prev";
|
||||||
|
"${modifier}+k" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl pp";
|
||||||
|
"${modifier}+l" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl next";
|
||||||
|
"${modifier}+Shift+j" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl --player Spotify prev";
|
||||||
|
"${modifier}+Shift+k" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl --player Spotify pp";
|
||||||
|
"${modifier}+Shift+l" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl --player Spotify next";
|
||||||
|
"${modifier}+m" = "exec ${pkgs.pamixer}/bin/pamixer -t";
|
||||||
|
"${modifier}+comma" = "exec ${pkgs.pamixer}/bin/pamixer -d 5";
|
||||||
|
"${modifier}+period" = "exec ${pkgs.pamixer}/bin/pamixer -i 5";
|
||||||
|
"${modifier}+Shift+comma" = "exec ${pkgs.pamixer}/bin/pamixer -d 2";
|
||||||
|
"${modifier}+Shift+period" = "exec ${pkgs.pamixer}/bin/pamixer -i 2";
|
||||||
|
"${modifier}+i" = "exec ${pkgs.pavucontrol}/bin/pavucontrol";
|
||||||
|
|
||||||
|
"${modifier}+d" = "exec ${apps.fm.cmd}";
|
||||||
|
"${modifier}+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv";
|
||||||
|
"${modifier}+Shift+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv --no-video";
|
||||||
|
|
||||||
|
"${modifier}+Print" = script "screenshot"
|
||||||
|
"${pkgs.grim}/bin/grim Pictures/$(date +'%Y-%m-%d+%H:%M:%S').png";
|
||||||
|
|
||||||
|
"${modifier}+Control+Print" = script "screenshot-copy"
|
||||||
|
"${pkgs.grim}/bin/grim - | ${pkgs.wl-clipboard}/bin/wl-copy";
|
||||||
|
|
||||||
|
"--release ${modifier}+Shift+Print" = script "screenshot-area" ''
|
||||||
|
${pkgs.grim}/bin/grim -g "$(${pkgs.slurp}/bin/slurp)" Pictures/$(date +'%Y-%m-%d+%H:%M:%S').png'';
|
||||||
|
|
||||||
|
"--release ${modifier}+Control+Shift+Print" =
|
||||||
|
script "screenshot-area-copy" ''
|
||||||
|
${pkgs.grim}/bin/grim -g "$(${pkgs.slurp}/bin/slurp)" - | ${pkgs.wl-clipboard}/bin/wl-copy'';
|
||||||
|
|
||||||
|
"${modifier}+x" = "focus output right";
|
||||||
|
"${modifier}+Shift+x" = "move workspace to output right";
|
||||||
|
"${modifier}+F5" = "reload";
|
||||||
|
"${modifier}+Shift+F5" = "exit";
|
||||||
|
"${modifier}+Shift+h" = "layout splith";
|
||||||
|
"${modifier}+Shift+v" = "layout splitv";
|
||||||
|
"${modifier}+h" = "split h";
|
||||||
|
"${modifier}+v" = "split v";
|
||||||
|
"${modifier}+F1" = "move to scratchpad";
|
||||||
|
"${modifier}+F2" = "scratchpad show";
|
||||||
|
"${modifier}+F11" = "output * dpms off";
|
||||||
|
"${modifier}+F12" = "output * dpms on";
|
||||||
|
# "${modifier}+End" = "exec ${lock}";
|
||||||
|
"${modifier}+p" = "sticky toggle";
|
||||||
|
"${modifier}+backslash" =
|
||||||
|
script "0x0" ''wl-paste | curl -F"file=@-" https://0x0.st | wl-copy'';
|
||||||
|
"${modifier}+b" = "focus mode_toggle";
|
||||||
|
|
||||||
|
"XF86AudioPlay" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl pp";
|
||||||
|
"XF86AudioNext" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl next";
|
||||||
|
"XF86AudioPrev" = "exec ${pkgs.mpris-ctl}/bin/mpris-ctl prev";
|
||||||
|
"XF86AudioLowerVolume" = "exec ${pkgs.pamixer}/bin/pamixer -d 5";
|
||||||
|
"XF86AudioRaiseVolume" = "exec ${pkgs.pamixer}/bin/pamixer -i 5";
|
||||||
|
"XF86AudioMute" = "exec ${pkgs.pamixer}/bin/pamixer -t";
|
||||||
|
"Shift+XF86AudioLowerVolume" = "exec ${pkgs.pamixer}/bin/pamixer -d 2";
|
||||||
|
"Shift+XF86AudioRaiseVolume" = "exec ${pkgs.pamixer}/bin/pamixer -i 2";
|
||||||
|
"button2" = "kill";
|
||||||
|
"--whole-window ${modifier}+button2" = "kill";
|
||||||
|
} // builtins.listToAttrs (builtins.map (x: {
|
||||||
|
name = "${modifier}+${builtins.elemAt x 0}";
|
||||||
|
value = "workspace ${builtins.elemAt x 1}";
|
||||||
|
}) workspaces) // builtins.listToAttrs (builtins.map (x: {
|
||||||
|
name = "${modifier}+Shift+${builtins.elemAt x 0}";
|
||||||
|
value = "move container to workspace ${builtins.elemAt x 1}";
|
||||||
|
}) workspaces));
|
||||||
|
keycodebindings = { };
|
||||||
|
workspaceLayout = "tabbed";
|
||||||
|
workspaceAutoBackAndForth = true;
|
||||||
|
input = {
|
||||||
|
"type:touchpad" = {
|
||||||
|
accel_profile = "adaptive";
|
||||||
|
dwt = "enabled";
|
||||||
|
middle_emulation = "enabled";
|
||||||
|
natural_scroll = "enabled";
|
||||||
|
tap = "enabled";
|
||||||
|
};
|
||||||
|
"type:mouse" = {
|
||||||
|
accel_profile = "flat";
|
||||||
|
natural_scroll = "disabled";
|
||||||
|
};
|
||||||
|
"type:keyboard" = {
|
||||||
|
xkb_layout = "us,ru";
|
||||||
|
xkb_options = "grp:win_space_toggle";
|
||||||
|
};
|
||||||
|
"3468:12:C-Media_USB_Headphone_Set" = {
|
||||||
|
events = "disabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
output = {
|
||||||
|
"*".bg = "${/. + ../../../misc/wallpaper} fill";
|
||||||
|
"*".scale = "1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
wrapperFeatures = { gtk = true; };
|
||||||
|
xwayland = true;
|
||||||
|
extraConfig = ''
|
||||||
|
default_border pixel 1
|
||||||
|
hide_edge_borders --i3 smart
|
||||||
|
exec pkill swaynag
|
||||||
|
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
|
||||||
|
'';
|
||||||
|
extraSessionCommands = ''
|
||||||
|
# export SDL_VIDEODRIVER=wayland
|
||||||
|
export GDK_BACKEND=wayland
|
||||||
|
export QT_QPA_PLATFORM=wayland-egl
|
||||||
|
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
|
||||||
|
export XDG_CURRENT_DESKTOP=sway
|
||||||
|
export XDG_SESSION_DESKTOP=sway
|
||||||
|
export XDG_SESSION_TYPE=wayland
|
||||||
|
export _JAVA_AWT_WM_NONPARENTING=1
|
||||||
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
10
profiles/workspace/tor.nix
Normal file
10
profiles/workspace/tor.nix
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{ config, pkgs, lib, ... }: {
|
||||||
|
services.tor = {
|
||||||
|
enable = true;
|
||||||
|
client.enable = true;
|
||||||
|
};
|
||||||
|
services.privoxy = {
|
||||||
|
enable = true;
|
||||||
|
enableTor = true;
|
||||||
|
};
|
||||||
|
}
|
@ -10,7 +10,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
environment.sessionVariables = {
|
environment.sessionVariables = {
|
||||||
XDG_CURRENT_DESKTOP = "X-Generic";
|
# XDG_CURRENT_DESKTOP = "X-Generic";
|
||||||
DE = "generic";
|
DE = "generic";
|
||||||
};
|
};
|
||||||
}
|
}
|
@ -43,8 +43,8 @@
|
|||||||
shellAliases = {
|
shellAliases = {
|
||||||
"clr" = "clear";
|
"clr" = "clear";
|
||||||
"weather" = "curl wttr.in/Volzhskiy";
|
"weather" = "curl wttr.in/Volzhskiy";
|
||||||
"rede" = "systemctl --user start redshift.service &";
|
"rede" = "systemctl --user start gammastep.service &";
|
||||||
"redd" = "systemctl --user stop redshift.service &";
|
"redd" = "systemctl --user stop gammastep.service &";
|
||||||
"show-packages" = "_ nix-store -q --references /run/current-system/sw";
|
"show-packages" = "_ nix-store -q --references /run/current-system/sw";
|
||||||
"nsp" = "nix-shell --run zsh -p";
|
"nsp" = "nix-shell --run zsh -p";
|
||||||
"grep" = "${pkgs.ripgrep}/bin/rg";
|
"grep" = "${pkgs.ripgrep}/bin/rg";
|
||||||
|
@ -4,7 +4,8 @@ let
|
|||||||
in
|
in
|
||||||
with config.deviceSpecific; {
|
with config.deviceSpecific; {
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
enable = true;
|
enable = false;
|
||||||
|
# enable = true;
|
||||||
|
|
||||||
# TODO: Disable natural scrolling for external mouse
|
# TODO: Disable natural scrolling for external mouse
|
||||||
libinput = {
|
libinput = {
|
||||||
|
@ -33,15 +33,16 @@
|
|||||||
|
|
||||||
cursor
|
cursor
|
||||||
direnv
|
direnv
|
||||||
dunst
|
|
||||||
fonts
|
fonts
|
||||||
gtk
|
gtk
|
||||||
i3
|
|
||||||
i3status-rust
|
i3status-rust
|
||||||
kde
|
kde
|
||||||
light
|
light
|
||||||
|
mako
|
||||||
nix-index
|
nix-index
|
||||||
picom
|
picom
|
||||||
print-scan
|
print-scan
|
||||||
|
tor
|
||||||
|
sway
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
{ inputs, ... }: {
|
{ inputs, ... }: {
|
||||||
imports = with inputs.self.nixosModules; with inputs.self.nixosProfiles; [
|
imports = with inputs.self.nixosModules; with inputs.self.nixosProfiles; [
|
||||||
./desktop.nix
|
./desktop.nix
|
||||||
|
|
||||||
flutter
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
90
scripts/vscode_update_extensions.sh
Executable file
90
scripts/vscode_update_extensions.sh
Executable file
@ -0,0 +1,90 @@
|
|||||||
|
#! /usr/bin/env nix-shell
|
||||||
|
#! nix-shell -i bash -p curl jq unzip
|
||||||
|
# shellcheck shell=bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
# can be added to your configuration with the following command and snippet:
|
||||||
|
# $ ./pkgs/misc/vscode-extensions/update_installed_exts.sh > extensions.nix
|
||||||
|
#
|
||||||
|
# packages = with pkgs;
|
||||||
|
# (vscode-with-extensions.override {
|
||||||
|
# vscodeExtensions = map
|
||||||
|
# (extension: vscode-utils.buildVscodeMarketplaceExtension {
|
||||||
|
# mktplcRef = {
|
||||||
|
# inherit (extension) name publisher version sha256;
|
||||||
|
# };
|
||||||
|
# })
|
||||||
|
# (import ./extensions.nix).extensions;
|
||||||
|
# })
|
||||||
|
# ]
|
||||||
|
|
||||||
|
# Helper to just fail with a message and non-zero exit code.
|
||||||
|
function fail() {
|
||||||
|
echo "$1" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Helper to clean up after ourselves if we're killed by SIGINT.
|
||||||
|
function clean_up() {
|
||||||
|
TDIR="${TMPDIR:-/tmp}"
|
||||||
|
echo "Script killed, cleaning up tmpdirs: $TDIR/vscode_exts_*" >&2
|
||||||
|
rm -Rf "$TDIR/vscode_exts_*"
|
||||||
|
}
|
||||||
|
|
||||||
|
function get_vsixpkg() {
|
||||||
|
N="$1.$2"
|
||||||
|
|
||||||
|
# Create a tempdir for the extension download.
|
||||||
|
EXTTMP=$(mktemp -d -t vscode_exts_XXXXXXXX)
|
||||||
|
|
||||||
|
URL="https://$1.gallery.vsassets.io/_apis/public/gallery/publisher/$1/extension/$2/latest/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage"
|
||||||
|
|
||||||
|
# Quietly but delicately curl down the file, blowing up at the first sign of trouble.
|
||||||
|
curl --silent --show-error --fail -X GET -o "$EXTTMP/$N.zip" "$URL"
|
||||||
|
# Unpack the file we need to stdout then pull out the version
|
||||||
|
VER=$(jq -r '.version' <(unzip -qc "$EXTTMP/$N.zip" "extension/package.json"))
|
||||||
|
# Calculate the SHA
|
||||||
|
SHA=$(nix-hash --flat --base32 --type sha256 "$EXTTMP/$N.zip")
|
||||||
|
|
||||||
|
# Clean up.
|
||||||
|
rm -Rf "$EXTTMP"
|
||||||
|
# I don't like 'rm -Rf' lurking in my scripts but this seems appropriate.
|
||||||
|
|
||||||
|
cat <<-EOF
|
||||||
|
{
|
||||||
|
name = "$2";
|
||||||
|
publisher = "$1";
|
||||||
|
version = "$VER";
|
||||||
|
sha256 = "$SHA";
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
# See if we can find our `code` binary somewhere.
|
||||||
|
if [ $# -ne 0 ]; then
|
||||||
|
CODE=$1
|
||||||
|
else
|
||||||
|
CODE=$(command -v code || command -v codium)
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$CODE" ]; then
|
||||||
|
# Not much point continuing.
|
||||||
|
fail "VSCode executable not found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Try to be a good citizen and clean up after ourselves if we're killed.
|
||||||
|
trap clean_up SIGINT
|
||||||
|
|
||||||
|
# Begin the printing of the nix expression that will house the list of extensions.
|
||||||
|
printf '{ extensions = [\n'
|
||||||
|
|
||||||
|
# Note that we are only looking to update extensions that are already installed.
|
||||||
|
for i in $($CODE --list-extensions)
|
||||||
|
do
|
||||||
|
OWNER=$(echo "$i" | cut -d. -f1)
|
||||||
|
EXT=$(echo "$i" | cut -d. -f2)
|
||||||
|
|
||||||
|
get_vsixpkg "$OWNER" "$EXT"
|
||||||
|
done
|
||||||
|
# Close off the nix expression.
|
||||||
|
printf '];\n}'
|
Loading…
x
Reference in New Issue
Block a user