diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 459a588..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "flakes/neovim"] - path = flakes/neovim - url = https://forge.capytal.company/dot013/nvim diff --git a/LICENSE-CC-BY-SA b/LICENSE-CC-BY-SA deleted file mode 100644 index e35dfb9..0000000 --- a/LICENSE-CC-BY-SA +++ /dev/null @@ -1,429 +0,0 @@ -Attribution-ShareAlike 4.0 International - -======================================================================= - -Creative Commons Corporation ("Creative Commons") is not a law firm and -does not provide legal services or legal advice. Distribution of -Creative Commons public licenses does not create a lawyer-client or -other relationship. Creative Commons makes its licenses and related -information available on an "as-is" basis. Creative Commons gives no -warranties regarding its licenses, any material licensed under their -terms and conditions, or any related information. Creative Commons -disclaims all liability for damages resulting from their use to the -fullest extent possible. - -Using Creative Commons Public Licenses - -Creative Commons public licenses provide a standard set of terms and -conditions that creators and other rights holders may use to share -original works of authorship and other material subject to copyright -and certain other rights specified in the public license below. The -following considerations are for informational purposes only, are not -exhaustive, and do not form part of our licenses. - - Considerations for licensors: Our public licenses are - intended for use by those authorized to give the public - permission to use material in ways otherwise restricted by - copyright and certain other rights. Our licenses are - irrevocable. Licensors should read and understand the terms - and conditions of the license they choose before applying it. - Licensors should also secure all rights necessary before - applying our licenses so that the public can reuse the - material as expected. Licensors should clearly mark any - material not subject to the license. This includes other CC- - licensed material, or material used under an exception or - limitation to copyright. More considerations for licensors: - wiki.creativecommons.org/Considerations_for_licensors - - Considerations for the public: By using one of our public - licenses, a licensor grants the public permission to use the - licensed material under specified terms and conditions. If - the licensor's permission is not necessary for any reason--for - example, because of any applicable exception or limitation to - copyright--then that use is not regulated by the license. Our - licenses grant only permissions under copyright and certain - other rights that a licensor has authority to grant. Use of - the licensed material may still be restricted for other - reasons, including because others have copyright or other - rights in the material. A licensor may make special requests, - such as asking that all changes be marked or described. - Although not required by our licenses, you are encouraged to - respect those requests where reasonable. More considerations - for the public: - wiki.creativecommons.org/Considerations_for_licensees - -======================================================================= - -Creative Commons Attribution-ShareAlike 4.0 International Public -License - -By exercising the Licensed Rights (defined below), You accept and agree -to be bound by the terms and conditions of this Creative Commons -Attribution-ShareAlike 4.0 International Public License ("Public -License"). To the extent this Public License may be interpreted as a -contract, You are granted the Licensed Rights in consideration of Your -acceptance of these terms and conditions, and the Licensor grants You -such rights in consideration of benefits the Licensor receives from -making the Licensed Material available under these terms and -conditions. - - -Section 1 -- Definitions. - - a. Adapted Material means material subject to Copyright and Similar - Rights that is derived from or based upon the Licensed Material - and in which the Licensed Material is translated, altered, - arranged, transformed, or otherwise modified in a manner requiring - permission under the Copyright and Similar Rights held by the - Licensor. For purposes of this Public License, where the Licensed - Material is a musical work, performance, or sound recording, - Adapted Material is always produced where the Licensed Material is - synched in timed relation with a moving image. - - b. Adapter's License means the license You apply to Your Copyright - and Similar Rights in Your contributions to Adapted Material in - accordance with the terms and conditions of this Public License. - - c. BY-SA Compatible License means a license listed at - creativecommons.org/compatiblelicenses, approved by Creative - Commons as essentially the equivalent of this Public License. - - d. Copyright and Similar Rights means copyright and/or similar rights - closely related to copyright including, without limitation, - performance, broadcast, sound recording, and Sui Generis Database - Rights, without regard to how the rights are labeled or - categorized. For purposes of this Public License, the rights - specified in Section 2(b)(1)-(2) are not Copyright and Similar - Rights. - - e. Effective Technological Measures means those measures that, in the - absence of proper authority, may not be circumvented under laws - fulfilling obligations under Article 11 of the WIPO Copyright - Treaty adopted on December 20, 1996, and/or similar international - agreements. - - f. Exceptions and Limitations means fair use, fair dealing, and/or - any other exception or limitation to Copyright and Similar Rights - that applies to Your use of the Licensed Material. - - g. License Elements means the license attributes listed in the name - of a Creative Commons Public License. The License Elements of this - Public License are Attribution and ShareAlike. - - h. Licensed Material means the artistic or literary work, database, - or other material to which the Licensor applied this Public - License. - - i. Licensed Rights means the rights granted to You subject to the - terms and conditions of this Public License, which are limited to - all Copyright and Similar Rights that apply to Your use of the - Licensed Material and that the Licensor has authority to license. - - j. Licensor means the individual(s) or entity(ies) granting rights - under this Public License. - - k. Share means to provide material to the public by any means or - process that requires permission under the Licensed Rights, such - as reproduction, public display, public performance, distribution, - dissemination, communication, or importation, and to make material - available to the public including in ways that members of the - public may access the material from a place and at a time - individually chosen by them. - - l. Sui Generis Database Rights means rights other than copyright - resulting from Directive 96/9/EC of the European Parliament and of - the Council of 11 March 1996 on the legal protection of databases, - as amended and/or succeeded, as well as other essentially - equivalent rights anywhere in the world. - - m. You means the individual or entity exercising the Licensed Rights - under this Public License. Your has a corresponding meaning. - - -Section 2 -- Scope. - - a. License grant. - - 1. Subject to the terms and conditions of this Public License, - the Licensor hereby grants You a worldwide, royalty-free, - non-sublicensable, non-exclusive, irrevocable license to - exercise the Licensed Rights in the Licensed Material to: - - a. reproduce and Share the Licensed Material, in whole or - in part; and - - b. produce, reproduce, and Share Adapted Material. - - 2. Exceptions and Limitations. For the avoidance of doubt, where - Exceptions and Limitations apply to Your use, this Public - License does not apply, and You do not need to comply with - its terms and conditions. - - 3. Term. The term of this Public License is specified in Section - 6(a). - - 4. Media and formats; technical modifications allowed. The - Licensor authorizes You to exercise the Licensed Rights in - all media and formats whether now known or hereafter created, - and to make technical modifications necessary to do so. The - Licensor waives and/or agrees not to assert any right or - authority to forbid You from making technical modifications - necessary to exercise the Licensed Rights, including - technical modifications necessary to circumvent Effective - Technological Measures. For purposes of this Public License, - simply making modifications authorized by this Section 2(a) - (4) never produces Adapted Material. - - 5. Downstream recipients. - - a. Offer from the Licensor -- Licensed Material. Every - recipient of the Licensed Material automatically - receives an offer from the Licensor to exercise the - Licensed Rights under the terms and conditions of this - Public License. - - b. Additional offer from the Licensor -- Adapted Material. - Every recipient of Adapted Material from You - automatically receives an offer from the Licensor to - exercise the Licensed Rights in the Adapted Material - under the conditions of the Adapter's License You apply. - - c. No downstream restrictions. You may not offer or impose - any additional or different terms or conditions on, or - apply any Effective Technological Measures to, the - Licensed Material if doing so restricts exercise of the - Licensed Rights by any recipient of the Licensed - Material. - - 6. No endorsement. Nothing in this Public License constitutes or - may be construed as permission to assert or imply that You - are, or that Your use of the Licensed Material is, connected - with, or sponsored, endorsed, or granted official status by, - the Licensor or others designated to receive attribution as - provided in Section 3(a)(1)(A)(i). - - b. Other rights. - - 1. Moral rights, such as the right of integrity, are not - licensed under this Public License, nor are publicity, - privacy, and/or other similar personality rights; however, to - the extent possible, the Licensor waives and/or agrees not to - assert any such rights held by the Licensor to the limited - extent necessary to allow You to exercise the Licensed - Rights, but not otherwise. - - 2. Patent and trademark rights are not licensed under this - Public License. - - 3. To the extent possible, the Licensor waives any right to - collect royalties from You for the exercise of the Licensed - Rights, whether directly or through a collecting society - under any voluntary or waivable statutory or compulsory - licensing scheme. In all other cases the Licensor expressly - reserves any right to collect such royalties. - - -Section 3 -- License Conditions. - -Your exercise of the Licensed Rights is expressly made subject to the -following conditions. - - a. Attribution. - - 1. If You Share the Licensed Material (including in modified - form), You must: - - a. retain the following if it is supplied by the Licensor - with the Licensed Material: - - i. identification of the creator(s) of the Licensed - Material and any others designated to receive - attribution, in any reasonable manner requested by - the Licensor (including by pseudonym if - designated); - - ii. a copyright notice; - - iii. a notice that refers to this Public License; - - iv. a notice that refers to the disclaimer of - warranties; - - v. a URI or hyperlink to the Licensed Material to the - extent reasonably practicable; - - b. indicate if You modified the Licensed Material and - retain an indication of any previous modifications; and - - c. indicate the Licensed Material is licensed under this - Public License, and include the text of, or the URI or - hyperlink to, this Public License. - - 2. You may satisfy the conditions in Section 3(a)(1) in any - reasonable manner based on the medium, means, and context in - which You Share the Licensed Material. For example, it may be - reasonable to satisfy the conditions by providing a URI or - hyperlink to a resource that includes the required - information. - - 3. If requested by the Licensor, You must remove any of the - information required by Section 3(a)(1)(A) to the extent - reasonably practicable. - - b. ShareAlike. - - In addition to the conditions in Section 3(a), if You Share - Adapted Material You produce, the following conditions also apply. - - 1. The Adapter's License You apply must be a Creative Commons - license with the same License Elements, this version or - later, or a BY-SA Compatible License. - - 2. You must include the text of, or the URI or hyperlink to, the - Adapter's License You apply. You may satisfy this condition - in any reasonable manner based on the medium, means, and - context in which You Share Adapted Material. - - 3. You may not offer or impose any additional or different terms - or conditions on, or apply any Effective Technological - Measures to, Adapted Material that restrict exercise of the - rights granted under the Adapter's License You apply. - - -Section 4 -- Sui Generis Database Rights. - -Where the Licensed Rights include Sui Generis Database Rights that -apply to Your use of the Licensed Material: - - a. for the avoidance of doubt, Section 2(a)(1) grants You the right - to extract, reuse, reproduce, and Share all or a substantial - portion of the contents of the database; - - b. if You include all or a substantial portion of the database - contents in a database in which You have Sui Generis Database - Rights, then the database in which You have Sui Generis Database - Rights (but not its individual contents) is Adapted Material, - including for purposes of Section 3(b); and - - c. You must comply with the conditions in Section 3(a) if You Share - all or a substantial portion of the contents of the database. - -For the avoidance of doubt, this Section 4 supplements and does not -replace Your obligations under this Public License where the Licensed -Rights include other Copyright and Similar Rights. - - -Section 5 -- Disclaimer of Warranties and Limitation of Liability. - - a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE - EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS - AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF - ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, - IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, - WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR - PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, - ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT - KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT - ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. - - b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE - TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, - NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, - INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, - COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR - USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN - ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR - DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR - IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. - - c. The disclaimer of warranties and limitation of liability provided - above shall be interpreted in a manner that, to the extent - possible, most closely approximates an absolute disclaimer and - waiver of all liability. - - -Section 6 -- Term and Termination. - - a. This Public License applies for the term of the Copyright and - Similar Rights licensed here. However, if You fail to comply with - this Public License, then Your rights under this Public License - terminate automatically. - - b. Where Your right to use the Licensed Material has terminated under - Section 6(a), it reinstates: - - 1. automatically as of the date the violation is cured, provided - it is cured within 30 days of Your discovery of the - violation; or - - 2. upon express reinstatement by the Licensor. - - For the avoidance of doubt, this Section 6(b) does not affect any - right the Licensor may have to seek remedies for Your violations - of this Public License. - - c. For the avoidance of doubt, the Licensor may also offer the - Licensed Material under separate terms or conditions or stop - distributing the Licensed Material at any time; however, doing so - will not terminate this Public License. - - d. Sections 1, 5, 6, 7, and 8 survive termination of this Public - License. - - -Section 7 -- Other Terms and Conditions. - - a. The Licensor shall not be bound by any additional or different - terms or conditions communicated by You unless expressly agreed. - - b. Any arrangements, understandings, or agreements regarding the - Licensed Material not stated herein are separate from and - independent of the terms and conditions of this Public License. - - -Section 8 -- Interpretation. - - a. For the avoidance of doubt, this Public License does not, and - shall not be interpreted to, reduce, limit, restrict, or impose - conditions on any use of the Licensed Material that could lawfully - be made without permission under this Public License. - - b. To the extent possible, if any provision of this Public License is - deemed unenforceable, it shall be automatically reformed to the - minimum extent necessary to make it enforceable. If the provision - cannot be reformed, it shall be severed from this Public License - without affecting the enforceability of the remaining terms and - conditions. - - c. No term or condition of this Public License will be waived and no - failure to comply consented to unless expressly agreed to by the - Licensor. - - d. Nothing in this Public License constitutes or may be interpreted - as a limitation upon, or waiver of, any privileges and immunities - that apply to the Licensor or You, including from the legal - processes of any jurisdiction or authority. - - -======================================================================= - -Creative Commons is not a party to its public -licenses. Notwithstanding, Creative Commons may elect to apply one of -its public licenses to material it publishes and in those instances -will be considered the “Licensor.” The text of the Creative Commons -public licenses is dedicated to the public domain under the CC0 Public -Domain Dedication. Except for the limited purpose of indicating that -material is shared under a Creative Commons public license or as -otherwise permitted by the Creative Commons policies published at -creativecommons.org/policies, Creative Commons does not authorize the -use of the trademark "Creative Commons" or any other trademark or logo -of Creative Commons without its prior written consent including, -without limitation, in connection with any unauthorized modifications -to any of its public licenses or any other arrangements, -understandings, or agreements concerning use of licensed material. For -the avoidance of doubt, this paragraph does not form part of the -public licenses. - -Creative Commons may be contacted at creativecommons.org. - - diff --git a/README.md b/README.md deleted file mode 100644 index 7c244d5..0000000 --- a/README.md +++ /dev/null @@ -1,27 +0,0 @@ -my dotfiles - - - - -© Gustavo "Guz" L. de Mello <contact.guz013@gmail.com>
-Code under the WTFPL license, unless otherwise noticed. - -THE CONFIGURATION IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND. -
diff --git a/configuration.nix b/configuration.nix deleted file mode 100644 index 71fd063..0000000 --- a/configuration.nix +++ /dev/null @@ -1,146 +0,0 @@ -{ - lib, - pkgs, - ... -}: { - imports = [ - ./secrets.nix - ]; - - context = { - job = false; - }; - - # GnuPG keyring - programs.gnupg.agent = { - enable = true; - pinentryPackage = pkgs.pinentry-gtk2; - settings = {default-cache-ttl = 3600 * 24;}; - }; - services.pcscd.enable = true; - - # Yet another nix cli helper - programs.nh = { - enable = true; - clean.enable = true; - clean.extraArgs = "--keep-since 7d --keep 3"; - flake = "/home/guz/.projects/dot013-nix"; - }; - - # QMK keyboard - hardware.keyboard.qmk.enable = true; - services.udev.packages = with pkgs; [via vial]; - - # Enable Nix-LD for standalone binaries (useful for development) - programs.nix-ld.enable = true; - - # Bluetooth - hardware.bluetooth.enable = true; - hardware.bluetooth.powerOnBoot = true; - services.blueman.enable = true; - - # Audio - services.pipewire = { - enable = true; - - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - jack.enable = true; - - wireplumber.enable = true; - - extraConfig = { - pipewire-pulse."switch-on-connect.conf" = { - "pulse.cmd" = [ - { - cmd = "load-module"; - args = "module-switch-on-connect"; - } - ]; - }; - }; - }; - security.rtkit.enable = true; - services.pulseaudio.enable = lib.mkForce false; - environment.systemPackages = with pkgs; [ - pwvucontrol - via - vial - ]; - - # Networking - networking = { - networkmanager.enable = true; - nameservers = [ - /* - "192.168.0.1" - */ - "8.8.8.8" - # "1.1.1.1" - # "9.9.9.9" - ]; - }; - - # Firewall - networking.firewall.enable = true; - networking.firewall.allowedUDPPorts = [53]; - networking.firewall.allowedTCPPorts = [80 433]; - - # SSH - services.openssh.enable = true; - services.openssh.settings = { - PasswordAuthentication = false; - PermitRootLogin = "forced-commands-only"; - }; - - # Mosh - programs.mosh.enable = true; - programs.mosh.openFirewall = true; - - # Tailscale - services.tailscale.enable = true; - - # Locale - time.timeZone = "America/Sao_Paulo"; - i18n.defaultLocale = "en_US.UTF-8"; - i18n.extraLocaleSettings = let - locale = "pt_BR.UTF-8"; - in { - LC_ADDRESS = locale; - LC_IDENTIFICATION = locale; - LC_MEASUREMENT = locale; - LC_MONETARY = locale; - LC_NAME = locale; - LC_NUMERIC = locale; - LC_PAPER = locale; - LC_TELEPHONE = locale; - LC_TIME = locale; - }; - - # Keyboard - services.xserver.xkb = { - layout = "br"; - }; - console.keyMap = "br-abnt2"; - - security.polkit.enable = true; - - # Bootloader - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - boot.kernel.sysctl."kernel.yama.ptrace_scope" = lib.mkForce 0; - - # Nix - nix.settings = { - experimental-features = ["nix-command" "flakes"]; - }; - - # This value determines the NixOS release from which the default - # settings for stateful data, like file locations and database versions - # on your system were taken. It's perfectly fine and recommended to leave - # 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 = "24.11"; # Did you read the comment? -} diff --git a/flake.lock b/flake.lock index a6e80d7..c309d5c 100644 --- a/flake.lock +++ b/flake.lock @@ -105,38 +105,6 @@ "type": "github" } }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1747046372, - "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { - "flake": false, - "locked": { - "lastModified": 1747046372, - "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -158,24 +126,6 @@ "type": "github" } }, - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "fromYaml": { "flake": false, "locked": { @@ -227,25 +177,6 @@ "url": "https://code.capytal.cc/dot013/godotdev.nvim" } }, - "heart-modpack": { - "inputs": { - "nix-minecraft": "nix-minecraft", - "nixpkgs": "nixpkgs" - }, - "locked": { - "lastModified": 1762728338, - "narHash": "sha256-TybTNtKAdrsv4r7/oHedacHjILXKeMwDiHVansh7Lus=", - "ref": "refs/heads/main", - "rev": "36e7a038351c6ce8d80eb77f47d4c44accb40b02", - "revCount": 33, - "type": "git", - "url": "ssh://gitea@spacestation/heart/modpack.git" - }, - "original": { - "type": "git", - "url": "ssh://gitea@spacestation/heart/modpack.git" - } - }, "home-manager": { "inputs": { "nixpkgs": [ @@ -253,11 +184,11 @@ ] }, "locked": { - "lastModified": 1773681845, - "narHash": "sha256-o8hrZrigP0JYcwnglCp8Zi8jQafWsxbDtRRPzuVwFxY=", + "lastModified": 1774274588, + "narHash": "sha256-dnHvv5EMUgTzGZmA+3diYjQU2O6BEpGLEOgJ1Qe9LaY=", "owner": "nix-community", "repo": "home-manager", - "rev": "0759e0e137305bc9d0c52c204c6d8dffe6f601a6", + "rev": "cf9686ba26f5ef788226843bc31fda4cf72e373b", "type": "github" }, "original": { @@ -306,7 +237,7 @@ "inputs": { "godotdev": "godotdev", "mdfmt": "mdfmt", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs", "nvim-treesitter-main": "nvim-treesitter-main" }, "locked": { @@ -323,100 +254,7 @@ "url": "https://code.capytal.cc/dot013/nvim" } }, - "nix-flatpak": { - "locked": { - "lastModified": 1767983141, - "narHash": "sha256-7ZCulYUD9RmJIDULTRkGLSW1faMpDlPKcbWJLYHoXcs=", - "owner": "gmodena", - "repo": "nix-flatpak", - "rev": "440818969ac2cbd77bfe025e884d0aa528991374", - "type": "github" - }, - "original": { - "owner": "gmodena", - "ref": "latest", - "repo": "nix-flatpak", - "type": "github" - } - }, - "nix-minecraft": { - "inputs": { - "flake-compat": "flake-compat", - "flake-utils": "flake-utils", - "nixpkgs": [ - "heart-modpack", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1762653944, - "narHash": "sha256-zAgyqF6bPFGCe9WcZdskvxS3qmMPOh15TBF6yxbai78=", - "owner": "infinidoge", - "repo": "nix-minecraft", - "rev": "8fa3e5e2763f7dfc7ab665609167a4e6796518f4", - "type": "github" - }, - "original": { - "owner": "infinidoge", - "repo": "nix-minecraft", - "type": "github" - } - }, - "nix-minecraft_2": { - "inputs": { - "flake-compat": "flake-compat_2", - "nixpkgs": [ - "nixpkgs" - ], - "systems": "systems_2" - }, - "locked": { - "lastModified": 1773456096, - "narHash": "sha256-vlV3HnHBxnfW4a2ifabH3L/3iGGjA5ejEP7XD7EOC+E=", - "owner": "infinidoge", - "repo": "nix-minecraft", - "rev": "ce7440a5fced512773e8e695d8a7bd57f33c7e6d", - "type": "github" - }, - "original": { - "owner": "infinidoge", - "repo": "nix-minecraft", - "type": "github" - } - }, "nixpkgs": { - "locked": { - "lastModified": 1753429684, - "narHash": "sha256-9h7+4/53cSfQ/uA3pSvCaBepmZaz/dLlLVJnbQ+SJjk=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "7fd36ee82c0275fb545775cc5e4d30542899511d", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-unstable": { - "locked": { - "lastModified": 1773646010, - "narHash": "sha256-iYrs97hS7p5u4lQzuNWzuALGIOdkPXvjz7bviiBjUu8=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "5b2c2d84341b2afb5647081c1386a80d7a8d8605", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { "locked": { "lastModified": 1767892417, "narHash": "sha256-dhhvQY67aboBk8b0/u0XB6vwHdgbROZT3fJAjyNh5Ww=", @@ -432,7 +270,23 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs-unstable": { + "locked": { + "lastModified": 1774106199, + "narHash": "sha256-US5Tda2sKmjrg2lNHQL3jRQ6p96cgfWh3J1QBliQ8Ws=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "6c9a78c09ff4d6c21d0319114873508a6ec01655", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { "locked": { "lastModified": 1767379071, "narHash": "sha256-EgE0pxsrW9jp9YFMkHL9JMXxcqi/OoumPJYwf+Okucw=", @@ -448,13 +302,13 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_3": { "locked": { - "lastModified": 1773610124, - "narHash": "sha256-EpC7ELOKmb+xXaqpK5ZRpJ5g9fxxg6tWny7/rUBfrwk=", + "lastModified": 1774244481, + "narHash": "sha256-4XfMXU0DjN83o6HWZoKG9PegCvKvIhNUnRUI19vzTcQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9fe1300f4360e13f39d6d1d006e54fd5093e9ad5", + "rev": "4590696c8693fea477850fe379a01544293ca4e2", "type": "github" }, "original": { @@ -508,7 +362,7 @@ }, "nvim-treesitter-main": { "inputs": { - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_2", "nvim-treesitter": "nvim-treesitter", "nvim-treesitter-textobjects": "nvim-treesitter-textobjects" }, @@ -543,39 +397,14 @@ "type": "github" } }, - "rec-sh": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1717124269, - "narHash": "sha256-CboDW1jTZST8WwjUrrh/d+AiQ9Cz7MyDGuP4aUP4Ghw=", - "ref": "main", - "rev": "437b7475d283b76da1625e53648f6f2ed3b82378", - "revCount": 13, - "type": "git", - "url": "https://code.capytal.cc/dot013/rec.sh/" - }, - "original": { - "ref": "main", - "type": "git", - "url": "https://code.capytal.cc/dot013/rec.sh/" - } - }, "root": { "inputs": { "disko": "disko", - "heart-modpack": "heart-modpack", "home-manager": "home-manager", "impermanence": "impermanence", "neovim": "neovim", - "nix-flatpak": "nix-flatpak", - "nix-minecraft": "nix-minecraft_2", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_3", "nixpkgs-unstable": "nixpkgs-unstable", - "rec-sh": "rec-sh", "sops-nix": "sops-nix", "stylix": "stylix", "zen-browser": "zen-browser" @@ -588,11 +417,11 @@ ] }, "locked": { - "lastModified": 1773550941, - "narHash": "sha256-wa/++bL2QeMUreNFBZEWluQfOYB0MnQIeGNMuaX9sfs=", + "lastModified": 1774303811, + "narHash": "sha256-fhG4JAcLgjKwt+XHbjs8brpWnyKUfU4LikLm3s0Q/ic=", "owner": "Mic92", "repo": "sops-nix", - "rev": "c469b6885f0dcd5c7c56bd935a0f08dbcd9e79e1", + "rev": "614e256310e0a4f8a9ccae3fa80c11844fba7042", "type": "github" }, "original": { @@ -614,7 +443,7 @@ "nixpkgs" ], "nur": "nur", - "systems": "systems_3", + "systems": "systems", "tinted-foot": "tinted-foot", "tinted-kitty": "tinted-kitty", "tinted-schemes": "tinted-schemes", @@ -622,11 +451,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1771788390, - "narHash": "sha256-RzBpBwn93GWxLjacTte+ngwwg0L/BVOg4G/sSIeK3Rw=", + "lastModified": 1774194089, + "narHash": "sha256-SCczWhr8y8aaXVHG+gOGcRahNb0BU1Z5zYZuv9W/nA8=", "owner": "danth", "repo": "stylix", - "rev": "ebb238f14d6f930068be4718472da3105fd5d3bf", + "rev": "7c34241d80ea64dd2039bb3a786fb66b4c6261d9", "type": "github" }, "original": { @@ -651,36 +480,6 @@ "type": "github" } }, - "systems_2": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_3": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "tinted-foot": { "flake": false, "locked": { @@ -772,11 +571,11 @@ ] }, "locked": { - "lastModified": 1773737882, - "narHash": "sha256-P6k0BtT1/idYveVRdcwAZk8By9UjZW8XOMhSoS6wTBY=", + "lastModified": 1774352774, + "narHash": "sha256-gibUM0pSnLxEeuFrYA8T1oEaixk+fjQpqXbYaxcEX/4=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "a7f1db35d74faf04e5189b3a32f890186ace5c28", + "rev": "a0f3d47dbd8f8618a1920d5a5ca09b7993415895", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 86cad7a..44ad6d8 100644 --- a/flake.nix +++ b/flake.nix @@ -29,28 +29,21 @@ inputs.nixpkgs.follows = "nixpkgs"; }; - heart-modpack = { - url = "git+ssh://gitea@spacestation/heart/modpack.git"; - # url = "git+file:///home/guz/.projects/heart-modpack"; - }; - - nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest"; - - nix-minecraft = { - url = "github:infinidoge/nix-minecraft"; - inputs.nixpkgs.follows = "nixpkgs"; - }; + # heart-modpack = { + # url = "git+ssh://gitea@spacestation/heart/modpack.git"; + # # url = "git+file:///home/guz/.projects/heart-modpack"; + # }; + # + # nix-minecraft = { + # url = "github:infinidoge/nix-minecraft"; + # inputs.nixpkgs.follows = "nixpkgs"; + # }; neovim = { url = "git+https://code.capytal.cc/dot013/nvim"; # url = "git+file:///home/guz/.projects/dot013-nvim"; }; - rec-sh = { - url = "git+https://code.capytal.cc/dot013/rec.sh/?ref=main"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - zen-browser = { url = "github:0xc000022070/zen-browser-flake"; inputs.nixpkgs.follows = "nixpkgs-unstable"; @@ -83,12 +76,6 @@ inherit pkgs pkgs-unstable; inherit (pkgs) lib; }); - - # Home manager NixOS module - homeNixOSModules = [ - home-manager.nixosModules.home-manager - ./style.nix - ]; in { formatter = forAllSystems ({pkgs, ...}: pkgs.alejandra); @@ -104,64 +91,12 @@ inherit inputs self; }; modules = [ - ./hosts/battleship-mk2/configuration.nix - ./modules/nixos/context.nix + ./hosts/battleship/configuration.nix ./home/terminal/configuration.nix inputs.stylix.nixosModules.stylix ./style.nix ]; }; - "figther" = nixpkgs.lib.nixosSystem rec { - system = "x86_64-linux"; - specialArgs = { - pkgs-unstable = import nixpkgs-unstable { - inherit system; - config.allowUnfreePredicate = _: true; - }; - inherit inputs self; - }; - modules = - homeNixOSModules - ++ [ - ./hosts/figther/configuration.nix - inputs.stylix.nixosModules.stylix - ./modules/nixos/context.nix - ./home/guz-lite/configuration.nix - ]; - }; - "rusty" = inputs.nixpkgs-2505.lib.nixosSystem rec { - system = "x86_64-linux"; - specialArgs = { - pkgs-unstable = import nixpkgs-unstable { - inherit system; - config.allowUnfreePredicate = _: true; - }; - inherit inputs self; - }; - modules = - [ - inputs.home-manager-2505.nixosModules.home-manager - ./style.nix - ] - ++ [ - inputs.stylix-2505.nixosModules.stylix - ./modules/nixos/context.nix - ./hosts/rusty/configuration.nix - ]; - }; - "virus" = nixpkgs.lib.nixosSystem rec { - system = "x86_64-linux"; - specialArgs = { - pkgs-unstable = import nixpkgs-unstable { - inherit system; - config.allowUnfreePredicate = _: true; - }; - inherit inputs self; - }; - modules = [ - ./hosts/virus/configuration.nix - ]; - }; "infiltrator" = nixpkgs.lib.nixosSystem rec { system = "x86_64-linux"; specialArgs = { @@ -183,28 +118,10 @@ pkgs-unstable, ... }: { - "guz" = home-manager.lib.homeManagerConfiguration { + "terminal" = home-manager.lib.homeManagerConfiguration { inherit pkgs pkgs-unstable; modules = [ - inputs.stylix.homeManagerModules.stylix - ./style.nix - inputs.xremap.homeManagerModules.default - ./home/guz - ]; - }; - "guz-lite" = home-manager.lib.homeManagerConfiguration { - inherit pkgs pkgs-unstable; - modules = [ - inputs.stylix.homeManagerModules.stylix - ./style.nix - inputs.xremap.homeManagerModules.default - ./home/guz-lite - ]; - }; - "worm" = home-manager.lib.homeManagerConfiguration { - inherit pkgs pkgs-unstable; - modules = [ - ./home/worm + ./home/terminal/home.nix ]; }; }); @@ -221,8 +138,6 @@ ]; }; neovim = inputs.neovim.homeManagerModules.default; - qutebrowser-profiles = ./modules/home-manager/qutebrowser-profiles.nix; - zen-browser = ./modules/home-manager/zen-browser; }; packages = forAllSystems ({ diff --git a/home/guz-lite/apps.nix b/home/guz-lite/apps.nix deleted file mode 100644 index 611e574..0000000 --- a/home/guz-lite/apps.nix +++ /dev/null @@ -1,70 +0,0 @@ -{ - lib, - inputs, - pkgs, - ... -}: { - imports = [ - inputs.nix-flatpak.homeManagerModules.nix-flatpak - inputs.rec-sh.homeManagerModules.rec-sh - ]; - - programs.rec-sh.enable = true; - - xdg.mimeApps.enable = true; - xdg.mimeApps.defaultApplications = let - email = "org.mozilla.Thunderbird.desktop"; - in { - "message/rfc822" = email; - "x-scheme-handler/mailto" = email; - "text/calendar" = email; - "text/x-vcard" = email; - }; - - services.flatpak.enable = true; - services.flatpak.packages = [ - # Thunder Bird (Email Client) - "org.mozilla.Thunderbird" - # Brave (Job Browser) - "com.brave.Browser" - # Obsidian (Notes) - "md.obsidian.Obsidian" - ]; - services.flatpak.update.onActivation = true; - services.flatpak.overrides = { - global = { - # Force wayland by default - Context = { - sockets = ["wayland" "!x11" "!fallback-x11"]; - filesystems = [ - # Access to user themes - "$HOME/.icons:ro" - "$HOME/.themes:ro" - "$HOME/.local/share/fonts:ro" - ]; - }; - Environment = { - # Fix un-themed cursor in Wayland apps - XCURSOR_PATH = "$HOME/.icons"; - }; - }; - "com.brave.Browser" = {Context.sockets = ["x11"];}; - }; - - home.packages = with pkgs; [ - nautilus - alacritty - ]; - - # TODO: Move this server to a remote server - services.activitywatch = { - enable = true; - package = pkgs.aw-server-rust; - watchers = { - "awatcher" = { - executable = "awatcher"; - package = pkgs.awatcher; - }; - }; - }; -} diff --git a/home/guz-lite/browser/default.nix b/home/guz-lite/browser/default.nix deleted file mode 100644 index 16e3010..0000000 --- a/home/guz-lite/browser/default.nix +++ /dev/null @@ -1,126 +0,0 @@ -{ - config, - self, - pkgs, - lib, - ... -}: -with lib; { - imports = [ - self.homeManagerModules.qutebrowser-profiles - ./scripts.nix - ./profiles.nix - ]; - - xdg.mimeApps.defaultApplications = with lib; - listToAttrs (map (name: { - inherit name; - value = config.programs.qutebrowser.package.meta.desktopFileName; - }) [ - "application/x-extension-shtml" - "application/x-extension-xhtml" - "application/x-extension-html" - "application/x-extension-xhtm" - "application/x-extension-htm" - "x-scheme-handler/unknown" - "x-scheme-handler/mailto" - "x-scheme-handler/chrome" - "x-scheme-handler/about" - "x-scheme-handler/https" - "x-scheme-handler/http" - "application/xhtml+xml" - "application/json" - "text/plain" - "text/html" - ]); - - programs.qutebrowser.enable = true; - programs.qutebrowser.keyBindings = { - normal = { - ",m" = "spawn umpv {url}"; - ",M" = "hint links spawn umpv {hint-url}"; - ";M" = "hint --rapid links spawn umpv {hint-url}"; - "tD" = "config-cycle -t -u {url} colors.webpage.darkmode.enabled false true ;; reload"; - }; - }; - programs.qutebrowser.settings = { - auto_save.session = true; - confirm_quit = ["downloads"]; - - tabs.width = builtins.floor (1920 * 0.1); - tabs.position = "left"; - - # Colors - colors.tabs.pinned.even.bg = mkForce "#181818"; - colors.tabs.pinned.odd.bg = mkForce "#181818"; - - colors.tabs.selected.even.bg = mkForce "#CDD6F4"; # Catppuccin's Text - colors.tabs.selected.odd.bg = mkForce "#CDD6F4"; # Catppuccin's Text - colors.tabs.selected.even.fg = mkForce "#111111"; - colors.tabs.selected.odd.fg = mkForce "#111111"; - - colors.tabs.pinned.selected.even.bg = mkForce "#CDD6F4"; # Catppuccin's Text - colors.tabs.pinned.selected.odd.bg = mkForce "#CDD6F4"; # Catppuccin's Text - - ## Darkmode - colors.webpage.darkmode.enabled = true; - colors.webpage.darkmode.algorithm = "lightness-cielab"; - colors.webpage.darkmode.policy.images = "never"; - - # Prevent fingerprinting - content.canvas_reading = false; - content.cookies.accept = "all"; - content.cookies.store = true; - content.geolocation = false; - content.webgl = false; - content.webrtc_ip_handling_policy = "default-public-interface-only"; - }; - programs.qutebrowser.extraConfig = '' - config.set('colors.webpage.darkmode.enabled', False, 'file://*') - config.set('colors.webpage.darkmode.enabled', False, 'http://*:*/*') - - config.set('colors.webpage.darkmode.enabled', False, 'capytal.company') - config.set('colors.webpage.darkmode.enabled', False, '*.capytal.company') - config.set('colors.webpage.darkmode.enabled', False, 'capytal.cc') - config.set('colors.webpage.darkmode.enabled', False, '*.capytal.cc') - config.set('colors.webpage.darkmode.enabled', False, 'lored.dev') - config.set('colors.webpage.darkmode.enabled', False, '*.lored.dev') - config.set('colors.webpage.darkmode.enabled', False, 'guz.one') - config.set('colors.webpage.darkmode.enabled', False, '*.guz.one') - - # Thanks to @hseg on GitHub (https://github.com/qutebrowser/qutebrowser/issues/6880#issuecomment-1815248845) - config.bind('o', 'cmd-set-text -s :open -s') - config.bind('go', 'cmd-set-text :open -s {url:pretty}') - config.bind('O', 'cmd-set-text -s :open -s -t') - config.bind('gO', 'cmd-set-text :open -s -t -r {url:pretty}') - config.bind('xo', 'cmd-set-text -s :open -s -b') - config.bind('xO', 'cmd-set-text :open -s -b -r {url:pretty}') - config.bind('wo', 'cmd-set-text -s :open -s -w') - config.bind('wO', 'cmd-set-text :open -s -w {url:pretty}') - config.bind('pp', 'open -s -- {clipboard}') - config.bind('pP', 'open -s -- {primary}') - config.bind('Pp', 'open -s -t -- {clipboard}') - config.bind('PP', 'open -s -t -- {primary}') - config.bind('wp', 'open -s -w -- {clipboard}') - config.bind('wP', 'open -s -w -- {primary}') - ''; - programs.qutebrowser.searchEngines = { - DEFAULT = "https://search.brave.com/search?q={}"; - # Nix - pkg = "https://search.nixos.org/packages?query={}"; - opt = "https://search.nixos.org/options?query={}"; - lib = "https://noogle.dev/q?term={}"; - hm = "https://home-manager-options.extranix.com/?query={}"; - wiki = "https://wiki.nixos.org/w/index.php?search={}"; - - # Wikipedia - w = "https://en.wikipedia.org/wiki/Special:Search?search={}&go=Go&ns0=1"; - wpt = "https://pt.wikipedia.org/wiki/Special:Search?search={}&go=Go&ns0=1"; - }; - - programs.mpv.enable = true; - programs.mpv.scripts = with pkgs.mpvScripts; [ - quality-menu - sponsorblock - ]; -} diff --git a/home/guz-lite/browser/profiles.nix b/home/guz-lite/browser/profiles.nix deleted file mode 100644 index a3155ba..0000000 --- a/home/guz-lite/browser/profiles.nix +++ /dev/null @@ -1,59 +0,0 @@ -{config, ...}: { - programs.qutebrowser.profiles = let - programmingSearchEngines = { - # Languages - go = "https://pkg.go.dev/search?q={}"; - }; - setColor = c: { - colors.tabs.selected.even.bg = c; - colors.tabs.selected.odd.bg = c; - colors.tabs.pinned.selected.even.bg = c; - colors.tabs.pinned.selected.odd.bg = c; - }; - in { - "art" = { - settings = setColor "#CBA6F7"; # Catppuccin's Mauve; - }; - "personal" = { - settings = setColor "#F5E0DC"; # Catppuccin's Rosewater - }; - "work" = { - settings = setColor "#74C7EC"; # Catppuccin's Sapphire - searchEngines = programmingSearchEngines; - }; - "job" = { - settings = - (config.programs.qutebrowser.profiles."work".settings) - // { - confirm_quit = ["always"]; - content.webgl = true; - } - // (setColor "#A6E2A1"); # Catppuccin's Green - searchEngines = programmingSearchEngines; - }; - "shopping" = { - settings = setColor "#F9E2AF"; # Catppuccin's Yellow - }; - "goverment" = { - settings = setColor "#A6ADC8"; # Catppuccin's Subtext 1 - }; - "academic" = { - settings = - { - confirm_quit = ["always"]; - content.webgl = true; - } - // setColor "#19236F"; - }; - "facebook" = { - settings = setColor "#1877F2"; # Facebook's Blue - }; - "yt-music" = { - settings = - { - tabs.width = 10; - } - // (setColor "#FF0000"); # Youtube's Red - }; - }; -} diff --git a/home/guz-lite/browser/scripts.nix b/home/guz-lite/browser/scripts.nix deleted file mode 100644 index e65bb49..0000000 --- a/home/guz-lite/browser/scripts.nix +++ /dev/null @@ -1,80 +0,0 @@ -{pkgs, ...}: { - programs.qutebrowser.greasemonkey = [ - # Youtube Adblocking - (pkgs.fetchurl { - url = "https://raw.githubusercontent.com/afreakk/greasemonkeyscripts/refs/heads/master/youtube_adblock.js"; - hash = "sha256-AyD9VoLJbKPfqmDEwFIEBMl//EIV/FYnZ1+ona+VU9c="; - }) - - # Youtube Sponsorblock - (pkgs.fetchurl { - url = "https://raw.githubusercontent.com/afreakk/greasemonkeyscripts/refs/heads/master/youtube_sponsorblock.js"; - hash = "sha256-nwNade1oHP+w5LGUPJSgAX1+nQZli4Rhe8FFUoF5mLE="; - }) - - # Reddit adblock - (pkgs.fetchurl { - url = "https://github.com/afreakk/greasemonkeyscripts/raw/refs/heads/master/reddit_adblock.js"; - hash = "sha256-KmCXL4GrZtwPLRyAvAxADpyjbdY5UFnS/XKZFKtg7tk="; - }) - - # Pinterest adblock - (pkgs.writeText "pinterest_adblock.js" '' - // ==UserScript== - // @name remove ads from pinterest - // @version 1.0.0 - // @author guz - // @match *://*.pinterest.com/* - // ==/UserScript== - - const removeShit = () => { - document.querySelectorAll('[data-grid-item]:has([title="Promoted by"])').forEach((e) => e.remove()); - document.querySelectorAll('[data-grid-item]:has([data-test-id="oneTapPromotedPin"])').forEach((e) => e.remove()); - document.querySelectorAll('[data-grid-item]:has([aria-label="Product Pin"])').forEach((e) => e.remove()); - // document.querySelectorAll('[data-grid-item]:has-text(ideas you might love)').forEach((e) => e.remove()); - // document.querySelectorAll('[data-grid-item]:has-text(Seaches to try)').forEach((e) => e.remove()); - }; - (trySetInterval = () => { - window.setInterval(removeShit, 1000); - })(); - '') - - # Privacy Redirector - (pkgs.substitute { - src = pkgs.fetchurl { - url = "https://github.com/dybdeskarphet/privacy-redirector/raw/refs/heads/main/privacy-redirector.user.js"; - hash = "sha256-xj36+/3coiStIxftWCJUWHokSEmr+YRLOTktbmn5TkU="; - }; - substitutions = [ - # ON-OFF (Redirection / Farside) - "--replace" - "pinterest = [true, true]" - "pinterest = [false, false]" - "--replace" - "tumblr = [true, false]" - "tumblr = [false, false]" - "--replace" - "wikipedia = [true, false]" - "wikipedia = [false, false]" - "--replace" - "youtube = [true, false]" - "youtube = [false, false]" - "--replace" - "instagram = [true, true]" - "instagram = [false, false]" - ]; - }) - - # # Aternos Anti-Anti-Adblock - # (pkgs.fetchurl { - # url = "https://gist.github.com/DvilMuck/f2b14f3f65e8f22974d781277158f82a/raw/66a0d8d9dd598fc516c3c9d9bbf6ef3f0f6a7a1e/aternosAntiAntiadblock.user.js"; - # hash = "sha256-PBFCt9o22D7WAN8S6C2BnLKgG3J5zZ/mWbWspCKcm6k="; - # }) - # - # # Aternos block tracking - # (pkgs.fetchurl { - # url = "https://gist.github.com/DvilMuck/f2b14f3f65e8f22974d781277158f82a/raw/66a0d8d9dd598fc516c3c9d9bbf6ef3f0f6a7a1e/aternosBlockTracking.user.js"; - # hash = "sha256-GDDx3gbvh28qiB3Gi61k/pdM11wJhcV7dwCRGNvq30c="; - # }) - ]; -} diff --git a/home/guz-lite/configuration.nix b/home/guz-lite/configuration.nix deleted file mode 100644 index 18df6da..0000000 --- a/home/guz-lite/configuration.nix +++ /dev/null @@ -1,72 +0,0 @@ -{pkgs, ...}: { - imports = [ - ../worm/configuration.nix - ]; - - home-manager.users.guz = import ./default.nix; - - services.flatpak.enable = true; - - # Desktops - - ## Hyprland - programs.hyprland.enable = true; - programs.hyprland.withUWSM = true; - - programs.hyprlock.enable = true; - - programs.xwayland.enable = true; - - services.dbus.enable = true; - - ### Freedesktop providers - - #### Secrets - services.gnome.gnome-keyring.enable = true; - security.pam.services."gdm".enableGnomeKeyring = true; - - ### Force wayland - environment.sessionVariables.NIXOS_OZONE_WL = "1"; - - ### File picker and other portals not implemented by XDPH - xdg.portal.extraPortals = with pkgs; [ - xdg-desktop-portal-gtk - ]; - - services.xserver.displayManager.gdm.enable = true; - - fonts.fontDir.enable = true; - fonts.fontconfig.enable = true; - fonts.packages = with pkgs; [ - google-fonts - nerd-fonts.fira-code - (stdenv.mkDerivation rec { - name = "Cal Sans"; - pname = "calsans"; - version = "1.0.0"; - src = pkgs.fetchzip { - url = "https://github.com/calcom/font/releases/download/v${version}/CalSans_Semibold_v${version}.zip"; - stripRoot = false; - hash = "sha256-JqU64JUgWimJgrKX3XYcml8xsvy//K7O5clNKJRGaTM="; - }; - installPhase = '' - runHook preInstall - install -m444 -Dt $out/share/fonts/truetype fonts/webfonts/*.ttf - runHook postInstall - ''; - meta = with lib; { - homepage = "https://github.com/calcom/font"; - license = licenses.ofl; - platforms = platforms.all; - }; - }) - ]; - - # Xremap run-as-user - hardware.uinput.enable = true; - users.groups.uinput.members = ["guz"]; - users.groups.input.members = ["guz"]; - - # TODO: Activity watch server - networking.firewall.allowedTCPPorts = [5600]; -} diff --git a/home/guz-lite/default.nix b/home/guz-lite/default.nix deleted file mode 100644 index 1c8da51..0000000 --- a/home/guz-lite/default.nix +++ /dev/null @@ -1,25 +0,0 @@ -{...}: { - home.username = "guz"; - home.homeDirectory = "/home/guz"; - - imports = [ - ../worm/default.nix - - ./desktop - ./browser - - ./apps.nix - ./style.nix - ./desktop.nix - ./keymaps.nix - ]; - - services.polkit-gnome.enable = true; - - # The *state version* indicates which default - # settings are in effect and will therefore help avoid breaking - # program configurations. Switching to a higher state version - # typically requires performing some manual steps, such as data - # conversion or moving files. - home.stateVersion = "24.11"; -} diff --git a/home/guz-lite/desktop.nix b/home/guz-lite/desktop.nix deleted file mode 100644 index 4b7e617..0000000 --- a/home/guz-lite/desktop.nix +++ /dev/null @@ -1,147 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - home.pointerCursor.enable = true; - home.pointerCursor.name = "Vanilla-DMZ"; - home.pointerCursor.package = pkgs.vanilla-dmz; - home.pointerCursor.gtk.enable = true; - home.pointerCursor.x11.enable = true; - home.pointerCursor.hyprcursor.enable = true; - - home.sessionVariables.NIXOS_OZONE_WL = "1"; - - # Hyprland - wayland.windowManager.hyprland.enable = true; - wayland.windowManager.hyprland.systemd.enable = false; - wayland.windowManager.hyprland.xwayland.enable = true; - wayland.windowManager.hyprland.settings = { - "$MOD" = "SUPER"; - "$MONITOR-1" = lib.mkDefault ""; - "$MONITOR-2" = lib.mkDefault ""; - - animations.enabled = true; - - decoration = { - rounding = 5; - - dim_inactive = true; - dim_strength = 0.2; - dim_around = 0.4; - - blur.enabled = false; - }; - - dwindle = { - pseudotile = true; - preserve_split = true; - }; - - exec-once = [ - "systemctl --user enable --now hyprpaper.service" - "systemctl --user enable --now hypridle.service" - "systemctl --user restart --now activitywatch-watcher-awatcher.service" - ]; - - general = { - gaps_in = 5; - gaps_out = 10; - border_size = 0; - layout = "dwindle"; - }; - - input = { - kb_layout = "br"; - kb_variant = "abnt2"; - follow_mouse = 1; - sensitivity = 0; - }; - - monitor = [ - ", preferred, auto, 1" - ]; - - windowrulev2 = [ - # Inkscape pop-ups - "float,class:^(org.inkscape.Inkscape)$" - "tile,class:^(org.inkscape.Inkscape)$,title:(.*)(- Inkscape)$" - - # Blender pop-ups - "float,class:^(blender)$,title:^(?!.*\ \-\ Blender).*$)" - ]; - - workspace = [ - # Primary monitor - "1,monitor:$MONITOR-1,default:true" - "2,monitor:$MONITOR-1" - "3,monitor:$MONITOR-1" - "4,monitor:$MONITOR-1" - "5,monitor:$MONITOR-1" - # Second monitor - "6,monitor:$MONITOR-2" - "7,monitor:$MONITOR-2" - "8,monitor:$MONITOR-2" - "9,monitor:$MONITOR-2" - "10,monitor:$MONITOR-2,default:true" - ]; - }; - - ## Idle lock screen - programs.hyprlock.enable = true; - - services.hypridle.enable = true; - services.hypridle.settings = let - hyprlock = lib.getExe config.programs.hyprlock.package; - - brightnessctl = lib.getExe pkgs.brightnessctl; - hyprctl = lib.getExe' config.wayland.windowManager.hyprland.package "hyprctl"; - loginctl = lib.getExe' pkgs.systemd "loginctl"; - in { - general = { - lock_cmd = "pidof ${hyprlock} || ${hyprlock}"; - before_sleep_cmd = "${loginctl} unlock-session"; - after_sleep_cmd = "${hyprctl} dispatch dpms on"; - }; - listener = { - timeout = 10; - on-timeout = "${brightnessctl} -sd rgb:kbd_backlight set 0 && ${hyprlock}"; - on-resume = "${brightnessctl} -rd rgb:kbd_backlight"; - }; - }; - - ## Wallpaper - services.hyprpaper.enable = true; - - ## File picker and other portals not implemented by XDPH - xdg.portal.extraPortals = with pkgs; [ - xdg-desktop-portal-gtk - ]; - xdg.portal.config.common.default = ["gtk"]; - xdg.portal.xdgOpenUsePortal = true; - - ## Temp status bar - programs.waybar.enable = true; - programs.waybar.style = builtins.readFile ./waybar.css; - programs.waybar.systemd.enable = true; - - # Notifications - services.dunst.enable = true; - services.dunst.settings = { - global = { - follow = "mouse"; - }; - }; - - # Application Launcher - programs.rofi.enable = true; - programs.rofi.modes = ["drun" "emoji"]; - - # Clipboard - services.cliphist.enable = true; - services.cliphist.allowImages = true; - home.packages = with pkgs; [ - wl-clipboard - ]; -} diff --git a/home/guz-lite/desktop/bar.nix b/home/guz-lite/desktop/bar.nix deleted file mode 100644 index 29deafb..0000000 --- a/home/guz-lite/desktop/bar.nix +++ /dev/null @@ -1,149 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - programs.eww.enable = true; - programs.eww.enableZshIntegration = true; - - programs.waybar.settings = let - layer = "top"; - position = "top"; - - height = 25; - spacing = 5; - - margin-top = 5; - margin-x = 10; - margin-right = margin-x; - margin-left = margin-x; - in { - main = let - monitor = config.wayland.windowManager.hyprland.settings."$MONITOR-1"; - in { - inherit - layer - position - height - spacing - margin-top - margin-right - margin-left - ; - - output = [monitor]; - - modules-left = [ - "hyprland/workspaces" - ]; - - "hyprland/workspaces" = { - active-only = false; - persistent-workspaces = { - "${monitor}" = [1 2 3 4 5]; - }; - format = "{icon}"; - format-icons = { - default = ""; - active = ""; - }; - }; - - modules-center = [ - "clock" - ]; - - modules-right = [ - "pulseaudio" - ]; - - "clock" = { - format = "{:%d 󰥔 %R}"; - format-alt = "{:%B %d, 12.0%y (%A)}"; - tooltip-format = "{calendar}"; - calendar = { - mode = "year"; - mode-mon-col = 3; - weeks-pos = "left"; - on-scroll = 1; - format = with config.lib.stylix.colors.withHashtag; { - months = "{}"; - days = "{}"; - weeks = "W{}"; - weeksdays = "{}"; - today = "{}"; - }; - }; - }; - - "pulseaudio" = { - format = "{icon} {volume}%"; - format-muted = ""; - format-icons = { - default = ["" ""]; - }; - onclick = "${lib.getExe pkgs.pwvucontrol}"; - }; - }; - secondary = let - monitor = config.wayland.windowManager.hyprland.settings."$MONITOR-2"; - in { - inherit - layer - position - height - spacing - margin-top - margin-right - margin-left - ; - - output = [monitor]; - - modules-left = [ - "cpu" - "memory" - "disk" - ]; - - "cpu" = { - format = " {usage}%"; - }; - - "memory" = { - format = " {percentage}%"; - }; - - "disk" = { - interval = 30; - format = "󰨣 {specific_free:0.2f}"; - unit = "GB"; - }; - - modules-center = [ - "hyprland/window" - ]; - - "hyprland/window" = { - format = "{title}"; - }; - - modules-right = [ - "hyprland/workspaces" - ]; - - "hyprland/workspaces" = { - active-only = false; - persistent-workspaces = { - "${monitor}" = [6 7 8 9 10]; - }; - format = "{icon}"; - format-icons = { - default = ""; - active = ""; - }; - }; - }; - }; -} diff --git a/home/guz-lite/desktop/default.nix b/home/guz-lite/desktop/default.nix deleted file mode 100644 index 8607cf7..0000000 --- a/home/guz-lite/desktop/default.nix +++ /dev/null @@ -1,3 +0,0 @@ -{...}: { - imports = [./bar.nix]; -} diff --git a/home/guz-lite/eww/eww.scss b/home/guz-lite/eww/eww.scss deleted file mode 100644 index 8678ab8..0000000 --- a/home/guz-lite/eww/eww.scss +++ /dev/null @@ -1,43 +0,0 @@ -.body { - background-color: red; - border-radius: $rounding; - - font-family: $font-monospace; - font-weight: bold; - color: $base05; - - padding: 0px $gaps-out; -} - -.workspaces { - font-family: $font-emoji; - font-size: 0.7rem; -} - -.day { - padding-left: $gaps-out; -} - -.valuebar { - scale { - min-height: 5px; - } - - scale trough { - all: unset; - background: darkgreen; - border-radius: 50px; - min-height: 5px; - min-width: 50px; - - slider { - all: unset; - } - - highlight { - all: unset; - background: green; - border-radius: 10px; - } - } -} diff --git a/home/guz-lite/eww/eww.yuck b/home/guz-lite/eww/eww.yuck deleted file mode 100644 index 5db7476..0000000 --- a/home/guz-lite/eww/eww.yuck +++ /dev/null @@ -1,95 +0,0 @@ -(defpoll time :interval "10s" :initial "00:00" `date +%H:%M`) -(defpoll date :interval "1m" :initial "00/00" `date +%d/%m`) -(defpoll week-day :interval "1m" :initial "1" `date +%w`) - -(defvar bar1g (geometry - :x "0%" :y "0%" - :width "2560px" - :height "20px" - :anchor "top center")) - -(defwindow statusbarcomplete - :monitor 0 - :stacking "fg" - :exclusive true - :reserve (struts :distance "20px" :side "top") - :windowtype "dock" - :focusable false - :geometry bar1g - (box - :orientation "h" - :class "topbar-shell" - (centerbox - :orientation "h" - :class "body" - (box - :halign "start" - (day)) - (empty) - (box - :halign "end" - (statuses))))) - - -;; (defwidget workspaces [workspace] -;; (box -;; :class "workspaces" -;; :orientation "h" -;; "${ -;; workspace == 1 ? '' : '' -;; } ${ -;; workspace == 2 ? '' : '' -;; } ${ -;; workspace == 3 ? '' : '' -;; } ${ -;; workspace == 4 ? '' : '' -;; } ${ -;; workspace == 5 ? '' : '' -;; }")) - -(defwidget day [] - (box - :orientation "h" - :class "day" - ; Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn - "${[" Sun", " Mon", " Tue", "󰬸 Wed", "󱡓 Thu", " Fri", " Sat"][week-day]} ${date} - ${time}")) - -(defwidget statuses [] - (box - :class "statuses" - :orientation "h" - (box - (valuebar - :label "" - :value-text "Ram: ${round(EWW_RAM.used_mem_perc, 2)}% used" - :value "${EWW_RAM.used_mem_perc}")) - (box - (valuebar - :label "" - :value-text "CPU ${round(EWW_CPU.avg, 2)}" - :value "${EWW_CPU.avg}")) - (box - (valuebar - :label "󰨣" - :value-text "Disk: ${round(EWW_DISK["/"].used_perc, 2)}% used" - :value "${EWW_DISK["/"].used_perc}")))) - -(defwidget valuebar [label value ?value-text ?onchange ?onclick] - (box - :class "valuebar" - :orientation "h" - :space-evenly false - :tooltip "${value-text == "" ? value : value-text}" - (box - :orientation "h" - :space-evenly false - :class "label" - label) - (scale - :min 0 - :max 101 - :active {onchange != ""} - :onchange onchange - :value value))) - -(defwidget empty [] "") diff --git a/home/guz-lite/keymaps.nix b/home/guz-lite/keymaps.nix deleted file mode 100644 index 3333d8b..0000000 --- a/home/guz-lite/keymaps.nix +++ /dev/null @@ -1,220 +0,0 @@ -{ - config, - lib, - inputs, - pkgs, - ... -}: { - imports = [ - inputs.xremap.homeManagerModules.default - ]; - - services.xremap.enable = true; - services.xremap.withHypr = true; - services.xremap.config.keymap = let - TERMINAL = config.home.sessionVariables.TERMINAL; - EXPLORER = config.home.sessionVariables.EXPLORER; - rofi = lib.getExe config.programs.rofi.finalPackage; - - exec = c: - ["hyprctl" "dispatch" "exec"] - ++ ( - if builtins.isString c - then [c] - else c - ); - - MODE_DEFAULT = "default"; - move = d: ["hyprctl" "dispatch" "movefocus" d]; - close = _: ["hyprctl" "dispatch" "killactive"]; - switchWorkspace = w: ["hyprctl" "dispatch" "workspace" w]; - toggleFullscreen = _: ["hyprctl" "dispatch" "fullscreen"]; - toggleFloating = _: ["hyprctl" "dispatch" "togglefloating"]; - toggleSplit = _: ["hyprctl" "dispatch" "togglesplit"]; - - MODE_ARREGEMENT = "arregement"; - moveTile = d: ["hyprctl" "dispatch" "movewindow" d]; - switchTileWorkspace = w: ["hyprctl" "dispatch" "movetoworkspace" w]; - - MODE_RESIZING = "resizing"; - resize = d: - [ - "hyprctl" - "dispatch" - "resizeactive" - ] - ++ { - "l" = ["-10" "0"]; - "r" = ["10" "0"]; - "u" = ["0" "-10"]; - "d" = ["0" "10"]; - } - .${ - d - }; - - movementBinds = { - # Move between tiles - "super-h" = {launch = move "l";}; - "super-l" = {launch = move "r";}; - "super-k" = {launch = move "u";}; - "super-j" = {launch = move "d";}; - # Move between workspaces - "super-1" = {launch = switchWorkspace "1";}; - "super-2" = {launch = switchWorkspace "2";}; - "super-3" = {launch = switchWorkspace "3";}; - "super-4" = {launch = switchWorkspace "4";}; - "super-5" = {launch = switchWorkspace "5";}; - "super-6" = {launch = switchWorkspace "6";}; - "super-7" = {launch = switchWorkspace "7";}; - "super-8" = {launch = switchWorkspace "8";}; - "super-9" = {launch = switchWorkspace "9";}; - "super-0" = {launch = switchWorkspace "10";}; - }; - in [ - { - name = "General Keybindings"; - remap = { - # Terminal - "super-q" = {launch = exec "${TERMINAL}";}; - # File explorer - "super-e" = {launch = exec ["${TERMINAL}" "-e" "${EXPLORER}"];}; - # Web Browser - "super-w" = {launch = exec ["xdg-open" "https://search.brave.com"];}; - # Launcher - "super-s" = { - launch = exec [ - (lib.getExe (pkgs.writeShellScriptBin "launcher" '' - ${rofi} -show drun -theme ${config.xdg.configHome}/rofi/launcher.rasi - '')) - ]; - }; - # Emoji picker - "super-i" = { - launch = exec [ - (lib.getExe (pkgs.rofimoji)) - ]; - }; - # Toggle fullscreen - "super-f" = {launch = toggleFullscreen "";}; - # Toggle floating - "super-shift-f" = {launch = toggleFloating "";}; - # Close window - "super-c" = {launch = close "";}; - }; - mode = MODE_DEFAULT; - } - { - name = "Navigation Keybinds"; - remap = - { - # Switch modes - "super-m" = { - remap = { - "a" = {set_mode = MODE_ARREGEMENT;}; - "r" = {set_mode = MODE_RESIZING;}; - }; - }; - - # Kick move to workspace - "super-shift-1" = {launch = switchTileWorkspace "1";}; - "super-shift-2" = {launch = switchTileWorkspace "2";}; - "super-shift-3" = {launch = switchTileWorkspace "3";}; - "super-shift-4" = {launch = switchTileWorkspace "4";}; - "super-shift-5" = {launch = switchTileWorkspace "5";}; - "super-shift-6" = {launch = switchTileWorkspace "6";}; - "super-shift-7" = {launch = switchTileWorkspace "7";}; - "super-shift-8" = {launch = switchTileWorkspace "8";}; - "super-shift-9" = {launch = switchTileWorkspace "9";}; - "super-shift-0" = {launch = switchTileWorkspace "10";}; - } - // movementBinds; - mode = MODE_DEFAULT; - } - { - name = "Arregement Keybinds"; - remap = - { - # Exit mode mode - "esc" = {set_mode = MODE_DEFAULT;}; - # Switch modes - "super-m" = { - remap = { - "r" = {set_mode = MODE_RESIZING;}; - }; - }; - # Move tiles - "h" = {launch = moveTile "l";}; - "l" = {launch = moveTile "r";}; - "k" = {launch = moveTile "u";}; - "j" = {launch = moveTile "d";}; - # Move tiles to workspace - "1" = {launch = switchTileWorkspace "1";}; - "2" = {launch = switchTileWorkspace "2";}; - "3" = {launch = switchTileWorkspace "3";}; - "4" = {launch = switchTileWorkspace "4";}; - "5" = {launch = switchTileWorkspace "5";}; - "6" = {launch = switchTileWorkspace "6";}; - "7" = {launch = switchTileWorkspace "7";}; - "8" = {launch = switchTileWorkspace "8";}; - "9" = {launch = switchTileWorkspace "9";}; - "0" = {launch = switchTileWorkspace "10";}; - # Switch split - "s" = {launch = toggleSplit "";}; - # Toggle fullscreen - "f" = {launch = toggleFullscreen "";}; - # Toggle floating - "shift-f" = {launch = toggleFloating "";}; - # Close window - "c" = {launch = close "";}; - } - // movementBinds; - mode = MODE_ARREGEMENT; - } - { - name = "Resizing Keybinds"; - remap = - { - # Exit mode mode - "esc" = {set_mode = MODE_DEFAULT;}; - # Switch modes - "super-m" = { - remap = { - "a" = {set_mode = MODE_ARREGEMENT;}; - }; - }; - # Move tiles - "h" = {launch = resize "l";}; - "l" = {launch = resize "r";}; - "k" = {launch = resize "u";}; - "j" = {launch = resize "d";}; - # Switch split - "s" = {launch = toggleSplit "";}; - # Toggle fullscreen - "f" = {launch = toggleFullscreen "";}; - # Toggle floating - "shift-f" = {launch = toggleFloating "";}; - # Close window - "c" = {launch = close "";}; - } - // movementBinds; - mode = MODE_RESIZING; - } - ]; - - wayland.windowManager.hyprland.settings.bind = let - rofi = lib.getExe config.programs.rofi.finalPackage; - grim = lib.getExe pkgs.grim; - slurp = lib.getExe pkgs.slurp; - in [ - "SUPER, V, exec, cliphist list | ${rofi} -dmenu | cliphist decode | wl-copy" # For some reason this doesn't work on xremap - ",Print, exec, ${grim} -g \"$(${slurp} -d)\" - | wl-copy" - "SUPER, P, exec, ${lib.getExe pkgs.hyprpicker} | wl-copy" - ]; - wayland.windowManager.hyprland.settings.bindm = [ - # Left-click - "$MOD, mouse:272, movewindow" - # Right-click - "$MOD, mouse:273, resizewindow" - ]; -} diff --git a/home/guz-lite/libredirect.json b/home/guz-lite/libredirect.json deleted file mode 100644 index 64722fb..0000000 --- a/home/guz-lite/libredirect.json +++ /dev/null @@ -1,637 +0,0 @@ -{ - "options": { - "youtube": { - "enabled": true, - "redirectType": "main_frame", - "frontend": "invidious", - "embedFrontend": "invidious", - "unsupportedUrls": "bypass", - "redirectOnlyInIncognito": false - }, - "invidious": ["https://inv.nadeko.net"], - "materialious": ["https://app.materialio.us"], - "piped": ["https://pipedapi-libre.kavin.rocks"], - "pipedMaterial": ["https://piped-material.xn--17b.net"], - "poketube": ["https://poketube.fun"], - "cloudtube": ["https://tube.cadence.moe"], - "lightTube": ["https://tube.kuylar.dev"], - "tuboYoutube": ["https://tubo.media"], - "viewtube": ["https://viewtube.io"], - "ytify": ["https://ytify.pp.ua"], - "youtubeMusic": { - "enabled": false, - "frontend": "invidiousMusic", - "unsupportedUrls": "bypass", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "hyperpipe": ["https://hp.ggtyler.dev"], - "invidiousMusic": [], - "twitter": { - "enabled": true, - "redirectType": "main_frame", - "unsupportedUrls": "bypass", - "frontend": "nitter", - "instance": "public", - "redirectOnlyInIncognito": false - }, - "nitter": [ - "https://nitter.tiekoetter.com", - "https://xcancel.com", - "https://nitter.privacyredirect.com" - ], - "chatGpt": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "duckDuckGoAiChat", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "bluesky": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "skyview", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "skyview": ["https://skyview.social"], - "reddit": { - "enabled": true, - "frontend": "redlib", - "unsupportedUrls": "bypass", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "libreddit": [], - "redlib": [ - "https://safereddit.com", - "https://l.opnxng.com", - "https://redlib.thebunny.zone" - ], - "teddit": [], - "eddrit": ["https://eddrit.com"], - "tumblr": { - "enabled": false, - "redirectType": "main_frame", - "unsupportedUrls": "bypass", - "frontend": "priviblur", - "instance": "public", - "redirectOnlyInIncognito": false - }, - "priviblur": ["https://pb.bloat.cat"], - "twitch": { - "enabled": true, - "redirectType": "main_frame", - "unsupportedUrls": "bypass", - "frontend": "safetwitch", - "instance": "public", - "redirectOnlyInIncognito": false - }, - "safetwitch": [ - "https://safetwitch.drgns.space", - "https://twitch.seitan-ayoub.lol", - "https://safetwitch.lunar.icu", - "https://safetwitch.privacyredirect.com", - "https://safetwitch.darkness.services" - ], - "twineo": ["https://twineo.exozy.me"], - "tiktok": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "proxiTok", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "proxiTok": [ - "https://proxitok.pabloferreiro.es", - "https://proxitok.pussthecat.org", - "https://tok.habedieeh.re", - "https://tok.artemislena.eu", - "https://cringe.whatever.social", - "https://proxitok.lunar.icu", - "https://cringe.seitan-ayoub.lol", - "https://proxitok.belloworld.it" - ], - "offtiktok": ["https://www.offtiktok.com"], - "instagram": { - "enabled": false, - "frontend": "proxigram", - "unsupportedUrls": "bypass", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "proxigram": ["https://ig.opnxng.com"], - "imdb": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "libremdb", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "libremdb": [ - "https://libremdb.iket.me", - "https://libremdb.pussthecat.org", - "https://libremdb.lunar.icu", - "https://binge.whatever.social", - "https://libremdb.r4fo.com", - "https://libremdb.catsarch.com", - "https://d.opnxng.com", - "https://libremdb.ducks.party", - "https://lmdb.bloat.cat", - "https://libremdb.franklyflawless.org", - "https://libremdb-fly.fly.dev" - ], - "bilibili": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "mikuInvidious", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "mikuInvidious": [], - "pixiv": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "pixivFe", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "pixivFe": [ - "https://pixiv.perennialte.ch", - "https://pixivfe.thebunny.zone", - "https://pixivfe.darkness.services", - "https://pixivfe.ducks.party" - ], - "liteXiv": ["https://litexiv.465321.best", "https://litexiv.bloat.cat"], - "vixipy": ["https://vx.maid.zone"], - "pixivViewer": ["https://pixiv.pictures"], - "fandom": { - "enabled": true, - "unsupportedUrls": "bypass", - "instance": "public", - "frontend": "breezeWiki", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "breezeWiki": [ - "https://breezewiki.com", - "https://breezewiki.pussthecat.org", - "https://antifandom.com", - "https://bw.artemislena.eu", - "https://breeze.hostux.net", - "https://z.opnxng.com", - "https://breeze.nohost.network", - "https://breeze.mint.lgbt", - "https://breezewiki.catsarch.com", - "https://breezewiki.hyperreal.coffee", - "https://breezewiki.4o1x5.dev", - "https://fandom.reallyaweso.me", - "https://breezewiki.nadeko.net", - "https://fan.blitzw.in" - ], - "imgur": { - "enabled": true, - "redirectType": "main_frame", - "unsupportedUrls": "bypass", - "frontend": "rimgo", - "instance": "public", - "redirectOnlyInIncognito": false - }, - "rimgo": [ - "https://rimgo.pussthecat.org", - "https://ri.nadeko.net", - "https://rimgo.in.projectsegfau.lt", - "https://rimgo.us.projectsegfau.lt", - "https://rimgo.eu.projectsegfau.lt", - "https://rimgo.catsarch.com", - "https://rimgo.nohost.network", - "https://r.opnxng.com", - "https://imgur.fsky.io", - "https://rimgo.astrial.org", - "https://rimgo.canine.tools", - "https://rimgo.thebunny.zone", - "https://imgur.nerdvpn.de", - "https://rg.kuuro.net" - ], - "pinterest": { - "enabled": true, - "unsupportedUrls": "bypass", - "redirectType": "main_frame", - "frontend": "binternet", - "redirectOnlyInIncognito": false - }, - "binternet": [ - "https://bn.bloat.cat", - "https://binternet.darkness.services", - "https://binternet.revvy.de", - "https://binternet.lunar.icu", - "https://binternet.privacyredirect.com", - "https://binternet.4o1x5.dev", - "https://binternet.ducks.party", - "https://bn.opnxng.com", - "https://pin.blitzw.in", - "https://bn.kuuro.net" - ], - "painterest": ["https://pt.bloat.cat"], - "soundcloud": { - "enabled": true, - "redirectType": "main_frame", - "frontend": "soundcloak", - "unsupportedUrls": "bypass", - "redirectOnlyInIncognito": false - }, - "tuboSoundcloud": ["https://tubo.media"], - "soundcloak": [ - "https://sc.opnxng.com", - "https://sc.bloat.cat", - "https://sc.maid.zone", - "https://sc.kuuro.net", - "https://sc.tijn.dev", - "https://sc2.bloat.cat" - ], - "bandcamp": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "tent", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "tent": [ - "https://tent.sny.sh", - "https://tent.bloat.cat", - "https://tent.nbh.ax", - "https://tent.lab8.cz", - "https://tent.deep-swarm.xyz", - "https://tn.vern.cc", - "https://tn.maid.zone", - "https://tn.dc09.ru" - ], - "tekstowo": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "tekstoLibre", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "tekstoLibre": ["https://davilarek.github.io/TekstoLibre"], - "genius": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "dumb", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "dumb": [ - "https://dumb.lunar.icu", - "https://dumb.ducks.party", - "https://dumb.hyperreal.coffee", - "https://db.kuuro.net", - "https://lyr.dc09.ru" - ], - "intellectual": ["https://intellectual.insprill.net"], - "medium": { - "frontend": "scribe", - "enabled": true, - "unsupportedUrls": "bypass", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "scribe": [ - "https://scribe.rip", - "https://scribe.privacyredirect.com", - "https://scribe.r4fo.com", - "https://m.opnxng.com", - "https://scribe.nixnet.services" - ], - "libMedium": ["https://md.vern.cc"], - "small": ["https://small.bloat.cat"], - "freedium": ["https://freedium.cfd"], - "quora": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "quetre", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "quetre": [ - "https://quetre.iket.me", - "https://quetre.pussthecat.org", - "https://q.opnxng.com", - "https://quetre.lunar.icu", - "https://ask.habedieeh.re", - "https://quetre.ducks.party", - "https://quetre.drgns.space", - "https://qt.bloat.cat", - "https://quetre.franklyflawless.org", - "https://quetre.privacyredirect.com" - ], - "github": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "gothub", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "gothub": [], - "gitlab": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "laboratory", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "laboratory": ["https://lab.vern.cc"], - "stackOverflow": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "anonymousOverflow", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "anonymousOverflow": [ - "https://code.whatever.social", - "https://overflow.hostux.net", - "https://overflow.adminforge.de", - "https://overflow.lunar.icu", - "https://ao.owo.si", - "https://anonoverflow.frontendfriendly.xyz", - "https://ao.bloat.cat", - "https://anonoverflow.hyperreal.coffee", - "https://exchange.seitan-ayoub.lol" - ], - "reuters": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "neuters", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "neuters": ["https://neuters.de"], - "snopes": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "suds", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "suds": ["https://sd.vern.cc"], - "ifunny": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "unfunny", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "unfunny": ["https://uf.vern.cc"], - "tenor": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "soprano", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "soprano": ["https://sp.vern.cc"], - "knowyourmeme": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "meme", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "meme": ["https://mm.vern.cc"], - "urbanDictionary": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "ruralDictionary", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "ruralDictionary": [ - "https://ruraldictionary.franklyflawless.org", - "https://rd.thirtysix.pw", - "https://rd.bloat.cat" - ], - "goodreads": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "biblioReads", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "biblioReads": [ - "https://biblioreads.lunar.icu", - "https://biblioreads.eu.org", - "https://read.seitan-ayoub.lol", - "https://biblioreads.ducks.party", - "https://biblioreads.privacyredirect.com", - "https://br.bloat.cat", - "https://biblioreads.franklyflawless.org" - ], - "wolframAlpha": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "wolfreeAlpha", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "wolfreeAlpha": [], - "instructables": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "structables", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "structables": ["https://structables.private.coffee"], - "destructables": ["https://ds.vern.cc"], - "indestructables": ["https://indestructables.private.coffee"], - "wikipedia": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "wikiless", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "wikiless": [], - "wikimore": ["https://wikimore.private.coffee"], - "waybackMachine": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "waybackClassic", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "waybackClassic": ["https://wayback-classic.net"], - "pastebin": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "pasted", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "pasted": ["https://pasted.drakeerv.com"], - "search": { - "enabled": false, - "frontend": "searxng", - "unsupportedUrls": "bypass", - "redirectGoogle": false, - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "searxng": ["https://nyc1.sx.ggtyler.dev"], - "searx": [], - "whoogle": [], - "librey": [], - "4get": ["https://4get.ca"], - "websurfx": ["https://alamin655-spacex.hf.space"], - "translate": { - "enabled": true, - "frontend": "simplyTranslate", - "unsupportedUrls": "bypass", - "instance": "public", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "simplyTranslate": [ - "https://simplytranslate.org", - "https://simplytranslate.ducks.party", - "https://st.adast.dk" - ], - "mozhi": ["https://mozhi.aryak.me"], - "libreTranslate": ["https://libretranslate.com"], - "translite": ["https://tl.bloat.cat"], - "maps": { - "redirectType": "main_frame", - "enabled": false, - "frontend": "osm", - "unsupportedUrls": "bypass", - "redirectOnlyInIncognito": false - }, - "osm": ["https://www.openstreetmap.org"], - "meet": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "jitsi", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "jitsi": [], - "sendFiles": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "send", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "send": [], - "textStorage": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "privateBin", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "privateBin": [], - "pasty": ["https://pasty.lus.pm"], - "office": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "cryptPad", - "redirectOnlyInIncognito": false - }, - "cryptPad": ["https://cryptpad.org"], - "ultimateGuitar": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "freetar", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "freetar": ["https://freetar.de"], - "baiduTieba": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "ratAintTieba", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "ratAintTieba": ["https://rat.fis.land"], - "threads": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "shoelace", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "shoelace": ["https://shoelace.mint.lgbt"], - "deviantArt": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "skunkyArt", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "skunkyArt": [ - "https://skunky.bloat.cat", - "https://da.opnxng.com", - "https://sa.dc09.ru", - "https://art.bloat.cat", - "https://skunkyart.lumaeris.com" - ], - "geeksForGeeks": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "nerdsForNerds", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "nerdsForNerds": ["https://nn.vern.cc"], - "ducksForDucks": ["https://ducksforducks.private.coffee"], - "coub": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "koub", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "koub": ["https://koub2.bloat.cat", "https://koub.bloat.cat"], - "chefkoch": { - "enabled": true, - "unsupportedUrls": "bypass", - "frontend": "gocook", - "redirectOnlyInIncognito": false, - "redirectType": "main_frame" - }, - "gocook": ["https://cook.adminforge.de"], - "exceptions": { - "url": [], - "regex": [] - }, - "theme": "detect", - "popupServices": [ - "youtube", - "reddit", - "translate", - "maps", - "stackOverflow", - "youtubeMusic", - "twitter", - "bluesky", - "pinterest" - ], - "fetchInstances": "github", - "redirectOnlyInIncognito": false, - "troddit": ["https://www.troddit.com"], - "ultimateTab": ["https://ultimate-tab.com"] - } -} diff --git a/home/guz-lite/style.nix b/home/guz-lite/style.nix deleted file mode 100644 index 5ff57c7..0000000 --- a/home/guz-lite/style.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - # Rofi themes - home.file."${config.xdg.configHome}/rofi/launcher.rasi".source = pkgs.fetchurl { - url = "https://raw.githubusercontent.com/adi1090x/rofi/2e0efe5054ac7eb502a585dd6b3575a65b80ce72/files/launchers/type-1/style-3.rasi"; - hash = "sha256-6Zj1mxRDkARdIWiin3J7BPp/vqfktvidUK/yqLN+k1o="; - }; - home.file."${config.xdg.configHome}/rofi/shared/colors.rasi".text = with config.lib.stylix.colors; '' - * { - background: #${base02}FF; - background-alt: #${base01}FF; - foreground: #${base05}FF; - selected: #${base02}FF; - active: #${base00}FF; - urgent: #${base08}FF; - } - ''; - home.file."${config.xdg.configHome}/rofi/shared/fonts.rasi".text = '' - * { - font: "${config.stylix.fonts.sansSerif.name}"; - } - ''; - - # Fonts - fonts.fontconfig.enable = true; - fonts.fontconfig.defaultFonts = with config.stylix.fonts; { - sansSerif = [sansSerif.name]; - serif = [serif.name]; - monospace = [monospace.name]; - emoji = [emoji.name]; - }; - stylix.fonts = { - monospace = { - package = pkgs.nerd-fonts.fira-code; - name = "FiraCode Nerd Font"; - }; - }; -} diff --git a/home/guz-lite/waybar.css b/home/guz-lite/waybar.css deleted file mode 100644 index c0bf73c..0000000 --- a/home/guz-lite/waybar.css +++ /dev/null @@ -1,58 +0,0 @@ -* { - border: none; - border-radius: 4px; - /* `ttf-font-awesome` is required to be installed for icons */ - /* font-family: "Roboto Mono Medium", Helvetica, Arial, sans-serif; */ - - /* adjust font-size value to your liking: */ - font-size: 0.7rem; - font-weight: bold; - - min-height: 0; -} - -window#waybar, -tooltip { - background-color: @base01; - /* background-color: red; */ - /* box-shadow: 0px -10px 10px #00000055; */ - box-shadow: 0px -10px 10px #00ff0055; - /* border-bottom: 3px solid rgba(100, 114, 125, 0.5); */ - color: @base05; - /* transition-property: background-color; */ - /* transition-duration: .5s; */ - /* border-radius: 0; */ - padding: 0 10px; -} - -#clock { - background-color: transparent; -} - -.modules-left, -.modules-right { - padding-right: 10px; - padding-left: 10px; -} - -.modules-left #workspaces, -.modules-right #workspaces { - padding: 0; -} - -.modules-left #workspaces button, -.modules-right #workspaces button { - padding-left: 0; - padding-right: 0; - - /* Align icons */ - padding-top: 6px; -} - -.modules-left #workspaces button.active, -.modules-right #workspaces button.active { - border-bottom-style: none; - - /* Align icons */ - padding-top: 3px; -} diff --git a/home/guz-lite/waybar_1.css b/home/guz-lite/waybar_1.css deleted file mode 100644 index 3649bec..0000000 --- a/home/guz-lite/waybar_1.css +++ /dev/null @@ -1,272 +0,0 @@ -/* ================================ */ -/* Common CSS */ -/* ================================ */ -* { - /* `otf-font-awesome` is required to be installed for icons */ - padding: 0; - border-radius: 0; - min-height: 0; - margin: 0; - border: none; - text-shadow: none; - transition: none; - box-shadow: none; -} - -/* the whole window */ -window#waybar { - background: #3c3835; - color: #fff4d2; - padding-right: 9px; - padding-left: 5px; - margin: 0; - border-radius: 19px; -} - -tooltip { - background: rgba(255, 244, 210, 0.8); - color: #3c3835; - border: 2px solid #3c3835; - border-radius: 5px; -} - -.modules-left { - padding-left: 5px; -} - -.modules-right { - padding-right: 5px; -} - -#custom-rofi, -#workspaces button, -#workspaces button:hover, -#workspaces button.visible, -#workspaces button.visible:hover, -#workspaces button.active, -#workspaces button.active:hover, -#workspaces button.urgent, -#window, -#tray, -#disk, -#cpu, -#temperature, -#temperature.critical, -#backlight, -#custom-memory, -#pulseaudio, -#pulseaudio.muted, -#battery, -#battery.critical, -#battery.warning, -#clock { - font-family: JetBrainsMono Nerd Font Propo; - font-size: 14px; - font-weight: 400; - color: #202020; - background: #202020; - border-radius: 2px; -} - -#window, -#tray, -#disk, -#cpu, -#temperature, -#temperature.critical, -#backlight, -#custom-memory, -#pulseaudio, -#pulseaudio.muted, -#battery, -#battery.critical, -#battery.warning, -#clock { - padding-right: 4px; - margin: 5px 0px; -} - -#custom-rofi { - /* border: 2px solid #458588; */ - /* border-radius: 5px; */ - background: #3c3835; - padding: 0 6px; - margin: 5px 0px; -} - -/* ================================ */ -/* workspaces module */ -/* ================================ */ -#workspaces { - margin: 0px; -} - -#workspaces button { - color: #fff4d2; - background: #3c3835; - /* border: 2px solid #fff4d2; */ - min-width: 25px; - padding: 0 4px; - margin: 5px 3px; -} - -#workspaces button:hover { - background: #3c3835; - border: 2px solid #b16286; - border-radius: 12px; -} - -#workspaces button.visible { - border: 2px solid #689d6a; - border-radius: 12px; - background: #3c3835; -} - -#workspaces button.visible:hover { - border: 2px solid #689d6a; - border-radius: 12px; - background: #3c3835; -} - -#workspaces button.active { - border: 2px solid #689d6a; - border-radius: 12px; - background: #3c3835; -} - -#workspaces button.active:hover { - border: 2px solid #689d6a; - border-radius: 12px; - background: #3c3835; -} - -#workspaces button.urgent { - border: 2px solid #cc241d; - border-radius: 12px; - background: #3c3835; -} - -/* ================================ */ -/* window */ -/* ================================ */ - -#window { - color: #a89884; - background: #3c3835; - /* border: 2px solid #d3869b; */ -} - -/* ================================ */ -/* tray */ -/* ================================ */ - -#tray { - /* padding: 0 6px; */ - background: #3c3835; -} - -/* ================================ */ -/* disk */ -/* ================================ */ - -#disk { - color: #ea6962; - border: 2px solid #ea6962; -} - -/* ================================ */ -/* cpu */ -/* ================================ */ -#cpu { - color: #e78a4e; - border: 2px solid #e78a4e; -} - -/* ================================ */ -/* temp */ -/* ================================ */ -#temperature { - color: #d8a657; - border: 2px solid #d8a657; -} - -#temperature.critical { - color: #cc241d; - border: 2px solid #cc241d; -} - -/* ================================ */ -/* backlight */ -/* ================================ */ -#custom-backlight { - color: #f6c657; - background: #3c3835; -} - -/* ================================ */ -/* memory */ -/* ================================ */ -#custom-memory { - color: #458588; - border: 2px solid #458588; -} - -/* ================================ */ -/* pulseaudio */ -/* ================================ */ -#pulseaudio { - color: #fbf1c7; - background: #3c3835; -} - -#pulseaudio.muted { - color: #ea6962; - background: #3c3835; -} - -/* ================================ */ -/* battery */ -/* ================================ */ -#battery { - color: #fbf1c7; - background: #3c3835; -} - -#battery.critical { - color: #cc241d; - background: #3c3835; -} - -#battery.warning { - color: #e78a4e; - background: #3c3835; -} - -/* ================================ */ -/* clock */ -/* ================================ */ -#clock.time { - color: #fbf1c7; - background: #3c3835; -} - -#clock.date { - color: #fbf1c7; - background: #3c3835; -} - -#custom-notification { - color: #fbf1c7; - font-size: 14px; - background: #3c3835; - padding: 2px 2px; -} - -#custom-player { - color: #282828; - border: 2px solid #3c3835; - border-radius: 21px; - background: #fbf1c7; - padding-left: 9px; - padding-right: 9px; -} diff --git a/home/guz-lite/wayland_1.json b/home/guz-lite/wayland_1.json deleted file mode 100644 index a8f7a1c..0000000 --- a/home/guz-lite/wayland_1.json +++ /dev/null @@ -1,221 +0,0 @@ -{ - "layer": "top", - "position": "top", - "height": 20, - "spacing": 5, - "margin-top": 3, - "margin-right": 3, - "margin-left": 3, - "modules-left": [ - "custom/rofi", - "hyprland/workspaces", - "custom/paddc", - "custom/prefix", - "hyprland/window", - "custom/paddc", - "tray" - ], - "modules-center": [ - "custom/player" - ], - "modules-right": [ - "pulseaudio", - "custom/backlight", - "hyprland/language", - "custom/paddc", - "custom/paddc", - "bluetooth", - "battery", - "custom/paddc", - "custom/notification", - "custom/paddc", - "custom/wifi", - "custom/paddc", - "clock#date", - "custom/paddc", - "clock#time", - "custom/paddc" - ], - "custom/rofi": { - "format": "󰮯", - "on-click": "rofi -show drun", - "on-click-right": "wlogout", - "escape": true, - "tooltip": false - }, - "hyprland/workspaces": { - "disable-scroll": true, - "active-only": false, - "all-outputs": true, - "warp-on-scroll": false, - "format": "{icon}", - "format-icons": { - "1": "󰊠", - "2": "󰊠", - "3": "󰊠", - "4": "󰊠", - "5": "󰊠", - "6": "󰊠", - "7": "󰊠", - "default": "󰊠" - }, - "persistent-workspaces": { - "*": 5 - } - }, - "hyprland/window": { - "format": "{class}", - "max-length": 20, - "rewrite": { - "": " hyprland", - "~": " terminal", - "com.mitchellh.ghostty": "ghostty" - } - }, - "tray": { - "icon-size": 15, - "spacing": 8 - }, - "pulseaudio": { - "format": "{volume}%", - "format-muted": "{volume}%", - "format-bluetooth": " 󰂰 {volume}%", - "format-bluetooth-muted": " 󰂲 {volume}%", - "format-source": "{volume}% ", - "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle", - "tooltip": false, - "max-volume": 130 - }, - "battery#bat2": { - "bat": "BAT2" - }, - "battery": { - "interval": 1, - "states": { - "good": 99, - "warning": 30, - "critical": 20 - }, - "format-icons": [ - " ", - " ", - " ", - " ", - " " - ], - "format": " {icon}{capacity}%", - "format-critical": " {icon}{capacity}%", - "format-warning": " {icon}{capacity}%", - "format-full": " {icon}{capacity}%", - "format-charging": "{capacity}%", - "format-charging-warning": "{capacity}%", - "format-charging-critical": "{capacity}%", - "format-plugged": "{capacity}%", - "tooltip": false - }, - "clock#date": { - "format": "󰃭 {:%a %d %b}", - "tooltip-format": "{calendar}", - "calendar": { - "mode": "month", - "mode-mon-col": 6, - "on-click-right": "mode", - "format": { - "months": "{}", - "weekdays": "{}", - "today": "{}" - } - }, - "actions": { - "on-click": "mode", - "on-click-right": "mode" - }, - "min-length": 8, - "max-length": 20 - }, - "clock#time": { - "format": "󱑂 {:%I:%M %p}", - "tooltip": false, - "min-length": 8, - "max-length": 12 - }, - "custom/backlight": { - "exec": "~/.config/waybar/scripts/brightness-control.sh", - "return-type": "json", - "format": "{}", - "tooltip": true, - "on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i", - "on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d", - "interval": 1, - "min-length": 6, - "max-length": 6 - }, - "custom/paddc": { - "format": " ", - "tooltip": false - }, - "custom/prefix": { - "format": " >>", - "tooltip": false - }, - "hyprland/language": { - "format": "{}", - "format-en": "US" - }, - "custom/wifi": { - "exec": "~/.config/waybar/scripts/wifi-status.sh", - "return-type": "json", - "format": "{}", - "tooltip": true, - "on-click": "~/.config/waybar/scripts/wifi-menu.sh", - "interval": 1, - "min-length": 1, - "max-length": 12 - }, - "bluetooth": { - "format": "󰂰 ", - "format-disabled": "󰂲 ", - "format-connected": "󰂱 ", - "format-connected-battery": "󰂱 ", - "tooltip-format": "{num_connections} connected", - "tooltip-format-disabled": "Bluetooth Disabled", - "tooltip-format-connected": "{num_connections} connected\n{device_enumerate}", - "tooltip-format-enumerate-connected": "{device_alias}", - "tooltip-format-enumerate-connected-battery": "{device_alias}: {device_battery_percentage}%", - "on-click": "~/.config/waybar/scripts/bluetooth-menu.sh", - "interval": 1, - "min-length": 1, - "max-length": 10 - }, - "custom/notification": { - "tooltip": false, - "rotate": 0, - "format": "{icon}", - "format-icons": { - "notification": "󱅫 ", - "none": " ", - "dnd-notification": "󰂛 ", - "dnd-none": "󰂛 ", - "inhibited-notification": " ", - "inhibited-none": " ", - "dnd-inhibited-notification": "󰂛 ", - "dnd-inhibited-none": "󰂛 " - }, - "return-type": "json", - "exec-if": "which swaync-client", - "exec": "swaync-client -swb", - "on-click-right": "swaync-client -d -sw", - "on-click": "swaync-client -t -sw", - "escape": true - }, - "custom/player": { - "exec": "~/.config/waybar/scripts/player.sh", - "format": "{}", - "interval": 1, - "max-length": 35, - "tooltip": false, - "on-click-right": "playerctl next", - "on-click-left": "playerctl previous", - "on-click": "playerctl play-pause" - } -} diff --git a/home/guz/apps.nix b/home/guz/apps.nix deleted file mode 100644 index 59c0ef3..0000000 --- a/home/guz/apps.nix +++ /dev/null @@ -1,141 +0,0 @@ -{ - config, - lib, - pkgs, - pkgs-unstable, - self, - ... -}: { - services.flatpak.packages = [ - # Management - "com.bitwarden.desktop" - "com.rustdesk.RustDesk" - - # Services - "app.moosync.moosync" - - # Games - # "org.prismlauncher.PrismLauncher" - # "net.pcsx2.PCSX2" Currently borked, mising qt plugin/platform - "org.vinegarhq.Sober" - - # Office - "org.libreoffice.LibreOffice" - - # Media creation - "com.nextcloud.desktopclient.nextcloud" - "fr.natron.Natron" - "org.beeref.BeeRef" - "com.github.vikdevelop.photopea_app" - "org.darktable.Darktable" - "org.inkscape.Inkscape" - # "org.kde.krita" Currently borked, mising qt plugin/platform - "com.obsproject.Studio" - "org.kde.kdenlive" - # "fm.reaper.Reaper" - - # 3D modeling - "net.blockbench.Blockbench" - ]; - services.flatpak.overrides = { - "net.blockbench.Blockbench" = {Context.sockets = ["x11"];}; - "com.bitwarden.desktop" = {Context.sockets = ["x11"];}; - "fr.natron.Natron" = {Context.sockets = ["x11"];}; - "com.github.vikdevelop.photopea_app" = {Context.sockets = ["x11"];}; - "org.prismlauncher.PrismLauncher" = {Context.sockets = ["x11"];}; - "org.vinegarhq.Sober" = {Context.device = "input";}; - "dev.vencord.Vesktop" = {Context.sockets = ["x11"];}; - }; - - services.kdeconnect.enable = true; - services.kdeconnect.indicator = true; - - qt.enable = true; - home.packages = - (with pkgs; [ - - # Games - lutris - winePackages.waylandFull - pcsx2 - prismlauncher - mono # For city skylines mods - - # Social - webcord - - # Keyboard - vial - - pkgs-unstable.davinci-resolve - - blender - (callPackage ({ - pkgs, - makeWrapper, - symlinkJoin, - ... - }: - symlinkJoin { - inherit (pkgs.godot) name pname meta man; - paths = [pkgs.godot]; - nativeBuildInputs = [makeWrapper]; - postBuild = '' - wrapProgram $out/bin/godot \ - --add-flags '--single-window' - ''; - }) {}) - - android-studio - android-tools - androidenv.androidPkgs.androidsdk - androidenv.androidPkgs.emulator - androidenv.androidPkgs.ndk-bundle - ]) - ++ (with self.packages.${pkgs.system}; [ - davincify - audacity4 - untrack - ]); - - home.file = let - templates = pkgs.godot-export-templates-bin; - name = builtins.replaceStrings ["-"] ["."] templates.version; - in { - ".bin/blender" = { - source = lib.getExe pkgs.blender; - }; - ".local/share/godot/export_templates/${name}" = { - source = "${templates}/share/godot/export_templates/${name}"; - }; - }; - - neovim.integrations.godot.enable = true; - - xdg.desktopEntries."davinci-resolve-zsh" = rec { - name = "Davinci Resolve (Zsh)"; - genericName = name; - mimeType = ["application/x-resolveproj"]; - # INFO: For some reason this works and removes the "Unsupported GPU" error - exec = "${lib.getExe config.programs.zsh.package} -c ${lib.getExe pkgs-unstable.davinci-resolve}"; - }; - - wayland.windowManager.hyprland.settings = { - windowrulev2 = [ - # Godot - "tile,initialTitle:^(Godot)$,initialClass:^(Godot)$" # Main editor tiled - # Everything else float - "float,title:^((.*)(DEBUG)),initialClass:^(Godot)$,initialTitle:^(.*)(DEBUG)(.*)$,class:^(Godot)$" - ]; - }; - - services.easyeffects.enable = true; - - # TODO: Remove this - programs.distrobox.enable = true; - programs.distrobox.containers = { - "davincibox" = { - image = "ghcr.io/zelikos/davincibox-opencl:latest"; - }; - }; -} diff --git a/home/guz/browser.nix b/home/guz/browser.nix deleted file mode 100644 index 73182ad..0000000 --- a/home/guz/browser.nix +++ /dev/null @@ -1,19 +0,0 @@ -{config, ...}: { - programs.qutebrowser.profiles = let - art = config.programs.qutebrowser.profiles."art"; - work = config.programs.qutebrowser.profiles."work"; - in { - # HACK: `inherit` is being used to prevent infinite recursion - "art-2" = {inherit (art) settings searchEngines;}; - "art-3" = {inherit (art) settings searchEngines;}; - "work-2" = {inherit (work) settings searchEngines;}; - "work-3" = {inherit (work) settings searchEngines;}; - }; - - # The *state version* indicates which default - # settings are in effect and will therefore help avoid breaking - # program configurations. Switching to a higher state version - # typically requires performing some manual steps, such as data - # conversion or moving files. - home.stateVersion = "24.11"; -} diff --git a/home/guz/configuration.nix b/home/guz/configuration.nix deleted file mode 100644 index 176341e..0000000 --- a/home/guz/configuration.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ - lib, - pkgs, - ... -}: { - # Home-manager configurations for when it is used as a NixOS module. - - imports = [ - ../guz-lite/configuration.nix - ]; - - home-manager.users.guz = import ./default.nix; - - # Steam - programs.steam.enable = true; - programs.steam.gamescopeSession.enable = true; - programs.steam.extraCompatPackages = with pkgs; [ - proton-ge-bin - ]; - - # Backup environment - services.desktopManager.gnome.enable = true; - - programs.java.enable = true; - - virtualisation.podman.enable = true; - - # Xbox Controller driver - hardware.xone.enable = true; - hardware.xpad-noone.enable = lib.mkForce false; # Build failure https://github.com/NixOS/nixpkgs/issues/467803 - - # OpenTabletDriver - hardware.opentabletdriver.enable = true; - services.udev.extraRules = '' - KERNEL=="hidraw", SUBSYSTEM=="hidraw", MODE="0660", GROUP="plugdev" - ''; - - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ - "davinci-resolve" - "reaper" - "steam" - "steam-unwrapped" - "xow_dongle-firmware" - ]; - - nixpkgs.config.android_sdk.accept_license = true; -} diff --git a/home/guz/default.nix b/home/guz/default.nix deleted file mode 100644 index 16e5683..0000000 --- a/home/guz/default.nix +++ /dev/null @@ -1,19 +0,0 @@ -{...}: { - home.username = "guz"; - home.homeDirectory = "/home/guz"; - - imports = [ - ../guz-lite/default.nix - - ./apps.nix - ./browser.nix - ./media.nix - ]; - - # The *state version* indicates which default - # settings are in effect and will therefore help avoid breaking - # program configurations. Switching to a higher state version - # typically requires performing some manual steps, such as data - # conversion or moving files. - home.stateVersion = "24.11"; -} diff --git a/home/guz/media.nix b/home/guz/media.nix deleted file mode 100644 index 06526f4..0000000 --- a/home/guz/media.nix +++ /dev/null @@ -1,111 +0,0 @@ -{ - lib, - osConfig, - pkgs, - ... -}: { - home.packages = with pkgs; [ - exiftool - ffmpeg - krita - reaper - ]; - - xdg.configFile."OpenTabletDriver/settings.json" = lib.mkIf osConfig.hardware.opentabletdriver.enable { - force = true; - text = builtins.toJSON { - Profiles = let - mkBinding = k: { - Path = "OpenTabletDriver.Desktop.Binding.${ - if lib.hasInfix "+" k - then "MultiKeyBinding" - else "KeyBinding" - }"; - Settings = [ - { - Property = - if lib.hasInfix "+" k - then "Keys" - else "Key"; - Value = k; - } - ]; - Enable = true; - }; - in [ - { - Tablet = "Huion HS610"; - OutputMode.Path = "OpenTabletDriver.Desktop.Output.LinuxArtistMode"; - OutputMode.Settings = []; - OutputMode.Enable = true; - Filters = []; - AbsoluteModeSettings.Display = { - Width = 1720.0; - Height = 1080.0; - X = 1280.0; - Y = 540.0; - Rotation = 0.0; - }; - AbsoluteModeSettings.Tablet = { - Width = 254.0; - Height = 158.75; - X = 127.0; - Y = 79.375; - Rotation = 0; - }; - AbsoluteModeSettings.EnableClipping = true; - AbsoluteModeSettings. EnableAreaLimiting = false; - AbsoluteModeSettings. LockAspectRatio = false; - RelativeModeSettings = { - XSensitivity = 10.0; - YSensitivity = 10.0; - RelativeRotation = 0.0; - RelativeResetDelay = "00:00:00.1000000"; - }; - Bindings.TipActivationThreshold = 1.0; - Bindings.TipButton = { - Path = "OpenTabletDriver.Desktop.Binding.MouseBinding"; - Settings = [ - { - Property = "Button"; - Value = "Left"; - } - ]; - }; - Bindings.EraserActivationThreshold = 1.0; - Bindings.EraserButton = null; - Bindings.PenButtons = [ - (mkBinding "Space") - (mkBinding "Control+K") - ]; - Bindings.AuxButtons = [ - null - null - null - null - (mkBinding "D5") - null - (mkBinding "LeftControl") - (mkBinding "LeftShift") - (mkBinding "Control+Z") - (mkBinding "Control+Shift+Z") - (mkBinding "B") - (mkBinding "E") - ]; - Bindings.MouseButtons = []; - Bindings.MouseScrollUp = null; - Bindings.MouseScrollDown = null; - } - ]; - LockUsableAreaDisplay = true; - LockUsableAreaTablet = true; - Tools = []; - }; - }; - - # Easier access to krita - home.file.".bin/ffmpeg" = { - executable = true; - source = lib.getExe pkgs.ffmpeg; - }; -} diff --git a/home/terminal/browser.nix b/home/terminal/browser.nix index 31af0be..28f1c5a 100644 --- a/home/terminal/browser.nix +++ b/home/terminal/browser.nix @@ -1,13 +1,13 @@ { config, + inputs, lib, osConfig, pkgs, - self, ... }: { imports = [ - self.homeManagerModules.zen-browser + inputs.zen-browser.homeModules.twilight ]; xdg.mimeApps.defaultApplications = with lib; @@ -214,24 +214,24 @@ then v.Value else v) settings; - shortcuts = { - "key_search" = {key = "";}; - "key_search2" = {key = "";}; - "zen-workspace-forward" = { - key = "j"; - modifiers = { - control = true; - }; - action = "cmd_zenWorkspaceForward"; - }; - "zen-workspace-backward" = { - key = "k"; - modifiers = { - control = true; - }; - action = "cmd_zenWorkspaceBackward"; - }; - }; + # shortcuts = { + # "key_search" = {key = "";}; + # "key_search2" = {key = "";}; + # "zen-workspace-forward" = { + # key = "j"; + # modifiers = { + # control = true; + # }; + # action = "cmd_zenWorkspaceForward"; + # }; + # "zen-workspace-backward" = { + # key = "k"; + # modifiers = { + # control = true; + # }; + # action = "cmd_zenWorkspaceBackward"; + # }; + # }; spacesForce = true; spaces = let containers = config.programs.zen-browser.profiles."default".containers; diff --git a/home/terminal/configuration.nix b/home/terminal/configuration.nix index 730c815..f80c391 100644 --- a/home/terminal/configuration.nix +++ b/home/terminal/configuration.nix @@ -18,10 +18,12 @@ users."guz" = ./home.nix; }; + # Users users.users."guz" = { extraGroups = ["wheel" "guz"]; isNormalUser = true; - hashedPasswordFile = builtins.toString config.sops.secrets."guz/password".path; + password = "1313"; + # hashedPasswordFile = builtins.toString config.sops.secrets."guz/password".path; shell = self.packages.${pkgs.stdenv.hostPlatform.system}.devkit.zsh; }; users.groups."guz" = {}; @@ -29,14 +31,10 @@ # Shell programs.zsh.enable = true; + # SDDM (Display Manager) services.displayManager.sddm = { enable = true; - extraPackages = with pkgs; [ - kdePackages.qtmultimedia - kdePackages.qtsvg - kdePackages.qtvirtualkeyboard - ]; - theme = "${pkgs.sddm-astronaut.override {embeddedTheme = "hyprland_kath";}}/share/sddm/themes/sddm-astronaut-theme"; + theme = "${pkgs.sddm-sugar-dark.override {}}/share/sddm/themes/sugar-dark"; wayland.enable = true; }; diff --git a/home/worm/configuration.nix b/home/worm/configuration.nix deleted file mode 100644 index fda53e8..0000000 --- a/home/worm/configuration.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ - config, - lib, - inputs, - pkgs, - pkgs-unstable, - self, - ... -}: { - # Users - users.users."guz" = { - useDefaultShell = true; - isNormalUser = true; - - hashedPasswordFile = builtins.toString config.sops.secrets."guz/password".path; - extraGroups = ["wheel" "guz"]; - }; - users.groups."guz" = {}; - - # Home-manager configurations for when it is used as a NixOS module. - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.backupFileExtension = "bkp"; - home-manager.extraSpecialArgs = {inherit inputs self pkgs-unstable;}; - home-manager.users.guz = lib.mkDefault (import ./default.nix); - - programs.zsh.enable = true; - users.users."guz".shell = pkgs.zsh; - environment.pathsToLink = ["/share/zsh"]; - - # Podman (not necessarily user-specific, but environment specific) - virtualisation.podman.enable = true; - virtualisation.podman.dockerCompat = true; - virtualisation.podman.dockerSocket.enable = true; - virtualisation.podman.extraPackages = with pkgs; [ - podman-compose - ]; -} diff --git a/home/worm/default.nix b/home/worm/default.nix deleted file mode 100644 index 2b0e285..0000000 --- a/home/worm/default.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - self, - lib, - pkgs, - osConfig, - ... -}: { - home.username = "guz"; - home.homeDirectory = "/home/guz"; - - imports = [ - self.homeManagerModules.devkit - ]; - - devkit.enable = true; - devkit.git.wrapper = lib.mkIf (osConfig.context.job) (pkgs.writeShellScriptBin "git-envs" '' - source ${osConfig.sops.secrets."guz/git-envs".path} - "$@" - ''); - - # The *state version* indicates which default - # settings are in effect and will therefore help avoid breaking - # program configurations. Switching to a higher state version - # typically requires performing some manual steps, such as data - # conversion or moving files. - home.stateVersion = "24.11"; -} diff --git a/hosts/battleship-mk2/configuration.nix b/hosts/battleship-mk2/configuration.nix deleted file mode 100644 index 5abd34b..0000000 --- a/hosts/battleship-mk2/configuration.nix +++ /dev/null @@ -1,99 +0,0 @@ -{ - inputs, - lib, - pkgs, - ... -}: { - imports = [ - ../../secrets.nix - ./gpu.nix - - ./impermanence.nix - inputs.disko.nixosModules.disko - ./disko.nix - - ./hardware-configuration.nix - ]; - - # GnuPG keyring - programs.gnupg.agent = { - enable = true; - pinentryPackage = pkgs.pinentry-gtk2; - settings.default-cache-ttl = 3600 * 24; - }; - - # Yet another nix cli helper - programs.nh = { - enable = true; - clean.enable = true; - clean.extraArgs = "--keep-since 7d --keep 3"; - flake = "/home/guz/Projects/dot013-nix"; - }; - - # QMK keyboard - hardware.keyboard.qmk.enable = true; - services.udev.packages = with pkgs; [via vial]; - - # Pipewire - security.rtkit.enable = true; - services.pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - }; - - # Tailscale - services.tailscale.enable = true; - - # Networking - networking.hostName = "battleship"; - networking.networkmanager.enable = true; - - # Locale - time.timeZone = "America/Sao_Paulo"; - i18n.defaultLocale = "en_US.UTF-8"; - i18n.extraLocaleSettings = let - locale = "pt_BR.UTF-8"; - in { - LC_ADDRESS = locale; - LC_IDENTIFICATION = locale; - LC_MEASUREMENT = locale; - LC_MONETARY = locale; - LC_NAME = locale; - LC_NUMERIC = locale; - LC_PAPER = locale; - LC_TELEPHONE = locale; - LC_TIME = locale; - }; - - # Keyboard - services.xserver.xkb.layout = "br"; - console.keyMap = "br-abnt2"; - - security.polkit.enable = true; - - # Nix - nix.settings.experimental-features = ["nix-command" "flakes"]; - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ - "obsidian" - "steam" - "steam-unwrapped" - "via" - "vivaldi" - ]; - - # Bootloader - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - boot.kernelPackages = pkgs.linuxPackages_latest; - - # This value determines the NixOS release from which the default - # settings for stateful data, like file locations and database versions - # on your system were taken. It's perfectly fine and recommended to leave - # 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 = "25.11"; # Did you read the comment? -} diff --git a/hosts/battleship-mk2/hardware-configuration.nix b/hosts/battleship-mk2/hardware-configuration.nix deleted file mode 100644 index 86b60af..0000000 --- a/hosts/battleship-mk2/hardware-configuration.nix +++ /dev/null @@ -1,21 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ - config, - lib, - modulesPath, - ... -}: { - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "sd_mod"]; - boot.initrd.kernelModules = []; - boot.kernelModules = ["kvm-amd"]; - boot.extraModulePackages = []; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/battleship/configuration.nix b/hosts/battleship/configuration.nix index 0d5a776..c574abe 100644 --- a/hosts/battleship/configuration.nix +++ b/hosts/battleship/configuration.nix @@ -1,29 +1,111 @@ { + inputs, lib, pkgs, ... }: { imports = [ + ../../secrets.nix + ./gpu.nix + + ./impermanence.nix + inputs.disko.nixosModules.disko + ./disko.nix + ./hardware-configuration.nix - ./gpu-configuration.nix - ../../configuration.nix - - ./home.nix - - ./services.nix ]; - users.users."guz" = { - openssh.authorizedKeys.keyFiles = [ - ../../.ssh/guz-battleship.pub + # GnuPG keyring + programs.gnupg.agent = { + enable = true; + pinentryPackage = pkgs.pinentry-gtk2; + settings.default-cache-ttl = 3600 * 24; + }; + + # Yet another nix cli helper + programs.nh = { + enable = true; + clean.enable = true; + clean.extraArgs = "--keep-since 7d --keep 3"; + flake = "/home/guz/Projects/dot013-nix"; + }; + + # QMK keyboard + hardware.keyboard.qmk.enable = true; + services.udev.packages = with pkgs; [via vial]; + + # Pipewire + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + }; + + # Tailscale + services.tailscale.enable = true; + + # Networking + networking.hostName = "battleship"; + networking.networkmanager.enable = true; + + # Firewall + networking.firewall.enable = true; + networking.firewall.allowedUDPPorts = [53]; + networking.firewall.allowedTCPPorts = [80 433]; + + # SSH + services.openssh.enable = true; + services.openssh.settings = { + PasswordAuthentication = false; + PermitRootLogin = "forced-commands-only"; + }; + + # Locale + time.timeZone = "America/Sao_Paulo"; + i18n.defaultLocale = "en_US.UTF-8"; + i18n.extraLocaleSettings = let + locale = "pt_BR.UTF-8"; + in { + LC_ADDRESS = locale; + LC_IDENTIFICATION = locale; + LC_MEASUREMENT = locale; + LC_MONETARY = locale; + LC_NAME = locale; + LC_NUMERIC = locale; + LC_PAPER = locale; + LC_TELEPHONE = locale; + LC_TIME = locale; + }; + + # Keyboard + services.xserver.xkb.layout = "br"; + console.keyMap = "br-abnt2"; + + security.polkit.enable = true; + + # Nix + nix.settings.experimental-features = ["nix-command" "flakes"]; + nixpkgs.config.allowUnfreePredicate = pkg: + builtins.elem (lib.getName pkg) [ + "obsidian" + "steam" + "steam-unwrapped" + "via" + "vivaldi" ]; - }; - - # Network - networking = { - hostName = lib.mkForce "battleship"; - # nameservers = ["192.168.0.110"]; - }; + # Bootloader + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; boot.kernelPackages = pkgs.linuxPackages_latest; + + # This value determines the NixOS release from which the default + # settings for stateful data, like file locations and database versions + # on your system were taken. It's perfectly fine and recommended to leave + # 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 = "25.11"; # Did you read the comment? } diff --git a/hosts/battleship-mk2/disko.nix b/hosts/battleship/disko.nix similarity index 100% rename from hosts/battleship-mk2/disko.nix rename to hosts/battleship/disko.nix diff --git a/hosts/battleship/gpu-configuration.nix b/hosts/battleship/gpu-configuration.nix deleted file mode 100644 index 97163d8..0000000 --- a/hosts/battleship/gpu-configuration.nix +++ /dev/null @@ -1,37 +0,0 @@ -{pkgs, ...}: { - imports = []; - - boot.kernelModules = ["amdgpu"]; - boot.initrd.kernelModules = ["amdgpu"]; - - # services.xserver.enable = true; - services.xserver.videoDrivers = ["amdgpu"]; - - # Configuration for davinci resolve based on - # https://wiki.nixos.org/wiki/DaVinci_Resolve - environment.variables = { - RUSTICL_ENABLE = "radeonsi"; - ROC_ENABLE_PRE_VEGA = "1"; - }; - - environment.systemPackages = with pkgs; [ - mesa-demos - vulkan-tools - clinfo - ]; - - hardware.graphics.enable = true; - hardware.graphics.enable32Bit = true; - hardware.graphics.extraPackages = with pkgs; [ - mesa - libva - libvdpau-va-gl - vulkan-loader - vulkan-validation-layers - mesa.opencl - ]; - - systemd.tmpfiles.rules = [ - "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" - ]; -} diff --git a/hosts/battleship-mk2/gpu.nix b/hosts/battleship/gpu.nix similarity index 100% rename from hosts/battleship-mk2/gpu.nix rename to hosts/battleship/gpu.nix diff --git a/hosts/battleship/hardware-configuration.nix b/hosts/battleship/hardware-configuration.nix index 8f79a7e..86b60af 100644 --- a/hosts/battleship/hardware-configuration.nix +++ b/hosts/battleship/hardware-configuration.nix @@ -4,7 +4,6 @@ { config, lib, - pkgs, modulesPath, ... }: { @@ -12,33 +11,11 @@ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod"]; + boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "sd_mod"]; boot.initrd.kernelModules = []; boot.kernelModules = ["kvm-amd"]; boot.extraModulePackages = []; - fileSystems."/" = { - device = "/dev/disk/by-uuid/787210de-28e8-47a8-9481-b4563698ee35"; - fsType = "ext4"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/85F0-E176"; - fsType = "vfat"; - options = ["fmask=0077" "dmask=0077"]; - }; - - swapDevices = [ - {device = "/dev/disk/by-uuid/040b66b0-874b-41e0-b13b-4e293560ec50";} - ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp6s0.useDHCP = lib.mkDefault true; - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; } diff --git a/hosts/battleship/hardware-configuration.nix.bkp b/hosts/battleship/hardware-configuration.nix.bkp deleted file mode 100644 index 780a7a9..0000000 --- a/hosts/battleship/hardware-configuration.nix.bkp +++ /dev/null @@ -1,40 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/586b0998-30b6-4cc8-be41-1b8b4f77b3b0"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1D67-5492"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = - [ { device = "/dev/disk/by-uuid/3b5ff4ea-39dc-4882-ba6d-a5864fc5ec39"; } - ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp6s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/battleship/home.nix b/hosts/battleship/home.nix deleted file mode 100644 index 7138f22..0000000 --- a/hosts/battleship/home.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - # Host specific overrides of the root home - home-manager.users.guz = let - cfg = config.home-manager.users.guz; - hyprcfg = cfg.wayland.windowManager.hyprland.settings; - in { - wayland.windowManager.hyprland.settings = { - "$MONITOR-1" = lib.mkForce "HDMI-A-1"; - "$MONITOR-2" = lib.mkForce "DVI-D-1"; - }; - }; -} diff --git a/hosts/battleship-mk2/impermanence.nix b/hosts/battleship/impermanence.nix similarity index 100% rename from hosts/battleship-mk2/impermanence.nix rename to hosts/battleship/impermanence.nix diff --git a/hosts/battleship/services.nix b/hosts/battleship/services.nix deleted file mode 100644 index 233d8cd..0000000 --- a/hosts/battleship/services.nix +++ /dev/null @@ -1,75 +0,0 @@ -{ - pkgs, - pkgs-unstable, - config, - inputs, - lib, - ... -}: { - imports = [ - inputs.nix-minecraft.nixosModules.minecraft-servers - ]; - - nixpkgs.overlays = [ - inputs.nix-minecraft.overlay - ]; - nixpkgs.config.allowUnfree = true; - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ - "minecraft-server" - "minecraft-server-1.21.8" - ]; - - services.minecraft-servers = { - enable = true; - eula = true; - dataDir = "/var/lib/minecraft-servers"; - managementSystem = { - tmux.enable = false; - systemd-socket.enable = true; - }; - openFirewall = true; - servers = { - "heart-smp" = let - modpack = inputs.heart-modpack.packages.${pkgs.system}.default; - mcVersion = modpack.manifest.versions.minecraft; - fabricVersion = modpack.manifest.versions.fabric; - serverVersion = lib.replaceStrings ["."] ["_"] "fabric-${mcVersion}"; - in { - enable = true; - autoStart = false; - package = pkgs.fabricServers.${serverVersion}.override {loaderVersion = "0.17.3";}; - symlinks = { - "mods" = "${modpack}/mods"; - }; - files = { - "config" = "${modpack}/config"; - }; - }; - }; - }; - - services.gitea = { - enable = false; - settings = { - server = rec { - HTTP_PORT = 3617; - DOMAIN = "localhost:${toString HTTP_PORT}"; - - ROOT_URL = "http://${DOMAIN}"; - }; - service = { - ENABLE_USER_HEATMAP = true; - }; - ui = { - DEFAULT_THEME = "capytal-dark"; - THEMES = lib.concatStringsSep "," [ - "lored-dark" - "lored-light" - "forgejo-dark" - ]; - FILE_ICON_THEME = "material"; - }; - }; - }; -} diff --git a/hosts/figther/configuration.nix b/hosts/figther/configuration.nix deleted file mode 100644 index 8e92b40..0000000 --- a/hosts/figther/configuration.nix +++ /dev/null @@ -1,41 +0,0 @@ -{ - lib, - inputs, - pkgs, - ... -}: { - imports = [ - ./hardware-configuration.nix - ../../configuration.nix - - ./home.nix - ]; - - users.users."guz" = { - openssh.authorizedKeys.keyFiles = [ - ../../.ssh/guz-figther.pub - ]; - }; - - # Xremap run-as-user - hardware.uinput.enable = true; - users.groups.uinput.members = ["guz"]; - users.groups.input.members = ["guz"]; - - # Enable OpenGL - hardware.graphics.enable = true; - hardware.graphics.extraPackages = with pkgs; [ - vpl-gpu-rt - ]; - - # Laptop features - services.logind.lidSwitch = "suspend"; - services.logind.lidSwitchExternalPower = "lock"; - - # Network - networking = { - hostName = lib.mkForce "figther"; - nameservers = ["192.168.0.110"]; - # wireless.enable = lib.mkForce true; - }; -} diff --git a/hosts/figther/hardware-configuration.nix b/hosts/figther/hardware-configuration.nix deleted file mode 100644 index 17efd23..0000000 --- a/hosts/figther/hardware-configuration.nix +++ /dev/null @@ -1,43 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ - config, - lib, - pkgs, - modulesPath, - ... -}: { - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"]; - boot.initrd.kernelModules = []; - boot.kernelModules = []; - boot.extraModulePackages = []; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/bcd5d809-c81d-4d42-8496-07a70e3b1ffc"; - fsType = "ext4"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/9444-2967"; - fsType = "vfat"; - options = ["fmask=0077" "dmask=0077"]; - }; - - swapDevices = []; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp1s0.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/figther/hardware-configuration.nix.bkp b/hosts/figther/hardware-configuration.nix.bkp deleted file mode 100644 index 49162d3..0000000 --- a/hosts/figther/hardware-configuration.nix.bkp +++ /dev/null @@ -1,39 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" "rtsx_pci_sdmmc" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/e83d1c3a-9786-4c5d-839f-1fa25718990a"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/541A-AD6D"; - fsType = "vfat"; - options = [ "fmask=0077" "dmask=0077" ]; - }; - - swapDevices = [ ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp1s0.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/figther/home.nix b/hosts/figther/home.nix deleted file mode 100644 index 7a53d40..0000000 --- a/hosts/figther/home.nix +++ /dev/null @@ -1,151 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - # Host specific overrides of the root home - home-manager.users.guz = let - cfg = config.home-manager.users.guz; - hyprcfg = cfg.wayland.windowManager.hyprland.settings; - in { - wayland.windowManager.hyprland.settings = { - "$MONITOR-1" = lib.mkForce "eDP-1"; - }; - - programs.waybar.settings.single = { - layer = "top"; - position = "top"; - height = 25; - spacing = 5; - - margin-top = 5; - margin-right = 10; - margin-left = 10; - - modules-left = [ - "hyprland/workspaces" - "hyprland/window" - ]; - - "hyprland/workspaces" = { - active-only = false; - persistent-workspaces = { - "${hyprcfg."$MONITOR-1"}" = [1 2 3 4 5]; - }; - format = "{icon}"; - format-icons = { - default = ""; - active = ""; - }; - }; - - "hyprland/window" = { - format = "{title}"; - }; - - modules-center = [ - "clock" - ]; - - "clock" = { - format = "{:%d  %R}"; - format-alt = "{:%B %d, 12.0%y (%A)}"; - tooltip-format = "{calendar}"; - calendar = { - mode = "year"; - mode-mon-col = 3; - weeks-pos = "left"; - on-scroll = 1; - format = with config.lib.stylix.colors.withHashtag; { - months = "{}"; - days = "{}"; - weeks = "W{}"; - weeksdays = "{}"; - today = "{}"; - }; - }; - }; - - modules-right = [ - "battery" - "pulseaudio" - "cpu" - "memory" - "disk" - ]; - - "battery" = { - format-icons = ["" "" "" "" ""]; - format = "{icon} {capacity}%"; - }; - - "pulseaudio" = { - format = "{icon} {volume}%"; - format-muted = ""; - format-icons = { - default = ["" ""]; - }; - onclick = "${lib.getExe pkgs.pwvucontrol}"; - }; - - "cpu" = { - format = " {usage}%"; - }; - - "memory" = { - format = " {percentage}%"; - }; - - "disk" = { - interval = 30; - format = "󰨣 {specific_free:0.2f}"; - unit = "GB"; - }; - }; - - services.xremap.config.modmap = [ - { - name = "laptop remaps"; - remap = { - # Capslock as esc and ctrl on hold - "CapsLock" = { - held = "leftctrl"; - alone = "esc"; - alone_timeout_millis = 150; - }; - # "S" = { - # held = "leftalt"; - # alone = "s"; - # alone_timeout_millis = 150; - # }; - # "D" = { - # held = "leftctrl"; - # alone = "d"; - # alone_timeout_millis = 150; - # }; - # "F" = { - # held = "leftshift"; - # alone = "f"; - # alone_timeout_millis = 150; - # }; - # "J" = { - # held = "rightshift"; - # alone = "j"; - # alone_timeout_millis = 150; - # }; - # "K" = { - # held = "rightctrl"; - # alone = "k"; - # alone_timeout_millis = 150; - # }; - # "L" = { - # held = "rightalt"; - # alone = "l"; - # alone_timeout_millis = 150; - # }; - }; - } - ]; - }; -} diff --git a/hosts/rusty/base.nix b/hosts/rusty/base.nix deleted file mode 100644 index b9278b8..0000000 --- a/hosts/rusty/base.nix +++ /dev/null @@ -1,146 +0,0 @@ -{ - lib, - pkgs, - ... -}: { - imports = [ - ../../secrets.nix - ]; - - context = { - job = false; - }; - - # GnuPG keyring - programs.gnupg.agent = { - enable = true; - pinentryPackage = pkgs.pinentry-gtk2; - settings = {default-cache-ttl = 3600 * 24;}; - }; - services.pcscd.enable = true; - - # Yet another nix cli helper - programs.nh = { - enable = true; - clean.enable = true; - clean.extraArgs = "--keep-since 7d --keep 3"; - flake = "/home/guz/.projects/dot013-nix"; - }; - - # QMK keyboard - hardware.keyboard.qmk.enable = true; - services.udev.packages = with pkgs; [via vial]; - - # Enable Nix-LD for standalone binaries (useful for development) - programs.nix-ld.enable = true; - - # Bluetooth - hardware.bluetooth.enable = true; - hardware.bluetooth.powerOnBoot = true; - services.blueman.enable = true; - - # Audio - services.pipewire = { - enable = true; - - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - jack.enable = true; - - wireplumber.enable = true; - - extraConfig = { - pipewire-pulse."switch-on-connect.conf" = { - "pulse.cmd" = [ - { - cmd = "load-module"; - args = "module-switch-on-connect"; - } - ]; - }; - }; - }; - security.rtkit.enable = true; - services.pulseaudio.enable = lib.mkForce false; - environment.systemPackages = with pkgs; [ - pwvucontrol - via - vial - ]; - - # Networking - networking = { - networkmanager.enable = true; - nameservers = [ - /* - "192.168.0.1" - */ - "8.8.8.8" - # "1.1.1.1" - # "9.9.9.9" - ]; - }; - - # Firewall - networking.firewall.enable = true; - networking.firewall.allowedUDPPorts = [53]; - networking.firewall.allowedTCPPorts = [80 433]; - - # SSH - services.openssh.enable = true; - services.openssh.settings = { - PasswordAuthentication = false; - PermitRootLogin = "forced-commands-only"; - }; - - # Mosh - programs.mosh.enable = true; - programs.mosh.openFirewall = true; - - # Tailscale - services.tailscale.enable = true; - - # Locale - time.timeZone = "America/Sao_Paulo"; - i18n.defaultLocale = "en_US.UTF-8"; - i18n.extraLocaleSettings = let - locale = "pt_BR.UTF-8"; - in { - LC_ADDRESS = locale; - LC_IDENTIFICATION = locale; - LC_MEASUREMENT = locale; - LC_MONETARY = locale; - LC_NAME = locale; - LC_NUMERIC = locale; - LC_PAPER = locale; - LC_TELEPHONE = locale; - LC_TIME = locale; - }; - - # Keyboard - services.xserver.xkb = { - layout = "br"; - }; - console.keyMap = "br-abnt2"; - - security.polkit.enable = true; - - # Bootloader - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - boot.kernel.sysctl."kernel.yama.ptrace_scope" = lib.mkForce 0; - - # Nix - nix.settings = { - experimental-features = ["nix-command" "flakes"]; - }; - - # This value determines the NixOS release from which the default - # settings for stateful data, like file locations and database versions - # on your system were taken. It's perfectly fine and recommended to leave - # 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 = "24.11"; # Did you read the comment? -} diff --git a/hosts/rusty/configuration.nix b/hosts/rusty/configuration.nix deleted file mode 100644 index 9134e77..0000000 --- a/hosts/rusty/configuration.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - lib, - inputs, - ... -}: { - imports = [ - ./base.nix - - ../../home/worm/configuration.nix - - inputs.disko-2505.nixosModules.disko - ./disks.nix - # ./impermanence.nix - - ./hardware-configuration.nix - ]; - - users.users."guz" = { - openssh.authorizedKeys.keyFiles = [ - ../../.ssh/guz-figther.pub - ]; - }; - - # Network - networking = { - hostName = lib.mkForce "rusty"; - #wireless.enable = lib.mkForce true; - }; - - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ - "via" - ]; - - # Laptop features - services.logind.lidSwitch = "suspend"; - services.logind.lidSwitchExternalPower = "lock"; - - # HACK: Acer Aspire is a Bitch - boot.loader.systemd-boot.enable = lib.mkForce true; - boot.loader.efi.canTouchEfiVariables = lib.mkForce false; -} diff --git a/hosts/rusty/disks-ext4.nix b/hosts/rusty/disks-ext4.nix deleted file mode 100644 index 995a931..0000000 --- a/hosts/rusty/disks-ext4.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ - disko.devices = { - disk.main = { - device = "/dev/sda"; # This will be overwritten by disko-install - type = "disk"; - content = { - type = "gpt"; - partitions = { - ESP = { - label = "boot"; - size = "512M"; - type = "EF00"; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot"; - mountOptions = ["defaults"]; - }; - }; - luks = { - end = "-4G"; - label = "luks"; - content = { - type = "luks"; - name = "cryptroot"; - settings = {crypttabExtraOpts = ["fido2-device=auto" "token-timeout=10"];}; - content = { - type = "filesystem"; - format = "ext4"; - mountpoint = "/"; - }; - }; - }; - swap = { - size = "100%"; - content = { - type = "swap"; - randomEncryption = true; - priority = 100; - resumeDevice = true; - }; - }; - }; - }; - }; - }; -} diff --git a/hosts/rusty/disks.nix b/hosts/rusty/disks.nix deleted file mode 100644 index 8b5c7e4..0000000 --- a/hosts/rusty/disks.nix +++ /dev/null @@ -1,104 +0,0 @@ -{ - disko.devices = { - disk.main = { - device = "/dev/sda"; # This will be overwritten by disko-install - type = "disk"; - content = { - type = "gpt"; - partitions = { - ESP = { - label = "boot"; - size = "512M"; - type = "EF00"; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot"; - mountOptions = ["defaults"]; - }; - }; - root = { - size = "100%"; - content = { - type = "btrfs"; - extraArgs = ["-L" "nixos" "-f"]; - subvolumes = { - "/root" = { - mountpoint = "/"; - mountOptions = ["subvol=root" "compress=zstd" "noatime"]; - }; - "/home" = { - mountpoint = "/home"; - mountOptions = ["subvol=home" "compress=zstd" "noatime"]; - }; - "/nix" = { - mountpoint = "/nix"; - mountOptions = ["subvol=nix" "compress=zstd" "noatime"]; - }; - "/persist" = { - mountpoint = "/persist"; - mountOptions = ["subvol=persist" "compress=zstd" "noatime"]; - }; - "/log" = { - mountpoint = "/var/log"; - mountOptions = ["subvol=log" "compress=zstd" "noatime"]; - }; - "/swap" = { - mountpoint = "/swap"; - swap.swapfile.size = "4G"; - }; - }; - }; - }; - # luks = { - # size = "100%"; - # label = "luks"; - # content = { - # type = "luks"; - # name = "cryptroot"; - # extraOpenArgs = [ - # "--allow-discards" - # "--perf-no_read_workqueue" - # "--perf-no_write_workqueue" - # ]; - # settings = {crypttabExtraOpts = ["fido2-device=auto" "token-timeout=10"];}; - # content = { - # type = "btrfs"; - # extraArgs = ["-L" "nixos" "-f"]; - # subvolumes = { - # "/root" = { - # mountpoint = "/"; - # mountOptions = ["subvol=root" "compress=zstd" "noatime"]; - # }; - # "/home" = { - # mountpoint = "/home"; - # mountOptions = ["subvol=home" "compress=zstd" "noatime"]; - # }; - # "/nix" = { - # mountpoint = "/nix"; - # mountOptions = ["subvol=nix" "compress=zstd" "noatime"]; - # }; - # "/persist" = { - # mountpoint = "/persist"; - # mountOptions = ["subvol=persist" "compress=zstd" "noatime"]; - # }; - # "/log" = { - # mountpoint = "/var/log"; - # mountOptions = ["subvol=log" "compress=zstd" "noatime"]; - # }; - # "/swap" = { - # mountpoint = "/swap"; - # swap.swapfile.size = "4G"; - # }; - # }; - # }; - # }; - # }; - }; - }; - }; - }; - - fileSystems."/persist".neededForBoot = true; - fileSystems."/var/log".neededForBoot = true; -} diff --git a/hosts/rusty/hardware-configuration.nix b/hosts/rusty/hardware-configuration.nix deleted file mode 100644 index 1a983d7..0000000 --- a/hosts/rusty/hardware-configuration.nix +++ /dev/null @@ -1,22 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ - config, - lib, - pkgs, - modulesPath, - ... -}: { - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = ["ahci" "xhci_pci" "usb_storage" "sd_mod" "sdhci_pci" "rtsx_usb_sdmmc"]; - boot.initrd.kernelModules = []; - boot.kernelModules = ["kvm-intel"]; - boot.extraModulePackages = []; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/rusty/impermanence.nix b/hosts/rusty/impermanence.nix deleted file mode 100644 index e10bd5d..0000000 --- a/hosts/rusty/impermanence.nix +++ /dev/null @@ -1,73 +0,0 @@ -{ - config, - inputs, - ... -}: { - imports = [ - inputs.impermanence.nixosModules.impermanence - ]; - - environment.persistence."/persist" = { - enable = true; - hideMounts = true; - directories = [ - "/etc/nixos" - "/etc/NetworkManager/system-connections" - "/etc/secureboot" - "/var/db/sudo" - "/var/log" - "/var/lib/bluetooth" - "/var/lib/nixos" - "/var/lib/systemd/coredump" - { - directory = "/var/lib/colord"; - user = "colord"; - group = "colord"; - mode = "u=rwx,g=rx,o="; - } - ]; - files = [ - "/etc/machine-id" - { - file = "/var/keys/secret_file"; - parentDirectory = {mode = "u=rwx,g=,o=";}; - } - ]; - }; - - boot.initrd.systemd = { - enable = true; - services.roolback = { - description = "Roolback BTRFS root subvolume to a pristine state"; - wantedBy = ["initrd.target"]; - - after = ["systemd-cryptsetup@cryptroot.service"]; - - before = ["sysroot.mount"]; - - unitConfig.DefaultDependencies = "no"; - serviceConfig.Type = "oneshot"; - - script = '' - mkdir -p /mnt - - # Mount BTRFS root to manipulate it's volumes - mount -o subvol=/ /dev/mapper/cryptroot /mnt - - btrfs subvolume list -o /mnt/root | - cut -f9 -d' ' | - while read subvolume; do - echo "deleting /$subvolume subvolume..." - btrfs subvolume delete "/mnt/$subvolume" - done && - echo "deleting /root subvolume..." && - btrfs subvolume delete /mnt/root - - echo "restoring blank /root subvolume..." - btrfs subvolume snapshot /mnt/root-blank /mnt/root - - umount /mnt - ''; - }; - }; -} diff --git a/hosts/virus/configuration.nix b/hosts/virus/configuration.nix deleted file mode 100644 index 949aad3..0000000 --- a/hosts/virus/configuration.nix +++ /dev/null @@ -1,76 +0,0 @@ -{ - inputs, - self, - config, - modulesPath, - pkgs, - ... -}: { - imports = [ - "${modulesPath}/installer/cd-dvd/installation-cd-minimal.nix" - ]; - - # Users - users.users."guz" = { - useDefaultShell = true; - isNormalUser = true; - - password = null; - extraGroups = ["wheel" "guz"]; - }; - users.groups."guz" = {}; - - environment.systemPackages = - [ - inputs.disko.packages.${pkgs.stdenv.hostPlatform.system}.default - ] - ++ (with self.packages.${pkgs.stdenv.hostPlatform.system}.devkit; [ - git - lazygit - neovim - starship - tmux - yazi - zellij - zsh - ]); - - # Locale - time.timeZone = "America/Sao_Paulo"; - i18n.defaultLocale = "en_US.UTF-8"; - i18n.extraLocaleSettings = let - locale = "pt_BR.UTF-8"; - in { - LC_ADDRESS = locale; - LC_IDENTIFICATION = locale; - LC_MEASUREMENT = locale; - LC_MONETARY = locale; - LC_NAME = locale; - LC_NUMERIC = locale; - LC_PAPER = locale; - LC_TELEPHONE = locale; - LC_TIME = locale; - }; - - # Keyboard - services.xserver.xkb = { - layout = "br"; - }; - console.keyMap = "br-abnt2"; - - swapDevices = [ - { - device = "/var/lib/swapfile"; - size = 16 * 1024; - } - ]; - - # Nix - nix.settings = { - experimental-features = ["nix-command" "flakes"]; - }; - - nixpkgs.config.allowBroken = true; - - # boot.kernelPackages = pkgs.linuxPackages_latest; -} diff --git a/modules/home-manager/qutebrowser-profiles.nix b/modules/home-manager/qutebrowser-profiles.nix deleted file mode 100644 index f7d145b..0000000 --- a/modules/home-manager/qutebrowser-profiles.nix +++ /dev/null @@ -1,307 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: let - inherit - (lib) - concatStringsSep - literalExpression - mapAttrsToList - mkIf - mkOption - types - ; - - cfg = config.programs.qutebrowser; - - profileType = with lib; - with types; - submodule ({ - config, - lib, - ... - }: let - scfg = config; - in { - options = with lib; { - name = mkOption { - type = with types; nullOr str; - default = null; - }; - extendDefault = mkOption { - type = with types; bool; - default = true; - }; - titleFormat = mkOption { - type = with types; str; - default = "{perc}{current_title}{title_sep} qutebrowser ({profile_name})"; - }; - desktopName = mkOption { - type = with types; nullOr str; - default = null; - }; - aliases = mkOption { - type = with types; attrsOf str; - default = {}; - }; - loadAutoconfig = mkOption { - type = with types; bool; - default = cfg.loadAutoconfig; - }; - searchEngines = mkOption { - type = with types; attrsOf str; - default = {}; - }; - settings = mkOption { - type = with types; attrsOf anything; - default = {}; - }; - keyMappings = mkOption { - type = with types; attrsOf str; - default = {}; - }; - enableDefaultBindings = mkOption { - type = with types; bool; - default = cfg.enableDefaultBindings; - }; - keyBindings = mkOption { - type = with types; attrsOf (attrsOf (nullOr (separatedString " ;; "))); - default = {}; - }; - quickmarks = mkOption { - type = with types; attrsOf str; - default = {}; - apply = v: - if scfg.extendDefault - then cfg.quickmarks // v - else v; - }; - greasemonkey = mkOption { - type = with types; listOf package; - default = []; - apply = v: - if scfg.extendDefault - then cfg.greasemonkey ++ v - else v; - }; - extraConfig = mkOption { - type = with types; lines; - default = ""; - }; - }; - }); - - formatLine = o: n: v: let - formatValue = v: - if v == null - then "None" - else if builtins.isBool v - then - ( - if v - then "True" - else "False" - ) - else if builtins.isString v - then ''"${v}"'' - else if builtins.isList v - then "[${concatStringsSep ", " (map formatValue v)}]" - else builtins.toString v; - in - if builtins.isAttrs v - then concatStringsSep "\n" (mapAttrsToList (formatLine "${o}${n}.") v) - else "${o}${n} = ${formatValue v}"; - - formatDictLine = o: n: v: ''${o}['${n}'] = "${v}"''; - - formatKeyBindings = m: b: let - formatKeyBinding = m: k: c: - if c == null - then ''config.unbind("${k}", mode="${m}")'' - else ''config.bind("${k}", "${lib.escape [''"''] c}", mode="${m}")''; - in - concatStringsSep "\n" (mapAttrsToList (formatKeyBinding m) b); - - formatQuickmarks = n: s: "${n} ${s}"; -in - with lib; { - options.programs.qutebrowser = { - profileChooser = mkOption { - type = with types; either bool (enum ["override"]); - default = "override"; - }; - profileChooserDMenu = mkOption { - type = with types; package; - default = pkgs.writeShellScriptBin "rofi" "${getExe config.programs.rofi.finalPackage} -dmenu $@"; - }; - profileChooserUserscript = mkOption { - type = with types; nullOr str; - default = "W"; - }; - profiles = mkOption { - type = with types; attrsOf profileType; - default = {}; - }; - }; - config = let - profiles = mapAttrsToList (n: v: n) cfg.profiles; - profilesFile = pkgs.writeText "qutebrowser-profiles" (concatStringsSep "\n" (["DEFAULT"] ++ profiles)); - - chooser = pkgs.writeShellScriptBin "qutebrowser-chooser" '' - profile="$(cat ${profilesFile} | ${getExe cfg.profileChooserDMenu})" - case "$profile" in - "DEFAULT") - ${getExe pkgs.qutebrowser} $@ - ;; - ${concatMapStringsSep "\n" (n: let - profileDir = "${config.xdg.dataHome}/qutebrowser-profiles/${n}"; - in '' - "${n}") - ${getExe pkgs.qutebrowser} -B ${profileDir} -C ${profileDir}/config.py --desktop-file-name qutebrowser-profile-${n} $@ - ;; - '') - profiles} - esac - ''; - userscript = pkgs.writeShellScriptBin "qutebrowser-profiles-userscript" '' - function close() { - echo "close" >> "$QUTE_FIFO" - } - ${getExe chooser} & close - ''; - in - mkIf (cfg.enable && cfg.profiles != {}) { - programs.qutebrowser.package = pkgs.stdenv.mkDerivation { - inherit (pkgs.qutebrowser) name pname; - buildCommand = let - desktopEntry = pkgs.makeDesktopItem { - name = "qutebrowser"; - desktopName = "qutebrowser"; - exec = "${getExe ( - if cfg.profileChooser == "override" - then chooser - else pkgs.package - )} %u"; - }; - chooserDesktopEntry = pkgs.makeDesktopItem { - name = "qutebrowser chooser"; - desktopName = "qutebrowser-chooser"; - exec = "${getExe chooser} %u"; - }; - in '' - mkdir -p $out/bin - cp ${getExe pkgs.qutebrowser} $out/bin - ${ - if cfg.profileChooser != false - then "cp ${getExe chooser} $out/bin" - else "" - } - - mkdir -p $out/share/applications - cp ${desktopEntry}/share/applications/qutebrowser.desktop $out/share/applications/qutebrowser.desktop - ${ - if cfg.profileChooser == true - then "cp ${chooserDesktopEntry}/share/applications/qutebrowser-chooser.desktop $out/share/applications/qutebrowser-chooser.desktop" - else "" - } - ''; - dontBuild = true; - meta = - meta - // { - desktopFileName = "qutebrowser.desktop"; - }; - }; - - xdg.desktopEntries = mergeAttrsList (mapAttrsToList (n: v: let - profileDir = "qutebrowser-profiles/${n}"; - in { - "qutebrowser-profile-${n}" = { - name = - if isNull v.desktopName - then "${ - if isNull v.name - then n - else v.name - } (qutebrowser profile)" - else v.desktopName; - exec = - "${getExe pkgs.qutebrowser}" - + " -B ${config.xdg.dataHome}/${profileDir}" - + " -C ${config.xdg.dataHome}/${profileDir}/config.py" - + " --desktop-file-name qutebrowser-profile-${n}" - + " %u"; - }; - }) - cfg.profiles); - - xdg.dataFile = mergeAttrsList (mapAttrsToList (n: v: let - profileDir = "qutebrowser-profiles/${n}"; - in { - "${profileDir}/config.py" = { - text = concatStringsSep "\n" ( - [ - ( - if v.loadAutoconfig - then "config.load_autoconfig()" - else "config.load_autoconfig(False)" - ) - ] - ++ lib.optional (v.titleFormat != "") '' - c.window.title_format = '${replaceStrings ["{profile}" "{profile_name}"] [ - n - ( - if isNull v.name - then n - else v.name - ) - ] - v.titleFormat}' - '' - ++ lib.optional (v.extendDefault) '' - config.source(r'${config.xdg.configHome}/qutebrowser/config.py') - '' - ++ mapAttrsToList (formatLine "c.") v.settings - ++ mapAttrsToList (formatDictLine "c.aliases") v.aliases - ++ mapAttrsToList (formatDictLine "c.url.searchengines") v.searchEngines - ++ mapAttrsToList (formatDictLine "c.bindings.key_mappings") v.keyMappings - ++ lib.optional (!v.enableDefaultBindings) "c.bindings.default = {}" - ++ mapAttrsToList formatKeyBindings v.keyBindings - ++ lib.optional (cfg.profileChooserUserscript != "" && !(isNull cfg.profileChooserUserscript)) - "config.bind(\"${cfg.profileChooserUserscript}\", \"spawn --userscript ${getExe userscript}\", mode=\"normal\")" - ++ lib.optional (v.extraConfig != "") cfg.extraConfig - ); - onChange = '' - hash="$(echo -n "$USER" | md5sum | cut -d' ' -f1)" - socket="''${XDG_RUNTIME_DIR:-/run/user/$UID}/qutebrowser/ipc-$hash" - if [[ -S $socket ]]; then - command=${ - lib.escapeShellArg ( - builtins.toJSON { - args = [":config-source"]; - target_arg = null; - protocol_version = 1; - } - ) - } - echo "$command" | ${pkgs.socat}/bin/socat -lf /dev/null - UNIX-CONNECT:"$socket" - fi - unset hash socket command - ''; - }; - - "${profileDir}/quickmarks" = mkIf (v.quickmarks != {}) { - text = concatStringsSep "\n" ( - mapAttrsToList formatQuickmarks v.quickmarks - ); - }; - - "${profileDir}/data/greasemonkey" = mkIf (v.greasemonkey != []) { - source = pkgs.linkFarmFromDrvs "greasemonkey-userscripts" v.greasemonkey; - }; - }) - cfg.profiles); - }; - } diff --git a/modules/home-manager/zen-browser/default.nix b/modules/home-manager/zen-browser/default.nix deleted file mode 100644 index 64711e1..0000000 --- a/modules/home-manager/zen-browser/default.nix +++ /dev/null @@ -1,190 +0,0 @@ -{ - config, - inputs, - lib, - ... -}: -with lib; let - cfg = config.programs.zen-browser; - configDir = "${config.home.homeDirectory}/.zen"; - - # INFO: Read default shortcuts and transform them to the same attrsOf submodule structure. - defaultShortcuts = pipe (with builtins; (fromJSON (readFile ./default_shortcuts.json)).shortcuts) [ - (map (v: - nameValuePair ( - # HACK: Since some of the default shortcuts have a null ID, we create - # a ID with null + group + (key or keycode). This ID will not be used - # in the final JSON file, and is just here since Nix can't have - # multiple attributes with the same name. - if isNull v.id - then "${toString v.id}-${v.action}-${v.group}-${ - if v?key - then v.key - else v.keycode - }" - else v.id - ) - v)) - listToAttrs - ]; -in { - imports = [inputs.zen-browser.homeModules.twilight]; - options.programs.zen-browser = { - profiles = mkOption { - type = with types; - attrsOf (submodule ({...}: { - options = { - shortcutsForce = mkEnableOption ""; - shortcuts = mkOption { - type = attrsOf (submodule ({ - config, - name, - ... - }: let - default = defaultShortcuts.${name}; - in { - options = { - id = mkOption { - type = nullOr str; - default = name; - }; - key = mkOption { - type = nullOr str; - default = optionalString (config.keycode == "") default.key; - apply = v: - if isNull v - then "" - else v; - }; - keycode = mkOption { - type = nullOr str; - default = optionalString (config.key == "") default.keycode; - apply = v: - if isNull v - then "" - else v; - }; - group = mkOption { - type = enum (lib.unique (mapAttrsToList (_: s: s.group) defaultShortcuts)); - default = default.group; - }; - l10nId = mkOption { - type = enum (lib.unique (mapAttrsToList (_: s: s.l10nId) defaultShortcuts)); - default = default.l10nId; - }; - modifiers = { - control = mkEnableOption ""; - alt = mkEnableOption ""; - shift = mkEnableOption ""; - meta = mkEnableOption ""; - accel = mkEnableOption ""; - }; - action = mkOption { - type = enum (lib.unique (mapAttrsToList (_: s: s.action) defaultShortcuts)); - default = default.action; - }; - disabled = mkOption { - type = bool; - default = default.disabled; - }; - reserved = mkOption { - type = bool; - default = default.reserved; - }; - internal = mkOption { - type = bool; - default = default.internal; - }; - }; - })); - default = {}; - }; - # FIXME: Zen does not update zen-themes.css - # modsForce = mkEnableOption ""; - # mods = mkOption { - # type = attrsOf ( - # either - # path - # (submodule ({name, ...}: { - # options = { - # id = mkOption { - # type = str; - # default = name; - # }; - # name = mkOption { - # type = str; - # }; - # description = mkOption { - # type = str; - # default = ""; - # }; - # homepage = mkOption { - # type = str; - # default = ""; - # }; - # style = mkOption { - # type = str; - # }; - # readme = mkOption { - # type = str; - # default = ""; - # }; - # image = mkOption { - # type = str; - # default = ""; - # }; - # author = mkOption { - # type = str; - # default = ""; - # }; - # version = mkOption { - # type = str; - # default = ""; - # }; - # tags = mkOption { - # type = listOf str; - # default = []; - # }; - # createdAt = mkOption { - # type = str; - # default = ""; - # }; - # updatedAt = mkOption { - # type = str; - # default = ""; - # }; - # enabled = mkOption { - # type = bool; - # default = true; - # }; - # }; - # })) - # ); - # apply = with builtins; - # v: - # mapAttrs (n: v: - # if (isPath v || isStringLike v) - # then fromJSON (readFile v) - # else v) - # v; - # default = {}; - # }; - }; - })); - }; - }; - config = mkIf cfg.enable { - home.file = - concatMapAttrs (profileName: profile: { - "${configDir}/${profileName}/zen-keyboard-shortcuts.json" = mkIf (profile.shortcuts != {}) { - text = builtins.toJSON {shortcuts = mapAttrsToList (_: v: v) (defaultShortcuts // profile.shortcuts);}; - force = profile.shortcutsForce; - }; - # "${configDir}/${profileName}/zen-themes.json" = mkIf (profile.mods != {}) { - # text = builtins.toJSON profile.mods; - # force = profile.modsForce; - # }; - }) - cfg.profiles; - }; -} diff --git a/modules/home-manager/zen-browser/default_shortcuts.json b/modules/home-manager/zen-browser/default_shortcuts.json deleted file mode 100644 index d15f8f1..0000000 --- a/modules/home-manager/zen-browser/default_shortcuts.json +++ /dev/null @@ -1,2109 +0,0 @@ -{ - "shortcuts": [ - { - "id": "key_wrToggleCaptureSequenceCmd", - "key": "^", - "keycode": null, - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "wrToggleCaptureSequenceCmd", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_wrCaptureCmd", - "key": "#", - "keycode": null, - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "wrCaptureCmd", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectLastTab", - "key": "9", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectTab8", - "key": "8", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectTab7", - "key": "7", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectTab6", - "key": "6", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectTab5", - "key": "5", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectTab4", - "key": "4", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectTab3", - "key": "3", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectTab2", - "key": "2", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectTab1", - "key": "1", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_undoCloseWindow", - "key": "n", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": "zen-window-new-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "History:UndoCloseWindow", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_restoreLastClosedTabOrWindowOrSession", - "key": "t", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": "zen-restore-last-closed-tab-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "History:RestoreLastClosedTabOrWindowOrSession", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_quitApplication", - "key": "q", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": "zen-quit-app-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_quitApplication", - "disabled": false, - "reserved": true, - "internal": false - }, - { - "id": "key_sanitize", - "keycode": "VK_DELETE", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "Tools:Sanitize", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_screenshot", - "key": "s", - "keycode": null, - "group": "mediaAndDisplay", - "l10nId": "zen-screenshot-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "Browser:Screenshot", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_privatebrowsing", - "key": "p", - "keycode": null, - "group": "navigation", - "l10nId": "zen-private-browsing-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "Tools:PrivateBrowsing", - "disabled": false, - "reserved": true, - "internal": false - }, - { - "id": "key_switchTextDirection", - "key": "x", - "keycode": null, - "group": "mediaAndDisplay", - "l10nId": "zen-bidi-switch-direction-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "cmd_switchTextDirection", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_showAllTabs", - "keycode": "VK_TAB", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "key": "", - "keycode": null, - "group": "other", - "l10nId": "zen-full-zoom-reset-shortcut-alt", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_fullZoomReset", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_fullZoomReset", - "key": "0", - "keycode": null, - "group": "mediaAndDisplay", - "l10nId": "zen-full-zoom-reset-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_fullZoomReset", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "key": "", - "keycode": null, - "group": "other", - "l10nId": "zen-full-zoom-enlarge-shortcut-alt2", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_fullZoomEnlarge", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "key": "=", - "keycode": null, - "group": "other", - "l10nId": "zen-full-zoom-enlarge-shortcut-alt", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_fullZoomEnlarge", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_fullZoomEnlarge", - "key": "+", - "keycode": null, - "group": "mediaAndDisplay", - "l10nId": "zen-full-zoom-enlarge-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_fullZoomEnlarge", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "key": "", - "keycode": null, - "group": "other", - "l10nId": "zen-full-zoom-reduce-shortcut-alt-b", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_fullZoomReduce", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "key": "_", - "keycode": null, - "group": "other", - "l10nId": "zen-full-zoom-reduce-shortcut-alt-a", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_fullZoomReduce", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_fullZoomReduce", - "key": "-", - "keycode": null, - "group": "mediaAndDisplay", - "l10nId": "zen-full-zoom-reduce-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_fullZoomReduce", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_gotoHistory", - "key": "h", - "keycode": null, - "group": "navigation", - "l10nId": "zen-history-sidebar-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "toggleSidebarKb", - "key": "z", - "keycode": null, - "group": "other", - "l10nId": "zen-toggle-sidebar-shortcut", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "viewGenaiChatSidebarKb", - "key": "x", - "keycode": null, - "group": "other", - "l10nId": "zen-ai-chatbot-sidebar-shortcut", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_stop", - "keycode": "VK_ESCAPE", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "Browser:Stop", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "viewBookmarksToolbarKb", - "key": "b", - "keycode": null, - "group": "other", - "l10nId": "zen-bookmark-show-toolbar-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "viewBookmarksSidebarKb", - "key": "b", - "keycode": null, - "group": "other", - "l10nId": "zen-bookmark-show-sidebar-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "manBookmarkKb", - "key": "o", - "keycode": null, - "group": "historyAndBookmarks", - "l10nId": "zen-bookmark-show-library-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "Browser:ShowAllBookmarks", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "bookmarkAllTabsKb", - "key": "d", - "keycode": null, - "group": "historyAndBookmarks", - "l10nId": "zen-bookmark-this-page-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "addBookmarkAsKb", - "key": "d", - "keycode": null, - "group": "historyAndBookmarks", - "l10nId": "zen-bookmark-this-page-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Browser:AddBookmarkAs", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "keycode": "VK_F3", - "group": "other", - "l10nId": "zen-search-find-again-shortcut-prev", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": false - }, - "action": "cmd_findPrevious", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "keycode": "VK_F3", - "group": "other", - "l10nId": "zen-search-find-again-shortcut-alt", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_findAgain", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_findPrevious", - "key": "g", - "keycode": null, - "group": "searchAndFind", - "l10nId": "zen-search-find-again-shortcut-prev", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "cmd_findPrevious", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_findAgain", - "key": "g", - "keycode": null, - "group": "searchAndFind", - "l10nId": "zen-search-find-again-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_findAgain", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_find", - "key": "f", - "keycode": null, - "group": "searchAndFind", - "l10nId": "zen-find-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_find", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_viewInfo", - "key": "i", - "keycode": null, - "group": "pageOperations", - "l10nId": "zen-page-info-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "View:PageInfo", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_viewSource", - "key": "u", - "keycode": null, - "group": "pageOperations", - "l10nId": "zen-page-source-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "View:PageSource", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_aboutProcesses", - "keycode": "VK_ESCAPE", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": false - }, - "action": "View:AboutProcesses", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_reload_skip_cache", - "key": "r", - "keycode": null, - "group": "navigation", - "l10nId": "zen-nav-reload-shortcut-skip-cache", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "Browser:ReloadSkipCache", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_reload", - "key": "r", - "keycode": null, - "group": "navigation", - "l10nId": "zen-nav-reload-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Browser:Reload", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "key": "}", - "keycode": null, - "group": "other", - "l10nId": "zen-picture-in-picture-toggle-shortcut-alt", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "View:PictureInPicture", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_togglePictureInPicture", - "key": "]", - "keycode": null, - "group": "pageOperations", - "l10nId": "zen-picture-in-picture-toggle-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "View:PictureInPicture", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_toggleReaderMode", - "key": "r", - "keycode": null, - "group": "pageOperations", - "l10nId": "zen-reader-mode-toggle-shortcut-other", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "View:ReaderView", - "disabled": true, - "reserved": false, - "internal": false - }, - { - "id": "key_exitFullScreen", - "keycode": "VK_F11", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "View:FullScreen", - "disabled": true, - "reserved": true, - "internal": false - }, - { - "id": "key_enterFullScreen", - "keycode": "VK_F11", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "View:FullScreen", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "keycode": "VK_F5", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Browser:ReloadSkipCache", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "showAllHistoryKb", - "key": "h", - "keycode": null, - "group": "historyAndBookmarks", - "l10nId": "zen-history-show-all-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "Browser:ShowAllHistory", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "keycode": "VK_F5", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "Browser:Reload", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "goHome", - "keycode": "VK_HOME", - "group": "navigation", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "goForwardKb2", - "key": "]", - "keycode": null, - "group": "navigation", - "l10nId": "zen-nav-fwd-shortcut-alt", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Browser:Forward", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "goBackKb2", - "key": "[", - "keycode": null, - "group": "navigation", - "l10nId": "zen-nav-back-shortcut-alt", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Browser:Back", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "goForwardKb", - "keycode": "VK_RIGHT", - "group": "navigation", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": "Browser:Forward", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "goBackKb", - "keycode": "VK_LEFT", - "group": "navigation", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": "Browser:Back", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "keycode": "VK_BACK", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": false - }, - "action": "cmd_handleShiftBackspace", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": null, - "keycode": "VK_BACK", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_handleBackspace", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_selectAll", - "key": "a", - "keycode": null, - "group": "other", - "l10nId": "zen-text-action-select-all-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": true - }, - { - "id": "key_delete", - "keycode": "VK_DELETE", - "group": "other", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_delete", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_paste", - "key": "v", - "keycode": null, - "group": "other", - "l10nId": "zen-text-action-paste-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": true - }, - { - "id": "key_copy", - "key": "c", - "keycode": null, - "group": "other", - "l10nId": "zen-text-action-copy-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": true - }, - { - "id": "key_cut", - "key": "x", - "keycode": null, - "group": "other", - "l10nId": "zen-text-action-cut-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": true - }, - { - "id": "key_redo", - "key": "z", - "keycode": null, - "group": "other", - "l10nId": "zen-text-action-undo-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": true - }, - { - "id": "key_undo", - "key": "z", - "keycode": null, - "group": "other", - "l10nId": "zen-text-action-undo-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": true - }, - { - "id": "key_toggleMute", - "key": "m", - "keycode": null, - "group": "mediaAndDisplay", - "l10nId": "zen-mute-toggle-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_toggleMute", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_closeWindow", - "key": "w", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": "zen-close-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "cmd_closeWindow", - "disabled": false, - "reserved": true, - "internal": false - }, - { - "id": "key_close", - "key": "w", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": "zen-close-tab-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_close", - "disabled": false, - "reserved": true, - "internal": false - }, - { - "id": "printKb", - "key": "p", - "keycode": null, - "group": "pageOperations", - "l10nId": "zen-print-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_print", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_savePage", - "key": "s", - "keycode": null, - "group": "pageOperations", - "l10nId": "zen-save-page-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Browser:SavePage", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "openFileKb", - "key": "o", - "keycode": null, - "group": "other", - "l10nId": "zen-file-open-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Browser:OpenFile", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_openAddons", - "key": "a", - "keycode": null, - "group": "other", - "l10nId": "zen-addons-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "Tools:Addons", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_openDownloads", - "key": "y", - "keycode": null, - "group": "other", - "l10nId": "zen-downloads-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "Tools:Downloads", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_search2", - "key": "j", - "keycode": null, - "group": "searchAndFind", - "l10nId": "zen-search-focus-shortcut-alt", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Tools:Search", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_search", - "key": "k", - "keycode": null, - "group": "searchAndFind", - "l10nId": "zen-search-focus-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Tools:Search", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "focusURLBar2", - "key": "d", - "keycode": null, - "group": "pageOperations", - "l10nId": "zen-location-open-shortcut-alt", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": "Browser:OpenLocation", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "focusURLBar", - "key": "l", - "keycode": null, - "group": "pageOperations", - "l10nId": "zen-location-open-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "Browser:OpenLocation", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_newNavigatorTab", - "key": "t", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": "zen-tab-new-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_newNavigatorTabNoEvent", - "disabled": false, - "reserved": true, - "internal": false - }, - { - "id": "key_newNavigator", - "key": "n", - "keycode": null, - "group": "windowAndTabManagement", - "l10nId": "zen-window-new-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_newNavigator", - "disabled": false, - "reserved": true, - "internal": false - }, - { - "id": "zen-compact-mode-toggle", - "key": "c", - "keycode": "", - "group": "zen-compact-mode", - "l10nId": "zen-compact-mode-shortcut-toggle", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenCompactModeToggle", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-compact-mode-show-sidebar", - "key": "s", - "keycode": "", - "group": "zen-compact-mode", - "l10nId": "zen-compact-mode-shortcut-show-sidebar", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenCompactModeShowSidebar", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-compact-mode-show-toolbar", - "key": "t", - "keycode": "", - "group": "zen-compact-mode", - "l10nId": "zen-compact-mode-shortcut-show-toolbar", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenCompactModeShowToolbar", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-10", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-10", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch10", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-9", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-9", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch9", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-8", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-8", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch8", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-7", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-7", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch7", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-6", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-6", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch6", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-5", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-5", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch5", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-4", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-4", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch4", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-3", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-3", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch3", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-2", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-2", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch2", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-switch-1", - "key": "", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-switch-1", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenWorkspaceSwitch1", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-forward", - "key": "e", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-forward", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenWorkspaceForward", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-workspace-backward", - "key": "q", - "keycode": "", - "group": "zen-workspace", - "l10nId": "zen-workspace-shortcut-backward", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenWorkspaceBackward", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-split-view-grid", - "key": "g", - "keycode": "", - "group": "zen-split-view", - "l10nId": "zen-split-view-shortcut-grid", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenSplitViewGrid", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-split-view-vertical", - "key": "v", - "keycode": "", - "group": "zen-split-view", - "l10nId": "zen-split-view-shortcut-vertical", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenSplitViewVertical", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-split-view-horizontal", - "key": "h", - "keycode": "", - "group": "zen-split-view", - "l10nId": "zen-split-view-shortcut-horizontal", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenSplitViewHorizontal", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-split-view-unsplit", - "key": "u", - "keycode": "", - "group": "zen-split-view", - "l10nId": "zen-split-view-shortcut-unsplit", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": true - }, - "action": "cmd_zenSplitViewUnsplit", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-pinned-tab-reset-shortcut", - "key": "", - "keycode": "", - "group": "zen-other", - "l10nId": "zen-pinned-tab-shortcut-reset", - "modifiers": { - "control": false, - "alt": false, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenPinnedTabReset", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-toggle-sidebar", - "key": "b", - "keycode": "", - "group": "zen-other", - "l10nId": "zen-sidebar-shortcut-toggle", - "modifiers": { - "control": false, - "alt": true, - "shift": false, - "meta": false, - "accel": false - }, - "action": "cmd_zenToggleSidebar", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-copy-url", - "key": "c", - "keycode": "", - "group": "zen-other", - "l10nId": "zen-text-action-copy-url-shortcut", - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": "cmd_zenCopyCurrentURL", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "zen-copy-url-markdown", - "key": "c", - "keycode": "", - "group": "zen-other", - "l10nId": "zen-text-action-copy-url-markdown-shortcut", - "modifiers": { - "control": false, - "alt": true, - "shift": true, - "meta": false, - "accel": true - }, - "action": "cmd_zenCopyCurrentURLMarkdown", - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_accessibility", - "keycode": "VK_F12", - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_dom", - "key": "w", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_storage", - "keycode": "VK_F9", - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_performance", - "keycode": "VK_F5", - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_styleeditor", - "keycode": "VK_F7", - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": false - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_netmonitor", - "key": "e", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_jsdebugger", - "key": "z", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_webconsole", - "key": "k", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_inspector", - "key": "l", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_responsiveDesignMode", - "key": "m", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_browserConsole", - "key": "j", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_browserToolbox", - "key": "i", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": true, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - }, - { - "id": "key_toggleToolbox", - "key": "i", - "keycode": null, - "group": "devTools", - "l10nId": null, - "modifiers": { - "control": false, - "alt": false, - "shift": true, - "meta": false, - "accel": true - }, - "action": null, - "disabled": false, - "reserved": false, - "internal": false - } - ] -} - diff --git a/modules/nixos/context.nix b/modules/nixos/context.nix deleted file mode 100644 index a9ac8c4..0000000 --- a/modules/nixos/context.nix +++ /dev/null @@ -1,17 +0,0 @@ -{lib, ...}: -with lib; { - options.context = mkOption { - type = with types; let - primitive = oneOf [ - bool - int - str - path - (attrsOf primitive) - (listOf primitive) - ]; - in - attrsOf primitive; - default = {}; - }; -} diff --git a/specialisations/nixos/default.nix b/specialisations/nixos/default.nix deleted file mode 100644 index 5ad8a2f..0000000 --- a/specialisations/nixos/default.nix +++ /dev/null @@ -1,5 +0,0 @@ -{...}: { - imports = [ - ./vm.nix - ]; -} diff --git a/specialisations/nixos/vm.nix b/specialisations/nixos/vm.nix deleted file mode 100644 index c3fe4e7..0000000 --- a/specialisations/nixos/vm.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: { - virtualisation.virtualbox.host.enable = true; - virtualisation.virtualbox.host.enableExtensionPack = true; - users.extraGroups.vboxusers.members = ["guz"]; - - boot.kernelParams = ["kvm.enable_virt_at_load=0"]; - - programs.dconf.enable = true; - - users.users."guz".extraGroups = ["libvirtd"]; - users.users."guz".packages = with pkgs; [ - virt-manager - virt-viewer - spice - spice-gtk - spice-protocol - win-virtio - win-spice - adwaita-icon-theme - quickemu - ]; - - # virtualisation.libvirtd = { - # enable = true; - # qemu = { - # swtpm.enable = true; - # ovmf.enable = true; - # ovmf.packages = [pkgs.OVMFFull.fd]; - # }; - # }; - # virtualisation.spiceUSBRedirection.enable = true; -} diff --git a/state.json b/state.json deleted file mode 100644 index 139a990..0000000 --- a/state.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "hello": 2 -}