diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 0a02d59..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,32 +0,0 @@
-# Byte-compiled / optimized / DLL Files
-__pycache__/
-*.py[cod]
-*$py.class
-
-# Virtual Envornments
-.venv
-venv/
-env/
-
-# Editor project settings
-## VSCode
-.vscode/
-## PyCharm intellij
-.idea/
-## repl.it
-.replit
-## Spyder
-.spyproject/
-.spyderproject/
-
-# Ignore ds store files
-.DS_STORE
-
-# Personal TODO files
-TODO
-
-# Ignore backups
-backup/
-
-# Ignore git downloads
-download/
diff --git a/.gitmodules b/.gitmodules
deleted file mode 100644
index 76d2d6b..0000000
--- a/.gitmodules
+++ /dev/null
@@ -1,18 +0,0 @@
-[submodule "root/usr/local/src/dmenu"]
- path = "root/usr/local/src/dmenu"
- url = "https://github.com/ItsDrike/dmenu"
-[submodule "root/usr/share/zsh/site-functions/zsh-autosuggestions"]
- path = "root/usr/share/zsh/site-functions/zsh-autosuggestions"
- url = "https://github.com/zsh-users/zsh-autosuggestions"
-[submodule "root/usr/share/zsh/site-functions/zsh-syntax-highlighting"]
- path = "root/usr/share/zsh/site-functions/zsh-syntax-highlighting"
- url = "https://github.com/zsh-users/zsh-syntax-highlighting"
-#[submodule "root/usr/share/zsh/site-functions/zsh-you-should-use"]
-# path = "root/usr/share/zsh/site-functions/zsh-you-should-use"
-# url = "https://github.com/MichaelAquilina/zsh-you-should-use"
-[submodule "root/usr/local/src/z.lua"]
- path = "root/usr/local/src/z.lua"
- url = "https://github.com/skywind3000/z.lua"
-[submodule "home/.config/nvim"]
- path = home/.config/nvim
- url = https://github.com/ItsDrike/Stellar-Nvim
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index f288702..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,674 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc.
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
-
- The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works. By contrast,
-the GNU General Public License is intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users. We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors. You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
- To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights. Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received. You must make sure that they, too, receive
-or can get the source code. And you must show them these terms so they
-know their rights.
-
- Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
- For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software. For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
- Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so. This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software. The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable. Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products. If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
- Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary. To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- TERMS AND CONDITIONS
-
- 0. Definitions.
-
- "This License" refers to version 3 of the GNU General Public License.
-
- "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
- "The Program" refers to any copyrightable work licensed under this
-License. Each licensee is addressed as "you". "Licensees" and
-"recipients" may be individuals or organizations.
-
- To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy. The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
- A "covered work" means either the unmodified Program or a work based
-on the Program.
-
- To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy. Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
- To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies. Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
- An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License. If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
- 1. Source Code.
-
- The "source code" for a work means the preferred form of the work
-for making modifications to it. "Object code" means any non-source
-form of a work.
-
- A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
- The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form. A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
- The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities. However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work. For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
- The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
- The Corresponding Source for a work in source code form is that
-same work.
-
- 2. Basic Permissions.
-
- All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met. This License explicitly affirms your unlimited
-permission to run the unmodified Program. The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work. This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
- You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force. You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright. Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
- Conveying under any other circumstances is permitted solely under
-the conditions stated below. Sublicensing is not allowed; section 10
-makes it unnecessary.
-
- 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
- No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
- When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
- 4. Conveying Verbatim Copies.
-
- You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
- You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
- 5. Conveying Modified Source Versions.
-
- You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
- a) The work must carry prominent notices stating that you modified
- it, and giving a relevant date.
-
- b) The work must carry prominent notices stating that it is
- released under this License and any conditions added under section
- 7. This requirement modifies the requirement in section 4 to
- "keep intact all notices".
-
- c) You must license the entire work, as a whole, under this
- License to anyone who comes into possession of a copy. This
- License will therefore apply, along with any applicable section 7
- additional terms, to the whole of the work, and all its parts,
- regardless of how they are packaged. This License gives no
- permission to license the work in any other way, but it does not
- invalidate such permission if you have separately received it.
-
- d) If the work has interactive user interfaces, each must display
- Appropriate Legal Notices; however, if the Program has interactive
- interfaces that do not display Appropriate Legal Notices, your
- work need not make them do so.
-
- A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit. Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
- 6. Conveying Non-Source Forms.
-
- You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
- a) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by the
- Corresponding Source fixed on a durable physical medium
- customarily used for software interchange.
-
- b) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by a
- written offer, valid for at least three years and valid for as
- long as you offer spare parts or customer support for that product
- model, to give anyone who possesses the object code either (1) a
- copy of the Corresponding Source for all the software in the
- product that is covered by this License, on a durable physical
- medium customarily used for software interchange, for a price no
- more than your reasonable cost of physically performing this
- conveying of source, or (2) access to copy the
- Corresponding Source from a network server at no charge.
-
- c) Convey individual copies of the object code with a copy of the
- written offer to provide the Corresponding Source. This
- alternative is allowed only occasionally and noncommercially, and
- only if you received the object code with such an offer, in accord
- with subsection 6b.
-
- d) Convey the object code by offering access from a designated
- place (gratis or for a charge), and offer equivalent access to the
- Corresponding Source in the same way through the same place at no
- further charge. You need not require recipients to copy the
- Corresponding Source along with the object code. If the place to
- copy the object code is a network server, the Corresponding Source
- may be on a different server (operated by you or a third party)
- that supports equivalent copying facilities, provided you maintain
- clear directions next to the object code saying where to find the
- Corresponding Source. Regardless of what server hosts the
- Corresponding Source, you remain obligated to ensure that it is
- available for as long as needed to satisfy these requirements.
-
- e) Convey the object code using peer-to-peer transmission, provided
- you inform other peers where the object code and Corresponding
- Source of the work are being offered to the general public at no
- charge under subsection 6d.
-
- A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
- A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling. In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage. For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product. A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
- "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source. The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
- If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information. But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
- The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed. Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
- Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
- 7. Additional Terms.
-
- "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law. If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
- When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it. (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.) You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
- Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
- a) Disclaiming warranty or limiting liability differently from the
- terms of sections 15 and 16 of this License; or
-
- b) Requiring preservation of specified reasonable legal notices or
- author attributions in that material or in the Appropriate Legal
- Notices displayed by works containing it; or
-
- c) Prohibiting misrepresentation of the origin of that material, or
- requiring that modified versions of such material be marked in
- reasonable ways as different from the original version; or
-
- d) Limiting the use for publicity purposes of names of licensors or
- authors of the material; or
-
- e) Declining to grant rights under trademark law for use of some
- trade names, trademarks, or service marks; or
-
- f) Requiring indemnification of licensors and authors of that
- material by anyone who conveys the material (or modified versions of
- it) with contractual assumptions of liability to the recipient, for
- any liability that these contractual assumptions directly impose on
- those licensors and authors.
-
- All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10. If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term. If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
- If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
- Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
- 8. Termination.
-
- You may not propagate or modify a covered work except as expressly
-provided under this License. Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
- However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
- Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
- Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License. If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
- 9. Acceptance Not Required for Having Copies.
-
- You are not required to accept this License in order to receive or
-run a copy of the Program. Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance. However,
-nothing other than this License grants you permission to propagate or
-modify any covered work. These actions infringe copyright if you do
-not accept this License. Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
- 10. Automatic Licensing of Downstream Recipients.
-
- Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License. You are not responsible
-for enforcing compliance by third parties with this License.
-
- An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations. If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
- You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License. For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
- 11. Patents.
-
- A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based. The
-work thus licensed is called the contributor's "contributor version".
-
- A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version. For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
- Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
- In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement). To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
- If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients. "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
- If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
- A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License. You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
- Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
- 12. No Surrender of Others' Freedom.
-
- If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all. For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
- 13. Use with the GNU Affero General Public License.
-
- Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work. The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
-
- 14. Revised Versions of this License.
-
- The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Program specifies that a certain numbered version of the GNU General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation. If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
- If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
- Later license versions may give you additional or different
-permissions. However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
- 15. Disclaimer of Warranty.
-
- THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. Limitation of Liability.
-
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
- 17. Interpretation of Sections 15 and 16.
-
- If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-
- Copyright (C)
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see .
-
-Also add information on how to contact you by electronic and paper mail.
-
- If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
- Copyright (C)
- This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
-
- You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
-.
-
- The GNU General Public License does not permit incorporating your program
-into proprietary programs. If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License. But first, please read
-.
diff --git a/README.md b/README.md
deleted file mode 100644
index d792944..0000000
--- a/README.md
+++ /dev/null
@@ -1,100 +0,0 @@
-# Dotfiles
-
-These are my personal dotfiles. They're split into `home/` and `root/` folders where the home folder holds all files
-that should be put directly into your `$HOME` directory, while all of the files in the root folder can be put directly
-into `/`
-
-You are highly advised to first go through these dotfiles yourself and adjust them to your liking.
-
-## :warning: NOTICE :warning:
-
-I'm currently in the process of migrating to Hyprland WM, running on wayland. This means that most of the config here
-will need to be reworked. However since I'm still in the process of setting everything up, I haven't yet done this, and
-so this repository still contains my older settings.
-
-Until I settle on everything, since some people asked for my dotfiles, if you are interested in my wayland dotfiles,
-I've created a temporary repository with these already in:
-
-However know that this repo might often get force-pushes, and it's very much gonna be deleted within a few weeks once I
-get everything in order, at which point I'll migrate these settings here, and remove the outdated Xorg config.
-(Obviously, you'll still be able to find the older versions in the git history, and I might create a tag or even a
-branch pointing to this Xorg version).
-
-## Sample images
-
-- Custom prompt (defined [here](home/.config/shell/theme)).
- - Colorscheme showcase: ![image](https://user-images.githubusercontent.com/20902250/117699472-69ab5d80-b1b4-11eb-85a8-2b039bc1599a.png)
- - Command timing showcase: ![image](https://user-images.githubusercontent.com/20902250/129356038-f1373183-ee50-4cc9-a602-a1215b5d1e5f.png)
-- Neovim configuration written in lua: ![Screenshot_2021-12-06_14-31-37](https://user-images.githubusercontent.com/20902250/144854879-f35de259-cea1-4415-9a3b-b093fe008836.png)
-- Automatic unknown command package handler: ![image](https://user-images.githubusercontent.com/20902250/129359888-629a4f28-64bd-4c90-8e87-de75a9b8997d.png)
-- `lf` file manager previews with ueberzug: ![image](https://user-images.githubusercontent.com/20902250/129359042-b0594788-bc14-4294-bba2-8cba8e30cd94.png)
-
-## Features
-
-- Full fledged ZSH configuration without the need to rely on oh-my-zsh
- - oh-my-zsh configuration is also supported, but it is off by default, adjust [`.zshrc`](home/.config/zsh/.zshrc) to
- enable it
- - Even though enabling it is an option, it is not a necessary thing to do, oh-my-zsh has a lot of code that is mostly
- irrelevant and unused, these dotfiles give you the ability to completely avoid it, if you desire to do so
-- Custom [prompt](home/.config/shell/theme), both for oh-my-zsh configuration or for standalone usage
-- Custom [NVIM configuration](home/.config/nvim)
- - When you open nvim for the first time, it will automatically try to install Packer plugin manager
- - It is compatible with TTY usage, in which case the color support is downgraded and use of special fonts is
- disabled.
- - The configuration is split into multiple smaller files to keep everything clearn and avoid clutter in the main
- configuration file (`init.lua`). It also allows for us to quickly disable certain parts of the config.
- - The whole configuration is written in lua rather than vimscript. This allows us to do some nicer things, however
- it also means that this config will NOT work for regular vim, it's only meant to be used for neovim.
-- Many handy [aliases](home/.config/shell/aliases) and [functions](home/.config/shell/functions) (likely too many, you
- should adjust that to your needs)
-- [Many pre-defined environmental variables](home/.config/shell/environ), these include
- - XDG paths configuration to avoid too much cluttering in home directory
- - Colorful man pages using LESS_TERMCAP, or if `bat` is installed, using it as MANPAGER
-- [Automatic handlers](home/.config/shell/handlers) which override default command not found behavior to show the
- package to which given command belongs (requires pkgfile on Arch Linux)
-- List of useful packages that I often install on most of my systems. (These are the package names for arch linux, but
- you should be able to find these for any distro, perhaps with a bit different name) located in
- [`packages.yaml`](packages.yaml)
-- [Opensnitch firewall rules](root/etc/opensnitchd/rules), which block most unauthorized traffic and only allow needed
- things. This also blocks spotify ads.
-- Automatic logout for TTY sessions or for root logins after 10 minutes of inactivity
-- NetworkManager configuration which assigns new mac for each network
-- `lf` file manager configuration with support for ueberzug image previews within the terminal
-- Tons of handy scripts for automating common tasks
- - [`incremental-backup`](root/usr/local/bin/incremental-backup): Easy way to utilize rsync for all backups, without
- the need for external software
- - [`auto-chroot`](root/usr/local/bin/auto-chroot): Quick way to chroot into any other linux system, without typing
- the very repetitive mount and umount commands
- - [`tamper-check`](root/usr/local/bin/tamper-check): Script that uses checksums to verify that given files weren't
- adjusted in any way.
- - [`brightness`](home/.local/bin/scripts/brightness): Script to quickly change screen brightness, you may need to
- adjust the BRIGHTNESS_FILE, this can be different from machine to machine
- - [`setbg`](home/.local/bin/scripts/setbg): Quick way to set desktop background to specific image, or random image,
- or previously used image
- - Many smaller dmenu scripts to make life easier
-
-
-
-## Installation
-Clone this repository anywhere you like
-`$ git clone https://github.com/ItsDrike/dotfiles`
-
-If you don't want to install git (running straight from newly installed OS), you can use `curl`:
-`$ curl -LJO https://github.com/ItsDrike/dotfiles/tarball/master`
-And extract from `.tar.gz` archive:
-`$ tar xvf [archive name]`
-
-## Attribution
-
-The open-source community has an incredible amount of resources that people have offered to others free of charge and
-we all depend on many of these sources. This project is no different and there were many open-source projects that were
-utilized in some parts of this project. For that reason, I'd like to thank all of these projects and their
-contributors for keeping their content open and available to everyone. This is the list of projects that helped me
-build this repository to the stage it's in now. Many of the aliases, config files and other resources aren't my
-original creations, but rather just small improvements and adjustments to get everything set in the way I like. Below
-is the list of all projects which helped the existence of this repository:
-- [Lukesmith's dotfiles/voidrice](https://github.com/LukeSmithxyz/voidrice)
-- [BrodieRobertson's dotfiles](https://github.com/BrodieRobertson/dotfiles)
-- [BrodieRobertson's scripts](https://github.com/BrodieRobertson/scripts)
-- [Derek Taylor's dotfiles](https://gitlab.com/dwt1/dotfiles)
-
diff --git a/extra/arkenfox-user.js/user-overrides.js b/extra/arkenfox-user.js/user-overrides.js
deleted file mode 100644
index 275a613..0000000
--- a/extra/arkenfox-user.js/user-overrides.js
+++ /dev/null
@@ -1,14 +0,0 @@
-user_pref("browser.shell.checkDefaultBrowser", false); // 0101 Enable default browser check
-user_pref("network.dns.disableIPv6", false); // 0701 Some VPNs leak IPv6, mine doesn't so don't disable it
-user_pref("keyword.enabled", true); // 0801 Enable searching from location bar (I trust my search engine)
-user_pref("network.http.referer.XOriginPolicy", 0); // 1601 Allow cross origin referrers, with Smart Referer (this breaks too much)
-user_pref("privacy.clearOnShutdown.sessions", true); // 2811 Retain HTTP Basic Auth on shutdown
-user_pref("signon.rememberSignons", false); // 5003 Disable saving passwords to FF, there's Bitwarden
-user_pref("security.nocertdb", true); // 5005 Don't cache certificates (stores them session-only)
-user_pref("browser.download.folderList", 1); // 5016 Use Downloads folder, not previous folder for download location
-
-/* override recipe: enable session restore ***/
-user_pref("browser.startup.page", 3); // 0102 Enable session restore
-user_pref("privacy.clearOnShutdown.history", false); // 2811 Don't clear history on exit
-user_pref("privacy.cpd.history", false); // 2812 To match when you use Ctrl-Shift-Del
-user_pref("places.history.enabled", false); // 5013 Disable browsing and download history (allows no history with session restore)
diff --git a/home/.cache/nv/.keep b/home/.cache/nv/.keep
deleted file mode 100644
index e69de29..0000000
diff --git a/home/.cache/zsh/history b/home/.cache/zsh/history
deleted file mode 100644
index 8b13789..0000000
--- a/home/.cache/zsh/history
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/home/.config/alacritty/alacritty.yml b/home/.config/alacritty/alacritty.yml
deleted file mode 100644
index 251749b..0000000
--- a/home/.config/alacritty/alacritty.yml
+++ /dev/null
@@ -1,816 +0,0 @@
-# Configuration for Alacritty, the GPU enhanced terminal emulator.
-
-# Import additional configuration files
-#
-# Imports are loaded in order, skipping all missing files, with the importing
-# file being loaded last. If a field is already present in a previous import, it
-# will be replaced.
-#
-# All imports must either be absolute paths starting with `/`, or paths relative
-# to the user's home directory starting with `~/`.
-#import:
-# - /path/to/alacritty.yml
-
-# Any items in the `env` entry below will be added as
-# environment variables. Some entries may override variables
-# set by alacritty itself.
-#env:
- # TERM variable
- #
- # This value is used to set the `$TERM` environment variable for
- # each instance of Alacritty. If it is not present, alacritty will
- # check the local terminfo database and use `alacritty` if it is
- # available, otherwise `xterm-256color` is used.
- #TERM: alacritty
-
-window:
- # Window dimensions (changes require restart)
- #
- # Number of lines/columns (not pixels) in the terminal. The number of columns
- # must be at least `2`, while using a value of `0` for columns and lines will
- # fall back to the window manager's recommended size.
- #dimensions:
- # columns: 0
- # lines: 0
-
- # Window position (changes require restart)
- #
- # Specified in number of pixels.
- # If the position is not set, the window manager will handle the placement.
- #position:
- # x: 0
- # y: 0
-
- # Window padding (changes require restart)
- #
- # Blank space added around the window in pixels. This padding is scaled
- # by DPI and the specified value is always added at both opposing sides.
- padding:
- x: 6
- y: 6
-
- # Background opacity
- #
- # Window opacity as a floating point number from `0.0` to `1.0`.
- # The value `0.0` is completely transparent and `1.0` is opaque.
- opacity: 0.9
-
- # Spread additional padding evenly around the terminal content.
- #dynamic_padding: false
-
- # Window decorations
- #
- # Values for `decorations`:
- # - full: Borders and title bar
- # - none: Neither borders nor title bar
- #
- # Values for `decorations` (macOS only):
- # - transparent: Title bar, transparent background and title bar buttons
- # - buttonless: Title bar, transparent background and no title bar buttons
- #decorations: full
-
- # Startup Mode (changes require restart)
- #
- # Values for `startup_mode`:
- # - Windowed
- # - Maximized
- # - Fullscreen
- #
- # Values for `startup_mode` (macOS only):
- # - SimpleFullscreen
- #startup_mode: Windowed
-
- # Window title
- #title: Alacritty
-
- # Allow terminal applications to change Alacritty's window title.
- #dynamic_title: true
-
- # Window class (Linux/BSD only):
- #class:
- # Application instance name
- #instance: Alacritty
- # General application class
- #general: Alacritty
-
- # GTK theme variant (Linux/BSD only)
- #
- # Override the variant of the GTK theme. Commonly supported values are `dark`
- # and `light`. Set this to `None` to use the default theme variant.
- #gtk_theme_variant: None
-
-scrolling:
- # Maximum number of lines in the scrollback buffer.
- # Specifying '0' will disable scrolling.
- history: 10000
-
- # Scrolling distance multiplier.
- #multiplier: 3
-
-# Font configuration
-font:
- # Normal (roman) font face
- normal:
- # Font family
- #
- # Default:
- # - (macOS) Menlo
- # - (Linux/BSD) monospace
- # - (Windows) Consolas
- family: JetBrains Mono
- #family: Comic Mono
- #family: Source Code Pro
-
- # The `style` can be specified to pick a specific face.
- style: Medium
-
- # Bold font face
- #bold:
- # Font family
- #
- # If the bold family is not specified, it will fall back to the
- # value specified for the normal font.
- #family: monospace
- #family: Source Code Pro
-
- # The `style` can be specified to pick a specific face.
- #style: Bold
-
- # Italic font face
- #italic:
- # Font family
- #
- # If the italic family is not specified, it will fall back to the
- # value specified for the normal font.
- #family: monospace
- #family: Source Code Pro
-
- # The `style` can be specified to pick a specific face.
- #style: Italic
-
- # Bold italic font face
- #bold_italic:
- # Font family
- #
- # If the bold italic family is not specified, it will fall back to the
- # value specified for the normal font.
- #family: monospace
-
- # The `style` can be specified to pick a specific face.
- #style: Bold Italic
-
- # Point size
- size: 11.0
-
- # Offset is the extra space around each character. `offset.y` can be thought
- # of as modifying the line spacing, and `offset.x` as modifying the letter
- # spacing.
- #offset:
- # x: 0
- # y: 0
-
- # Glyph offset determines the locations of the glyphs within their cells with
- # the default being at the bottom. Increasing `x` moves the glyph to the
- # right, increasing `y` moves the glyph upward.
- #glyph_offset:
- # x: 0
- # y: 0
-
- # Thin stroke font rendering (macOS only)
- #
- # Thin strokes are suitable for retina displays, but for non-retina screens
- # it is recommended to set `use_thin_strokes` to `false`.
- #use_thin_strokes: true
-
-# If `true`, bold text is drawn using the bright color variants.
-draw_bold_text_with_bright_colors: false
-
-# Colors (Tomorrow Night)
-colors:
- # Default colors
- primary:
- background: '#191919'
- foreground: '#d8dee9'
- #background: '#1d1f21'
- #foreground: '#c5c8c6'
-
- # Bright and dim foreground colors
- #
- # The dimmed foreground color is calculated automatically if it is not
- # present. If the bright foreground color is not set, or
- # `draw_bold_text_with_bright_colors` is `false`, the normal foreground
- # color will be used.
- #dim_foreground: '#828482'
- #bright_foreground: '#eaeaea'
-
- # Cursor colors
- #
- # Colors which should be used to draw the terminal cursor.
- #
- # Allowed values are CellForeground and CellBackground, which reference the
- # affected cell, or hexadecimal colors like #ff00ff.
- #cursor:
- # text: CellBackground
- # cursor: CellForeground
-
- # Vi mode cursor colors
- #
- # Colors for the cursor when the vi mode is active.
- #
- # Allowed values are CellForeground and CellBackground, which reference the
- # affected cell, or hexadecimal colors like #ff00ff.
- #vi_mode_cursor:
- # text: CellBackground
- # cursor: CellForeground
-
- # Search colors
- #
- # Colors used for the search bar and match highlighting.
- #search:
- # Allowed values are CellForeground and CellBackground, which reference the
- # affected cell, or hexadecimal colors like #ff00ff.
- #matches:
- # foreground: '#000000'
- # background: '#ffffff'
- #focused_match:
- # foreground: CellBackground
- # background: CellForeground
-
- #bar:
- # background: '#c5c8c6'
- # foreground: '#1d1f21'
-
- # Line indicator
- #
- # Color used for the indicator displaying the position in history during
- # search and vi mode.
- #
- # By default, these will use the opposing primary color.
- #line_indicator:
- # foreground: None
- # background: None
-
- # Selection colors
- #
- # Colors which should be used to draw the selection area.
- #
- # Allowed values are CellForeground and CellBackground, which reference the
- # affected cell, or hexadecimal colors like #ff00ff.
- #selection:
- # text: CellBackground
- # background: CellForeground
-
- # Normal colors
- normal:
- #black: '#191919'
- black: '#46494d'
- red: '#b02626'
- green: '#40a62f'
- yellow: '#f2e635'
- blue: '#314ad0'
- magenta: '#b30ad0'
- cyan: '#32d0fc'
- white: '#acadb1'
-
- # Bright colors
- bright:
- black: '#666666'
- red: '#ce2727'
- green: '#47c930'
- yellow: '#fff138'
- blue: '#2e4bea'
- magenta: '#cc15ed'
- cyan: '#54d9ff'
- white: '#dbdbdb'
-
- # Dim colors
- dim:
- black: '#676f78'
- red: '#b55454'
- green: '#78a670'
- yellow: '#faf380'
- blue: '#707fd0'
- magenta: '#c583d0'
- cyan: '#8adaf1'
- white: '#e0e3e7'
-
- # Indexed Colors
- #
- # The indexed colors include all colors from 16 to 256.
- # When these are not set, they're filled with sensible defaults.
- #
- # Example:
- # `- { index: 16, color: '#ff00ff' }`
- #
- #indexed_colors: []
-
-# Bell
-#
-# The bell is rung every time the BEL control character is received.
-#bell:
- # Visual Bell Animation
- #
- # Animation effect for flashing the screen when the visual bell is rung.
- #
- # Values for `animation`:
- # - Ease
- # - EaseOut
- # - EaseOutSine
- # - EaseOutQuad
- # - EaseOutCubic
- # - EaseOutQuart
- # - EaseOutQuint
- # - EaseOutExpo
- # - EaseOutCirc
- # - Linear
- #animation: EaseOutExpo
-
- # Duration of the visual bell flash in milliseconds. A `duration` of `0` will
- # disable the visual bell animation.
- #duration: 0
-
- # Visual bell animation color.
- #color: '#ffffff'
-
- # Bell Command
- #
- # This program is executed whenever the bell is rung.
- #
- # When set to `command: None`, no command will be executed.
- #
- # Example:
- # command:
- # program: notify-send
- # args: ["Hello, World!"]
- #
- #command: None
-
-#selection:
- # This string contains all characters that are used as separators for
- # "semantic words" in Alacritty.
- #semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
-
- # When set to `true`, selected text will be copied to the primary clipboard.
- #save_to_clipboard: false
-
-#cursor:
- # Cursor style
- #style:
- # Cursor shape
- #
- # Values for `shape`:
- # - ▇ Block
- # - _ Underline
- # - | Beam
- #shape: Block
-
- # Cursor blinking state
- #
- # Values for `blinking`:
- # - Never: Prevent the cursor from ever blinking
- # - Off: Disable blinking by default
- # - On: Enable blinking by default
- # - Always: Force the cursor to always blink
- #blinking: Off
-
- # Vi mode cursor style
- #
- # If the vi mode cursor style is `None` or not specified, it will fall back to
- # the style of the active value of the normal cursor.
- #
- # See `cursor.style` for available options.
- #vi_mode_style: None
-
- # Cursor blinking interval in milliseconds.
- #blink_interval: 750
-
- # If this is `true`, the cursor will be rendered as a hollow box when the
- # window is not focused.
- #unfocused_hollow: true
-
- # Thickness of the cursor relative to the cell width as floating point number
- # from `0.0` to `1.0`.
- #thickness: 0.15
-
-# Live config reload (changes require restart)
-#live_config_reload: true
-
-# Shell
-#
-# You can set `shell.program` to the path of your favorite shell, e.g.
-# `/bin/fish`. Entries in `shell.args` are passed unmodified as arguments to the
-# shell.
-#
-# Default:
-# - (macOS) /bin/bash --login
-# - (Linux/BSD) user login shell
-# - (Windows) powershell
-#shell:
-# program: /bin/bash
-# args:
-# - --login
-
-# Startup directory
-#
-# Directory the shell is started in. If this is unset, or `None`, the working
-# directory of the parent process will be used.
-#working_directory: None
-
-# Send ESC (\x1b) before characters when alt is pressed.
-#alt_send_esc: true
-
-#mouse:
- # Click settings
- #
- # The `double_click` and `triple_click` settings control the time
- # alacritty should wait for accepting multiple clicks as one double
- # or triple click.
- #double_click: { threshold: 300 }
- #triple_click: { threshold: 300 }
-
- # If this is `true`, the cursor is temporarily hidden when typing.
- #hide_when_typing: false
-
- #url:
- # URL launcher
- #
- # This program is executed when clicking on a text which is recognized as a
- # URL. The URL is always added to the command as the last parameter.
- #
- # When set to `launcher: None`, URL launching will be disabled completely.
- #
- # Default:
- # - (macOS) open
- # - (Linux/BSD) xdg-open
- # - (Windows) explorer
- #launcher:
- # program: xdg-open
- # args: []
-
- # URL modifiers
- #
- # These are the modifiers that need to be held down for opening URLs when
- # clicking on them. The available modifiers are documented in the key
- # binding section.
- #modifiers: None
-
-# Mouse bindings
-#
-# Mouse bindings are specified as a list of objects, much like the key
-# bindings further below.
-#
-# To trigger mouse bindings when an application running within Alacritty
-# captures the mouse, the `Shift` modifier is automatically added as a
-# requirement.
-#
-# Each mouse binding will specify a:
-#
-# - `mouse`:
-#
-# - Middle
-# - Left
-# - Right
-# - Numeric identifier such as `5`
-#
-# - `action` (see key bindings)
-#
-# And optionally:
-#
-# - `mods` (see key bindings)
-#mouse_bindings:
-# - { mouse: Middle, action: PasteSelection }
-
-# Key bindings
-#
-# Key bindings are specified as a list of objects. For example, this is the
-# default paste binding:
-#
-# `- { key: V, mods: Control|Shift, action: Paste }`
-#
-# Each key binding will specify a:
-#
-# - `key`: Identifier of the key pressed
-#
-# - A-Z
-# - F1-F24
-# - Key0-Key9
-#
-# A full list with available key codes can be found here:
-# https://docs.rs/glutin/*/glutin/event/enum.VirtualKeyCode.html#variants
-#
-# Instead of using the name of the keys, the `key` field also supports using
-# the scancode of the desired key. Scancodes have to be specified as a
-# decimal number. This command will allow you to display the hex scancodes
-# for certain keys:
-#
-# `showkey --scancodes`.
-#
-# Then exactly one of:
-#
-# - `chars`: Send a byte sequence to the running application
-#
-# The `chars` field writes the specified string to the terminal. This makes
-# it possible to pass escape sequences. To find escape codes for bindings
-# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
-# of tmux. Note that applications use terminfo to map escape sequences back
-# to keys. It is therefore required to update the terminfo when changing an
-# escape sequence.
-#
-# - `action`: Execute a predefined action
-#
-# - ToggleViMode
-# - SearchForward
-# Start searching toward the right of the search origin.
-# - SearchBackward
-# Start searching toward the left of the search origin.
-# - Copy
-# - Paste
-# - IncreaseFontSize
-# - DecreaseFontSize
-# - ResetFontSize
-# - ScrollPageUp
-# - ScrollPageDown
-# - ScrollHalfPageUp
-# - ScrollHalfPageDown
-# - ScrollLineUp
-# - ScrollLineDown
-# - ScrollToTop
-# - ScrollToBottom
-# - ClearHistory
-# Remove the terminal's scrollback history.
-# - Hide
-# Hide the Alacritty window.
-# - Minimize
-# Minimize the Alacritty window.
-# - Quit
-# Quit Alacritty.
-# - ToggleFullscreen
-# - SpawnNewInstance
-# Spawn a new instance of Alacritty.
-# - ClearLogNotice
-# Clear Alacritty's UI warning and error notice.
-# - ClearSelection
-# Remove the active selection.
-# - ReceiveChar
-# - None
-#
-# - Vi mode exclusive actions:
-#
-# - Open
-# Open URLs at the cursor location with the launcher configured in
-# `url.launcher`.
-# - ToggleNormalSelection
-# - ToggleLineSelection
-# - ToggleBlockSelection
-# - ToggleSemanticSelection
-# Toggle semantic selection based on `selection.semantic_escape_chars`.
-#
-# - Vi mode exclusive cursor motion actions:
-#
-# - Up
-# One line up.
-# - Down
-# One line down.
-# - Left
-# One character left.
-# - Right
-# One character right.
-# - First
-# First column, or beginning of the line when already at the first column.
-# - Last
-# Last column, or beginning of the line when already at the last column.
-# - FirstOccupied
-# First non-empty cell in this terminal row, or first non-empty cell of
-# the line when already at the first cell of the row.
-# - High
-# Top of the screen.
-# - Middle
-# Center of the screen.
-# - Low
-# Bottom of the screen.
-# - SemanticLeft
-# Start of the previous semantically separated word.
-# - SemanticRight
-# Start of the next semantically separated word.
-# - SemanticLeftEnd
-# End of the previous semantically separated word.
-# - SemanticRightEnd
-# End of the next semantically separated word.
-# - WordLeft
-# Start of the previous whitespace separated word.
-# - WordRight
-# Start of the next whitespace separated word.
-# - WordLeftEnd
-# End of the previous whitespace separated word.
-# - WordRightEnd
-# End of the next whitespace separated word.
-# - Bracket
-# Character matching the bracket at the cursor's location.
-# - SearchNext
-# Beginning of the next match.
-# - SearchPrevious
-# Beginning of the previous match.
-# - SearchStart
-# Start of the match to the left of the vi mode cursor.
-# - SearchEnd
-# End of the match to the right of the vi mode cursor.
-#
-# - Search mode exclusive actions:
-# - SearchFocusNext
-# Move the focus to the next search match.
-# - SearchFocusPrevious
-# Move the focus to the previous search match.
-# - SearchConfirm
-# - SearchCancel
-# - SearchClear
-# Reset the search regex.
-# - SearchDeleteWord
-# Delete the last word in the search regex.
-# - SearchHistoryPrevious
-# Go to the previous regex in the search history.
-# - SearchHistoryNext
-# Go to the next regex in the search history.
-#
-# - macOS exclusive actions:
-# - ToggleSimpleFullscreen
-# Enter fullscreen without occupying another space.
-#
-# - Linux/BSD exclusive actions:
-#
-# - CopySelection
-# Copy from the selection buffer.
-# - PasteSelection
-# Paste from the selection buffer.
-#
-# - `command`: Fork and execute a specified command plus arguments
-#
-# The `command` field must be a map containing a `program` string and an
-# `args` array of command line parameter strings. For example:
-# `{ program: "alacritty", args: ["-e", "vttest"] }`
-#
-# And optionally:
-#
-# - `mods`: Key modifiers to filter binding actions
-#
-# - Command
-# - Control
-# - Option
-# - Super
-# - Shift
-# - Alt
-#
-# Multiple `mods` can be combined using `|` like this:
-# `mods: Control|Shift`.
-# Whitespace and capitalization are relevant and must match the example.
-#
-# - `mode`: Indicate a binding for only specific terminal reported modes
-#
-# This is mainly used to send applications the correct escape sequences
-# when in different modes.
-#
-# - AppCursor
-# - AppKeypad
-# - Search
-# - Alt
-# - Vi
-#
-# A `~` operator can be used before a mode to apply the binding whenever
-# the mode is *not* active, e.g. `~Alt`.
-#
-# Bindings are always filled by default, but will be replaced when a new
-# binding with the same triggers is defined. To unset a default binding, it can
-# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
-# a no-op if you do not wish to receive input characters for that binding.
-#
-# If the same trigger is assigned to multiple actions, all of them are executed
-# in the order they were defined in.
-#key_bindings:
- #- { key: Paste, action: Paste }
- #- { key: Copy, action: Copy }
- #- { key: L, mods: Control, action: ClearLogNotice }
- #- { key: L, mods: Control, mode: ~Vi|~Search, chars: "\x0c" }
- #- { key: PageUp, mods: Shift, mode: ~Alt, action: ScrollPageUp, }
- #- { key: PageDown, mods: Shift, mode: ~Alt, action: ScrollPageDown }
- #- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop, }
- #- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom }
-
- # Vi Mode
- #- { key: Space, mods: Shift|Control, mode: Vi|~Search, action: ScrollToBottom }
- #- { key: Space, mods: Shift|Control, mode: ~Search, action: ToggleViMode }
- #- { key: Escape, mode: Vi|~Search, action: ClearSelection }
- #- { key: I, mode: Vi|~Search, action: ScrollToBottom }
- #- { key: I, mode: Vi|~Search, action: ToggleViMode }
- #- { key: C, mods: Control, mode: Vi|~Search, action: ToggleViMode }
- #- { key: Y, mods: Control, mode: Vi|~Search, action: ScrollLineUp }
- #- { key: E, mods: Control, mode: Vi|~Search, action: ScrollLineDown }
- #- { key: G, mode: Vi|~Search, action: ScrollToTop }
- #- { key: G, mods: Shift, mode: Vi|~Search, action: ScrollToBottom }
- #- { key: B, mods: Control, mode: Vi|~Search, action: ScrollPageUp }
- #- { key: F, mods: Control, mode: Vi|~Search, action: ScrollPageDown }
- #- { key: U, mods: Control, mode: Vi|~Search, action: ScrollHalfPageUp }
- #- { key: D, mods: Control, mode: Vi|~Search, action: ScrollHalfPageDown }
- #- { key: Y, mode: Vi|~Search, action: Copy }
- #- { key: Y, mode: Vi|~Search, action: ClearSelection }
- #- { key: Copy, mode: Vi|~Search, action: ClearSelection }
- #- { key: V, mode: Vi|~Search, action: ToggleNormalSelection }
- #- { key: V, mods: Shift, mode: Vi|~Search, action: ToggleLineSelection }
- #- { key: V, mods: Control, mode: Vi|~Search, action: ToggleBlockSelection }
- #- { key: V, mods: Alt, mode: Vi|~Search, action: ToggleSemanticSelection }
- #- { key: Return, mode: Vi|~Search, action: Open }
- #- { key: K, mode: Vi|~Search, action: Up }
- #- { key: J, mode: Vi|~Search, action: Down }
- #- { key: H, mode: Vi|~Search, action: Left }
- #- { key: L, mode: Vi|~Search, action: Right }
- #- { key: Up, mode: Vi|~Search, action: Up }
- #- { key: Down, mode: Vi|~Search, action: Down }
- #- { key: Left, mode: Vi|~Search, action: Left }
- #- { key: Right, mode: Vi|~Search, action: Right }
- #- { key: Key0, mode: Vi|~Search, action: First }
- #- { key: Key4, mods: Shift, mode: Vi|~Search, action: Last }
- #- { key: Key6, mods: Shift, mode: Vi|~Search, action: FirstOccupied }
- #- { key: H, mods: Shift, mode: Vi|~Search, action: High }
- #- { key: M, mods: Shift, mode: Vi|~Search, action: Middle }
- #- { key: L, mods: Shift, mode: Vi|~Search, action: Low }
- #- { key: B, mode: Vi|~Search, action: SemanticLeft }
- #- { key: W, mode: Vi|~Search, action: SemanticRight }
- #- { key: E, mode: Vi|~Search, action: SemanticRightEnd }
- #- { key: B, mods: Shift, mode: Vi|~Search, action: WordLeft }
- #- { key: W, mods: Shift, mode: Vi|~Search, action: WordRight }
- #- { key: E, mods: Shift, mode: Vi|~Search, action: WordRightEnd }
- #- { key: Key5, mods: Shift, mode: Vi|~Search, action: Bracket }
- #- { key: Slash, mode: Vi|~Search, action: SearchForward }
- #- { key: Slash, mods: Shift, mode: Vi|~Search, action: SearchBackward }
- #- { key: N, mode: Vi|~Search, action: SearchNext }
- #- { key: N, mods: Shift, mode: Vi|~Search, action: SearchPrevious }
-
- # Search Mode
- #- { key: Return, mode: Search|Vi, action: SearchConfirm }
- #- { key: Escape, mode: Search, action: SearchCancel }
- #- { key: C, mods: Control, mode: Search, action: SearchCancel }
- #- { key: U, mods: Control, mode: Search, action: SearchClear }
- #- { key: W, mods: Control, mode: Search, action: SearchDeleteWord }
- #- { key: P, mods: Control, mode: Search, action: SearchHistoryPrevious }
- #- { key: N, mods: Control, mode: Search, action: SearchHistoryNext }
- #- { key: Up, mode: Search, action: SearchHistoryPrevious }
- #- { key: Down, mode: Search, action: SearchHistoryNext }
- #- { key: Return, mode: Search|~Vi, action: SearchFocusNext }
- #- { key: Return, mods: Shift, mode: Search|~Vi, action: SearchFocusPrevious }
-
- # (Windows, Linux, and BSD only)
- #- { key: V, mods: Control|Shift, mode: ~Vi, action: Paste }
- #- { key: C, mods: Control|Shift, action: Copy }
- #- { key: F, mods: Control|Shift, mode: ~Search, action: SearchForward }
- #- { key: B, mods: Control|Shift, mode: ~Search, action: SearchBackward }
- #- { key: C, mods: Control|Shift, mode: Vi|~Search, action: ClearSelection }
- #- { key: Insert, mods: Shift, action: PasteSelection }
- #- { key: Key0, mods: Control, action: ResetFontSize }
- #- { key: Equals, mods: Control, action: IncreaseFontSize }
- #- { key: Plus, mods: Control, action: IncreaseFontSize }
- #- { key: NumpadAdd, mods: Control, action: IncreaseFontSize }
- #- { key: Minus, mods: Control, action: DecreaseFontSize }
- #- { key: NumpadSubtract, mods: Control, action: DecreaseFontSize }
-
- # (Windows only)
- #- { key: Return, mods: Alt, action: ToggleFullscreen }
-
- # (macOS only)
- #- { key: K, mods: Command, mode: ~Vi|~Search, chars: "\x0c" }
- #- { key: K, mods: Command, mode: ~Vi|~Search, action: ClearHistory }
- #- { key: Key0, mods: Command, action: ResetFontSize }
- #- { key: Equals, mods: Command, action: IncreaseFontSize }
- #- { key: Plus, mods: Command, action: IncreaseFontSize }
- #- { key: NumpadAdd, mods: Command, action: IncreaseFontSize }
- #- { key: Minus, mods: Command, action: DecreaseFontSize }
- #- { key: NumpadSubtract, mods: Command, action: DecreaseFontSize }
- #- { key: V, mods: Command, action: Paste }
- #- { key: C, mods: Command, action: Copy }
- #- { key: C, mods: Command, mode: Vi|~Search, action: ClearSelection }
- #- { key: H, mods: Command, action: Hide }
- #- { key: M, mods: Command, action: Minimize }
- #- { key: Q, mods: Command, action: Quit }
- #- { key: W, mods: Command, action: Quit }
- #- { key: N, mods: Command, action: SpawnNewInstance }
- #- { key: F, mods: Command|Control, action: ToggleFullscreen }
- #- { key: F, mods: Command, mode: ~Search, action: SearchForward }
- #- { key: B, mods: Command, mode: ~Search, action: SearchBackward }
-
-#debug:
- # Display the time it takes to redraw each frame.
- #render_timer: false
-
- # Keep the log file after quitting Alacritty.
- #persistent_logging: false
-
- # Log level
- #
- # Values for `log_level`:
- # - Off
- # - Error
- # - Warn
- # - Info
- # - Debug
- # - Trace
- #log_level: Warn
-
- # Print all received window events.
- #print_events: false
diff --git a/home/.config/autostart/discord.desktop b/home/.config/autostart/discord.desktop
deleted file mode 100644
index 618ba5a..0000000
--- a/home/.config/autostart/discord.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Name=Discord
-StartupWMClass=discord
-Comment=All-in-one voice and text chat for gamers that's free, secure, and works on both your desktop and phone.
-GenericName=Internet Messenger
-Exec=/opt/discord/Discord --start-minimized
-Icon=discord
-Type=Application
-Categories=Network;InstantMessaging;
-Path=/usr/bin
diff --git a/home/.config/autostart/element.desktop b/home/.config/autostart/element.desktop
deleted file mode 100644
index 01e9c92..0000000
--- a/home/.config/autostart/element.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Name=Element
-StartupWMClass=element
-Comment=Chat client for matrix protocl
-GenericName=Internet Messenger
-Exec=/usr/bin/element-desktop --hidden
-Icon=element
-Type=Application
-Categories=Network;InstantMessaging;
-Path=/usr/bin
diff --git a/home/.config/autostart/opensnitch_ui.desktop b/home/.config/autostart/opensnitch_ui.desktop
deleted file mode 100644
index 4aff5d4..0000000
--- a/home/.config/autostart/opensnitch_ui.desktop
+++ /dev/null
@@ -1,16 +0,0 @@
-[Desktop Entry]
-Type=Application
-Name=OpenSnitch
-Exec=/bin/sh -c 'pkill -15 opensnitch-ui; opensnitch-ui'
-Icon=opensnitch-ui
-GenericName=OpenSnitch Firewall
-GenericName[hu]=OpenSnitch-tűzfal
-Comment=Application firewall
-Comment[es]=Firewall de aplicaciones
-Comment[hu]=Alkalmazási tűzfal
-Terminal=false
-NoDisplay=false
-Categories=System;Filesystem;Network;
-Keywords=system;firewall;policies;security;polkit;policykit;
-X-GNOME-Autostart-Delay=3
-X-GNOME-Autostart-enabled=true
diff --git a/home/.config/bpytop/bpytop.conf b/home/.config/bpytop/bpytop.conf
deleted file mode 100644
index 50344a0..0000000
--- a/home/.config/bpytop/bpytop.conf
+++ /dev/null
@@ -1,112 +0,0 @@
-#? Config file for bpytop v. 1.0.56
-
-#* Color theme, looks for a .theme file in "/usr/[local/]share/bpytop/themes" and "~/.config/bpytop/themes", "Default" for builtin default theme.
-#* Prefix name by a plus sign (+) for a theme located in user themes folder, i.e. color_theme="+monokai"
-color_theme="Default"
-
-#* If the theme set background should be shown, set to False if you want terminal background transparency
-theme_background=True
-
-#* Manually set which boxes to show. Available values are "cpu mem net proc", seperate values with whitespace.
-shown_boxes="cpu mem net proc"
-
-#* Update time in milliseconds, increases automatically if set below internal loops processing time, recommended 2000 ms or above for better sample times for graphs.
-update_ms=400
-
-#* Processes update multiplier, sets how often the process list is updated as a multiplier of "update_ms".
-#* Set to 2 or higher to greatly decrease bpytop cpu usage. (Only integers)
-proc_update_mult=2
-
-#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu responsive",
-#* "cpu lazy" updates top process over time, "cpu responsive" updates top process directly.
-proc_sorting="memory"
-
-#* Reverse sorting order, True or False.
-proc_reversed=False
-
-#* Show processes as a tree
-proc_tree=True
-
-#* Which depth the tree view should auto collapse processes at
-tree_depth=3
-
-#* Use the cpu graph colors in the process list.
-proc_colors=True
-
-#* Use a darkening gradient in the process list.
-proc_gradient=True
-
-#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
-proc_per_core=False
-
-#* Show process memory as bytes instead of percent
-proc_mem_bytes=True
-
-#* Check cpu temperature, needs "osx-cpu-temp" on MacOS X.
-check_temp=True
-
-#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
-cpu_sensor=Auto
-
-#* Show temperatures for cpu cores also if check_temp is True and sensors has been found
-show_coretemp=True
-
-#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
-draw_clock="%X"
-
-#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
-background_update=True
-
-#* Custom cpu model name, empty string to disable.
-custom_cpu_name=""
-
-#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with a comma ",".
-#* Begin line with "exclude=" to change to exclude filter, oterwise defaults to "most include" filter. Example: disks_filter="exclude=/boot, /home/user"
-disks_filter=""
-
-#* Show graphs instead of meters for memory values.
-mem_graphs=False
-
-#* If swap memory should be shown in memory box.
-show_swap=True
-
-#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
-swap_disk=True
-
-#* If mem box should be split to also show disks info.
-show_disks=True
-
-#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
-only_physical=True
-
-#* Read disks list from /etc/fstab. This also disables only_physical.
-use_fstab=False
-
-#* Set fixed values for network graphs, default "10M" = 10 Mibibytes, possible units "K", "M", "G", append with "bit" for bits instead of bytes, i.e "100mbit"
-net_download="10M"
-net_upload="10M"
-
-#* Start in network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
-net_auto=True
-
-#* Sync the scaling for download and upload to whichever currently has the highest scale
-net_sync=False
-
-#* If the network graphs color gradient should scale to bandwith usage or auto scale, bandwith usage is based on "net_download" and "net_upload" values
-net_color_fixed=False
-
-#* Starts with the Network Interface specified here.
-net_iface=
-
-#* Show battery stats in top right if battery is present
-show_battery=True
-
-#* Show init screen at startup, the init screen is purely cosmetical
-show_init=False
-
-#* Enable check for new version from github.com/aristocratos/bpytop at start.
-update_check=True
-
-#* Set loglevel for "~/.config/bpytop/error.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
-#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
-log_level=WARNING
diff --git a/home/.config/discord/settings.json b/home/.config/discord/settings.json
deleted file mode 100644
index 17a35ba..0000000
--- a/home/.config/discord/settings.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "BACKGROUND_COLOR": "#202225",
- "IS_MAXIMIZED": false,
- "IS_MINIMIZED": false,
- "WINDOW_BOUNDS": {
- "x": 912,
- "y": 42,
- "width": 990,
- "height": 1020
- },
- "DANGEROUS_ENABLE_DEVTOOLS_ONLY_ENABLE_IF_YOU_KNOW_WHAT_YOURE_DOING": true,
- "SKIP_HOST_UPDATE": true
-}
diff --git a/home/.config/docker/.keep b/home/.config/docker/.keep
deleted file mode 100644
index e69de29..0000000
diff --git a/home/.config/dunst/dunstrc b/home/.config/dunst/dunstrc
deleted file mode 100644
index 59f3213..0000000
--- a/home/.config/dunst/dunstrc
+++ /dev/null
@@ -1,443 +0,0 @@
-[global]
-
- ### Display ###
-
- # Which monitor should the notifications be shown on
- monitor = 0
-
- # Display notifications on focused monitor. Possible modes:
- # mouse: follow mouse pointer
- # keyboard: follow window with keyboard focus
- # none: don't follow anything
- #
- # keyboard needs a window manager that exports
- # _NET_ACTIVE_WINDOW propery! This should be the case for almost
- # all modern window managers.
- #
- # If this option isn't none, monitor option will be ignored.
- follow = mouse
-
- ### Geometry ###
-
- # Dynamic width from 0 to 300
- # width = (0, 300)
- # constant width of 300
- # width = 300
- width = 270
-
- # The maximum height of a single notification, excluding the frame.
- height = 300
-
- # Position the notification in the top right corner
- origin = top-right
-
- # Offset from the origin
- offset = 30x30
-
- # Scale factor. It is auto-detected if value is 0.
- scale = 0
-
- # Maximum number of notifications (0 means no limit)
- notification_limit = 0
-
- ### Progress bar ###
-
- # Turn on the progress bar. It appears when a progress hint is passed
- # with for example dunstify -h int:value:12
- progress_bar = true
-
- # Set the progress bar height. This includes the frame, so make sure
- # it's at least twice as big as the frame width.
- progress_bar_height = 30
-
- # Set the frame width of the progress bar
- progress_bar_frame_width = 1
-
- # Set the minimum width for the progress bar
- progress_bar_min_width = 150
-
- # Set the maximum width for the progress bar
- progress_bar_max_width = 300
-
- # Show how many messages are currently hidden (because of
- # notification_limit).
- indicate_hidden = yes
-
- # The transparency of the window. Range: [0; 100].
- # This option will only work if a compositing window manager is
- # present (e.g. xcompmgr, compiz, picom, etc.). (X11 only)
- transparency = 20
-
- # Draw a line of "separator_height" pixel height between two
- # notifications. Set to 0 to disable.
- separator_height = 2
-
- # Padding between text and separator.
- padding = 10
-
- # Horizontal padding
- horizontal_padding = 10
-
- # Padding between text and icon.
- text_icon_padding = 0
-
- # Defines width in pixels of fram around the notification window.
- # Set to 0 to disable.
- frame_width = 3
-
- # Defines color of the frame around the notification window
- frame_color = "#aaaaaa"
-
- # Define a color for the separator.
- # possible values are:
- # * auto: dunst tries to find a color fitting to the background;
- # * foreground: use the same color as the foreground;
- # * frame: use the same color as the frame;
- # * anything else will be interpreted as a X color.
- separator_color = frame
-
- # Sort messages by urgency.
- sort = yes
-
- # Don't remove messages if the user is idle (no mouse/keyboard input)
- # for longer than idle_threshold seconds (0 to disable)
- # A client can set the 'transient' hint to bypass this. See the rules
- # section for how to disable this if necessary
- idle_threshold = 120
-
- ### Text ###
- font = JetBrains Mono 11
-
- # The spacing between the lines. If the height is smaller than the
- # font height, it will get raised to the font height.
- line_height = 0
-
- # Possible values are:
- # full: Allow a small subset of html markup in notifications:
- # bold
- # italic
- # strikethrough
- # underline
- #
- # For a complete reference see
- # .
- #
- # strip: This setting is provided for compatibility with some broken
- # clients that send markup even though it's not enabled on the
- # server. Dunst will try to strip the markup but the parsing is
- # simplistic so using this option outside of matching rules for
- # specific applications *IS GREATLY DISCOURAGED*.
- #
- # no: Disable markup parsing, incoming notifications will be treated as
- # plain text. Dunst will not advertise that it has the body-markup
- # capability if this is set as a global setting.
- #
- # It's important to note that markup inside the format option will be parsed
- # regardless of what this is set to.
- markup = full
-
- # The format of the message. Possible variables are:
- # %a appname
- # %s summary
- # %b body
- # %i iconname (including its path)
- # %I iconname (without its path)
- # %p progress value if set ([ 0%] to [100%]) or nothing
- # %n progress value if set without any extra characters
- # %% Literal %
- # Markup is allowed
- format = "%a - %s\n%b"
-
- # Alignment of the message text.
- # Possible values are "left", "center" and "right".
- alignment = left
-
- # Vertical alignment of message text and icon.
- # Possible values are "top", "center" and "bottom".
- vertical_alignment = center
-
- # Wrap longer sentences which don't fit into the horizonal size
- # of the noticication. If set to no, longer sententences will be truncated
- word_wrap = yes
-
- # Specify where to make an ellipsis in the long lines.
- # Possible values are "start", "middle", "end".
- ellipsize = middle
-
- # Ignore newlines '\n' in notifications.
- ignore_newline = no
-
- # Show age of message if message is older than show_age_threshold seconds
- # Set to -1 to disable, 0 to always show.
- show_age_threshold = 60
-
- # Merge multiple notifications with the same content
- stack_duplicates = true
-
- # Hide the count of merged notifications with the same content
- hide_duplicate_count = false
-
- # Display indicators for URLs (U) and actions (A)
- show_indicators = yes
-
- ### Icons ###
-
- # Align icons left/right/off
- icon_position = left
-
- # Scale small icons up to this size, set to 0 to disable. Helpful
- # for e.g. small files or high-dpi screens. In case of conflict,
- # max_icon_size takes precedence over this.
- min_icon_size = 0
-
- # Scale larger icons down to this size, set to 0 to disable
- max_icon_size = 32
-
- # Paths to default icons
- icon_path = /usr/share/icons/hicolor/16x16/status/:/usr/share/icons/hicolor/16x16/devices/:/usr/share/icons/hicolor/16x16/apps/
-
- ### History ###
-
- # Should a notification popped up from history be sticky or timeout
- # as if it would normally do.
- sticky_history = yes
-
- # Maximum amount of notifications kept in history
- history_length = 20
-
- ### Misc/Advanced ###
-
- # dmenu path
- dmenu = /usr/local/bin/dmenu -p dunst:
-
- # Browser for opening urls in content menu
- browser = /usr/bin/xdg-open
-
- # Always run rule-defined scripts, even if the notification is suppressed
- always_run_script = true
-
- # Define the title of the windows spawned by dunst
- title = Dunst
-
- # Define the class of the windows spawned by dunst
- class = Dunst
-
- # Define the corner radius of the notification window
- # in pixel size. If the radius is 0, you have no rounded
- # corners.
- # The radius will be automatically lowered if it exceeds half of the
- # notification height to avoid clipping text and/or icons.
- corner_radius = 0
-
- # Ignore the dbus closeNotification message.
- # Useful to enforce the timeout set by dunst configuration. Without this
- # parameter, an application may close the notification sent before the
- # user defined timeout.
- ignore_dbusclose = false
-
- ### Wayland ###
- # These settings are Wayland-specific. They have no effect when using X11
-
- # Uncomment this if you want to let notications appear under fullscreen
- # applications (default: overlay)
- # layer = top
-
- # Set this to true to use X11 output on Wayland.
- force_xwayland = false
-
- ### Legacy ###
-
- # Use the Xinerama extension instead of RandR for multi-monitor support.
- # This setting is provided for compatibility with older nVidia drivers that
- # do not support RandR and using it on systems that support RandR is highly
- # discouraged.
- #
- # By enabling this setting dunst will not be able to detect when a monitor
- # is connected or disconnected which might break follow mode if the screen
- # layout changes.
- force_xinerama = false
-
- ### Mouse ###
-
- # Defines list of actions for each mouse event
- # Possible values are:
- # * none: Don't do anything.
- # * do_action: Invoke the action determined by the action_name rule. If there is no
- # such action, open the context menu.
- # * open_url: If the notification has exactly one url, open it. If there are multiple
- # ones, open the context menu.
- # * close_current: Close current notification.
- # * close_all: Close all notifications.
- # * context: Open context menu for the notification.
- # * context_all: Open context menu for all notifications.
- # These values can be strung together for each mouse event, and
- # will be executed in sequence.
- mouse_left_click = do_action, open_url, close_current
- mouse_middle_click = context
- mouse_right_click = close_current
-
-# Experimental features that may or may not work correctly. Do not expect them
-# to have a consistent behaviour across releases.
-[experimental]
- # Calculate the dpi to use on a per-monitor basis.
- # If this setting is enabled the Xft.dpi value will be ignored and instead
- # dunst will attempt to calculate an appropriate dpi value for each monitor
- # using the resolution and physical size. This might be useful in setups
- # where there are multiple screens with very different dpi values.
- per_monitor_dpi = false
-
-[urgency_low]
- highlight = "#fe6c5a"
- background = "#1e2137fa"
- frame_color = "#27292c"
- foreground = "#ffffff"
-
- timeout = 5
- # Icon for notifications with low urgency, uncomment to enable
- #icon = /path/to/icon
-
-[urgency_normal]
- highlight = "#fe6c5a"
- background = "#141c21fa"
- frame_color = "#27292c"
- foreground = "#ffffffff"
-
- timeout = 10
- # Icon for notifications with normal urgency, uncomment to enable
- #icon = /path/to/icon
-
-[urgency_critical]
- highlight = "#fe6c5a"
- background = "#dd130ddd"
- frame_color = "#27292c"
- foreground = "#ffffffff"
-
- timeout = 0
- icon = arbt
- # Icon for notifications with critical urgency, uncomment to enable
- #icon = /path/to/icon
-
-
-# Every section that isn't one of the above is interpreted as a rules to
-# override settings for certain messages.
-#
-# Messages can be matched by
-# appname (discouraged, see desktop_entry)
-# body
-# category
-# desktop_entry
-# icon
-# match_transient
-# msg_urgency
-# stack_tag
-# summary
-#
-# and you can override the
-# background
-# foreground
-# format
-# frame_color
-# fullscreen
-# new_icon
-# set_stack_tag
-# set_transient
-# set_category
-# timeout
-# urgency
-# icon_position
-# skip_display
-# history_ignore
-# action_name
-# word_wrap
-# ellipsize
-# alignment
-# hide_text
-#
-# Shell-like globbing will get expanded.
-#
-# Instead of the appname filter, it's recommended to use the desktop_entry filter.
-# GLib based applications export their desktop-entry name. In comparison to the appname,
-# the desktop-entry won't get localized.
-#
-# SCRIPTING
-# You can specify a script that gets run when the rule matches by
-# setting the "script" option.
-# The script will be called as follows:
-# script appname summary body icon urgency
-# where urgency can be "LOW", "NORMAL" or "CRITICAL".
-#
-# NOTE: It might be helpful to run dunst -print in a terminal in order
-# to find fitting options for rules.
-
-# Disable the transient hint so that idle_threshold cannot be bypassed from the
-# client
-#[transient_disable]
-# match_transient = yes
-# set_transient = no
-#
-# Make the handling of transient notifications more strict by making them not
-# be placed in history.
-#[transient_history_ignore]
-# match_transient = yes
-# history_ignore = yes
-
-# fullscreen values
-# show: show the notifications, regardless if there is a fullscreen window opened
-# delay: displays the new notification, if there is no fullscreen window active
-# If the notification is already drawn, it won't get undrawn.
-# pushback: same as delay, but when switching into fullscreen, the notification will get
-# withdrawn from screen again and will get delayed like a new notification
-#[fullscreen_delay_everything]
-# fullscreen = delay
-#[fullscreen_show_critical]
-# msg_urgency = critical
-# fullscreen = show
-
-#[espeak]
-# summary = "*"
-# script = dunst_espeak.sh
-
-#[script-test]
-# summary = "*script*"
-# script = dunst_test.sh
-
-#[ignore]
-# # This notification will not be displayed
-# summary = "foobar"
-# skip_display = true
-
-#[history-ignore]
-# # This notification will not be saved in history
-# summary = "foobar"
-# history_ignore = yes
-
-#[skip-display]
-# # This notification will not be displayed, but will be included in the history
-# summary = "foobar"
-# skip_display = yes
-
-#[signed_on]
-# appname = Pidgin
-# summary = "*signed on*"
-# urgency = low
-#
-#[signed_off]
-# appname = Pidgin
-# summary = *signed off*
-# urgency = low
-#
-#[says]
-# appname = Pidgin
-# summary = *says*
-# urgency = critical
-#
-#[twitter]
-# appname = Pidgin
-# summary = *twitter.com*
-# urgency = normal
-#
-#[stack-volumes]
-# appname = "some_volume_notifiers"
-# set_stack_tag = "volume"
-#
-# vim: ft=cfg
diff --git a/home/.config/flameshot/flameshot.ini b/home/.config/flameshot/flameshot.ini
deleted file mode 100644
index fd0170c..0000000
--- a/home/.config/flameshot/flameshot.ini
+++ /dev/null
@@ -1,44 +0,0 @@
-[General]
-contrastOpacity=188
-disabledTrayIcon=true
-drawColor=#ad00ff
-drawThickness=1
-filenamePattern=Screenshot_%Y-%m-%d_%H-%M-%S
-savePath=/home/itsdrike/Pictures/Screenshots
-savePathFixed=false
-setSaveAsFileExtension=Portable Network Graphic file (PNG) (*.png)
-showStartupLaunchMessage=true
-startupLaunch=true
-
-[Shortcuts]
-TYPE_ARROW=A
-TYPE_CIRCLE=C
-TYPE_CIRCLECOUNT=
-TYPE_COMMIT_CURRENT_TOOL=Ctrl+Return
-TYPE_COPY=Ctrl+C
-TYPE_DELETE_CURRENT_TOOL=Del
-TYPE_DRAWER=D
-TYPE_EXIT=Ctrl+Q
-TYPE_MARKER=M
-TYPE_MOVESELECTION=Ctrl+M
-TYPE_MOVE_DOWN=Down
-TYPE_MOVE_LEFT=Left
-TYPE_MOVE_RIGHT=Right
-TYPE_MOVE_UP=Up
-TYPE_OPEN_APP=Ctrl+O
-TYPE_PENCIL=P
-TYPE_PIN=
-TYPE_PIXELATE=B
-TYPE_RECTANGLE=R
-TYPE_REDO=Ctrl+Shift+Z
-TYPE_RESIZE_DOWN=Shift+Down
-TYPE_RESIZE_LEFT=Shift+Left
-TYPE_RESIZE_RIGHT=Shift+Right
-TYPE_RESIZE_UP=Shift+Up
-TYPE_SAVE=Ctrl+S
-TYPE_SELECTION=S
-TYPE_SELECTIONINDICATOR=
-TYPE_SELECT_ALL=Ctrl+A
-TYPE_TEXT=T
-TYPE_TOGGLE_PANEL=Space
-TYPE_UNDO=Ctrl+Z
diff --git a/home/.config/git/config b/home/.config/git/config
deleted file mode 100644
index 176755b..0000000
--- a/home/.config/git/config
+++ /dev/null
@@ -1,83 +0,0 @@
-[user]
- name = ItsDrike
- email = itsdrike@protonmail.com
- signingkey = B014E761034AF742
-[alias]
- quickclone = "clone --single-branch --depth=1"
- bareclone = "!sh -c 'git clone --bare \"$0\" \"$1\"/.bare; echo \"gitdir: ./.bare\" > \"$1/.git\"'"
- bareinit = "!sh -c 'git init --bare \"$0\"/.bare; echo \"gitdir: ./.bare\" > \"$0/.git\"'"
- cleanup = "!default_branch=$(git remote show origin | awk '/HEAD branch/ {print $NF}'); git remote prune origin && git checkout -q $default_branch && git for-each-ref refs/heads/ '--format=%(refname:short)' | while read branch; do mergeBase=$(git merge-base $default_branch $branch) && [[ $(git cherry $default_branch $(git commit-tree $(git rev-parse $branch^{tree}) -p $mergeBase -m _)) == '-'* ]] && git branch -D $branch; done"
-
- m = "merge"
- p = "push"
- pl = "pull"
- f = "fetch"
-
- s = "status --short --branch"
- ss = "status"
-
- ch = "checkout"
- chb = "checkout -b"
-
- undo = "reset --soft HEAD~"
- redo = "reset HEAD@{1}"
- unstage = "restore --staged"
-
- c = "commit"
- ca = "commit --ammend"
- ci = "commit --interactive"
- cm = "commit --message"
- cv = "commit --verbose"
-
- a = "add"
- aa = "add --all"
- ap = "add --patch"
- au = "add --update"
-
- d = "diff"
- dc = "diff --cached"
- ds = "diff --staged"
- dw = "diff --word-diff"
- dcm = "!sh -c 'git diff $0~ $0'"
-
- b = "branch"
- ba = "branch --all"
- bd = "branch --delete"
- bD = "branch --delete --force"
- bm = "branch --move"
- bM = "branch --move --force"
-
- l = "log --oneline --decorate --all --graph"
- lp = "log --patch"
- lo = "log --pretty=oneline --abbrev-commit --graph"
- lg = "log --all --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --"
-
- set-upstream = "!git branch --set-upstream-to=origin/`git symbolic-ref --short HEAD`"
-
- stash-staged = "!sh -c 'git stash --keep-index; git stash push -m \"staged\" --keep-index; git stash pop stash@{1}'"
-
- find-merge = "!sh -c 'commit=$0 && branch=${1:-HEAD} && (git rev-list $commit..$branch --ancestry-path | cat -n; git rev-list $commit..$branch --first-parent | cat -n) | sort -k2 -s | uniq -f1 -d | sort -n | tail -1 | cut -f2'"
- show-merge = "!sh -c 'merge=$(git find-merge $0 $1) && [ -n \"$merge\" ] && git show $merge'"
-
- comitter-lines = "!git log --author=\"$1\" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf \"added lines: %s, removed lines: %s, total lines: %s\\n\", add, subs, loc }' #"
- total-lines = "!git ls-files | xargs cat | wc -l"
-[credential]
- helper = store --file ~/.config/git/git-credentials
-[core]
- excludefile = ~/.config/git/global_gitignore
- editor = nvim
- pager = delta
-[interactive]
- diffFilter = delta --color-only
-[delta]
- line-numbers = true
-[merge]
- conflictstyle = diff3
-[diff]
- tool = vimdiff
-[fetch]
- prune = true
-[commit]
- gpgsign = true
-[init]
- defaultBranch = main
diff --git a/home/.config/git/global_gitignore b/home/.config/git/global_gitignore
deleted file mode 100644
index 366035c..0000000
--- a/home/.config/git/global_gitignore
+++ /dev/null
@@ -1,25 +0,0 @@
-# vim: filetype=conf
-# Byte-compiled / optimized / DLL Files
-__pycache__/
-*.py[cod]
-*$py.class
-
-# Virtual Environments
-.venv/
-
-# Editor project settings
-## VSCode
-.vscode/
-## PyCharm intellij
-.idea/
-## repl.it
-.replit
-## spyder
-.spyproject/
-.spyderproject/
-
-# Custom attributes for folders on Mac OS
-.DS_Store
-
-# Personal TODO files
-TODO
diff --git a/home/.config/gtk-2.0/gtkfilechooser.ini b/home/.config/gtk-2.0/gtkfilechooser.ini
deleted file mode 100644
index 6171c6a..0000000
--- a/home/.config/gtk-2.0/gtkfilechooser.ini
+++ /dev/null
@@ -1,11 +0,0 @@
-[Filechooser Settings]
-LocationMode=path-bar
-ShowHidden=false
-ShowSizeColumn=true
-GeometryX=510
-GeometryY=260
-GeometryWidth=900
-GeometryHeight=584
-SortColumn=name
-SortOrder=ascending
-StartupMode=recent
diff --git a/home/.config/gtk-2.0/gtkrc b/home/.config/gtk-2.0/gtkrc
deleted file mode 100644
index c8c8cb1..0000000
--- a/home/.config/gtk-2.0/gtkrc
+++ /dev/null
@@ -1,19 +0,0 @@
-# DO NOT EDIT! This file will be overwritten by LXAppearance.
-# Any customization should be done in ~/.gtkrc-2.0.mine instead.
-
-include "/home/itsdrike/.gtkrc-2.0.mine"
-gtk-theme-name="Adwaita-dark"
-gtk-icon-theme-name="Papirus-Breeze-Dark"
-gtk-font-name="Noto Sans, 10"
-gtk-cursor-theme-name="BreezeX-Light"
-gtk-cursor-theme-size=24
-gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
-gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
-gtk-button-images=1
-gtk-menu-images=1
-gtk-enable-event-sounds=1
-gtk-enable-input-feedback-sounds=1
-gtk-xft-antialias=1
-gtk-xft-hinting=1
-gtk-xft-hintstyle="hintslight"
-gtk-modules="colorreload-gtk-module:window-decorations-gtk-module:appmenu-gtk-module"
diff --git a/home/.config/gtk-3.0/bookmarks b/home/.config/gtk-3.0/bookmarks
deleted file mode 100644
index 4539c36..0000000
--- a/home/.config/gtk-3.0/bookmarks
+++ /dev/null
@@ -1,3 +0,0 @@
-file:///home/itsdrike/Pictures Pictures
-file:///home/itsdrike/Downloads Downloads
-file:///home/itsdrike/Personal Personal
diff --git a/home/.config/gtk-3.0/settings.ini b/home/.config/gtk-3.0/settings.ini
deleted file mode 100644
index 25e6c2d..0000000
--- a/home/.config/gtk-3.0/settings.ini
+++ /dev/null
@@ -1,21 +0,0 @@
-[Settings]
-gtk-application-prefer-dark-theme=true
-gtk-button-images=1
-gtk-cursor-theme-name=BreezeX-Light
-gtk-cursor-theme-size=24
-gtk-decoration-layout=icon:minimize,maximize,close
-gtk-enable-animations=true
-gtk-font-name=Noto Sans, 10
-gtk-icon-theme-name=Papirus-Breeze-Dark
-gtk-menu-images=1
-gtk-modules=colorreload-gtk-module:window-decorations-gtk-module:appmenu-gtk-module
-gtk-primary-button-warps-slider=false
-gtk-shell-shows-menubar=1
-gtk-theme-name=Adwaita-dark
-gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
-gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
-gtk-enable-event-sounds=1
-gtk-enable-input-feedback-sounds=1
-gtk-xft-antialias=1
-gtk-xft-hinting=1
-gtk-xft-hintstyle=hintslight
diff --git a/home/.config/java/.keep b/home/.config/java/.keep
deleted file mode 100644
index e69de29..0000000
diff --git a/home/.config/lf/clear_img.sh b/home/.config/lf/clear_img.sh
deleted file mode 100755
index dbc35d7..0000000
--- a/home/.config/lf/clear_img.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-readonly PREVIEW_ID="preview"
-
-printf '{"action": "remove", "identifier": "%s"}\n' "$PREVIEW_ID" > "$FIFO_UEBERZUG"
-
diff --git a/home/.config/lf/draw_img.sh b/home/.config/lf/draw_img.sh
deleted file mode 100755
index 1547ca0..0000000
--- a/home/.config/lf/draw_img.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/sh
-
-path="$1"
-x="$2"
-y="$3"
-width="$4"
-height="$5"
-PREVIEW_ID="preview"
-
-if [ -n "$FIFO_UEBERZUG" ]; then
- printf '{"action": "add", "identifier": "%s", "x": %d, "y": %d, "width": %d, "height": %d, "scaler": "contain", "scaling_position_x": 0.5, "scaling_position_y": 0.5, "path": "%s"}\n' \
- "$PREVIEW_ID" "$x" "$y" "$width" "$height" "$path" > "$FIFO_UEBERZUG"
-else
- # Ueberzug isn't avialable, try to use pixterm
- if command -v pixterm > /dev/null; then
- pixterm -s 2 -tr "$x" -tc "$width" "$path"
- else
- >&2 echo "ueberzug not running, pixterm fallback not found!"
- exit 1
- fi
-fi
diff --git a/home/.config/lf/lfrc b/home/.config/lf/lfrc
deleted file mode 100644
index 8857c5e..0000000
--- a/home/.config/lf/lfrc
+++ /dev/null
@@ -1,144 +0,0 @@
-# Basic settings
-set previewer ~/.config/lf/previewer.sh
-set cleaner ~/.config/lf/clear_img.sh
-set preview true
-set hidden true
-set drawbox true
-set icons true
-set ignorecase true
-set scrolloff 5
-
-# Use $EDITOR for text
-cmd open ${{
- case $(file --mime-type "$f" -bL) in
- text/*|application/json) $EDITOR "$f";;
- *) devour xdg-open "$f" ;;
- esac
-}}
-
-# File/Directory control functions
-cmd mkdir %{{
- printf "Directory Name: "
- read ans
- mkdir $ans
-}}
-
-cmd mkfile %{{
- printf "File Name: "
- read ans
- touch $ans
-}}
-
-cmd chmod %{{
- printf "Mode Bits: "
- read ans
-
- for file in "$fx"; do
- chmod $ans $file
- done
-
- lf -remote 'send reload'
-}}
-
-# Add z.lua functionality for easy autojumps
-cmd zlua %{{
- printf "z.lua input: "
- read ans
-
- /usr/local/src/z.lua/z.lua $ans
-}}
-
-
-# Archive bindings
-cmd unarchive ${{
- case "$f" in
- *.zip) unzip "$f" ;;
- *.tar.gz) tar -xzvf "$f" ;;
- *.tar.bz2) tar -xjvf "$f" ;;
- *.tar) tar -xvf "$f" ;;
- *) echo "Unsuported format" ;;
- esac
-}}
-
-cmd zip %zip -r "$f" "$f"
-cmd tar %tar cvf "$f.tar" "$f"
-cmd targz %tar cvzf "%f.tar.gz" "$f"
-cmd tarbz2 %tar cjvf "$f.tar.bz2" "$f"
-
-# Trash-cli bindings
-cmd trash ${{
- files=$(printf "$fx" | tr '\n' ':')
- while [ "$files" ]; do
- # extract the substring from start of string up to delimeter.
- # this is the first "element" of the string
- file=${files%%:*}
-
- trash-put "$(basename "$file")"
- # if there's only one element left, set `files` to an empty string.
- # this causes us to exit this `while` loop.
- # else, we delete the first "element" of the string from files, and
- # move onto the next.
- if [ "$files" = "$file" ]; then
- files=''
- else
- files="${files#*;}"
- fi
- done
-}}
-
-cmd clear_trash %trash-empty
-
-cmd restore_trash ${{
- trash-restore
-}}
-
-# Bindings
-# Remove some defaults
-map m
-map n
-map "'"
-map '"'
-map d
-map c
-
-# Archive mappings
-map az zip
-map at tar
-map ag targz
-map au unarchive
-
-# Trash mappings
-map dd trash
-map tc clear_trash
-map tr restore_trash
-
-# Basic functions
-map . set hidden!
-map DD delete
-map p paste
-map x cut
-map y copy
-map open
-map md mkdir
-map mf mkfile
-map ch chmod
-map r rename
-map H top
-map L bottom
-map R reload
-map C clear
-map z zlua
-
-# Movement
-map gh cd ~
-map gc cd ~/.config
-map gl cd ~/.local
-map gs cd ~/.local/bin/scripts
-map gtr cd ~/.local/share/Trash/files
-map gE. cd /etc
-map gEp cd /etc/portage
-map gU. cd /usr
-map gUs cd /usr/share
-map gUl cd /usr/local
-map gM cd /mnt
-
diff --git a/home/.config/lf/previewer.sh b/home/.config/lf/previewer.sh
deleted file mode 100755
index 73784f3..0000000
--- a/home/.config/lf/previewer.sh
+++ /dev/null
@@ -1,162 +0,0 @@
-#!/bin/sh
-# This script handles showing file-previews within lf.
-
-# It can also show image previews using ueberzug, however
-# that requires lf to be started with a script that also starts
-# ueberzug alongside of it.
-# (In my dotfiles, this script is in '~/.local/bin/scripts/lfu')
-# Alternatively, we could also handle ANSI previews with pixterms
-# this will be in a pretty low quiality, but it will work without
-# ueberzug. To enable this, change PIXTERM_ENABLED to 1.
-# if both ueberzug and pixterm are enabled, ueberzug takes precedence.
-PIXTERM_ENABLED=1
-
-run_cmd() {
- # Try to run given command, if it is installed.
- # If it isn't try to fallback to text_handle,
- # otherwise fail completely.
- cmd="$1"
- shift
-
- if command -v "$cmd" > /dev/null; then
- $cmd $@
- else
- # If we didn't found the requested command, check if
- # the file is text-like and try to use the text_handle
- # to show the preview, this may not be ideal for given
- # file-format, but at least we won't fail.
- case $(file --mime-type "$1" -bL) in
- # TODO: Consider checking for UTF-8 formatting instead,
- # or show previews for any file-type
- text/*|application/json)
- echo "@@PREVIEW FALLBACK: Using text handle, $cmd command not found!"
- text_handle "$1"
- ;;
- *)
- echo "@@PREVIEW ERROR: Preview failed, $cmd command not found!"
- ;;
- esac
- fi
-}
-
-draw_image() {
- # Draw passed image with use of given draw_script.
- # If the image contains EXIF (metadata) orientation info,
- # handle it and draw the rotated image.
- draw_script="$1"
- file="$2"
- shift
- shift
-
- # Calculate where the image should be placed on the screen.
- num=$(printf "%0.f\n" "`echo "$(tput cols) / 2" | bc`")
- numb=$(printf "%0.f\n" "`echo "$(tput cols) - $num - 1" | bc`")
- numc=$(printf "%0.f\n" "`echo "$(tput lines) - 2" | bc`")
-
- # Handle EXIF (metadata) orientation.
- exif_orientation="$(identify -format '%[EXIF:Orientation]\n' -- "$file")"
- if [ -n "$exif_orientation" ] && [ "$exif_orientation" != 1 ]; then
- # In case `convert` command isn't aviable, ignore EXIF rotation
- if command -v convert > /dev/null; then
- cache=$(mktemp /tmp/thumbcache.XXXXX)
- convert -- "$file" -auto-orient "$cache"
- $draw_script "$cache" $num 1 $numb $numc
- else
- $draw_script "$file" $num 1 $numb $numc
- fi
- else
- $draw_script "$file" $num 1 $numb $numc
- fi
-
- # Exit with status code 1 to signal lf that the function
- # should be re-ran next time instead of caching the result.
- exit 1
-}
-
-media_handle() {
- # Handle media type files (videos, photos). These types of
- # files are usually not stored in any form of textually readable
- # format and they require a special way of displaying them.
- # This mostly uses ueberzug (if available) for this.
-
- draw_script="${XDG_CONFIG_HOME:-$HOME/.config}/lf/draw_img.sh"
- file="$1"
- shift
-
- # Set ENABLED=1 if ueberzug or pixterm is enabled
- command -v pixterm > /dev/null && [ "$PIXTERM_ENABLED" = 1 ] && ENABLED=1
- [ -n "$FIFO_UEBERZUG" ] && [ -f "$draw_script" ] && ENABLED=1
-
- case "$file" in
- *.bmp|*.jpg|*.jpeg|*.png|*.xpm)
- if [ -n "$ENABLED" ]; then
- draw_image $draw_script "$file"
- else
- echo "@@PREVIEW FALLBACK: Using mediainfo, ueberzug isn't available."
- run_cmd mediainfo "$file"
- fi
- ;;
- *.avi|*.mp4|*.wmv|*.dat|*.3gp|*.ogv|*.mkv|*.mpg|*.mpeg|*.vob|*.fl[icv]|*.m2v|\
- *.mov|*.webm|*.ts|*.mts|*.m4v|*.r[am]|*.qt|*.divx)
- if [ -n "$ENABLED" ]; then
- cache="$(mktemp /tmp/thumbcache.XXXXX)"
- ffmpegthumbnailer -i "$file" -o "$cache" -s 0
- draw_image $draw_script "$cache"
- else
- echo "@@PREVIEW FALLBACK: Using exiftool, ueberzug isn't aviable."
- run_cmd exiftool "$file"
- fi
- ;;
- *.wav|*.mp3|*.flac|*.m4a|*.wma|*.ape|*.ac3|*.og[agx]|*.spx|*.opus|*.as[fx]|*.flac)
- # These types can't make use of ueberzug easily, so simply use eixftool
- run_cmd exiftool "$file"
- ;;
- *)
- echo "@@PREVIEW FALLBACK: Unrecognized media file, falling back to text handle."
- text_handle "$file"
- ;;
- esac
-}
-
-text_handle() {
- # Handle all other formats as text and cat them
- # if highlighting tools are aviable, try to use them
- if command -v bat > /dev/null; then
- num=$(printf "%0.f\n" "`echo "$(tput cols) / 2" | bc`")
- numb=$(printf "%d\n" "`echo "$(tput cols) - $num - 3" | bc`")
- bat -pp --color=always --wrap=character --terminal-width="$numb" "$1"
- elif command -v highlight > /dev/null; then
- highlight "$1" --out-format ansi --force
- else
- cat "$1"
- fi
-}
-
-# Capture all directories at first, since they could
-# potentionally match one of the file case statements
-if [ -d "$1" ]; then
- tree "$1" -La 1
-elif [ -f "$1" ]; then
- case "$1" in
- *.tgz|*.tar.gz) run_cmd tar tzf "$1";;
- *.tar.bz2|*.tbz2) run_cmd tar tjf "$1";;
- *.tar.txz|*.txz) run_cmd xz --list "$1";;
- *.tar) run_cmd tar tf "$1";;
- *.zip|*.jar|*.war|*.ear|*.oxt) run_cmd unzip -l "$1";;
- *.rar) run_cmd unrar l "$1";;
- *.7z) run_cmd 7z l "$1";;
- *.iso) run_cmd iso-info --no-header -l "$1";;
- *.o) run_cmd nm "$1" | less ;;
- *.csv) cat "$1" | sed s/,/\\n/g ;;
- *odt,*.ods,*.odp,*.sxw) run_cmd odt2txt "$1";;
- *.doc) run_cmd catdoc "$1" ;;
- *.docx) run_cmd docx2txt "$1" - ;;
- *.torrent) run_cmd transmission-show "$1";;
- *.pdf) run_cmd pdftotext "$1";;
- *.wav|*.mp3|*.flac|*.m4a|*.wma|*.ape|*.ac3|*.og[agx]|*.spx|*.opus|*.as[fx]|*.flac|\
- *.avi|*.mp4|*.wmv|*.dat|*.3gp|*.ogv|*.mkv|*.mpg|*.mpeg|*.vob|*.fl[icv]|*.m2v|*.mov|\
- *.webm|*.ts|*.mts|*.m4v|*.r[am]|*.qt|*.divx|\
- *.bmp|*.jpg|*.jpeg|*.png|*.xpm) media_handle "$1" ;;
- *) text_handle "$1" ;;
- esac
-fi
diff --git a/home/.config/mozilla/.keep b/home/.config/mozilla/.keep
deleted file mode 100644
index e69de29..0000000
diff --git a/home/.config/mpv/input.conf b/home/.config/mpv/input.conf
deleted file mode 100644
index 5ba5b69..0000000
--- a/home/.config/mpv/input.conf
+++ /dev/null
@@ -1,25 +0,0 @@
-# Vim keys seeking
-l seek 5
-h seek -5
-j seek -60
-k seek 60
-
-# Set A-B Loop key to g, since l was rebound
-g ab-loop
-
-# Swap i and I, use lowercase for toggle
-i script-binding stats/display-stats-toggle
-I script-binding stats/display-stats
-
-# Zooming
-- add video-zoom -.25
-+ add video-zoom .25
-# Moving/panning video
-kp8 add video-pan-y .05
-kp6 add video-pan-x -.05
-kp2 add video-pan-y -.05
-kp4 add video-pan-x .05
-kp5 set video-pan-x 0; set video-pan-y 0; set video-zoom 0
-
-# Rotation
-ctrl+r cycle_values video-rotate "90" "180" "270" "0"
diff --git a/home/.config/mpv/input.conf.default b/home/.config/mpv/input.conf.default
deleted file mode 100644
index 38adf14..0000000
--- a/home/.config/mpv/input.conf.default
+++ /dev/null
@@ -1,180 +0,0 @@
-# mpv keybindings
-#
-# Location of user-defined bindings: ~/.config/mpv/input.conf
-#
-# Lines starting with # are comments. Use SHARP to assign the # key.
-# Copy this file and uncomment and edit the bindings you want to change.
-#
-# List of commands and further details: DOCS/man/input.rst
-# List of special keys: --input-keylist
-# Keybindings testing mode: mpv --input-test --force-window --idle
-#
-# Use 'ignore' to unbind a key fully (e.g. 'ctrl+a ignore').
-#
-# Strings need to be quoted and escaped:
-# KEY show-text "This is a single backslash: \\ and a quote: \" !"
-#
-# You can use modifier-key combinations like Shift+Left or Ctrl+Alt+x with
-# the modifiers Shift, Ctrl, Alt and Meta (may not work on the terminal).
-#
-# The default keybindings are hardcoded into the mpv binary.
-# You can disable them completely with: --no-input-default-bindings
-
-# Developer note:
-# On compilation, this file is baked into the mpv binary, and all lines are
-# uncommented (unless '#' is followed by a space) - thus this file defines the
-# default key bindings.
-
-# If this is enabled, treat all the following bindings as default.
-#default-bindings start
-
-#MBTN_LEFT ignore # don't do anything
-#MBTN_LEFT_DBL cycle fullscreen # toggle fullscreen
-#MBTN_RIGHT cycle pause # toggle pause/playback mode
-#MBTN_BACK playlist-prev # skip to the previous file
-#MBTN_FORWARD playlist-next # skip to the next file
-
-# Mouse wheels, touchpad or other input devices that have axes
-# if the input devices supports precise scrolling it will also scale the
-# numeric value accordingly
-#WHEEL_UP seek 10 # seek 10 seconds forward
-#WHEEL_DOWN seek -10 # seek 10 seconds backward
-#WHEEL_LEFT add volume -2 # lower the volume
-#WHEEL_RIGHT add volume 2 # raise the volume
-
-## Seek units are in seconds, but note that these are limited by keyframes
-#RIGHT seek 5 # seek 5 seconds forward
-#LEFT seek -5 # seek 5 seconds backward
-#UP seek 60 # seek 1 minute forward
-#DOWN seek -60 # seek 1 minute backward
-# Do smaller, always exact (non-keyframe-limited), seeks with shift.
-# Don't show them on the OSD (no-osd).
-#Shift+RIGHT no-osd seek 1 exact # seek exactly 1 second forward
-#Shift+LEFT no-osd seek -1 exact # seek exactly 1 second backward
-#Shift+UP no-osd seek 5 exact # seek exactly 5 seconds forward
-#Shift+DOWN no-osd seek -5 exact # seek exactly 5 seconds backward
-#Ctrl+LEFT no-osd sub-seek -1 # seek to the previous subtitle
-#Ctrl+RIGHT no-osd sub-seek 1 # seek to the next subtitle
-#Ctrl+Shift+LEFT sub-step -1 # change subtitle timing such that the previous subtitle is displayed
-#Ctrl+Shift+RIGHT sub-step 1 # change subtitle timing such that the next subtitle is displayed
-#Alt+left add video-pan-x 0.1 # move the video right
-#Alt+right add video-pan-x -0.1 # move the video left
-#Alt+up add video-pan-y 0.1 # move the video down
-#Alt+down add video-pan-y -0.1 # move the video up
-#Alt++ add video-zoom 0.1 # zoom in
-#Alt+- add video-zoom -0.1 # zoom out
-#Alt+BS set video-zoom 0 ; set video-pan-x 0 ; set video-pan-y 0 # reset zoom and pan settings
-#PGUP add chapter 1 # seek to the next chapter
-#PGDWN add chapter -1 # seek to the previous chapter
-#Shift+PGUP seek 600 # seek 10 minutes forward
-#Shift+PGDWN seek -600 # seek 10 minutes backward
-#[ multiply speed 1/1.1 # decrease the playback speed
-#] multiply speed 1.1 # increase the playback speed
-#{ multiply speed 0.5 # halve the playback speed
-#} multiply speed 2.0 # double the playback speed
-#BS set speed 1.0 # reset the speed to normal
-#Shift+BS revert-seek # undo the previous (or marked) seek
-#Shift+Ctrl+BS revert-seek mark # mark the position for revert-seek
-#q quit # exit
-#Q quit-watch-later # exit and remember the playback position
-#q {encode} quit 4 # exit
-#ESC set fullscreen no # leave fullscreen
-#ESC {encode} quit 4 # exit
-#p cycle pause # toggle pause/playback mode
-#. frame-step # advance one frame and pause
-#, frame-back-step # go back by one frame and pause
-#SPACE cycle pause # toggle pause/playback mode
-#> playlist-next # skip to the next file
-#ENTER playlist-next # skip to the next file
-#< playlist-prev # skip to the previous file
-#O no-osd cycle-values osd-level 3 1 # toggle displaying the OSD on user interaction or always
-#o show-progress # show playback progress
-#P show-progress # show playback progress
-#i script-binding stats/display-stats # display information and statistics
-#I script-binding stats/display-stats-toggle # toggle displaying information and statistics
-#` script-binding console/enable # open the console
-#z add sub-delay -0.1 # shift subtitles 100 ms earlier
-#Z add sub-delay +0.1 # delay subtitles by 100 ms
-#x add sub-delay +0.1 # delay subtitles by 100 ms
-#ctrl++ add audio-delay 0.100 # change audio/video sync by delaying the audio
-#ctrl+- add audio-delay -0.100 # change audio/video sync by shifting the audio earlier
-#Shift+g add sub-scale +0.1 # increase the subtitle font size
-#Shift+f add sub-scale -0.1 # decrease the subtitle font size
-#9 add volume -2 # lower the volume
-#/ add volume -2 # lower the volume
-#0 add volume 2 # raise the volume
-#* add volume 2 # raise the volume
-#m cycle mute # toggle mute
-#1 add contrast -1 # decrease the contrast
-#2 add contrast 1 # increase the contrast
-#3 add brightness -1 # decrease the brightness
-#4 add brightness 1 # increase the brightness
-#5 add gamma -1 # decrease the gamma
-#6 add gamma 1 # increase the gamma
-#7 add saturation -1 # decrease the saturation
-#8 add saturation 1 # increase the saturation
-#Alt+0 set current-window-scale 0.5 # halve the window size
-#Alt+1 set current-window-scale 1.0 # reset the window size
-#Alt+2 set current-window-scale 2.0 # double the window size
-#d cycle deinterlace # toggle the deinterlacing filter
-#r add sub-pos -1 # move subtitles up
-#R add sub-pos +1 # move subtitles down
-#t add sub-pos +1 # move subtitles down
-#v cycle sub-visibility # hide or show the subtitles
-#Alt+v cycle secondary-sub-visibility # hide or show the secondary subtitles
-#V cycle sub-ass-vsfilter-aspect-compat # toggle stretching SSA/ASS subtitles with anamorphic videos to match the historical renderer
-#u cycle-values sub-ass-override "force" "no" # toggle overriding SSA/ASS subtitle styles with the normal styles
-#j cycle sub # switch subtitle track
-#J cycle sub down # switch subtitle track backwards
-#SHARP cycle audio # switch audio track
-#_ cycle video # switch video track
-#T cycle ontop # toggle placing the video on top of other windows
-#f cycle fullscreen # toggle fullscreen
-#s screenshot # take a screenshot of the video in its original resolution with subtitles
-#S screenshot video # take a screenshot of the video in its original resolution without subtitles
-#Ctrl+s screenshot window # take a screenshot of the window with OSD and subtitles
-#Alt+s screenshot each-frame # automatically screenshot every frame; issue this command again to stop taking screenshots
-#w add panscan -0.1 # decrease panscan
-#W add panscan +0.1 # shrink black bars by cropping the video
-#e add panscan +0.1 # shrink black bars by cropping the video
-#A cycle-values video-aspect-override "16:9" "4:3" "2.35:1" "-1" # cycle the video aspect ratio ("-1" is the container aspect)
-#POWER quit # exit
-#PLAY cycle pause # toggle pause/playback mode
-#PAUSE cycle pause # toggle pause/playback mode
-#PLAYPAUSE cycle pause # toggle pause/playback mode
-#PLAYONLY set pause no # unpause
-#PAUSEONLY set pause yes # pause
-#STOP quit # exit
-#FORWARD seek 60 # seek 1 minute forward
-#REWIND seek -60 # seek 1 minute backward
-#NEXT playlist-next # skip to the next file
-#PREV playlist-prev # skip to the previous file
-#VOLUME_UP add volume 2 # raise the volume
-#VOLUME_DOWN add volume -2 # lower the volume
-#MUTE cycle mute # toggle mute
-#CLOSE_WIN quit # exit
-#CLOSE_WIN {encode} quit 4 # exit
-#ctrl+w quit # exit
-#E cycle edition # switch edition
-#l ab-loop # set/clear A-B loop points
-#L cycle-values loop-file "inf" "no" # toggle infinite looping
-#ctrl+c quit 4 # exit
-#DEL script-binding osc/visibility # cycle OSC visibility between never, auto (mouse-move) and always
-#ctrl+h cycle-values hwdec "auto" "no" # toggle hardware decoding
-#F8 show-text ${playlist} # show the playlist
-#F9 show-text ${track-list} # show the list of video, audio and sub tracks
-
-#
-# Legacy bindings (may or may not be removed in the future)
-#
-#! add chapter -1 # seek to the previous chapter
-#@ add chapter 1 # seek to the next chapter
-
-#
-# Not assigned by default
-# (not an exhaustive list of unbound commands)
-#
-
-# ? cycle sub-forced-only # toggle DVD forced subs
-# ? stop # stop playback (quit or enter idle mode)
-
diff --git a/home/.config/mpv/mpv.conf b/home/.config/mpv/mpv.conf
deleted file mode 100644
index 3c30981..0000000
--- a/home/.config/mpv/mpv.conf
+++ /dev/null
@@ -1 +0,0 @@
-loop=yes
diff --git a/home/.config/newsboat/config b/home/.config/newsboat/config
deleted file mode 100644
index 52bdcfc..0000000
--- a/home/.config/newsboat/config
+++ /dev/null
@@ -1,47 +0,0 @@
-unbind-key j
-unbind-key k
-unbind-key h
-unbind-key H
-unbind-key L
-unbind-key c
-unbind-key ,
-browser "xdg-open %u"
-
-# Feed settings
-prepopulate-query-feeds yes
-refresh-on-startup yes
-
-# Macros
-macro w set browser "mpv %u" ; open-in-browser ; set browser "xdg-open %u"
-macro r set browser "w3m %u" ; open-in-browser ; set browser "xdg-open %u"
-
-# bind keys
-bind-key ; macro-prefix
-bind-key BACKSPACE quit
-bind-key h quit
-bind-key j down
-bind-key k up
-bind-key l open
-bind-key H prev-feed
-bind-key L next-feed
-bind-key c toggle-show-read-feeds
-
-color background default default
-color listnormal default default
-color listnormal_unread default default
-color listfocus color16 cyan
-color listfocus_unread color16 cyan
-color info default black
-color article default default
-
-highlight article "(^Feed:.*|^Title:.*|^Author:.*)" cyan default bold
-highlight article "(^Link:.*|^Date:.*)" default default
-highlight article "https?://[^ ]+" green default
-
-highlight article "^(Title):.*$" blue default
-highlight article "\\[[0-9][0-9]*\\]" magenta default bold
-highlight article "\\[image\\ [0-9]+\\]" green default bold
-highlight article "\\[embedded flash: [0-9][0-9]*\\]" green default bold
-highlight article ":.*\\(link\\)$" cyan default
-highlight article ":.*\\(image\\)$" blue default
-highlight article ":.*\\(embedded flash\\)$" magenta default
diff --git a/home/.config/newsboat/urls b/home/.config/newsboat/urls
deleted file mode 100644
index 94349e0..0000000
--- a/home/.config/newsboat/urls
+++ /dev/null
@@ -1,2 +0,0 @@
-https://itsdrike.com/posts/index.xml
-https://archlinux.org/feeds/news
diff --git a/home/.config/nomacs/Image Lounge.conf b/home/.config/nomacs/Image Lounge.conf
deleted file mode 100644
index 26dd689..0000000
--- a/home/.config/nomacs/Image Lounge.conf
+++ /dev/null
@@ -1,78 +0,0 @@
-[General]
-DkEditDock=2
-firstTime=false
-geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x5\x89\0\0\0\x18\0\0\aG\0\0\x1\xdf\0\0\x5\x8d\0\0\0\x36\0\0\aC\0\0\x1\xdb\0\0\0\0\0\0\0\0\a\x80\0\0\x5\x8d\0\0\0\x36\0\0\aC\0\0\x1\xdb)
-geometryNomacs=@Rect(1421 54 439 422)
-windowState=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\x1\0\0\0\xdd\0\0\x3\xc4\xfc\x2\0\0\0\x1\xfb\0\0\0\x14\0\x44\0k\0\x45\0\x64\0i\0t\0\x44\0o\0\x63\0k\0\0\0\0\x1e\0\0\x3\xc4\0\0\0\0\0\0\0\0\0\0\0\x3\0\0\x3\xb8\0\0\0>\xfc\x1\0\0\0\x1\xfb\0\0\0\x10\0\x63\0r\0o\0p\0\x44\0o\0\x63\0k\0\0\0\0\0\0\0\x3\xb8\0\0\0\0\0\0\0\0\0\0\x1\xb7\0\0\x1\x88\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x1\0\0\0\x16\0\x45\0\x64\0i\0t\0T\0o\0o\0l\0\x42\0\x61\0r\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)
-
-[AppSettings]
-appMode=0
-currentAppMode=0
-defaultJpgQuality=97
-firstTime.nomacs.3=false
-hideAllPanels=false
-showPlayer=@Variant(\0\0\0\r\0\0\0\x6\0)
-
-[CustomPluginShortcuts]
-Composite%20Image=Composite Image
-Crop%20to%20Metadata=Crop to Metadata
-Crop%20to%20Page=Crop to Page
-Draw%20to%20Page=Draw to Page
-Fake%20Miniatures=Fake Miniatures
-Image%20Transform=Image Transform
-Paint%20on%20Image=Paint on Image
-
-[DisplaySettings]
-bgColorNoMacsRGBA=4281545523
-bgColorWidgetRGBA=2852126720
-fadeSec=@Variant(\0\0\0\x87\0\0\0\0)
-fontColorRGBA=4292730333
-highlightColorRGBA=4278233855
-iconColorRGBA=4292730333
-iconSize=18
-showCrop=true
-themeName312=Dark-Theme.css
-transition=0
-zoomToFit=true
-
-[DkAppManager]
-Apps\size=0
-
-[DkCompressionDialog]
-CompressionCombo0=0
-bgCompressionColor0=4294967295
-
-[DkDialog]
-deleteFileDialog=false
-deleteFileDialog-answer=16384
-overwriteDialog=false
-overwriteDialog-answer=16384
-saveEditDialog=false
-saveEditDialog-answer=16384
-saveTabsDialog=false
-saveTabsDialog-answer=65536
-
-[DkFilePreview]
-windowPosition=1
-
-[DkMetaDataHUD]
-keyValues=File.Filename, File.Path, File.Size, Exif.Image.Make, Exif.Image.Model, Exif.Image.DateTime, Exif.Image.ImageDescription, Exif.Photo.ISO, Exif.Photo.FocalLength, Exif.Photo.ExposureTime, Exif.Photo.Flash, Exif.Photo.FNumber
-numColumns=-1
-windowPosition=3
-
-[MetaDataSettings]
-saveExifOrientation=false
-
-[Page%20Extraction%20Plugin]
-Method=0
-
-[SlideShowSettings]
-time=@Variant(\0\0\0\x87@\xa0\0\0)
-
-[SynchronizeSettings]
-checkForUpdates=true
-disableUpdateInteraction=false
-
-[zooming]
-useLevels=false
-zoomLevels="0.0001,0.001,0.01,0.05,0.1,0.125,0.166,0.25,0.333,0.5,0.66,1,1.5,2,3,4,5,6,7,8,12,16,32,64,128"
diff --git a/home/.config/npm/npmrc b/home/.config/npm/npmrc
deleted file mode 100644
index fc84b78..0000000
--- a/home/.config/npm/npmrc
+++ /dev/null
@@ -1,4 +0,0 @@
-prefix=${XDG_DATA_HOME}/npm
-cache=${XDG_CACHE_HOME}/npm
-tmp=${XDG_RUNTIME_DIR}/npm
-init-module=${XDG_CONFIG_HOME}/npm/config/npm-init.js
diff --git a/home/.config/nvim b/home/.config/nvim
deleted file mode 160000
index 5e10bd3..0000000
--- a/home/.config/nvim
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 5e10bd30328a890bc2f62d8687b3c346a8032b14
diff --git a/home/.config/pcmanfm/default/pcmanfm.conf b/home/.config/pcmanfm/default/pcmanfm.conf
deleted file mode 100644
index 02423f3..0000000
--- a/home/.config/pcmanfm/default/pcmanfm.conf
+++ /dev/null
@@ -1,29 +0,0 @@
-[config]
-bm_open_method=0
-
-[volume]
-mount_on_startup=1
-mount_removable=1
-autorun=1
-
-[autorun]
-x-content/bootable-media=pcmanfm
-
-[ui]
-always_show_tabs=0
-max_tab_chars=32
-win_width=1884
-win_height=1020
-splitter_pos=269
-media_in_new_tab=0
-desktop_folder_new_win=0
-change_tab_on_drop=1
-close_on_unmount=1
-focus_previous=0
-side_pane_mode=places
-view_mode=icon
-show_hidden=0
-sort=desc;ascending;
-toolbar=newtab;navigation;home;
-show_statusbar=1
-pathbar_mode_buttons=1
diff --git a/home/.config/picom.conf b/home/.config/picom.conf
deleted file mode 100644
index 69013a7..0000000
--- a/home/.config/picom.conf
+++ /dev/null
@@ -1,290 +0,0 @@
-# NOTE 1: This configuration when used as-is, requires --experimental-backends
-# command line option to be used, in order to enable the usage of the
-# dual-kawase blur method.
-
-# NOTE 2: With the picom from standard repositories, currently using experimental
-# backends will disable the support for rounded corners. If you want to use both
-# the dual-kawase blur method and rounded corners, you will need to use a fork.
-# However it is not mandantory. If you will use the standard version, you will just
-# see a warning in picom's logs each time it's started, you can disable rounded
-# corners completely to prevent this. If you do want to use a fork, I recommend this:
-# (picom-jonaburg-git on AUR).
-
-# NOTE 3: The shadows are currently disabled, the reason for this are the issues
-# that occur with combining rounded corners and shadows, for more info, check:
-#
-
-
-# General settings
-###################
-
-# Daemonize process. Fork to background after initialization.
-# Causes issues with certain (badly-written) drivers.
-daemon = false
-
-# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
-# `xrender` is the default one.
-# We use GLX since it's generally a lot faster than xrender.
-# There usually aren't anny issues with this, but if you do experience some
-# try falling back to xrender.
-backend = "glx";
-
-# To properly use the GLX backend, we need to enable experimental backends
-experimental-backends = true;
-
-# Enable/Disable VSync.
-vsync = true;
-
-# Enable remote control via D-Bus.
-dbus = false;
-
-# Try to detect WM windows (a non-override-redirect window with no
-# child that has 'WM_STATE') and mark them as active.
-mark-wmwin-focused = true;
-
-# Mark override-redirect windows that doesn't have a child window
-# with 'WM_STATE' focused.
-mark-ovredir-focused = true;
-
-# Try to detect windows with rounded corners and don't consider them
-# shaped windows. The accuracy is not very high, unfortunately.
-detect-rounded-corners = true;
-
-# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
-# not passing '_NET_WM_OPACITY' of client windows to frame windows.
-detect-client-opacity = true;
-
-# Specify refresh rate of the screen. If not specified or 0, picom will
-# try detecting this with X RandR extension.
-refresh-rate = 0;
-
-# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
-# Might cause incorrect opacity when rendering transparent content (but never
-# practically happened) and may not work with blur-background.
-# My tests show a 15% performance boost. Recommended.
-glx-no-stencil = true;
-
-# GLX backend: Avoid rebinding pixmap on window damage.
-# Probably could improve performance on rapid window content changes,
-# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
-# Recommended if it works.
-glx-no-rebind-pixmap = true;
-
-# Disable/Enable the use of damage information.
-# Disabling cause the whole screen to be redrawn everytime, instead of the part
-# of the screen has actually changed. Potentially degrades the performance,
-# but might fix some artifacts. It is recommended to keep this enabled.
-# The opposing option is no-use-damage
-use-damage = true
-
-# Window type settings
-#
-# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
-# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
-# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
-# "tooltip", "notification", "combo", and "dnd".
-#
-# Following per window-type options are available: ::
-#
-# fade, shadow:::
-# Controls window-type-specific shadow and fade settings.
-#
-# opacity:::
-# Controls default opacity of the window type.
-#
-# focus:::
-# Controls whether the window of this type is to be always considered focused.
-# (By default, all window types except "normal" and "dialog" has this on.)
-#
-# full-shadow:::
-# Controls whether shadow is drawn under the parts of the window that you
-# normally won't be able to see. Useful when the window has parts of it
-# transparent, and you want shadows in those areas.
-#
-# redir-ignore:::
-# Controls whether this type of windows should cause screen to become
-# redirected again after been unredirected. If you have unredir-if-possible
-# set, and doesn't want certain window to cause unnecessary screen redirection,
-# you can set this to `true`.
-#
-wintypes:
-{
- normal = { full-shadow = true; blur-background = true; };
- splash = { blur-background = false; };
- menu = { full-shadow = true; };
- tooltip = { fade = true; shadow = false; focus = true;};
- dock = { shadow = false; };
- dnd = { shadow = false; };
- popup_menu = { full-shadow = true; };
- utility = { full-shadow = true; };
- toolbar = { full-shadow = true; };
- notification = { opacity = 1; }
-};
-
-
-# Transparency / Opacity
-#########################
-
-# Specify a list of opacity rules.
-# format: "[Opacity level]:[xprop info name] = '[xprop value]'"
-# - class_g reffers to class in position #0,
-# - class_i reffers to class in position #1
-# Note we don't make any guarantee about possible conflicts with other
-# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
-
-# Apply blur to terminals
-opacity-rule = [
- "100:name = 'Dunst'",
- # Opacities with enabled shadows (shadows allow for higher alpha - lower number)
- #"70:class_g = 'Alacritty'",
- #"70:class_g = 'st-256color'",
- #"70:class_g = 'URxvt'",
- #"70:class_g = 'kitty'",
- #"82:class_g = 'Spotify'"
- # Opacities without shadows
- "80:class_g = 'Alacritty'",
- "80:class_g = 'st-256color'",
- "80:class_g = 'URxvt'",
- "80:class_g = 'kitty'",
- "92:class_g = 'Spotify'"
-];
-
-# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
-active-opacity = 1;
-# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
-inactive-opacity = 1;
-# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
-frame-opacity = 1.0;
-# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
-opacity = 1.0
-# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
-inactive-opacity-override = false
-# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
-inactive-dim = 0.0
-# Use fixed inactive dim value, instead of adjusting according to window opacity.
-inactive-dim-fixed = 1.0
-# Specify a list of conditions of windows that should always be considered focused.
-focus-exclude = []
-
-
-# Background blurring
-########################
-
-blur:
-{
- # dual_kawase blur method requires GLX as backend
- # If you can't get GLX to work, use 'kernel' blur instead.
- # dual_kawase allows for multi-threaded bluring that's
- # very fast.
- method = "dual_kawase";
- #method = "kernel";
- #kernel = "11x11gaussian";
- strength = 4;
- deviation = 1.0;
- # When true, blur background of semi-transparent / ARGB window.
- background = false;
- # When true, the background of windows when the window frame
- # is not opaque is blurred, implies background=true
- background-frame = false;
- # Whe true, use fixeed blur strength rather than adjusing
- # according to window opacity
- background-fixed = false;
- # Specify the blur convolution kernel
- kern = "3x3box"
-}
-
-# Exclude conditions for background blur
-blur-background-exclude = [
- # Prevents picom from blurring the background
- # when taking selection screenshot with `maim`
- "class_g = 'slop'",
- "_GTK_FRAME_EXTENTS@:c"
-];
-
-
-# Shadows
-################
-
-# Enabled client-side shadows on windows. Note desktop windows
-# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
-# unless explicitly requested using the wintypes option.
-shadow = false;
-
-# The blur radius for shadows, in pixels. (defaults to 12)
-shadow-radius = 12;
-# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
-shadow-opacity = 0.75;
-# The left offset for shadows, in pixels. (defaults to -15)
-shadow-offset-x = -15;
-# The top offset for shadows, in pixels. (defaults to -15)
-shadow-offset-y = -15;
-# Red color value of shadow (0.0 - 1.0, defaults to 0).
-shadow-red = 0
-# Green color value of shadow (0.0 - 1.0, defaults to 0).
-shadow-green = 0
-# Blue color value of shadow (0.0 - 1.0, defaults to 0).
-shadow-blue = 0
-# Crop shadow of a window fully on a particular Xinerama screen to the screen.
-xinerama-shadow-crop = false
-
-# Specify a list of conditions of windows that should have no shadow.
-shadow-exclude = [
- "name = 'Notification'",
- "class_g = 'Conky'",
- "class_g ?= 'Notify-osd'",
- "class_g = 'Cairo-clock'",
- "class_g = 'slop'",
- "class_g = 'Polybar'",
- "_GTK_FRAME_EXTENTS@:c"
-];
-
-
-# Window Fading
-################
-
-# Fade windows in/out when opening/closing and when opacity changes,
-# unless no-fading-openclose is used.
-fading = false;
-
-# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
-fade-in-step = 0.07;
-# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
-fade-out-step = 0.1;
-# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
-fade-delta = 10
-# Do not fade on window open/close.
-no-fading-openclose = false
-# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox,
-# Fluxbox, etc.
-no-fading-destroyed-argb = false
-
-# Specify a list of conditions of windows that should not be faded.
-# don't need this, we disable fading for all normal windows with wintypes: {}
-fade-exclude = [
- "class_g = 'slop'" # maim
-]
-
-
-# Corners
-################
-
-# Sets the radius of rounded window corners. When > 0, the compositor will
-# round the corners of windows.
-corner-radius = 12;
-rounded-corners-exclude = [
- "class_g = 'Rofi'",
- "class_g = 'dmenu'",
- "class_g = 'Polybar'",
- "name = 'Notification area'",
- "name = 'Dunst'"
-]
-
-# Rounded corners alone only changes the window, but the borders
-# around it still remain rectangular, round-borders option allows
-# the borders to also be round.
-round-borders = 1;
-# Specify a list of border width rules.
-# format: "[pixels]:[xprop info name] = '[xprop value]'"
-# Note this doesn't have any guarantee about not conflicting with the
-# border width set by the window manager.
-round-borders-rule = [];
diff --git a/home/.config/pki/.keep b/home/.config/pki/.keep
deleted file mode 100644
index e69de29..0000000
diff --git a/home/.config/pypoetry/config.toml b/home/.config/pypoetry/config.toml
deleted file mode 100644
index 5fcef8c..0000000
--- a/home/.config/pypoetry/config.toml
+++ /dev/null
@@ -1,3 +0,0 @@
-[virtualenvs]
-in-project = true
-prefer-active-python = true
diff --git a/home/.config/shell/aliases b/home/.config/shell/aliases
deleted file mode 100755
index e99994c..0000000
--- a/home/.config/shell/aliases
+++ /dev/null
@@ -1,294 +0,0 @@
-#!/bin/sh
-
-# I'm not the greatest typist
-alias sl='ls'
-alias mdkir='mkdir'
-alias soruce='source'
-alias souce='source'
-alias suod='sudo '
-alias sduo='sudo '
-
-# Replacements (adding flags)
-alias cp='cp -iv' # Ask before overwriting, verbose
-alias mv='mv -iv' # Ask before overwriting, verbose
-alias rm='trash-put' # Use trash-cli instead of true removal
-alias rmr='\rm -v' # True rm, verbose (asking here is too annoying)
-alias wget='wget -c' # Resume wget by default
-alias df='df -H' # Show sizes as powers of 1000
-
-# Directory changing
-alias ..='cd ..'
-alias ...='cd ../../'
-alias ....='cd ../../../'
-alias .....='cd ../../../../'
-alias .2='cd ../../'
-alias .3='cd ../../../'
-alias .4='cd ../../../../'
-alias .5='cd ../../../../../'
-
-# Files/Directories utilities
-alias mkdir='mkdir -p'
-alias md='mkdir'
-alias fhere='find . -name'
-alias rr='rmr -r'
-alias rf='rmr -f'
-alias rrf='rmr -rf'
-alias vimdiff='nvim -d'
-
-# Directory listing aliases, defaults to exa, if aviable
-if command -v exa > /dev/null; then
- alias ls='exa'
- alias l='exa -glah --classify'
- alias ll='exa -glah --classify -s=size --group-directories-first -r'
- alias ldir='exa -glahD'
- alias tree='exa -Tlagh'
- alias dotall='exa -hulad .[a-z]*' # Show both dotdirs and dotfiles
- alias dotfiles='dotall | grep -v ^d' # Show all dotfiles
- alias dotdirs='dotall | grep --color=never ^d' # Show all dotdirs
-else
- alias ls='ls --color=auto'
- alias l='ls -lahX --classify'
- alias ll='ls -lahX --classify --group-directories-first'
- alias ldir='ls -lahX --classify | grep --color=never ^d'
- alias dotall='ls -lahXd .[a-z]*'
- alias dotfiles='dotall | grep -v ^d'
- alias dotdirs='dotall | grep --color=never ^d'
-fi
-
-# Config access shortcuts
-alias cfzsh='vim ~/.config/zsh/.zshrc'
-alias cfalias='vim ~/.config/shell/aliases'
-alias cffunctions='vim ~/.config/shell/functions'
-alias cfprofile='vim ~/.config/shell/profile'
-alias cfenvironment='vim ~/.config/shell/environment'
-alias cfenv='cfenvironment'
-alias cfhandlers='vim ~/.config/shell/handlers'
-alias cfprompt='vim ~/.config/shell/prompt'
-alias cfkeybinds='vim ~/.config/shell/keybinds'
-alias cfxprofile='vim ~/.config/x11/xprofile'
-alias cfxmonad='vim ~/.config/xmonad/xmonad.hs && xmonad --recompile && xmonad --restart'
-alias cfxmobar='vim ~/.config/xmobar/xmobarrc.hs && ~/.config/xmobar/multi_mon.sh 2'
-alias cftodo='vim ~/Personal/vimwiki/todo.md'
-alias cfnvim='vim ~/.config/nvim'
-alias cfvim='cfnvim'
-
-# z.lua shortcuts
-alias j='z' # for the sake of autojump old habits
-alias zz='z -c' # restrict matches to subdirs of $PWD
-alias zb='z -b' # restrict matches to parent directories
-alias zi='z -I' # cd with interactive fzf selection
-alias zbi='z -b -I' # pick parent directory to cd into with fzf
-
-# Fallbacks
-command -v hd > /dev/null || alias hd='hexdump -C' # Cannonical hex dump; some systems have this symlinked
-command -v md5sum > /dev/null || alias md5sum='md5' # Fallback from `md5sum` to `md5`
-command -v sha1sum > /dev/null || alias sha1sum='shasum' # Fallback from `sha1sum` to `shasum`
-command -v vim > /dev/null && alias vi='vim' # Let vim take precedence over vi
-command -v nvim > /dev/null && alias vi='nvim' && alias vim='nvim' # Let nvim take precedence over vi/vim
-command -v vimtutor > /dev/null || alias vimtutor='nvim -c Tutor' # Let vimtutor fallback to nvim's tutor
-
-# X11 clipboard (either using xclip or xsel, xsel takes precedence if both)
-command -v xclip > /dev/null && alias pbcopy='xclip -selection clipboard'
-command -v xclip > /dev/null && alias pbpaste='xclip -selection clipboard -o'
-command -v xsel > /dev/null && alias pbcopy='xsel --clipboard --input'
-command -v xsel > /dev/null && alias pbpaste='xsel --clipboard --output'
-
-# File validation and manipulation
-alias yamlcheck='python -c "import sys, yaml as y; y.safe_load(open(sys.argv[1]))"' # Validate YAML
-alias jsoncheck='jq "." >/dev/null <' # Validate JSON
-alias urlencode='python2 -c "import sys, urllib as ul; print ul.quote_plus(sys.argv[1]);"' # Encode strings as URLs (space->%20, etc.)
-alias mergepdf='gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=_merged.pdf' # Usage: `mergepdf input{1,2,3}.pdf``
-alias encrypt='gpg -c --no-symkey-cache --cipher-algo AES256' # Encrypt file with AES256 symetric encryption
-alias decrypt='gpg' # For the sake of completeness, include decrypt command to the above, though it's only just gpg alias
-
-# Terminal window swallowing for blocking programs (devour)
-alias xdg-open='devour xdg-open'
-alias mpv='devour mpv'
-alias nomacs='devour nomacs'
-alias pcmanfm='devour pcmanfm'
-alias spotify='devour spotify'
-
-# Regular expressions
-alias reg_email='echo "[a-Z0-9._%-]+@[a-Z0-9.-]+\.[a-Z]{2,10}"'
-alias reg_mac='echo "([[:xdigit:]]{2}:){5}[[:xdigit:]]{2}"'
-alias reg_ipv4='echo "([0-9]{1,3}\.){3}[0-9]{1,3}"'
-alias reg_ipv6='echo "\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*"' # Also catches loopbacks (::1), (for valid matching, it needs to be this long...)
-alias reg_ip='echo "(`reg_ipv4`|`reg_ipv6`)"' # Match both IPv4 and IPv6
-
-# Grep aliases
-alias grep_email='grep -E `reg_email`'
-alias grep_ip='grep -E `reg_ip`'
-alias grep_mac='grep -E `reg_mac`'
-alias massgrep='grep -RHIni'
-
-# Network
-alias ip-show='curl https://ifconfig.co' # Get global IP address
-alias ips="ifconfig -a | grep -oE \"inet6? (addr:)?s?\`reg_ip\`\" | awk '{ sub(/inet6? (addr:)? ?/, \"\"); print }'"
-alias lan-device-scan='nmap -T5 -sP 192.168.0.0-255'
-alias lan-vuln-scan='nmap -sT -O --script vuln 192.168.0.0-255'
-alias ports='netstat -tulanp'
-alias listening-ports='netstat -vtlnp --listening'
-alias ssh-list='ss | grep ssh' # List all SSH connections
-alias serve='python -m http.server' # Serve current directorty as HTTP
-alias reverse-dns='host' # It might be easier to just use `host` though
-alias torify='source torsocks on' # Pass every command via torsocks
-alias untorify='source torsocks off' # Stop passing commands via torsocks
-
-# Firewall aliases (IPTables/UFW)
-alias ipt='iptables' # Shortcut
-alias iptlist='iptables -L -n -v --line-numbers' # All rules
-alias iptlistin='iptables -L INPUT -n -v --line-numbers' # IN rules
-alias iptlistout='iptables -L OUTPUT -n -v --line-numbers' # OUT rules
-alias iptlistfw='iptables -L FORWARD -n -v --line-numbers' # FORWARD rules
-alias ufw-log='journalctl -f -n 100 -g ufw' # Show UFW log entries in system journal
-
-# Kernel actions
-alias kernel-recompile='cd /usr/src/linux && make -j7 && make -j7 modules_install && make install'
-alias kernel-oldconfig='cd /usr/src/linux && make oldconfig'
-alias kernel-configure='cd /usr/src/linux && make menuconfig'
-
-# System actions
-alias sv='systemctl'
-alias pacnew="find / -name '*.pacnew' 2>/dev/null" # Search for all new configurations after pacman update
-alias backup="rsync -avHAXS --delete --filter='dir-merge /.rsync-filter'" # Make full rsync backup, respecting .rsync-filter files for exclusions
-alias upload='curl -F "f:1=<-" ix.io'
-alias upload-journal='sudo journalctl -b -1 | upload' # Upload journalctl from last boot to ix.io
-alias auth-log='journalctl SYSLOG_FACILITY=10 -r'
-alias cpu-stress='for i in $(seq $(getconf _NPROCESSORS_ONLN)); do yes > /dev/null & done' # Run `yes > /dev/null` on all cores as stress test
-alias nvidia='__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia' # Run app with nvidia (on hybrid mode with optimus)
-alias swapout='sudo swapoff -a; sudo swapon -a' # Reset swap (move everything to RAM)
-alias mount-ram='mount -t tmpfs tmpfs' # Mount RAM disk for fast filesystem
-alias screenlock='xset s activate' # Use DPMS to trigger xss-lock and handle screen locking
-
-# System info
-alias meminfo='free -m -l -t'
-alias cpuinfo='lscpu'
-alias batinfo='sudo watch -d -n 2 tlp-stat -b'
-alias battery='cat /sys/class/power_supply/BAT0/capacity'
-alias gpumeminfo='frep -i --color memory /var/log/Xorg.0.log'
-alias journalerr='sudo journalctl -p 3 -xb'
-alias distro='cat /etc/*-release'
-alias diskspace_report="df -P -kHl"
-alias kernel='uname -r'
-
-# System processes
-alias psmem='ps auxf | sort -nr -k 4' # Top memory eaters
-alias psmem10='psmem | head -10' # Top 10 memory eaters
-alias pscpu='ps auxf | sort -nr -k 3' # Top cpu eaters
-alias pscpu10='pscpu | head -10' # Top 10 cpu eaters
-alias psg='ps aux | grep -v grep | grep -i -e VSZ -e' # Get searchable process with nice output
-
-# Time info
-alias now='date +"%T"'
-alias nowtime='now'
-alias nowdate='date +"%d-%m-%Y"'
-alias week='date +%V'
-
-# Cleanup
-alias clean-trash='rm -rf ~/.local/share/Trash/* || echo "Trash already empty"'
-alias clean-downloads='rm -rf ~/Downloads/* || echo "Downloads directory is already empty"'
-alias clean-journal='journalctl --vacuum-size=200M || echo "You have to be root to clean journal"'
-alias clean-pacman='pacman -Sc || echo "You have to be root to clean pacman cache"'
-alias cleanup='clean-trash && clean-down && clean-journal && clean-pacman'
-
-# Git aliases
-alias g='git'
-alias gp='git push'
-alias gpl='git pull'
-alias gf='git fetch'
-alias gs='git status --short --branch'
-alias gss='git status'
-alias ga='git add'
-alias gap='git add --patch'
-alias gc='git commit'
-alias gcm='git commit --message'
-alias gb='git branch'
-alias gch='git checkout'
-alias gchb='git checkout -b'
-alias gd='git diff'
-alias gdc='git diff --cached'
-alias gundo='git reset --soft HEAD~'
-alias gredo="git reset 'HEAD@{1}'"
-
-# Youtube-dl aliases
-alias ytv-best='youtube-dl -f bestvideo+bestaudio'
-alias yta-best='youtube-dl --extract-audio --audio-format best'
-alias yta-mp3='youtube-dl --extract-audio --audio-format mp3'
-alias yta-wav='youtube-dl --extract-audio --audio-format wav'
-
-# Terminal vim-like exits, in case I think the terminal is vim
-alias :q='exit'
-alias :q!='exit'
-alias :wq='exit'
-alias :wq!='exit'
-
-# Shell aliases
-alias reload="exec \$SHELL" # Reload the shell (i.e. invoke as a login shell)
-alias path='echo -e ${PATH//:/\\n}' # Print each PATH entry on a separate line
-alias unsudo='sudo -k' # Reset sudo timeout (sudo will require password)
-alias vimwiki='vim -c VimwikiIndex' # Open vimwiki index
-alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
-alias tty-clock='tty-clock -Ssc' # Terminal clock screensaver
-alias rick='curl -s -L https://raw.githubusercontent.com/ItsDrike/rickrollrc/master/roll.sh| bash' # Terminal rickroll
-alias hist='fc -lt "$HISTTIMEFORMAT" 1'
-
-# If user is not root, pass all commands via sudo/doas
-if [ "$(id -u)" -ne 0 ]; then
- # Enable aliases to be sudoed/doased
- # with doas having precedence over sudo if found
-
- ## Uncomment if you are using autocompletion (is ZSH)
- #command -v /usr/bin/sudo > /dev/null && alias doas='nocorrect sudo ' && alias sudo='nocorrect sudo '
- #command -v /usr/bin/doas > /dev/null && alias doas='nocorrect doas ' && alias sudo='nocorrect doas '
-
- ## if the above is uncommented, comment this
- command -v /usr/bin/sudo > /dev/null && alias doas='sudo ' && alias sudo='sudo '
- command -v /usr/bin/doas > /dev/null && alias doas='doas ' && alias sudo='doas '
-fi
-
-# enable color support
-if [ -x /usr/bin/dircolors ]; then
- (test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)") || eval "$(dircolors -b)"
- alias dir='dir --color=auto'
- alias vdir='vdir --color=auto'
-
- alias grep='grep --color=auto'
- alias cgrep='grep --color=always'
- alias fgrep='fgrep --color=auto'
- alias egrep='egrep --color=auto'
-
- alias diff='diff --color=auto'
- alias ip='ip --color=auto'
-
- # Take advantage of $LS_COLORS for completion as well
- zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
-fi
-
-# Normalize `open` across Linux, macOS, and Windows.
-# This is needed to make `open` function (see below) cross-platform
-if [ ! "$(uname -s)" = 'Darwin' ]; then
- if grep -q Microsoft /proc/version; then
- # Ubuntu on Windows using the Linux subsystem
- alias open='explorer.exe'
- else
- alias open='xdg-open'
- fi
-fi
-
-# Autogenerate python aliases
-if [ -f ~/.config/shell/py-alias ]; then
- # shellcheck source=/home/itsdrike/.config/shell/py-alias
- . "$HOME/.config/shell/py-alias"
-fi
-
-# Functions
-if [ -f ~/.config/shell/functions ]; then
- # shellcheck source=/home/itsdrike/.config/shell/functions
- . "$HOME/.config/shell/functions"
-fi
-
-# Extra
-if [ -f ~/.config/shell/extra ]; then
- # shellcheck source=/home/itsdrike/.config/shell/extra
- . "$HOME/.config/shell/extra"
-fi
diff --git a/home/.config/shell/environment b/home/.config/shell/environment
deleted file mode 100755
index 88e0bd9..0000000
--- a/home/.config/shell/environment
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/sh
-
-# Environmental variable definitions.
-# This file is only sourced once after login, unlike .zshrc/.bashrc
-#
-# NOTE: This file shouldn't be defined for root account. Sudo
-# will not source it (and neither will it source .zshrc/.zprofile),
-# which means the XDG definitions will be ignored anyway, and
-# defining them may break programs when root is actually logged in.
-
-# Define some variables for POSIX compatibility
-uid="$(id -u)"
-
-# Default programs
-export EDITOR="nvim"
-export BROWSER="firefox"
-export TERMINAL="alacritty"
-export DIFFPROG="nvim -d"
-export FILEMANAGER="pcmanfm"
-
-# XDG Standard paths
-export XDG_CONFIG_HOME="$HOME/.config"
-export XDG_CACHE_HOME="$HOME/.cache"
-export XDG_DATA_HOME="$HOME/.local/share"
-export XDG_RUNTIME_DIR="/run/user/$uid"
-
-# Per-Application XDG settings
-export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
-export XINITRC="$XDG_CONFIG_HOME/x11/xinitrc"
-#export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority" # This line will break some DMs.
-export LESSHISTFILE="-"
-export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc"
-export WGETRC="$XDG_CONFIG_HOME/wget/wgetrc"
-export GNUPGHOME="$XDG_DATA_HOME/gnupg"
-# Less commonly used applications
-export _ZL_DATA="$XDG_DATA_HOME/zlua"
-export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc"
-export SQLITE_HISTORY="$XDG_DATA_HOME/sqlite_history"
-export WAKATIME_HOME="$XDG_CONFIG_HOME/wakatime"
-export GOPATH="$XDG_DATA_HOME/go"
-export IPYTHONDIR="$XDG_CONFIG_HOME/ipython"
-export PYENV_ROOT="$XDG_DATA_HOME/pyenv"
-export MYPY_CACHE_DIR="$XDG_CACHE_HOME/mypy"
-export CARGO_HOME="$XDG_DATA_HOME/cargo"
-export RUSTUP_HOME="$XDG_DATA_HOME/rustup"
-export GRADLE_USER_HOME="$XDG_DATA_HOME/gradle"
-export _JAVA_OPTIONS="-Djava.util.prefs.userRoot=$XDG_CONFIG_HOME/java"
-#export PYLINTHOME="$XDG_CACHE_HOME/pylint"
-#export DOCKER_CONFIG="$XDG_CONFIG_HOME/docker"
-#export CUDA_CACHE_PATH="$XDG_CACHE_HOME/nv"
-
-# Colorful man pages
-# If bat is installed, use it as manpager
-# shellcheck disable=SC2155
-if command -v bat > /dev/null; then
- export MANPAGER="sh -c 'col -bx | bat -l man -p'"
-else
- export LESS_TERMCAP_mb="$(printf '%b' '[1;31m')"
- export LESS_TERMCAP_md="$(printf '%b' '[1;36m')"
- export LESS_TERMCAP_me="$(printf '%b' '[0m')"
- export LESS_TERMCAP_so="$(printf '%b' '[01;44;33m')"
- export LESS_TERMCAP_se="$(printf '%b' '[0m')"
- export LESS_TERMCAP_us="$(printf '%b' '[1;32m')"
- export LESS_TERMCAP_ue="$(printf '%b' '[0m')"
-fi
-
-# Other program settings
-export HISTTIMEFORMAT="%Y-%m-%d %T "
-export SUDO_ASKPASS="$HOME/.local/bin/scripts/dmenu/dmenupass"
-export PIPENV_VENV_IN_PROJECT=1 # Force pipenv to create new environments within projects ./.venv
-export XSECURELOCK_SHOW_HOSTNAME=0 # Don't show hostname in xsecurelock
-export XSECURELOCK_SHOW_DATETIME=1 # Show current date and time in xsecurelock
-export QT_QPA_PLATFORMTHEME="qt5ct" # Have QT use theme from qt5ct.
-#export QT_STYLE_OVERRIDE="gtk2" # Have QT use the gtk2 theme (needs aur/qt5-styleplugins)
-
-# Remove irrelevant variables added for posix compatibility
-unset posix
-
diff --git a/home/.config/shell/functions b/home/.config/shell/functions
deleted file mode 100755
index 81c8b26..0000000
--- a/home/.config/shell/functions
+++ /dev/null
@@ -1,291 +0,0 @@
-#!/bin/sh
-# TODO: Currently, this file isn't entirely POSIX compatible,
-# it will run fine with bash or zsh, however some functions may cause
-# issues with pure POSIX. The fill will however run fine, the errors
-# would only occur if the incompatible functions would be started.
-
-# Show application listening on given port
-port() {
- sudo netstat -pln | grep "$1" | awk '{print $NF}'
-}
-
-# Create a new directory and enter it
-mkd() {
- # shellcheck disable=SC2164
- mkdir -p "$1" && cd "$1";
-}
-
-# `o` with no arguments opens the current directory, otherwise opens the given
-# location
-o() {
- if [ $# -eq 0 ]; then
- open .;
- else
- open "$@";
- fi;
-}
-
-# Use bat for nicer git diffs
-batdiff() {
- git diff --name-only --diff-filter=d | xargs bat --diff
-}
-
-# Determine size of a file or total size of a directory
-dirsize() {
- if du -b /dev/null > /dev/null 2>&1; then
- arg=-sbh;
- else
- arg=-sh;
- fi
- if [[ -n "$*" ]]; then
- \du $arg -- "$@";
- else
- \du $arg .[^.]* ./*;
- fi;
-}
-
-randmac() {
- sudo ip link set dev "$1" down
- sudo macchanger -A "$1"
- sudo ip link set dev "$1" up
-}
-
-# Go to the root of a git tree
-cdgit () {
- if [ "$(git rev-parse --is-inside-work-tree > /dev/null 2>&1)" -eq 0 ]; then
- while ! [ -d .git ]; do
- cd ..
- done
- return 0
- else
- echo "Not a git directory"
- return 1
- fi
-}
-
-# Create a data URL from a file
-dataurl() {
- mimeType="$(file -b --mime-type "$1")"
- if echo "$mimeType" | grep -e "^text/.*$" >/dev/null; then
- mimeType="${mimeType};charset=utf-8"
- fi
- echo "data:${mimeType};base64,$(openssl base64 -in "$1" | tr -d '\n')";
-}
-
-# `tre` is a shorthand for `tree` with hidden files and color enabled, ignoring
-# the `.git` directory, listing directories first. The output gets piped into
-# `less` with options to preserve color and line numbers, unless the output is
-# small enough for one screen.
-tre() {
- tree -I '.git|node_modules|bower_components' --group-directories-first "$@" | less -FRNX;
-}
-
-
-
-# Show all the names (CNs and SANs) listed in the SSL certificate
-# for a given domain
-getcertnames() {
- if [ -z "${1}" ]; then
- echo "ERROR: No domain specified.";
- return 1;
- fi;
-
- domain="${1}";
- echo "Testing ${domain}…";
- echo ""; # newline
-
- tmp=$(echo -e "GET / HTTP/1.0\nEOT" \
- | openssl s_client -connect "${domain}:443" -servername "${domain}" 2>&1);
-
- if [[ "${tmp}" = *"-----BEGIN CERTIFICATE-----"* ]]; then
- certText=$(echo "${tmp}" \
- | openssl x509 -text -certopt "no_aux, no_header, no_issuer, no_pubkey, \
- no_serial, no_sigdump, no_signame, no_validity, no_version");
- echo "Common Name:";
- echo ""; # newline
- echo "${certText}" | grep "Subject:" | sed -e "s/^.*CN=//" | sed -e "s/\/emailAddress=.*//";
- echo ""; # newline
- echo "Subject Alternative Name(s):";
- echo ""; # newline
- echo "${certText}" | grep -A 1 "Subject Alternative Name:" \
- | sed -e "2s/DNS://g" -e "s/ //g" | tr "," "\n" | tail -n +2;
- return 0;
- else
- echo "ERROR: Certificate not found.";
- return 1;
- fi;
-}
-
-# Compare original and gzipped file size
-gz_compare() {
- origsize=$(wc -c < "$1");
- gzipsize=$(gzip -c "$1" | wc -c);
- ratio=$(echo "$gzipsize * 100 / $origsize" | bc -l);
- printf "orig: %d bytes\n" "$origsize";
- printf "gzip: %d bytes (%2.2f%%)\n" "$gzipsize" "$ratio";
-}
-
-# Extract almost any archive
-extract() {
- if [ -z "$1" ]; then
- # display usage if no parameters given
- echo "Usage: extract ."
- echo " extract [path/file_name_2.ext] [path/file_name_3.ext]"
- return 1
- else
- for n in "$@"
- do
- if [ -f "$n" ] ; then
- case "${n%,}" in
- *.tar.bz2|*.tar.gz|*.tar.xz|*.tbz2|*.tgz|*.txz|*.tar)
- tar xvf "$n" ;;
- *.lzma) unlzma ./"$n" ;;
- *.bz2) bunzip2 ./"$n" ;;
- *.rar) unrar x -ad ./"$n" ;;
- *.gz) gunzip ./"$n" ;;
- *.zip) unzip ./"$n" ;;
- *.z) uncompress ./"$n" ;;
- *.7z|*.arj|*.cab|*.chm|*.deb|*.dmg|*.iso|*.lzh|*.msi|*.rpm|*.udf|*.wim|*.xar)
- 7z x ./"$n" ;;
- *.xz) unxz ./"$n" ;;
- *.exe) cabextract ./"$n" ;;
- *)
- echo "extract: '$n' - unknown archive method"
- return 1
- ;;
- esac
- else
- echo "'$n' - file does not exist"
- return 1
- fi
- done
-fi
-}
-
-# Create a .tar.gz archive, using `zopfli`, `pigz` or `gzip` for compression
-targz() {
- # Combine given names spearated with spaces as the filename
- tmpFile="${*%/}.tar"
-
- tar -cvf "${tmpFile}" "${@}" || return 1
-
- size=$(
- stat -f"%z" "${tmpFile}" 2> /dev/null; # macOS `stat`
- stat -c"%s" "${tmpFile}" 2> /dev/null; # GNU `stat`
- );
-
- cmd="";
- if (( size < 52428800 )) && hash zopfli 2> /dev/null; then
- # the .tar file is smaller than 50 MB and Zopfli is available; use it
- cmd="zopfli";
- else
- if hash pigz 2> /dev/null; then
- cmd="pigz";
- else
- cmd="gzip";
- fi;
- fi;
-
- echo "Compressing .tar ($((size / 1000)) kB) using \`${cmd}\`…";
- "${cmd}" -v "${tmpFile}" || return 1;
- [ -f "${tmpFile}" ] && rm "${tmpFile}";
-
- zippedSize=$(
- stat -f"%z" "${tmpFile}.gz" 2> /dev/null; # macOS `stat`
- stat -c"%s" "${tmpFile}.gz" 2> /dev/null; # GNU `stat`
- );
-
- echo "${tmpFile}.gz ($((zippedSize / 1000)) kB) created successfully.";
-}
-
-anonymize() {
- # Reset the prompt on initial run to allow this script
- # to be ran multiple times without user having to reload
- # PS1 manually
- # shellcheck source=/home/itsdrike/.config/shell/prompt
- . "${XDG_CONFIG_DIR:-$HOME/.config}/shell/prompt"
-
- # Regular expression to match 0-255 numbers (color)
- color_int_re='^(0+)?([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'
-
- # Defaults
- NAME="%n"
- MACHINE=""
- #NAME_COLOR="%F{047}"
- NAME_COLOR="%F{172}"
- #DIR_COLOR="%F{027}"
- DIR_COLOR="%F{158}"
- AT_COLOR="%F{004}"
- MACHINE_COLOR="%F{070}"
-
- while [ $# -gt 0 ]; do
- key=$1
-
- case $key in
- -n|--name)
- NAME=$2
- shift
- shift
- ;;
- -m|--machine)
- MACHINE=$2
- shift
- shift
- ;;
- -nc|--name-color)
- if [[ $2 =~ $color_int_re ]]; then
- NAME_COLOR="%F{$2}"
- else
- NAME_COLOR=$2
- fi
- shift
- shift
- ;;
- -dc|--dir-color)
- if [[ $2 =~ $color_int_re ]]; then
- DIR_COLOR="%F{$2}"
- else
- DIR_COLOR=$2
- fi
- shift
- shift
- ;;
- -mc|--machine-color)
- if [[ $2 =~ $color_int_re ]]; then
- MACHINE_COLOR="%F{$2}"
- else
- MACHINE_COLOR=$2
- fi
- shift
- shift
- ;;
- -ac|--at-color)
- if [[ $2 =~ $color_int_re ]]; then
- AT_COLOR="%F{$2}"
- else
- AT_COLOR=$2
- fi
- shift
- shift
- ;;
- *)
- echo "Unrecognized argument: $key"
- echo "Arguments: -n|--name, -m|--machine, -nc|--name-color, -dc|--dir-color, -mc|--machine-color, -ac|--at-color"
- return 1
- ;;
- esac
- done
-
-
- OLD_LINE="%F{047}%n%f %F{027}"
-
- [ -n "$NAME" ] && NEW_LINE="${NAME_COLOR}${NAME}"
- [ -n "$NAME" ] && [ -n "$MACHINE" ] && NEW_LINE="${NEW_LINE}${AT_COLOR}@"
- [ -n "$MACHINE" ] && NEW_LINE="${NEW_LINE}${MACHINE_COLOR}${MACHINE}"
- [ -n "$NAME" ] || [ -n "$MACHINE" ] && NEW_LINE="${NEW_LINE}%f "
- NEW_LINE="${NEW_LINE}${DIR_COLOR}"
-
- # Use new anonymized name, machine and colors in PS1
- PS1=${PS1/"$OLD_LINE"/"$NEW_LINE"}
-}
-
diff --git a/home/.config/shell/handlers b/home/.config/shell/handlers
deleted file mode 100755
index 5434015..0000000
--- a/home/.config/shell/handlers
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/sh
-
-if command -v pkgfile > /dev/null; then
- # Command not found hook that uses `pkgfile` package
- # to search through the package index in order to find
- # a package which includes given command, which was resolved
- # and not found, if there are no such packages, only print
- # command not found message
- command_not_found_handler() {
- cmd="$1"
- printf 'zsh: command not found: %s' "$cmd" # print command not found asap, then search for packages
- repos="$(pkgfile "$cmd")"
- if [ -n "$repos" ]; then
- printf '\r%s may be found in the following packages:\n' "$cmd"
- echo "$repos" | while read -r pkg; do
- printf ' %s\n' "$pkg"
- done
- else
- printf '\n'
- fi
- return 127
- }
-elif [ -x /usr/lib/command-not-found ] || [ -x /usr/share/command-not-found/command-not-found ]; then
- # Ubuntu handle for bash default command-not-found
- # it works similarely to the above arch alternative,
- # this is based on the original bash implementation
- command_not_found_handler() {
- # check because cmd not found could've been removed in the meantime
- if [ -x /usr/lib/command-not-found ]; then
- /usr/lib/command-not-found -- "$1"
- return $?
- elif [ -x /usr/share/command-not-found/command-not-found ]; then
- /usr/share/command-not-found/command-not-found -- "$1"
- return $?
- else
- printf "%s: command not found\n" "$1" >&2
- return 127
- fi
- }
-fi
diff --git a/home/.config/shell/keybinds b/home/.config/shell/keybinds
deleted file mode 100755
index f95b1cc..0000000
--- a/home/.config/shell/keybinds
+++ /dev/null
@@ -1,65 +0,0 @@
-#!/usr/bin/env zsh
-# shellcheck disable=SC2030,SC2031,SC2015
-# Set default keybindings (mostly from oh-my-zsh)
-
-# Make sure that the terminal is in application mode when zle is active, since
-# only then values from $terminfo are valid
-if (( ${+terminfo[smkx]} )) && (( ${+terminfo[rmkx]} )); then
- function zle-line-init() {
- echoti smkx
- }
- function zle-line-finish() {
- echoti rmkx
- }
- zle -N zle-line-init
- zle -N zle-line-finish
-fi
-
-# Use emacs keybindings
-bindkey -e
-
-# Start typing + [Up-Arrow] - fuzzy find history forward
-if [ -n "${terminfo[kcuu1]}" ]; then
- autoload -U up-line-or-beginning-search
- zle -N up-line-or-beginning-search
- bindkey "${terminfo[kcuu1]}" up-line-or-beginning-search
-fi
-# Start typing + [Down-Arrow] - fuzzy find history backward
-if [ -n "${terminfo[kcud1]}" ]; then
- autoload -U down-line-or-beginning-search
- zle -N down-line-or-beginning-search
- bindkey "${terminfo[kcud1]}" down-line-or-beginning-search
-fi
-
-# [Home] - Go to beginning of line
-[ -n "${terminfo[khome]}" ] && bindkey "${terminfo[khome]}" beginning-of-line || bindkey "^[[H" beginning-of-line
-# [End] - Go to end of line
-[ -n "${terminfo[kend]}" ] && bindkey "${terminfo[kend]}" end-of-line || bindkey "^[[F" end-of-line
-
-# [Shift-Tab] - move through the completion menu backwards
-[ -n "${terminfo[kcbt]}" ] && bindkey "${terminfo[kcbt]}" reverse-menu-complete
-
-# [Backspace] - delete backward
-bindkey '^?' backward-delete-char
-# [Delete] - delete forward
-[ -n "${terminfo[kdch1]}" ] && bindkey "${terminfo[kdch1]}" delete-char || bindkey "^[[3~" delete-char
-# [Ctrl-Delete] - delete whole forward-word
-bindkey '^[[3;5~' kill-word
-
-# [Ctrl-RightArrow] - move forward one word
-bindkey '^[[1;5C' forward-word
-# [Ctrl-LeftArrow] - move backward one word
-bindkey '^[[1;5D' backward-word
-
-# [Ctrl-r] - Search backward incrementally for a specified string. The string may begin with ^ to anchor the search to the beginning of the line.
-bindkey '^r' history-incremental-search-backward
-# [PageUp] - Up a line of history
-[ -n "${terminfo[kpp]}" ] && bindkey "${terminfo[kpp]}" up-line-or-history
-# [PageDown] - Down a line of history
-[ -n "${terminfo[knp]}" ] && bindkey "${terminfo[knp]}" down-line-or-history
-
-# [Space] - do history expansion on space
-bindkey ' ' magic-space
-
-# [ctrl+space] Accept suggestion from zsh-autosuggestions plugin
-bindkey '^ ' autosuggest-accept
diff --git a/home/.config/shell/profile b/home/.config/shell/profile
deleted file mode 100755
index abffaac..0000000
--- a/home/.config/shell/profile
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/sh
-
-# User .profile definition.
-# This file is only sourced once, after login, Unlike
-# .zshrc/.bashrc, which will run whenever a new terminal
-# is opened.
-
-# Add all folders in ~/.local/bin into PATH
-# Some window managers require this line to be in profile
-# not in .zshenv
-PATH+=":${$(find ~/.local/bin -type d | tr '\n' ':')%%:}"
-
-# Start graphical session automatically on tty1 if startx is aviable
-if [ "$(tty)" = "/dev/tty1" ] && [ "$UID" != 0 ]; then
- if command -v startx > /dev/null; then
- ! pidof -s Xorg > /dev/null 2>&1 && exec startx "$XINITRC"
- fi
-fi
-
diff --git a/home/.config/shell/prompt b/home/.config/shell/prompt
deleted file mode 100755
index ca0aaa3..0000000
--- a/home/.config/shell/prompt
+++ /dev/null
@@ -1,187 +0,0 @@
-#!/usr/bin/env zsh
-# shellcheck disable=SC2155
-
-# Configuration variables:
-
-# Once we are too deep in the filestructure, we can usually afford to shorten
-# the whole working directory and only print something like ~/.../dir3/dir4/dir5
-# instead of ~/dir1/dir2/dir3/dir4/dir5. If this isn't desired, set this to 0
-USE_SHORTENED_WORKDIR=1
-
-# Show how much time it took to run a command
-CMD_TIME_SHOW=1
-# Minimum units to show the time precision, if
-# we use "s" (seconds), and the output took 0s,
-# we don't print the output at all to avoid clutter.
-# Same goes for any other units, however with "ms"
-# (miliseconds), this is very unlikely
-# Valid options: ms/s/m/h/d
-CMD_TIME_PRECISION="s"
-# Minimum time in miliseconds, to print the time took,
-# if the command takes less than this amount of miliseconds,
-# don't bother printing the time took, this is nice if you
-# don't need to see how long commands like 'echo' took
-# Setting this to 0 will always print the time taken
-CMD_TIME_MINIMUM=100
-
-# hide EOL sign ('%')
-export PROMPT_EOL_MARK=""
-
-# TTY (pure linux) terminal only has 8-bit color support
-# (unless you change it in kernel), respect this and downgrade
-# the color scheme accordingly (it won't look best, but it's
-# still better than no colors)
-if [ "$TERM" = "linux" ]; then
- GREEN="%F{002}"
- RED="%F{001}"
- ORANGE="%F{003}"
- BLUE="%F{004}"
- LBLUE="%F{006}"
- PURPLE="%F{005}"
-else
- GREEN="%F{047}"
- RED="%F{196}"
- ORANGE="%F{214}"
- BLUE="%F{027}"
- LBLUE="%F{075}"
- PURPLE="%F{105}"
-fi
-RESET="%f"
-
-# Signals git status of CWD repository (if any)
-git_prompt() {
- ref=$(command git symbolic-ref HEAD 2> /dev/null) || ref=$(command git rev-parse --short HEAD 2> /dev/null) || return 0
- echo -n " $ORANGE${ref#refs/heads/}"
-
- if [ -n "$(git status --short 2>/dev/null)" ]; then
- echo "$RED+"
- fi
-}
-
-# Adds @chroot or @ssh
-foreign_prompt() {
- if [ "$(awk '$5=="/" {print $1}' /dev/null; then
- echo ";$full_version;"
- else
- echo ';;'
- fi
-}
-
-# Prints version number extracted from alias for given version
-# $1 - version used in the alias (for example '3.6', '3', or even '', but also 'pypy3.6', ...)
-get_alias_version() {
- alias_version="$1"
- definition="$(alias "py$alias_version")"
- full_version="$(echo "$definition" | cut -d= -f3 | cut -d' ' -f1)"
-
- version_info="$(parse_python_version "$full_version")"
- version="$(echo "$version_info" | cut -d';' -f2)"
- echo "$version"
-}
-
-# Compares 2 python versions in major, minor and micro parts
-# $1 - version #1
-# $2 - version #2
-# Returns:
-# 0 - version #1 is newer
-# 1 - version #2 is newer
-# 2 - versions are equal
-version_compare() {
- version_1="$1"
- version_2="$2"
- # ZSH Only:
- version_1=("${(@s:.:)version_1}")
- version_2=("${(@s:.:)version_2}")
- major_1=$version_1[1]
- major_2=$version_2[1]
- minor_1=$version_1[2]
- minor_2=$version_2[2]
- micro_1=$version_1[3]
- micro_2=$version_2[3]
- # POSIX, but slow:
- # major_1="$(echo "$version_1" | cut -d. -f1)"
- # major_2="$(echo "$version_2" | cut -d. -f1)"
- # minor_1="$(echo "$version_1" | cut -d. -f2)"
- # minor_2="$(echo "$version_2" | cut -d. -f2)"
- # micro_1="$(echo "$version_1" | cut -d. -f3)"
- # micro_2="$(echo "$version_2" | cut -d. -f3)"
-
- # Compare majors
- if [ $major_1 -gt $major_2 ]; then
- # version 1's major is bigger, version 1 is newer
- return 0
- elif [ $major_1 -lt $major_2 ]; then
- # version 1's major is smaller, version 2 is newer
- return 1
- fi
-
- # Majors equal, compare minors
- if [ $minor_1 -gt $minor_2 ]; then
- # version 1's minor is bigger, version 1 is newer
- return 0
- elif [ $minor_1 -lt $minor_2 ]; then
- # version 1's major is smaller, version 2 is newer
- return 1
- fi
-
- # Minors equal, compare micros
- if [ $micro_1 -gt $micro_2 ]; then
- # version 1's micro is bigger, version 1 is newer
- return 0
- elif [ $micro_1 -lt $micro_2 ]; then
- # version 1's micro is smaller, version 2 is newer
- return 1
- fi
-
- # Micros equal, versions equal
- return 2
-}
-
-# Define new aliases if they don't already exsist, in which case override
-# if the current version is newer than the version in the alias
-# $1 - full valid pyenv python version (for example '3.6.12', `3.11-dev`, or `pypy3.6-7.2.0-src`)
-# $2 - version used in the alias (for example '3.6', '3', or even '', but also `pypy3.7`, ...)
-try_define_aliases() {
- version="$1"
- alias_version="$2"
-
- # Check if alias already exists
- if alias "py$alias_version" >/dev/null; then
- # Compare version from the existing alias with current version,
- # if current is newer, override the existing alias(es)
- defined_version="$(get_alias_version "$alias_version")"
- if version_compare "$version" "$defined_version"; then
- define_aliases "$version" "$alias_version"
- # echo "Overwrote '$alias_version' aliases to point to '$version'"
- return 0
- else
- return 1
- fi
- fi
-
- # The aliases aren't already defined, it's safe to create them
- define_aliases "$version" "$alias_version"
- # echo "Made '$alias_version' aliases pointing to '$version'"
- return 0
-}
-
-define_version_aliases() {
- prefix="$1"
- version="$2"
- suffix="$3"
-
-
- # ZSH only:
- version_data=("${(@s:.:)version}")
- major_version=$version_data[1]
- minor_version=$version_data[2]
- # POSIX, but slow:
- # major_version="$(echo "$version" | cut -d. -f1)"
- # minor_version="$(echo "$version" | cut -d. -f2)"
-
- # Define the major.minor.micro (full) alias
- try_define_aliases "$version" "$prefix$version$suffix"
- # Define the major.minor alias
- try_define_aliases "$version" "$prefix$major_version.$minor_version$suffix"
- # Define the major alias
- try_define_aliases "$version" "$prefix$major_version$suffix"
- # Define top level alias
- try_define_aliases "$version" "$prefix$suffix"
-}
-
-for python_dir in "$PYENV_ROOT"/versions/*/ ; do
- full_version="$(basename $python_dir)"
-
- version_info="$(parse_python_version "$full_version")"
- if [ $version_info = ';;' ]; then
- # Version info wasn't obtained successfully, skip this version
- echo "Skipped $full_version"
- continue
- fi
-
- # ZSH only:
- version_data=("${(@s:;:)version_info}")
- prefix=$version_data[1]
- version=$version_data[2]
- suffix=$version_data[3]
- # POSIX, but slow:
- # prefix="$(echo "$version_info" | cut -d';' -f1)"
- # version="$(echo "$version_info" | cut -d';' -f2)"
- # suffix="$(echo "$version_info" | cut -d';' -f3)"
-
- # startTime=$(date +%N)
- define_version_aliases "$prefix" "$version" "$suffix"
- # endTime=$(date +%N)
- # nanos="$(expr $endTime - $startTime)"
- # echo "took $(expr $nanos / 1000000) miliseconds"
-done
-
-if command -v poetry >/dev/null 2>&1; then
- alias poetry-pyenv='poetry env use "$(pyenv which python)" && poetry install'
-fi
diff --git a/home/.config/systemd/user/default.target.wants/clipmenud.service b/home/.config/systemd/user/default.target.wants/clipmenud.service
deleted file mode 120000
index 3302299..0000000
--- a/home/.config/systemd/user/default.target.wants/clipmenud.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/user/clipmenud.service
\ No newline at end of file
diff --git a/home/.config/topgrade.toml b/home/.config/topgrade.toml
deleted file mode 100644
index 70d6b29..0000000
--- a/home/.config/topgrade.toml
+++ /dev/null
@@ -1,98 +0,0 @@
-# Don't ask for confirmations
-#assume_yes = true
-
-# Disable specific steps - same options as the command line flag
-#disable = ["system", "emacs"]
-
-# Ignore failures for these steps
-#ignore_failures = ["powershell"]
-
-# Run specific steps - same options as the command line flag
-only = ["system", "pip3", "flatpak", "node", "pipx", "rustup", "dotnet", "tldr", "vim"]
-
-# Do not ask to retry failed steps (default: false)
-#no_retry = true
-
-# Run inside tmux
-#run_in_tmux = true
-
-# List of remote machines with Topgrade installed on them
-#remote_topgrades = ["toothless", "pi", "parnas"]
-
-# Arguments to pass SSH when upgrading remote systems
-#ssh_arguments = "-o ConnectTimeout=2"
-
-# Path to Topgrade executable on remote machines
-#remote_topgrade_path = ".cargo/bin/topgrade"
-
-# Arguments to pass tmux when pulling Repositories
-#tmux_arguments = "-S /var/tmux.sock"
-
-# Do not set the terminal title
-#set_title = false
-
-# Cleanup temporary or old files
-#cleanup = true
-
-[git]
-#max_concurrency = 5
-# Additional git repositories to pull
-#repos = [
-# "~/src/*/",
-# "~/.config/something"
-#]
-
-# Don't pull the predefined git repos
-#predefined_repos = false
-
-# Arguments to pass Git when pulling Repositories
-#arguments = "--rebase --autostash"
-
-[composer]
-#self_update = true
-
-# Commands to run before anything
-[pre_commands]
-#"Emacs Snapshot" = "rm -rf ~/.emacs.d/elpa.bak && cp -rl ~/.emacs.d/elpa ~/.emacs.d/elpa.bak"
-
-# Custom commands
-[commands]
-#"Python Environment" = "~/dev/.env/bin/pip install -i https://pypi.python.org/simple -U --upgrade-strategy eager jupyter"
-
-[brew]
-#greedy_cask = true
-
-[linux]
-# Arch Package Manager to use. Allowed values: autodetect, trizen, paru, yay, pacman.
-#arch_package_manager = "pacman"
-# Arguments to pass yay (or paru) when updating packages
-#yay_arguments = "--nodevel"
-#show_arch_news = true
-#trizen_arguments = "--devel"
-#enable_tlmgr = true
-#emerge_sync_flags = "-q"
-#emerge_update_flags = "-uDNa --with-bdeps=y world"
-#redhat_distro_sync = false
-#rpm_ostree = false
-
-[windows]
-# Manually select Windows updates
-#accept_all_updates = false
-#open_remotes_in_new_terminal = true
-
-# Causes Topgrade to rename itself during the run to allow package managers
-# to upgrade it. Use this only if you installed Topgrade by using a package
-# manager such as Scoop to Cargo
-#self_rename = true
-
-[npm]
-# Use sudo if the NPM directory isn't owned by the current user
-#use_sudo = true
-
-[firmware]
-# Offer to update firmware; if false just check for and display available updates
-#upgrade = true
-
-[flatpak]
-# Use sudo for updating the system-wide installation
-#use_sudo = true
diff --git a/home/.config/user-dirs.dirs b/home/.config/user-dirs.dirs
deleted file mode 100644
index 52196bb..0000000
--- a/home/.config/user-dirs.dirs
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is written by xdg-user-dirs-update
-# If you want to change or add directories, just edit the line you're
-# interested in. All local changes will be retained on the next run.
-# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
-# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
-# absolute path. No other format is supported.
-#
-#XDG_DESKTOP_DIR="$HOME/Desktop"
-XDG_DOWNLOAD_DIR="$HOME/Downloads"
-#XDG_TEMPLATES_DIR="$HOME/Templates"
-#XDG_PUBLICSHARE_DIR="$HOME/Public"
-#XDG_DOCUMENTS_DIR="$HOME/Documents"
-XDG_DOCUMENTS_DIR="$HOME/Personal"
-#XDG_MUSIC_DIR="$HOME/Music"
-XDG_MUSIC_DIR="$HOME/Audio"
-XDG_PICTURES_DIR="$HOME/Pictures"
-#XDG_VIDEOS_DIR="$HOME/Videos"
diff --git a/home/.config/user-dirs.locale b/home/.config/user-dirs.locale
deleted file mode 100644
index 3e0b419..0000000
--- a/home/.config/user-dirs.locale
+++ /dev/null
@@ -1 +0,0 @@
-en_US
\ No newline at end of file
diff --git a/home/.config/wget/wgetrc b/home/.config/wget/wgetrc
deleted file mode 100644
index 4fd7999..0000000
--- a/home/.config/wget/wgetrc
+++ /dev/null
@@ -1 +0,0 @@
-hsts-file=~/.cache/wget-hsts
diff --git a/home/.config/x11/xinitrc b/home/.config/x11/xinitrc
deleted file mode 100644
index cc18753..0000000
--- a/home/.config/x11/xinitrc
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-
-# xinitrc runs automatically when startx is ran
-
-# There are some important commands that need to be executed when we start
-# the graphical environment. There is a link to this file in ~/.xprofile
-# because that file is ran automatically if someone uses a display manager
-# (login screen) and so they are needed there. To prevent doubling up commands
-# I source them here with the line below.
-
-if [ -f "${XDG_CONFIG_HOME:-$HOME/config}/x11/xprofile" ]; then
- source "${XDG_CONFIG_HOME:-$HOME/.config}/x11/xprofile"
-else
- source "$HOME/.xprofile"
-fi
-
-exec xmonad
-# Launch xmonad with dbus
-#exec dbus-launch --sh-syntax --exit-with-session xmonad
-
diff --git a/home/.config/x11/xprofile b/home/.config/x11/xprofile
deleted file mode 100644
index c027930..0000000
--- a/home/.config/x11/xprofile
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/bash
-
-# This file runs when a DM logs you into a graphical session
-# if you use startx/xinit this file should also be soruced.
-
-# Set monitor order
-xrandr --output HDMI-1 --auto --output eDP-1 --right-of HDMI-1 --auto &
-
-# Start xsecurelock lockscreen with xss-lock
-~/.local/bin/scripts/lockscreen start &
-
-# Set the background with a custom `setbg` script
-setbg &
-
-# Use xresources file in ~/.config/x11
-xrdb -merge ${XDG_CONFIG_HOME:-$HOME/.config}/x11/xresources &
-
-# Start compositor manager to allow transparency
-picom -b --experimental-backends &
-
-# Dunst for notifications
-dunst &
-
-# Run network manager applet to show connectivity
-nm-applet &
-
-# Run trayer-srg for systemtray bar
-# if installed normally, command will be `trayer`, not `trayer-srg` command
-trayer --monitor 0 --edge top --align right --widthtype request --padding 0 --transparent true --tint 0x282c34 --alpha 0 --height 23 &
-
-# Start flameshot in background
-flameshot &
-
-# AppArmor notifications
-aa-notify -p &
-
-# Enable numlock with numlockx
-numlockx &
-
-# Udiskie for simple mounting and notifications, no automount for security reasons
-udiskie -A -s &
-
-# Enable running applications from chroot
-xhost +local:
-
-# Change x shaped default cursor (fonts are located in /usr/include/X11/cursorfont.h)
-xsetroot -cursor_name left_ptr
-
-# import DISPLAY environment variable for systemd user services
-systemctl --user import-environment DISPLAY
diff --git a/home/.config/xmobar/multi_mon.sh b/home/.config/xmobar/multi_mon.sh
deleted file mode 100755
index b14aae7..0000000
--- a/home/.config/xmobar/multi_mon.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/sh
-
-if [ $# -lt 1 ]; then
- echo "Invalid amount of arguments passed!"
- echo "Required parameter: amount of monitors"
- exit
-fi
-
-MONITOR_AMOUT="$1"
-WIDTH=1920
-WORK_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/xmobar"
-
-make_position_line(){
- xpos=$(($1 * $WIDTH))
- line="position = Static { xpos = $xpos, ypos = 0, width = $WIDTH, height = 24 },"
- echo "$line"
-}
-
-
-# Remove all already existing specific xmobar configurations
-find $WORK_DIR -regex '\./xmobarrc[0-9]+' -exec rm {} +
-
-xmobarhs_content="$(cat $WORK_DIR/xmobarrc.hs)"
-position_line_0="$(make_position_line 0)"
-
-for ((n=0;n "$cur_file"
- echo "$cur_file created."
-done
diff --git a/home/.config/xmobar/trayer-padding-icon.sh b/home/.config/xmobar/trayer-padding-icon.sh
deleted file mode 100755
index 81133c0..0000000
--- a/home/.config/xmobar/trayer-padding-icon.sh
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/sh
-# Copied from https://github.com/jaor/xmobar/issues/239#issuecomment-233206552
-# Detects the width of running trayer-srg window (xprop name 'panel')
-# and creates an XPM icon of that width, 1px height, and transparent.
-# Outputs an -tag for use in xmobar to display the generated
-# XPM icon.
-#
-# Run script from xmobar:
-# `Run Com "/where/ever/trayer-padding-icon.sh" [] "trayerpad" 10`
-# and use `%trayerpad%` in your template.
-
-
-# Function to create a transparent Wx1 px XPM icon
-create_xpm_icon () {
- timestamp=$(date)
- pixels=$(for i in `seq $1`; do echo -n "."; done)
-
- cat << EOF > "$2"
-/* XPM *
-static char * trayer_pad_xpm[] = {
-/* This XPM icon is used for padding in xmobar to */
-/* leave room for trayer-srg. It is dynamically */
-/* updated by by trayer-padding-icon.sh which is run */
-/* by xmobar. */
-/* Created: ${timestamp} */
-/* */
-"$1 1 1 1",
-/* Colors (none: transparent) */
-". c none",
-/* Pixels */
-"$pixels"
-};
-EOF
-}
-
-# Width of the trayer window
-width=$(xprop -name panel | grep 'program specified minimum size' | cut -d ' ' -f 5)
-
-# Icon file name
-iconfile="/tmp/trayer-padding-${width}px.xpm"
-
-# If the desired icon does not exist create it
-if [ ! -f $iconfile ]; then
- create_xpm_icon $width $iconfile
-fi
-
-# Output the icon tag for xmobar
-echo ""
-
diff --git a/home/.config/xmobar/xmobarrc.hs b/home/.config/xmobar/xmobarrc.hs
deleted file mode 100644
index df40406..0000000
--- a/home/.config/xmobar/xmobarrc.hs
+++ /dev/null
@@ -1,122 +0,0 @@
--- xmobar main configuration file
---
--- This file serves as a shared template for the specific xmonad
--- configuration files that are generated from this file to accomodate
--- for multiple monitors.
---
--- For more details, run 'man xmobar', or visit the project website
--- http://projects.haskell.org/xmobar/
-
-Config {
--- Set font for default dg/bg colors. xmobar height will
--- be controlled by this font (it'll adjust itself to accomodate it)
--- Additional fonts can be defined for emoji support
-font = "xft:Ubuntu:weight=bold:pixelsize=11:antialias=true:hinting=true",
-additionalFonts = [
- "xft:Font Awesome 6 Free Solid:pixelsize=12",
- "xft:Font Awesome 6 Brands:pixelsize=12"
- --"xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true"
-],
-bgColor = "#282c34",
-fgColor = "#ff6c6b",
-
--- Define static position that will be adjusted by the deploy script
--- which will tweak the starting positions for multiple monitors, this
--- configuration will work fine for single monitor systems out of the box.
-position = Static { xpos = 0, ypos = 0, width = 1920, height = 24 },
--- Define the place where all used XPM images will be stored in
--- Apparently there's is no way to use env var or relpaths here.
-iconRoot = "/home/itsdrike/.config/xmobar/xpm",
--- list of commands which gather information about the system
--- which can then be referrenced in the final template string
-commands = [
- -- Gather and format CPU usage information
- -- if it's above 50%, we consider it high and make it red
- Run Cpu [
- "-t", "\xf2db %",
- "-H","50",
- "--high","red"
- ] 20,
-
- -- Ram used number and percent
- Run Memory ["-t", "\xf538 M (%)"] 20,
-
- -- Battery information. This is likely to require some customization
- -- based upon your specific hardware. Or, for a desktop you may want
- -- to just remove this section entirely.
- --Run Battery [
- --"-t", "\xf240 % - ",
- --"--",
- --"-i", "AC",
- --"-O", "AC",
- --"-o", "AUX",
- --"-L", "12",
- --"-h", "green",
- --"-l", "red"
- --] 10,
-
- -- Time and date
- Run Date "\xf017 %H:%M %b %d %Y" "date" 50,
-
- -- Network up and down
- --Run Network "wlp4s0" ["-t", "\xf0ab kb \xf0aa kb"] 20,
- --Run Network "enp3s0" ["-t", "\xf0ab kb \xf0aa kb"] 20,
-
- -- Uptime
- Run Uptime ["-t", "\xf011 d h"] 360,
-
- -- Show free disk space on /
- Run DiskU [("/", "\xf0c7 ")] [] 60,
-
- -- Get kernel version from uname -r
- Run Com "uname" ["-r"] "" 3600,
-
- -- Volume info
- Run Volume "default" "Master" ["-t", "\xf028 %"] 5,
-
- -- Get bitcoin price from a custom script
- Run Com "/home/itsdrike/.local/bin/scripts/bitcoin" [] "bitcoin" 300,
-
- -- Add dynamic invisible XPM icon that resizes to accomodate trayer
- -- this needs to be an absolute string path, env vars or relpaths aren't accepted
- -- this should only be on 1 monitor (single file), so ignore this comment on others
- Run Com "/home/itsdrike/.config/xmobar/trayer-padding-icon.sh" [] "trayerpad" 10,
-
- -- This line tells xmobar to read input from stdin.
- -- That's how it gets information that xmonad is sending (such as
- -- workspaces) to be displayed. This will get placed onto xmobar
- -- template in the position where %UnsafeStdinReader%/%StdinReader% is
- -- By using UnsafeStdinReader, it will also allow for action strings
- -- to be used, which are activated upon clicking on the given element
- Run UnsafeStdinReader
-],
-
--- Separator character used to wrap variables in the xmobar template string
-sepChar = "%",
--- Alignment eparator character used in the xmobar template string.
--- Everything before this will be aligned left, everything after right.
-alignSep = "}{",
-
--- Template string defining the xmobar contents and overall layout.
-template = "\
- \ \
- \| %UnsafeStdinReader% }{ \
- \| %uname% \
- \| %memory% \
- \| %disku% \
- \| %cpu% \
- \| %default:Master% \
- \| %uptime% \
- \| %bitcoin% \
- \| %date% \
- \| %trayerpad%\
- \ "
-}
-
--- Abandoned template strings
--- Network Wifi:
--- \| %wlp4s0% \
--- Network Ethernet:
--- \| %enp3s0% \
--- Battery:
--- \| %battery% \
diff --git a/home/.config/xmobar/xmobarrc0 b/home/.config/xmobar/xmobarrc0
deleted file mode 100644
index df40406..0000000
--- a/home/.config/xmobar/xmobarrc0
+++ /dev/null
@@ -1,122 +0,0 @@
--- xmobar main configuration file
---
--- This file serves as a shared template for the specific xmonad
--- configuration files that are generated from this file to accomodate
--- for multiple monitors.
---
--- For more details, run 'man xmobar', or visit the project website
--- http://projects.haskell.org/xmobar/
-
-Config {
--- Set font for default dg/bg colors. xmobar height will
--- be controlled by this font (it'll adjust itself to accomodate it)
--- Additional fonts can be defined for emoji support
-font = "xft:Ubuntu:weight=bold:pixelsize=11:antialias=true:hinting=true",
-additionalFonts = [
- "xft:Font Awesome 6 Free Solid:pixelsize=12",
- "xft:Font Awesome 6 Brands:pixelsize=12"
- --"xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true"
-],
-bgColor = "#282c34",
-fgColor = "#ff6c6b",
-
--- Define static position that will be adjusted by the deploy script
--- which will tweak the starting positions for multiple monitors, this
--- configuration will work fine for single monitor systems out of the box.
-position = Static { xpos = 0, ypos = 0, width = 1920, height = 24 },
--- Define the place where all used XPM images will be stored in
--- Apparently there's is no way to use env var or relpaths here.
-iconRoot = "/home/itsdrike/.config/xmobar/xpm",
--- list of commands which gather information about the system
--- which can then be referrenced in the final template string
-commands = [
- -- Gather and format CPU usage information
- -- if it's above 50%, we consider it high and make it red
- Run Cpu [
- "-t", "\xf2db %",
- "-H","50",
- "--high","red"
- ] 20,
-
- -- Ram used number and percent
- Run Memory ["-t", "\xf538 M (%)"] 20,
-
- -- Battery information. This is likely to require some customization
- -- based upon your specific hardware. Or, for a desktop you may want
- -- to just remove this section entirely.
- --Run Battery [
- --"-t", "\xf240 % - ",
- --"--",
- --"-i", "AC",
- --"-O", "AC",
- --"-o", "AUX",
- --"-L", "12",
- --"-h", "green",
- --"-l", "red"
- --] 10,
-
- -- Time and date
- Run Date "\xf017 %H:%M %b %d %Y" "date" 50,
-
- -- Network up and down
- --Run Network "wlp4s0" ["-t", "\xf0ab kb \xf0aa kb"] 20,
- --Run Network "enp3s0" ["-t", "\xf0ab kb \xf0aa kb"] 20,
-
- -- Uptime
- Run Uptime ["-t", "\xf011 d h"] 360,
-
- -- Show free disk space on /
- Run DiskU [("/", "\xf0c7 ")] [] 60,
-
- -- Get kernel version from uname -r
- Run Com "uname" ["-r"] "" 3600,
-
- -- Volume info
- Run Volume "default" "Master" ["-t", "\xf028 %"] 5,
-
- -- Get bitcoin price from a custom script
- Run Com "/home/itsdrike/.local/bin/scripts/bitcoin" [] "bitcoin" 300,
-
- -- Add dynamic invisible XPM icon that resizes to accomodate trayer
- -- this needs to be an absolute string path, env vars or relpaths aren't accepted
- -- this should only be on 1 monitor (single file), so ignore this comment on others
- Run Com "/home/itsdrike/.config/xmobar/trayer-padding-icon.sh" [] "trayerpad" 10,
-
- -- This line tells xmobar to read input from stdin.
- -- That's how it gets information that xmonad is sending (such as
- -- workspaces) to be displayed. This will get placed onto xmobar
- -- template in the position where %UnsafeStdinReader%/%StdinReader% is
- -- By using UnsafeStdinReader, it will also allow for action strings
- -- to be used, which are activated upon clicking on the given element
- Run UnsafeStdinReader
-],
-
--- Separator character used to wrap variables in the xmobar template string
-sepChar = "%",
--- Alignment eparator character used in the xmobar template string.
--- Everything before this will be aligned left, everything after right.
-alignSep = "}{",
-
--- Template string defining the xmobar contents and overall layout.
-template = "\
- \ \
- \| %UnsafeStdinReader% }{ \
- \| %uname% \
- \| %memory% \
- \| %disku% \
- \| %cpu% \
- \| %default:Master% \
- \| %uptime% \
- \| %bitcoin% \
- \| %date% \
- \| %trayerpad%\
- \ "
-}
-
--- Abandoned template strings
--- Network Wifi:
--- \| %wlp4s0% \
--- Network Ethernet:
--- \| %enp3s0% \
--- Battery:
--- \| %battery% \
diff --git a/home/.config/xmobar/xmobarrc1 b/home/.config/xmobar/xmobarrc1
deleted file mode 100644
index 0cda671..0000000
--- a/home/.config/xmobar/xmobarrc1
+++ /dev/null
@@ -1,120 +0,0 @@
--- xmobar main configuration file
---
--- This file serves as a shared template for the specific xmonad
--- configuration files that are generated from this file to accomodate
--- for multiple monitors.
---
--- For more details, run 'man xmobar', or visit the project website
--- http://projects.haskell.org/xmobar/
-
-Config {
--- Set font for default dg/bg colors. xmobar height will
--- be controlled by this font (it'll adjust itself to accomodate it)
--- Additional fonts can be defined for emoji support
-font = "xft:Ubuntu:weight=bold:pixelsize=11:antialias=true:hinting=true",
-additionalFonts = [
- "xft:Font Awesome 6 Free Solid:pixelsize=12",
- "xft:Font Awesome 6 Brands:pixelsize=12"
- --"xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true"
-],
-bgColor = "#282c34",
-fgColor = "#ff6c6b",
-
--- Define static position that will be adjusted by the deploy script
--- which will tweak the starting positions for multiple monitors, this
--- configuration will work fine for single monitor systems out of the box.
-position = Static { xpos = 1920, ypos = 0, width = 1920, height = 24 },
--- Define the place where all used XPM images will be stored in
--- Apparently there's is no way to use env var or relpaths here.
-iconRoot = "/home/itsdrike/.config/xmobar/xpm",
--- list of commands which gather information about the system
--- which can then be referrenced in the final template string
-commands = [
- -- Gather and format CPU usage information
- -- if it's above 50%, we consider it high and make it red
- Run Cpu [
- "-t", "\xf2db %",
- "-H","50",
- "--high","red"
- ] 20,
-
- -- Ram used number and percent
- Run Memory ["-t", "\xf538 M (%)"] 20,
-
- -- Battery information. This is likely to require some customization
- -- based upon your specific hardware. Or, for a desktop you may want
- -- to just remove this section entirely.
- --Run Battery [
- --"-t", "\xf240 % - ",
- --"--",
- --"-i", "AC",
- --"-O", "AC",
- --"-o", "AUX",
- --"-L", "12",
- --"-h", "green",
- --"-l", "red"
- --] 10,
-
- -- Time and date
- Run Date "\xf017 %H:%M %b %d %Y" "date" 50,
-
- -- Network up and down
- --Run Network "wlp4s0" ["-t", "\xf0ab kb \xf0aa kb"] 20,
- --Run Network "enp3s0" ["-t", "\xf0ab kb \xf0aa kb"] 20,
-
- -- Uptime
- Run Uptime ["-t", "\xf011 d h"] 360,
-
- -- Show free disk space on /
- Run DiskU [("/", "\xf0c7 ")] [] 60,
-
- -- Get kernel version from uname -r
- Run Com "uname" ["-r"] "" 3600,
-
- -- Volume info
- Run Volume "default" "Master" ["-t", "\xf028 %"] 5,
-
- -- Get bitcoin price from a custom script
- Run Com "/home/itsdrike/.local/bin/scripts/bitcoin" [] "bitcoin" 300,
-
- -- Add dynamic invisible XPM icon that resizes to accomodate trayer
- -- this needs to be an absolute string path, env vars or relpaths aren't accepted
- -- this should only be on 1 monitor (single file), so ignore this comment on others
-
- -- This line tells xmobar to read input from stdin.
- -- That's how it gets information that xmonad is sending (such as
- -- workspaces) to be displayed. This will get placed onto xmobar
- -- template in the position where %UnsafeStdinReader%/%StdinReader% is
- -- By using UnsafeStdinReader, it will also allow for action strings
- -- to be used, which are activated upon clicking on the given element
- Run UnsafeStdinReader
-],
-
--- Separator character used to wrap variables in the xmobar template string
-sepChar = "%",
--- Alignment eparator character used in the xmobar template string.
--- Everything before this will be aligned left, everything after right.
-alignSep = "}{",
-
--- Template string defining the xmobar contents and overall layout.
-template = "\
- \ \
- \| %UnsafeStdinReader% }{ \
- \| %uname% \
- \| %memory% \
- \| %disku% \
- \| %cpu% \
- \| %default:Master% \
- \| %uptime% \
- \| %bitcoin% \
- \| %date% \
- \ "
-}
-
--- Abandoned template strings
--- Network Wifi:
--- \| %wlp4s0% \
--- Network Ethernet:
--- \| %enp3s0% \
--- Battery:
--- \| %battery% \
diff --git a/home/.config/xmobar/xpm/haskell_20.xpm b/home/.config/xmobar/xpm/haskell_20.xpm
deleted file mode 100644
index 9e11ae2..0000000
--- a/home/.config/xmobar/xpm/haskell_20.xpm
+++ /dev/null
@@ -1,25 +0,0 @@
-/* XPM */
-static char * haskell_20_xpm[] = {
-"20 20 2 1",
-" c None",
-". c #FFFFFF",
-" ",
-" ",
-" ",
-".... .... ",
-" .... ... ",
-" ... .... ",
-" .... .... ",
-" .... ... ........",
-" ... .... .......",
-" .... .... ",
-" .... .... ",
-" ... ...... .....",
-" .... ....... ....",
-" .... .... ... ",
-" ... .... .... ",
-" .... ... .... ",
-".... .... ... ",
-" ",
-" ",
-" "};
diff --git a/home/.config/xmonad/scripts/autostart.sh b/home/.config/xmonad/scripts/autostart.sh
deleted file mode 100755
index 2098b8a..0000000
--- a/home/.config/xmonad/scripts/autostart.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-# Automatically start the applications in $HOME/.config/autostart
-
-AUTOSTART_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/autostart"
-
-find $AUTOSTART_DIR -name "*.desktop" | xargs -I {} sh -c "~/.local/bin/scripts/deskopen {} &"
diff --git a/home/.config/xmonad/xmonad.hs b/home/.config/xmonad/xmonad.hs
deleted file mode 100644
index 3c018a5..0000000
--- a/home/.config/xmonad/xmonad.hs
+++ /dev/null
@@ -1,389 +0,0 @@
--- Base
-import XMonad
-import System.Exit (exitSuccess)
-import System.IO (hPutStrLn, Handle)
-import qualified XMonad.StackSet as W
-
--- Actions
-import XMonad.Actions.CopyWindow (kill1)
-import XMonad.Actions.CycleWS (Direction1D(..), moveTo, shiftTo, WSType(..), nextScreen, prevScreen)
-import XMonad.Actions.MouseResize
-import XMonad.Actions.Promote
-import XMonad.Actions.RotSlaves (rotSlavesDown, rotAllDown)
-import XMonad.Actions.WithAll (sinkAll, killAll)
-
--- Data
-import Data.Maybe (isJust, fromJust)
-import Data.Monoid
-import qualified Data.Map as M
-
--- Hooks
-import XMonad.Hooks.DynamicLog (dynamicLogWithPP, wrap, xmobarPP, xmobarColor, shorten, PP(..))
-import XMonad.Hooks.ManageDocks (avoidStruts, docks, manageDocks, ToggleStruts(..))
-import XMonad.Hooks.EwmhDesktops
-import XMonad.Hooks.ManageHelpers (isFullscreen, doFullFloat)
-
--- Layouts
-import XMonad.Layout.GridVariants (Grid(Grid))
-import XMonad.Layout.SimplestFloat
-import XMonad.Layout.Spiral
-import XMonad.Layout.Tabbed
-import XMonad.Layout.ResizableTile
-
--- Layouts modifiers
-import XMonad.Layout.LayoutModifier
-import XMonad.Layout.LimitWindows (limitWindows, increaseLimit, decreaseLimit)
-import XMonad.Layout.MultiToggle (mkToggle, single, EOT(EOT), (??))
-import XMonad.Layout.MultiToggle.Instances (StdTransformers(NBFULL, MIRROR, NOBORDERS))
-import XMonad.Layout.NoBorders
-import XMonad.Layout.Renamed
-import XMonad.Layout.ShowWName
-import XMonad.Layout.Simplest
-import XMonad.Layout.Spacing
-import XMonad.Layout.SubLayouts
-import XMonad.Layout.WindowArranger (windowArrange)
-import XMonad.Layout.WindowNavigation
-import qualified XMonad.Layout.ToggleLayouts as T (toggleLayouts, ToggleLayout(Toggle))
-import qualified XMonad.Layout.MultiToggle as MT (Toggle(..))
-
--- Utilities
-import XMonad.Util.Dmenu
-import XMonad.Util.EZConfig (additionalKeysP)
-import XMonad.Util.Run (spawnPipe)
-import XMonad.Util.SpawnOnce
-
------------------------------------------------------------------------------
--- Basic settings:
-
--- Set the modkey
--- mod1Mask: left alt, mod4Mask: super key.
-myModMask :: KeyMask
-myModMask = mod4Mask
-
--- Preferred programs
-myTerminal = "alacritty"
-myBrowser = "firefox"
-myFileManager = "pcmanfm"
-myCliFileManager = "lf"
-
--- Preferred font
-myFont :: String
-myFont = "xft:SauceCodePro Nerd Font Mono:regular:size=9:antialias=true:hinting=true"
-
--- Width of the window border in pixels
-myBorderWidth :: Dimension
-myBorderWidth = 2
-
--- Border color of normal windows
-myNormalBorderColor :: String
-myNormalBorderColor = "#3b4252"
-
--- Border color of focused windows
-myFocusedBorderColor :: String
-myFocusedBorderColor = "#bc96da"
-
--- Default workspaces. Number of workspaces is determined by the list length.
-myWorkspaces = [" dev ", " www ", " sys ", " chat ", " mus ", " vid ", " doc ", " virt ", " etc "]
-myWorkspaceIndices = M.fromList $ zipWith (,) myWorkspaces [1..] -- (,) == \x y -> (x,y)
-
--- Make the workspaces clickable
-clickable ws = ""++ws++""
- where i = fromJust $ M.lookup ws myWorkspaceIndices
-
--- Keep track of the number of windows in current workspace
-windowCount :: X (Maybe String)
-windowCount = gets $ Just . show . length . W.integrate' . W.stack . W.workspace . W.current . windowset
-
-
--------------------------------------------------------------------------------
--- Key bindings with EZConfig:
--- C: Ctrl, S: Shift, M: Mod, M1: Alt
-
-myKeys :: [(String, X ())]
-myKeys =
- -- XMonad
- [ ("M-S-r", spawn "xmonad --recompile; xmonad --restart") -- Recompiles xmonad
- , ("M-S-q", io exitSuccess) -- Quits xmonad
-
- -- Programs
- , ("M-", spawn (myTerminal))
- , ("M-b", spawn (myBrowser))
- , ("M-x", spawn (myFileManager))
- , ("M-M1-v", spawn (myTerminal ++ " -e " ++ myCliFileManager))
- , ("M-M1-h", spawn (myTerminal ++ " -e htop"))
- , ("M-M1-b", spawn (myTerminal ++ " -e bpytop"))
- , ("M-M1-p", spawn (myTerminal ++ " -e ipython"))
-
- -- Dmenu
- , ("M-S-", spawn "dmenu_run -i -p \"Run: \"") -- Launch dmenu to execute command
- , ("M-v", spawn "clipmenu") -- Clipboard manager with dmenu
-
- -- Screenshots
- , ("", spawn "flameshot gui")
- , ("M-", spawn "flameshot screen -p ~/Pictures/Screenshots")
- , ("M-S-", spawn "flameshot screen -c")
- , ("C-", spawn "flameshot full -p ~/Pictures/Screenshots")
- , ("C-S-", spawn "flameshot full -c")
- , ("C-M-", spawn "flameshot launcher")
-
- -- Script shortcuts
- , ("M-S-p", spawn "setbg ~/Pictures/Wallpapers/Active") -- Set random background
- , ("M-S-d", spawn "displayselect") -- Set display configurations
- , ("M-C-l", spawn "lockscreen lock") -- Lock the screen
- , ("M-C-S-l", spawn "lockscreen toggle") -- Toggle automatic locking
- , ("M-S-l", spawn "swap-kblayout") -- Swap keyboard layout
-
- -- Kill windows
- , ("M-w", kill1) -- Kill the currently focused client
- , ("M-S-w", killAll) -- Kill all windows on current workspace
-
- -- Compositor
- , ("M-C-x", spawn "picom -b --experimental-backends") -- Run picom compositor
- , ("M-S-x", spawn "killall picom") -- Kill picom compositor
-
- -- Dunst notifications
- , ("C-,", spawn "dunstctl close") -- Close topmost notification
- , ("C-S-,", spawn "dunstctl close-all") -- Close all notifications
- , ("C-.", spawn "dunstctl history-pop") -- Show last notification
- , ("C-S-.", spawn "dunstctl context") -- Show context menu with multiple actions
-
- -- Workspaces
- , ("M-.", nextScreen) -- Switch focus to next monitor
- , ("M-,", prevScreen) -- Switch focus to prev monitor
- , ("M-S-", shiftTo Next nonNSP >> moveTo Next nonNSP) -- Shifts focused window to next ws
- , ("M-S-", shiftTo Prev nonNSP >> moveTo Prev nonNSP) -- Shifts focused window to prev ws
-
- -- Floating windows
- , ("M-f", withFocused $ float) -- Make window float
- , ("M-t", withFocused $ windows . W.sink) -- Push floating window back to tile
- , ("M-S-t", sinkAll) -- Push all floating windows to tile
- , ("M-S-f", sendMessage (T.Toggle "floats")) -- Toggles 'floats' layout
-
- -- Increase/decrease spacing (gaps)
- , ("C-M1-j", decWindowSpacing 4) -- Decrease window spacing
- , ("C-M1-k", incWindowSpacing 4) -- Increase window spacing
- , ("C-M1-h", decScreenSpacing 4) -- Decrease screen spacing
- , ("C-M1-l", incScreenSpacing 4) -- Increase screen spacing
-
- -- Windows navigation
- , ("M-m", windows W.focusMaster) -- Move focus to the master window
- , ("M-j", windows W.focusDown) -- Move focus to the next window
- , ("M-k", windows W.focusUp) -- Move focus to the prev window
- , ("M-S-m", windows W.swapMaster) -- Swap the focused window and the master window
- , ("M-S-j", windows W.swapDown) -- Swap focused window with next window
- , ("M-S-k", windows W.swapUp) -- Swap focused window with prev window
- , ("M-S-", rotSlavesDown) -- Rotate all windows except master and keep focus in place
- , ("M-C-", rotAllDown) -- Rotate all windows in the current stack
- , ("M-", promote) -- Moves focused window to master, others maintain order
-
- -- Layouts
- , ("M-", sendMessage NextLayout) -- Switch to next layout
- , ("M-", sendMessage (MT.Toggle NBFULL) >> sendMessage ToggleStruts) -- Toggles noborder/full
-
- -- Increase/decrease windows in the master pane or the stack
- , ("M-S-", sendMessage (IncMasterN 1)) -- Increase # of clients master pane
- , ("M-S-", sendMessage (IncMasterN (-1))) -- Decrease # of clients master pane
- , ("M-C-", increaseLimit) -- Increase # of windows
- , ("M-C-", decreaseLimit) -- Decrease # of windows
-
- -- Window resizing
- , ("M-h", sendMessage Shrink) -- Shrink horiz window width
- , ("M-l", sendMessage Expand) -- Expand horiz window width
- , ("M-M1-j", sendMessage MirrorShrink) -- Shrink vert window width
- , ("M-M1-k", sendMessage MirrorExpand) -- Expand vert window width
-
- -- Multimedia keys
- , ("", spawn "pulsemixer --toggle-mute")
- , ("", spawn "pulsemixer --change-volume -5")
- , ("", spawn "pulsemixer --change-volume +5")
- , ("", spawn "brightness -i 5% -n")
- , ("", spawn "brightness -d 5% -n")
- -- Map media keys to meta + arrows for keyboards without special keys
- , ("M-", spawn "pulsemixer --change-volume -5")
- , ("M-", spawn "pulsemixer --change-volume +5")
- , ("M-", spawn "brightness -i 5% -n")
- , ("M-", spawn "brightness -d 5% -n")
- ]
- where nonNSP = WSIs (return (\ws -> W.tag ws /= "NSP"))
- nonEmptyNonNSP = WSIs (return (\ws -> isJust (W.stack ws) && W.tag ws /= "NSP"))
-
--------------------------------------------------------------------------------
--- Layout vars:
-
---Makes setting the spacingRaw simpler to write.
---The spacingRaw module adds a configurable amount of space around windows.
-mySpacing :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a
-mySpacing i = spacingRaw False (Border i i i i) True (Border i i i i) True
-
--- Below is a variation of the above except no borders are applied
--- if fewer than two windows. So a single window has no gaps.
-mySpacing' :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a
-mySpacing' i = spacingRaw True (Border i i i i) True (Border i i i i) True
-
--- Colors for tabs layout and tabs sublayout.
-myTabTheme = def { fontName = myFont
- , activeColor = "#46d9ff"
- , inactiveColor = "#313846"
- , activeBorderColor = "#46d9ff"
- , inactiveBorderColor = "#282c34"
- , activeTextColor = "#282c34"
- , inactiveTextColor = "#d0d0d0"
- }
-
--- Theme for showWName which prints current workspace when you change workspaces.
-myShowWNameTheme :: SWNConfig
-myShowWNameTheme = def
- { swn_font = "xft:Ubuntu:bold:size=60"
- , swn_fade = 1.0
- , swn_bgcolor = "#1c1f24"
- , swn_color = "#ffffff"
- }
-
--------------------------------------------------------------------------------
--- Layouts:
--- All of these layouts have to be defined in myLayoutHook, otherwise
--- type errors will occur
-
-tall = renamed [Replace "tall"]
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ limitWindows 12
- $ mySpacing 8
- $ ResizableTall 1 (3/100) (1/2) []
-floats = renamed [Replace "floats"]
- $ smartBorders
- $ limitWindows 20 simplestFloat
-grid = renamed [Replace "grid"]
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ limitWindows 12
- $ mySpacing 8
- $ mkToggle (single MIRROR)
- $ Grid (16/10)
-spirals = renamed [Replace "spirals"]
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ mySpacing' 8
- $ spiral (6/7)
-tabs = renamed [Replace "tabs"]
- -- I cannot add spacing to this layout because it will
- -- add spacing between window and tabs which looks bad.
- $ tabbed shrinkText myTabTheme
-
-
-myLayoutHook = avoidStruts $ mouseResize $ windowArrange $ T.toggleLayouts floats
- $ mkToggle (NBFULL ?? NOBORDERS ?? EOT) myDefaultLayout
- where
- myDefaultLayout = withBorder myBorderWidth tall
- ||| floats
- ||| grid
- ||| spirals
- ||| tabs
-
--------------------------------------------------------------------------------
--- Window rules:
-
--- Execute arbitrary actions and WindowSet manipulations when managing
--- a new window. You can use this to, for example, always float a
--- particular program, or have a client always appear on a particular
--- workspace.
---
--- To find the property name associated with a program, use
--- > xprop | grep WM_CLASS
--- and click on the client you're interested in.
---
--- To match on the WM_NAME, you can use 'title' in the same way that
--- 'className' and 'resource' are used below.
---
--- `doFloat` forces a window to float, useful for dialog boxes and such.
--- `doShift (myWorkspaces !! 7)` sends program to workspace 8
-
-myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet)
-myManageHook = composeAll
- -- Make dialog boxes floating, don't tile them
- [ className =? "notification" --> doFloat
- , className =? "confirm" --> doFloat
- , className =? "dialog" --> doFloat
- , className =? "error" --> doFloat
- , className =? "download" --> doFloat
- , className =? "file_progress" --> doFloat
- , className =? "splash" --> doFloat
- , className =? "toolbar" --> doFloat
- , className =? "Qalculate-gtk" --> doFloat
- , className =? "udiskie" --> doFloat
- , isFullscreen --> doFullFloat
- -- auto-shift applications to their respecitve workspaces
- , className =? "discord" --> doShift ( myWorkspaces !! 3 )
- , className =? "Element" --> doShift ( myWorkspaces !! 3 )
- , className =? "Code" --> doShift ( myWorkspaces !! 0 )
- , className =? "Stremio" --> doShift ( myWorkspaces !! 5 )
- , title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
- ]
-
-------------------------------------------------------------------------
--- Startup hook
-
--- Perform an arbitrary action each time xmonad starts or is restarted
--- with mod-q. Used by, e.g., XMonad.Layout.PerWorkspace to initialize
--- per-workspace layout choices.
---
--- I don't really use this because I define these applications
--- in ~/.config/x11/xprofile instead, that way it will apply for
--- all WMs, not just for XMonad
-
-myStartupHook :: X ()
-myStartupHook = do
- -- Automatically run autostart.sh script which will start
- -- .desktop applications defined in ~/.config/autostart
- spawnOnce "$HOME/.config/xmonad/scripts/autostart.sh &"
-
--------------------------------------------------------------------------------
--- Log hook: this sends info to xmobar process(es)
-
-myLogHook :: Handle -> Handle -> X ()
-myLogHook xmproc0 xmproc1 = dynamicLogWithPP $ xmobarPP
- { ppOutput = \x -> hPutStrLn xmproc0 x -- xmobar on monitor 1
- >> hPutStrLn xmproc1 x -- xmobar on monitor 2
-
- , ppCurrent = xmobarColor "#98be65" "" -- Current workspace
- . wrap "" "" . clickable
- , ppVisible = xmobarColor "#98be65" "" .clickable -- Visible but not current workspace
- , ppHidden = xmobarColor "#82aaff" "" . clickable -- Hidden workspaces
- , ppHiddenNoWindows = xmobarColor "#c792ea" "" . clickable -- Hidden workspaces (no windows)
-
- , ppTitle = xmobarColor "#b3afc2" "" . shorten 60 -- Title of active window
- , ppSep = " | " -- Separator character
- , ppUrgent = xmobarColor "#c45500" "" . wrap "!" "!" -- Urgent workspace
- , ppExtras = [windowCount] -- # of windows current workspace
- , ppOrder = \(ws:l:t:ex) -> [ws,l]++ex++[t] -- order of things in xmobar
- }
-
-
--------------------------------------------------------------------------------
--- Run xmonad with all the defaults we set up.
-main :: IO ()
-main = do
- -- Launching 2 instances of xmobar on their respective monitors.
- xmproc0 <- spawnPipe "xmobar -x 0 $HOME/.config/xmobar/xmobarrc0"
- xmproc1 <- spawnPipe "xmobar -x 1 $HOME/.config/xmobar/xmobarrc1"
- -- Xmonad config definitions
- xmonad $ ewmh $ docks $ def
- { modMask = myModMask
- , terminal = myTerminal
- , workspaces = myWorkspaces
- , startupHook = myStartupHook
- , manageHook = myManageHook <+> manageDocks
- --, layoutHook = showWName' myShowWNameTheme $ myLayoutHook
- , layoutHook = myLayoutHook
- , borderWidth = myBorderWidth
- , normalBorderColor = myNormalBorderColor
- , focusedBorderColor = myFocusedBorderColor
- , logHook = myLogHook xmproc0 xmproc1
- } `additionalKeysP` myKeys
-
diff --git a/home/.config/zsh/.zprofile b/home/.config/zsh/.zprofile
deleted file mode 120000
index 5046066..0000000
--- a/home/.config/zsh/.zprofile
+++ /dev/null
@@ -1 +0,0 @@
-../shell/profile
\ No newline at end of file
diff --git a/home/.config/zsh/.zshenv b/home/.config/zsh/.zshenv
deleted file mode 120000
index d8e764c..0000000
--- a/home/.config/zsh/.zshenv
+++ /dev/null
@@ -1 +0,0 @@
-../shell/environment
\ No newline at end of file
diff --git a/home/.config/zsh/.zshrc b/home/.config/zsh/.zshrc
deleted file mode 100755
index 71e045e..0000000
--- a/home/.config/zsh/.zshrc
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/usr/bin/zsh
-
-# ZSH Options
-setopt auto_cd # cd by typing directory name if it's not a command
-setopt auto_list # automatically list choices on ambiguous completion
-setopt auto_menu # automatically use menu completion
-setopt always_to_end # move cursor to end if word had one match
-setopt interactivecomments # allow comments in interactive mode
-setopt magicequalsubst # enable filename expansion for arguments of form `x=expression`
-setopt notify # report the status of background jobs immediately
-setopt numericglobsort # sort filenames numerically when it makes sense
-setopt auto_pushd # Make cd act as pushd
-#setopt correct_all # autocorrect commands
-
-# oh-my-zsh configuration (DISABLED by default, if you want oh-my-zsh, uncomment these)
-#export ZSH="/usr/share/oh-my-zsh"
-#ZSH_THEME="af-magic"
-#UPDATE_ZSH_DAYS=8
-#ENABLE_CORRECTION="false"
-#source $ZSH/oh-my-zsh.sh # Run oh-my-zsh
-
-# ZSH files setup (don't clutter home)
-export ZSH_CACHE="$HOME/.cache/zsh"
-export HISTFILE="$ZSH_CACHE/history"
-export ZSH_COMPDUMP="$ZSH_CACHE/zcompdump-$ZSH_VERSION"
-mkdir -p "$ZSH_CACHE"
-
-# Auto-remove home clutter
-[ -f ~/.zsh-update ] && mv ~/.zsh-update $ZSH_CACHE/.zsh-update
-[ -f ~/.sudo_as_admin_sucessful ] && rm ~/.sudo_as_admin_successful
-[ -f ~/.bash_history ] && rm ~/.bash_history
-
-# History configuration
-export HISTSIZE=10000
-export SAVEHIST=10000
-setopt appendhistory # save history entries as soon as they are entered
-setopt hist_ignore_space # ignore commands that start with space
-setopt hist_verify # show commands with history expansion to user before running it
-setopt extended_history # record command start time
-#setopt hist_ignore_dups # ignore duplicated commands history list
-#setopt hist_expire_dups_first # delete duplicates first when HISTFILE size exceeds HISTFILE
-#setopt share_history # share command history data between terminals
-
-# Completion features (tab)
-autoload -Uz compinit
-zmodload -i zsh/complist # load completion list
-compinit -d $ZSH_COMPDUMP # Specify compdump file
-comp_options+=(globdots) # Enable completion on hidden files.
-zstyle ':completion:*' menu select # select completions with arrow keys
-zstyle ':completion:*' group-name '' # group results by category
-zstyle ':completion:::::' completer _expand _complete _ignored _approximate #enable approximate matches for completion
-
-# Color support
-#autoload -U colors && colors
-
-# Setup aliases
-[ -f ~/.config/shell/aliases ] && source ~/.config/shell/aliases
-# Load handlers
-[ -f ~/.config/shell/handlers ] && source ~/.config/shell/handlers
-# Load key bindings
-[ -f ~/.config/shell/keybinds ] && source ~/.config/shell/keybinds
-# Load prompt
-[ -f ~/.config/shell/prompt ] && source ~/.config/shell/prompt
-
-# Define TMOUT timeout for TTY and root
-[ -z "$DISPLAY" ] && export TMOUT=800
-[ $UID -eq 0 ] && export TMOUT=600
-
-# Load extensions (should be last)
-. /usr/share/zsh/site-functions/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh 2>/dev/null
-. /usr/share/zsh/site-functions/zsh-autosuggestions/zsh-autosuggestions.zsh 2>/dev/null
-eval "$(lua /usr/local/src/z.lua/z.lua --init zsh enhanced)"
-if command -v pyenv >/dev/null 2>&1; then
- eval "$(pyenv init -)"
-fi
diff --git a/home/.local/bin/scripts/bitcoin b/home/.local/bin/scripts/bitcoin
deleted file mode 100755
index c0dfad2..0000000
--- a/home/.local/bin/scripts/bitcoin
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-BTC_DATA=$(curl https://api.coindesk.com/v1/bpi/currentprice.json 2>/dev/null || echo 'ERR')
-
-if [ "$BTC_DATA" != "ERR" ]; then
- BTC_PRICE=$(echo $BTC_DATA | jq -r ".bpi.USD.rate_float")
- BTC_PRICE=$(printf "%.2f" "$BTC_PRICE")
- echo \$"$BTC_PRICE"
-else
- echo "N/A"
-fi
-
diff --git a/home/.local/bin/scripts/brightness b/home/.local/bin/scripts/brightness
deleted file mode 100755
index 4efadf0..0000000
--- a/home/.local/bin/scripts/brightness
+++ /dev/null
@@ -1,153 +0,0 @@
-#!/bin/sh
-
-
-# Parse arguments
-# ------------------------------------------------------------------------------------
-BRIGHTNESS_DIR="/sys/class/backlight/*"
-SEND_NOTIFICATION=0
-URGENCY="normal"
-INCREASE=0
-DECREASE=0
-SET=0
-BRIGHTNESS=0
-
-while [ "$1" ]; do
- case "$1" in
- -h | --help)
- cat << EOF
-brightness is a cli tool that for displaying or modifying screen brightness.
-
-Options:
--h | --help: Display this message
--n | --notification: Produce a desktop notification with brightness info
--N | --no-notification: Don't produce a desktop notification with brightness info
--u | --urgency [URGENCY]: Pass over notify-send urgency attribute (default: normal)
--i | --increase [BRIGHTNESS]: Increase the brightness by given amount
--d | --decrease [BRIGHTNESS]: Decrease the brightness by given amount
--s | --set [BRIGHTNESS]: Set new brightness level
--p | --path [DIR_PATH]: Path to brightness directory (default: /sys/class/backlight/*)
-
-Valid values:
- URGENCY: low, normal, critical
- DIR_PATH: Valid path to a directory
- BRIGHTNESS:
- specific value - Example: 10
- percentage value - Example: 10%
-EOF
- exit 0
- ;;
- -n | --notification)
- SEND_NOTIFICATION=1
- ;;
- -N | --no-notification)
- SEND_NOTIFICATION=0
- ;;
- -u | --urgency)
- URGENCY="$2"
- shift
- ;;
- -i | --increase)
- INCREASE=1
- BRIGHTNESS="$2"
- shift
- ;;
- -d | --decrease)
- DECREASE=1
- BRIGHTNESS="$2"
- shift
- ;;
- -s | --set)
- SET=1
- BRIGHTNESS="$2"
- shift
- ;;
- -p | --path)
- BRIGHTNESS_DIR="$2"
- shift
- ;;
- * )
- echo "Unknown argument '$1', use -h or --help for help"
- exit 1
- ;;
- esac
- shift
-done
-
-# Define constants based on parsed arguments
-# ------------------------------------------------------------------------------------
-BRIGHTNESS_FILE="$BRIGHTNESS_DIR/brightness"
-BRIGHTNESS_MAX="$(cat $BRIGHTNESS_DIR/max_brightness)"
-
-
-# Helper functins
-# ------------------------------------------------------------------------------------
-
-# Send brightness level desktop notification, showing the given brightness level
-# as progress bar, along with given message.
-# $1 - brightness level (number 0-100)
-# $2 - message (notification body)
-send_brightness_notify() {
- percent_brightness="$1"
- msg="$2"
-
- notify-send \
- --app-name=brightness \
- --urgency="$URGENCY" \
- -h int:value:$percent_brightness \
- -h string:synchronous:brightness \
- "brightness" "$msg"
-}
-
-
-# Set brightness to given absolute value
-# $1 - brightness absolute value
-set_brightness() {
- # there should be sudo config allowing this command without password
- echo "$1" | sudo tee $BRIGHTNESS_FILE >/dev/null
-}
-
-
-# Main Logic
-# ------------------------------------------------------------------------------------
-
-# Determine the absolute new brightness level
-if [ $INCREASE -eq 1 ] || [ $DECREASE -eq 1 ] || [ $SET -eq 1 ]; then
- # If we're dealing with percentages, change to absolutes
- if echo "$BRIGHTNESS" | grep -qE '%$'; then
- numeric=$(echo "$BRIGHTNESS" | sed 's/.$//')
- absolute=$(echo "($BRIGHTNESS_MAX / 100) * $numeric" | bc -l)
- BRIGHTNESS=$(printf "%.0f" $absolute)
- fi
-
- # Get the new requested absolute brightness
- if [ $SET -eq 1 ]; then
- new_brightness=$BRIGHTNESS
- elif [ $DECREASE -eq 1 ]; then
- cur_brightness=$(cat $BRIGHTNESS_FILE)
- new_brightness=$(($cur_brightness - $BRIGHTNESS))
- else
- cur_brightness=$(cat $BRIGHTNESS_FILE)
- new_brightness=$(($cur_brightness + $BRIGHTNESS))
- fi
-
- # Ensure we respect max/min boundaries
- if [ $new_brightness -lt 0 ]; then
- new_brightness=0
- elif [ $new_brightness -gt $BRIGHTNESS_MAX ]; then
- new_brightness=$BRIGHTNESS_MAX
- fi
-
- # Update the brightness
- set_brightness $new_brightness
-fi
-
-cur_brightness=$(cat $BRIGHTNESS_FILE)
-percent_brightness=$(echo "($cur_brightness / $BRIGHTNESS_MAX) * 100" | bc -l)
-percent_brightness_2f=$(printf "%.2f" $percent_brightness)
-percent_brightness_rounded=$(printf "%.0f" $percent_brightness)
-
-if [ $SEND_NOTIFICATION -eq 1 ]; then
- send_brightness_notify "$percent_brightness_rounded" "Level: $percent_brightness_rounded"
-fi
-
-echo "Brightness: ${percent_brightness_2f}% (absolute: $cur_brightness)"
diff --git a/home/.local/bin/scripts/cheat.sh b/home/.local/bin/scripts/cheat.sh
deleted file mode 100755
index 38bbdf9..0000000
--- a/home/.local/bin/scripts/cheat.sh
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/sh
-
-# rm_trailing_slashes(string)
-#
-# Prints a string without any trailing slashes.
-# This is used because cheat.sh doesn't play nicely with multiple slashes in
-# URLs.
-rm_trailing_slashes() {
- string="$1"
- last_char="$(printf "$string" | tail -c 1)"
- if [ "$last_char" = "/" ]; then
- echo "$(rm_trailing_slashes "${string%?}")"
- else
- echo "$string"
- fi
-}
-
-# pick_category(must_match, query, argument, recurse)
-#
-# Pick cheat.sh category.
-# if must_match is 1, only allow listed options to be picked.
-# if query is specified, pick sub-category of it, else pick global categories.
-# if argument is specified, optionally perform must_match check and print it.
-# if recurse is 1, if the selected option ends with /, run the function again.
-#
-# Prints the chosen category
-pick_category() {
- must_match="$1"
- query="$(rm_trailing_slashes "$2")"
- argument="$3"
- recurse="$4"
-
- # Query all possible options
- if [ -n "$query" ]; then
- url="cheat.sh/$query/:list"
- else
- url="cheat.sh/:list"
- fi
- selectable="$(curl -s "$url")"
-
- # If argument is specified, print it, optionally perform must_match check.
- if [ -n "$argument" ]; then
- if [ "$must_match" -ne 1 ] || echo "$selectable" | grep -qe "\b$1\b"; then
- selected="$argument"
- else
- echo "Invalid selection: '$argument'"
- echo "For all selections, query $url"
- exit 1
- fi
- # Select the option with fzf, optionally allow other matches if must_match isn't set.
- else
- if [ "$must_match" -ne 1 ]; then
- if [ -z "$selectable" ]; then
- header="No selections found, you can use empty query to show category help, or type a custom query."
- else
- header="Use alt-enter to enter non-listed query. You can use empty queries to show category help."
- fi
- selected="$(printf "\n$selectable" | \
- fzf --bind=alt-enter:print-query \
- --print-query \
- --prompt="cheat.sh/$query query>" \
- --header="$header"\
- )"
- else
- selected=$(printf "$selectable" | fzf --prompt="cheat.sh/$query category>")
- if [ $? -ne 0 ]; then
- echo "Invalid selection: '$selected'"
- echo "For all selections, query $url"
- exit 1
- fi
- fi
- selected=$(printf "$selected" | tail -1)
- fi
-
-
- # Replace spaces with '+' (cheat.sh resolves those as spaces)
- selected="$(echo "$selected" | tr ' ' '+')"
-
- # Prepend the original query, if we have one
- # Print the selected category, or subcategory with the category
- if [ -n "$query" ]; then
- result="$query/$selected"
- else
- result="$selected"
- fi
-
- # Recurse, if specified and the result ended with /
- if [ "$recurse" -eq 1 ]; then
- if [ "$(printf "$selected" | tail -c 1)" = "/" ]; then
- result="$(pick_category "$must_match" "$result" "$argument" 1)"
- fi
- fi
-
- # Print the result
- printf "$result"
-}
-
-# Select the cheatsheat category (language/core-util/...)
-query=$(pick_category 1 "" "$1" 0)
-
-# If the query isn't already complete, select a sub-category
-if ! echo "$query" | grep -qe ":"; then
- query="$(pick_category 0 "$query" "$2" 1)"
-fi
-
-# Construct the URL from given query and print it
-url="cheat.sh/$query"
-echo "$url"
-
-# Show the output of cheat.sh request
-curl -s "$url"
diff --git a/home/.local/bin/scripts/colors-256 b/home/.local/bin/scripts/colors-256
deleted file mode 100755
index 109fba1..0000000
--- a/home/.local/bin/scripts/colors-256
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/bash
-
-# # Print out 256 colors, with each number printed in its corresponding colour
-#
-# This file is uploaded on
-# It was originally intended to be used as an alias that curled this URL and piped it into bash, however
-# this is very unsafe as the owner can change the content of this gist at his convenience, meaning it was
-# a potential security vulnerability. This is a script version of this alias to avoid this issue.
-#
-# The copyright for this file belongs to the original author: Tom Hale, 2016
-# This file was released under MIT license
-
-set -eu # Fail on errors or undeclared variables
-
-printable_colours=256
-
-# Return a colour that contrasts with the given colour
-# Bash only does integer division, so keep it integral
-function contrast_colour {
- local r g b luminance
- colour="$1"
-
- if (( colour < 16 )); then # Initial 16 ANSI colours
- (( colour == 0 )) && printf "15" || printf "0"
- return
- fi
-
- # Greyscale # rgb_R = rgb_G = rgb_B = (number - 232) * 10 + 8
- if (( colour > 231 )); then # Greyscale ramp
- (( colour < 244 )) && printf "15" || printf "0"
- return
- fi
-
- # All other colours:
- # 6x6x6 colour cube = 16 + 36*R + 6*G + B # Where RGB are [0..5]
- # See http://stackoverflow.com/a/27165165/5353461
-
- # r=$(( (colour-16) / 36 ))
- g=$(( ((colour-16) % 36) / 6 ))
- # b=$(( (colour-16) % 6 ))
-
- # If luminance is bright, print number in black, white otherwise.
- # Green contributes 587/1000 to human perceived luminance - ITU R-REC-BT.601
- (( g > 2)) && printf "0" || printf "15"
- return
-
- # Uncomment the below for more precise luminance calculations
-
- # # Calculate percieved brightness
- # # See https://www.w3.org/TR/AERT#color-contrast
- # # and http://www.itu.int/rec/R-REC-BT.601
- # # Luminance is in range 0..5000 as each value is 0..5
- # luminance=$(( (r * 299) + (g * 587) + (b * 114) ))
- # (( $luminance > 2500 )) && printf "0" || printf "15"
-}
-
-# Print a coloured block with the number of that colour
-function print_colour {
- local colour="$1" contrast
- contrast=$(contrast_colour "$1")
- printf "\e[48;5;%sm" "$colour" # Start block of colour
- printf "\e[38;5;%sm%3d" "$contrast" "$colour" # In contrast, print number
- printf "\e[0m " # Reset colour
-}
-
-# Starting at $1, print a run of $2 colours
-function print_run {
- local i
- for (( i = "$1"; i < "$1" + "$2" && i < printable_colours; i++ )) do
- print_colour "$i"
- done
- printf " "
-}
-
-# Print blocks of colours
-function print_blocks {
- local start="$1" i
- local end="$2" # inclusive
- local block_cols="$3"
- local block_rows="$4"
- local blocks_per_line="$5"
- local block_length=$((block_cols * block_rows))
-
- # Print sets of blocks
- for (( i = start; i <= end; i += (blocks_per_line-1) * block_length )) do
- printf "\n" # Space before each set of blocks
- # For each block row
- for (( row = 0; row < block_rows; row++ )) do
- # Print block columns for all blocks on the line
- for (( block = 0; block < blocks_per_line; block++ )) do
- print_run $(( i + (block * block_length) )) "$block_cols"
- done
- (( i += block_cols )) # Prepare to print the next row
- printf "\n"
- done
- done
-}
-
-print_run 0 16 # The first 16 colours are spread over the whole spectrum
-printf "\n"
-print_blocks 16 231 6 6 3 # 6x6x6 colour cube between 16 and 231 inclusive
-print_blocks 232 255 12 2 1 # Not 50, but 24 Shades of Grey
diff --git a/home/.local/bin/scripts/comp b/home/.local/bin/scripts/comp
deleted file mode 100755
index 7efa12c..0000000
--- a/home/.local/bin/scripts/comp
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/sh
-# Compile given file
-
-file=$(readlink -f "$1")
-base="$(dirname "$file")/$(basename "$file" | sed 's/\..*//')"
-
-case "$file" in
- *.md) pandoc --filter pandoc-crossref "$file" -o "$base".pdf ;;
- *.asm) nasm -f elf64 "$file" -o "$base".o && ld "$base".o -o "$base" ;;
- *.c) gcc "$file" -o "$base" ;;
- *.cpp) g++ "$file" -o "$base" ;;
- *) echo "Can't compile!" && exit 1 ;;
-esac
diff --git a/home/.local/bin/scripts/deskopen b/home/.local/bin/scripts/deskopen
deleted file mode 100755
index 98d8280..0000000
--- a/home/.local/bin/scripts/deskopen
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-
-# Find the line with exec, if there's multiple lines
-# use the last one
-exec_line=$(grep '^Exec' "$1" | tail -1)
-# Remove 'Exec' and arguments (%u, %f, ...)
-cmd=$(echo $exec_line | sed 's/^Exec=//' | sed 's/%.//')
-# Remove "" around command (if present)
-cmd=$(echo $cmd | sed 's/^"//g' | sed 's/" *$//g')
-# Run the exec line of the application using /bin/sh
-/bin/sh -c "$cmd"
diff --git a/home/.local/bin/scripts/dmenu/displayselect b/home/.local/bin/scripts/dmenu/displayselect
deleted file mode 100755
index e010764..0000000
--- a/home/.local/bin/scripts/dmenu/displayselect
+++ /dev/null
@@ -1,82 +0,0 @@
-
-#!/bin/sh
-
-# A UI for detecting and selecting all displays. Probes xrandr for connected
-# displays and lets user select one to use. User may also select "manual
-# selection" which opens arandr.
-
-twoscreen() { # If multi-monitor is selected and there are two screens.
-
- mirror=$(printf "no\\nyes" | dmenu -i -p "Mirror displays?")
- # Mirror displays using native resolution of external display and a scaled
- # version for the internal display
- if [ "$mirror" = "yes" ]; then
- external=$(echo "$screens" | dmenu -i -p "Optimize resolution for:")
- internal=$(echo "$screens" | grep -v "$external")
-
- res_external=$(xrandr --query | sed -n "/^$external/,/\+/p" | \
- tail -n 1 | awk '{print $1}')
- res_internal=$(xrandr --query | sed -n "/^$internal/,/\+/p" | \
- tail -n 1 | awk '{print $1}')
-
- res_ext_x=$(echo "$res_external" | sed 's/x.*//')
- res_ext_y=$(echo "$res_external" | sed 's/.*x//')
- res_int_x=$(echo "$res_internal" | sed 's/x.*//')
- res_int_y=$(echo "$res_internal" | sed 's/.*x//')
-
- scale_x=$(echo "$res_ext_x / $res_int_x" | bc -l)
- scale_y=$(echo "$res_ext_y / $res_int_y" | bc -l)
-
- xrandr --output "$external" --auto --scale 1.0x1.0 \
- --output "$internal" --auto --same-as "$external" \
- --scale "$scale_x"x"$scale_y"
- else
-
- primary=$(echo "$screens" | dmenu -i -p "Select primary display:")
- secondary=$(echo "$screens" | grep -v "$primary")
- direction=$(printf "left\\nright" | dmenu -i -p "What side of $primary should $secondary be on?")
- xrandr --output "$primary" --auto --scale 1.0x1.0 --output "$secondary" --"$direction"-of "$primary" --auto --scale 1.0x1.0
- fi
- }
-
-morescreen() { # If multi-monitor is selected and there are more than two screens.
- primary=$(echo "$screens" | dmenu -i -p "Select primary display:")
- secondary=$(echo "$screens" | grep -v "$primary" | dmenu -i -p "Select secondary display:")
- direction=$(printf "left\\nright" | dmenu -i -p "What side of $primary should $secondary be on?")
- tertiary=$(echo "$screens" | grep -v "$primary" | grep -v "$secondary" | dmenu -i -p "Select third display:")
- xrandr --output "$primary" --auto --output "$secondary" --"$direction"-of "$primary" --auto --output "$tertiary" --"$(printf "left\\nright" | grep -v "$direction")"-of "$primary" --auto
- }
-
-multimon() { # Multi-monitor handler.
- case "$(echo "$screens" | wc -l)" in
- 2) twoscreen ;;
- *) morescreen ;;
- esac ;}
-
-onescreen() { # If only one output available or chosen.
- xrandr --output "$1" --auto --scale 1.0x1.0 $(echo "$allposs" | grep -v "\b$1" | awk '{print "--output", $1, "--off"}' | paste -sd ' ' -)
- }
-
-postrun() { # Stuff to run to clean up.
- command -v setbg >/dev/null && setbg # Fix background if screen size/arangement has changed.
- }
-
-# Get all possible displays
-allposs=$(xrandr -q | grep "connected")
-
-# Get all connected screens.
-screens=$(echo "$allposs" | awk '/ connected/ {print $1}')
-
-# If there's only one screen
-[ "$(echo "$screens" | wc -l)" -lt 2 ] &&
- { onescreen "$screens"; postrun; notify-send "💻 Only one screen detected." "Using it in its optimal settings..."; exit ;}
-
-# Get user choice including multi-monitor and manual selection:
-chosen=$(printf "%s\\nmulti-monitor\\nmanual selection" "$screens" | dmenu -i -p "Select display arangement:") &&
-case "$chosen" in
- "manual selection") arandr ; exit ;;
- "multi-monitor") multimon ;;
- *) onescreen "$chosen" ;;
-esac
-
-postrun
diff --git a/home/.local/bin/scripts/dmenu/dmenumount b/home/.local/bin/scripts/dmenu/dmenumount
deleted file mode 100755
index 2793633..0000000
--- a/home/.local/bin/scripts/dmenu/dmenumount
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/sh
-
-# Gives dmenu prompt to mount unmounted drives and Android phones.
-# If they're in /etc/fstab they'll be mounted automatically.
-# Otherwise, you'll be prompted to give a mountpoint from already
-# existing directories. If you input a novel directory, it will
-# prompt you to create that directory.
-
-getmount() { \
- [ -z "$chosen" ] && exit 1
- # shellcheck disable=SC2086
- mp="$(find $1 2>/dev/null | dmenu -i -p "Type in mount point.")" || exit 1
- test -z "$mp" && exit 1
- if [ ! -d "$mp" ]; then
- mkdiryn=$(printf "No\\nYes" | dmenu -i -p "$mp does not exist. Create it?") || exit 1
- [ "$mkdiryn" = "Yes" ] && (mkdir -p "$mp" || sudo -A mkdir -p "$mp")
- fi
- }
-
-mountusb() { \
- chosen="$(echo "$usbdrives" | dmenu -i -p "Mount which drive?")" || exit 1
- chosen="$(echo "$chosen" | awk '{print $1}')"
- sudo -A mount "$chosen" 2>/dev/null && notify-send "💻 USB mounting" "$chosen mounted." && exit 0
- alreadymounted=$(lsblk -nrpo "name,type,mountpoint" | awk '$3!~/\/boot|\/home$|SWAP/&&length($3)>1{printf "-not ( -path *%s -prune ) ",$3}')
- getmount "/mnt /media /mount /home -maxdepth 5 -type d $alreadymounted"
- partitiontype="$(lsblk -no "fstype" "$chosen")"
- case "$partitiontype" in
- "vfat") sudo -A mount -t vfat "$chosen" "$mp" -o rw,umask=0000;;
- "exfat") sudo -A mount "$chosen" "$mp" -o uid="$(id -u)",gid="$(id -g)";;
- *) sudo -A mount "$chosen" "$mp"; user="$(whoami)"; ug="$(groups | awk '{print $1}')"; sudo -A chown "$user":"$ug" "$mp";;
- esac
- notify-send "💻 USB mounting" "$chosen mounted to $mp."
- }
-
-mountandroid() { \
- chosen="$(echo "$anddrives" | dmenu -i -p "Which Android device?")" || exit 1
- chosen="$(echo "$chosen" | cut -d : -f 1)"
- getmount "$HOME -maxdepth 3 -type d"
- simple-mtpfs --device "$chosen" "$mp"
- echo "OK" | dmenu -i -p "Tap Allow on your phone if it asks for permission and then press enter" || exit 1
- simple-mtpfs --device "$chosen" "$mp"
- notify-send "🤖 Android Mounting" "Android device mounted to $mp."
- }
-
-asktype() { \
- choice="$(printf "USB\\nAndroid" | dmenu -i -p "Mount a USB drive or Android device?")" || exit 1
- case $choice in
- USB) mountusb ;;
- Android) mountandroid ;;
- esac
- }
-
-anddrives=$(simple-mtpfs -l 2>/dev/null)
-usbdrives="$(lsblk -rpo "name,type,size,mountpoint" | grep 'part\|rom' | awk '$4==""{printf "%s (%s)\n",$1,$3}')"
-
-if [ -z "$usbdrives" ]; then
- [ -z "$anddrives" ] && echo "No USB drive or Android device detected" && exit
- echo "Android device(s) detected."
- mountandroid
-else
- if [ -z "$anddrives" ]; then
- echo "USB drive(s) detected."
- mountusb
- else
- echo "Mountable USB drive(s) and Android device(s) detected."
- asktype
- fi
-fi
diff --git a/home/.local/bin/scripts/dmenu/dmenupass b/home/.local/bin/scripts/dmenu/dmenupass
deleted file mode 100755
index 8d5ce30..0000000
--- a/home/.local/bin/scripts/dmenu/dmenupass
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-# This script is the value for SUDO_ASKPASS variable,
-# meaning that it will be used as a password prompt if needed.
-
-dmenu -P -p "$1"
diff --git a/home/.local/bin/scripts/dmenu/dmenurecord b/home/.local/bin/scripts/dmenu/dmenurecord
deleted file mode 100755
index 60ce8dc..0000000
--- a/home/.local/bin/scripts/dmenu/dmenurecord
+++ /dev/null
@@ -1,121 +0,0 @@
-
-#!/bin/sh
-
-# Usage:
-# `$0`: Ask for recording type via dmenu
-# `$0 screencast`: Record both audio and screen
-# `$0 video`: Record only screen
-# `$0 audio`: Record only audio
-# `$0 kill`: Kill existing recording
-#
-# If there is already a running instance, user will be prompted to end it.
-
-screencast() {
- ffmpeg -y \
- -f x11grab \
- -framerate 60 \
- -s "$(xdpyinfo | grep dimensions | awk '{print $2;}')" \
- -i "$DISPLAY" \
- -f alsa -i default \
- -r 30 \
- -c:v h264 -crf 0 -preset ultrafast -c:a aac \
- "$HOME/screencast-$(date '+%y%m%d-%H%M-%S').mp4" &
- echo $! > /tmp/recordingpid
-}
-
-video() {
- ffmpeg \
- -f x11grab \
- -s "$(xdpyinfo | grep dimensions | awk '{print $2;}')" \
- -i "$DISPLAY" \
- -c:v libx264 -qp 0 -r 30 \
- "$HOME/video-$(date '+%y%m%d-%H%M-%S').mkv" &
- echo $! > /tmp/recordingpid
-}
-
-webcamhidef() {
- ffmpeg \
- -f v4l2 \
- -i /dev/video0 \
- -video_size 1920x1080 \
- "$HOME/webcam-$(date '+%y%m%d-%H%M-%S').mkv" &
- echo $! > /tmp/recordingpid
-}
-
-webcam() {
- ffmpeg \
- -f v4l2 \
- -i /dev/video0 \
- -video_size 640x480 \
- "$HOME/webcam-$(date '+%y%m%d-%H%M-%S').mkv" &
- echo $! > /tmp/recordingpid
-}
-
-
-audio() {
- ffmpeg \
- -f alsa -i default \
- "$HOME/audio-$(date '+%y%m%d-%H%M-%S').mp3" &
- echo $! > /tmp/recordingpid
-}
-
-asktoend() {
- response=$(printf "No\\nYes" | dmenu -i -p "Recording still active. End recording?") &&
- [ "$response" = "Yes" ] && killrecording
-}
-
-videoselected()
-{
- slop -f "%x %y %w %h" > /tmp/slop
- read -r X Y W H < /tmp/slop
- rm /tmp/slop
-
- ffmpeg \
- -f x11grab \
- -framerate 60 \
- -video_size "$W"x"$H" \
- -i :0.0+"$X,$Y" \
- -c:v libx264 -qp 0 -r 30 \
- "$HOME/box-$(date '+%y%m%d-%H%M-%S').mkv" &
- echo $! > /tmp/recordingpid
-}
-
-killrecording() {
- recpid="$(cat /tmp/recordingpid)"
- # kill with SIGTERM, allowing finishing touches.
- kill -15 "$recpid" 2>/dev/null
- rm -f /tmp/recordingpid
- # even after SIGTERM, ffmpeg may still run, so SIGKILL it.
- sleep 3
- kill -9 "$recpid" 2>/dev/null
- exit
-}
-
-askrecording() { \
- choice=$(printf "screencast\\nvideo\\nvideo selected\\naudio\\nwebcam\\nwebcam (hi-def)" | dmenu -i -p "Select recording style:")
- case "$choice" in
- screencast) screencast;;
- audio) audio;;
- video) video;;
- *selected) videoselected;;
- webcam) webcam;;
- "webcam (hi-def)") webcamhidef;;
- esac
-}
-
-case "$1" in
- screencast) screencast;;
- audio) audio;;
- video) video;;
- *selected) videoselected;;
- kill) killrecording;;
- *)
- if [ -f /tmp/recordingpid ]; then
- recpid="$(cat /tmp/recordingpid)"
- if ps -p $recpid > /dev/null; then
- asktoend
- exit
- fi
- fi
- askrecording;;
-esac
diff --git a/home/.local/bin/scripts/dmenu/dmenuumount b/home/.local/bin/scripts/dmenu/dmenuumount
deleted file mode 100755
index 26612ef..0000000
--- a/home/.local/bin/scripts/dmenu/dmenuumount
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/sh
-
-# A dmenu prompt to unmount drives.
-# Provides you with mounted partitions, select one to unmount.
-# Drives mounted at /, /boot and /home will not be options to unmount.
-
-unmountusb() {
- [ -z "$drives" ] && exit
- chosen="$(echo "$drives" | dmenu -i -p "Unmount which drive?")" || exit 1
- chosen="$(echo "$chosen" | awk '{print $1}')"
- [ -z "$chosen" ] && exit
- sudo -A umount "$chosen" && notify-send "💻 USB unmounting" "$chosen unmounted."
- }
-
-unmountandroid() { \
- chosen="$(awk '/simple-mtpfs/ {print $2}' /etc/mtab | dmenu -i -p "Unmount which device?")" || exit 1
- [ -z "$chosen" ] && exit
- sudo -A umount -l "$chosen" && notify-send "🤖 Android unmounting" "$chosen unmounted."
- }
-
-asktype() { \
- choice="$(printf "USB\\nAndroid" | dmenu -i -p "Unmount a USB drive or Android device?")" || exit 1
- case "$choice" in
- USB) unmountusb ;;
- Android) unmountandroid ;;
- esac
- }
-
-drives=$(lsblk -nrpo "name,type,size,mountpoint" | awk '$4!~/\/boot|\/home$|SWAP/&&length($4)>1{printf "%s (%s)\n",$4,$3}')
-
-if ! grep simple-mtpfs /etc/mtab; then
- [ -z "$drives" ] && echo "No drives to unmount." && exit
- echo "Unmountable USB drive detected."
- unmountusb
-else
- if [ -z "$drives" ]
- then
- echo "Unmountable Android device detected."
- unmountandroid
- else
- echo "Unmountable USB drive(s) and Android device(s) detected."
- asktype
- fi
-fi
diff --git a/home/.local/bin/scripts/dmenu/todo b/home/.local/bin/scripts/dmenu/todo
deleted file mode 100755
index 4cf8c90..0000000
--- a/home/.local/bin/scripts/dmenu/todo
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-# This is inspired by dmenu's todo script made by suckless
-#
-# Manage TODO tasks in dmenu by writing them, remove by selecting
-# an existing entry
-#
-# Configurable variables
-# ---------------------------------------------------------------------
-
-FILE="${XDG_DATA_HOME:-$HOME/.local/share}/todos"
-PROMPT="Add/delete a task: "
-
-# Logic
-# ---------------------------------------------------------------------
-mkdir -p "$(dirname $FILE)"
-touch "$FILE"
-
-height=$(wc -l "$FILE" | awk '{print $1}')
-
-# Run dmenu and keep restarting it until it returns an empty output
-cmd=$(dmenu -l "$height" -p "$PROMPT" "$@" < "$FILE")
-while [ -n "$cmd" ]; do
- # If the output matched an existing TODO, remove it
- if grep -q "^$cmd\$" "$FILE"; then
- grep -v "^$cmd\$" "$FILE" > "$FILE.$$"
- mv "$FILE.$$" "$FILE"
- height=$(( height - 1 ))
- # If the output didn't match an existing TODO, it's a new one, add it
- else
- echo "$cmd" >> "$FILE"
- height=$(( height + 1 ))
- fi
-
- # Keep restarting until empty output
- cmd=$(dmenu -l "$height" -p "$PROMPT" "$@" < "$FILE")
-done
diff --git a/home/.local/bin/scripts/dmenu/website-link b/home/.local/bin/scripts/dmenu/website-link
deleted file mode 100755
index c7a525f..0000000
--- a/home/.local/bin/scripts/dmenu/website-link
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/usr/bin/env python
-import feedparser
-import subprocess
-
-
-URL = "https://itsdrike.com/posts/index.xml"
-
-
-def main():
- feed = feedparser.parse(URL)
- titles = {entry['title']: entry['link'] for entry in feed['entries']}
-
- selected_page = subprocess.check_output(
- ["dmenu", "-i", "-p", "Post"],
- input="\n".join(titles.keys()), universal_newlines=True
- )
- link = titles[selected_page.strip()]
-
- subprocess.check_output(["xsel", "-bi"], input=link, universal_newlines=True)
-
-
-if __name__ == '__main__':
- main()
diff --git a/home/.local/bin/scripts/emerge-time b/home/.local/bin/scripts/emerge-time
deleted file mode 100755
index 6350128..0000000
--- a/home/.local/bin/scripts/emerge-time
+++ /dev/null
@@ -1,119 +0,0 @@
-#!/usr/bin/env python3
-
-import sys
-import subprocess
-from datetime import datetime
-from dataclasses import dataclass
-
-
-@dataclass
-class CompiledPackage:
- name: str
- date: datetime
- compile_time: int
-
- def __repr__(self) -> str:
- name = self.name
- date = self.date.strftime("%a %b %d %H:%M:%S %Y")
- compile_time = get_readable_duration(self.compile_time)
- return f"CompiledPackage({name=}, {date=}, {compile_time=})"
-
-
-def parse_time(time_line: str) -> int:
- """Parse a line that contains time info, return seconds"""
- time = 0
- words = time_line.split()
-
- if "hour" in words[1]:
- time += int(words[0]) * 60 * 60
- elif "minute" in words[1]:
- time += int(words[0]) * 60
- elif "second" in words[1]:
- time += int(words[0])
-
- try:
- if "second" in words[3]:
- time += int(words[2])
- elif "minute" in words[3]:
- time += int(words[2]) * 60
- except IndexError:
- pass
-
- return time
-
-
-def get_readable_duration(total_seconds: int) -> str:
- """Get readable time duration string from total seconds"""
- hours, rem = divmod(total_seconds, 3600)
- minutes, rem = divmod(rem, 60)
- seconds = rem
-
- output = []
- if hours > 0:
- output.append(f"{hours} hour{'s' if hours > 1 else ''}")
- if minutes > 0:
- output.append(f"{minutes} minute{'s' if minutes > 1 else ''}")
- if seconds > 0:
- output.append(f"{seconds} second{'s' if seconds > 1 else ''}")
-
- if len(output) > 1:
- output.insert(-1, "and")
-
- return " ".join(output)
-
-
-def get_packages() -> list[CompiledPackage]:
- """Obtain compilation times for every compiled package"""
- x = subprocess.run(
- "sudo genlop -nlt",
- stdout=subprocess.PIPE,
- shell=True
- )
- txt = x.stdout.decode("utf-8")
-
- # Cleanup the output
- txt = txt.replace("* packages merged:\n\n", "")
- txt = txt.replace("merge time: ", "")
- txt = txt.replace("and ", "")
- txt = txt.replace(".", "")
-
- # Remove indents
- clean_lines = [line.lstrip() for line in txt.split("\n")]
- txt = "\n".join(clean_lines)
-
- # Store (package name, date, compile time) for each package
- packages = []
- for pkg_txt in txt.split("\n\n"):
- if len(pkg_txt) == 0:
- continue
-
- pkg_lines = pkg_txt.split("\n")
-
- date, name = pkg_lines[0].split(" >>> ")
- time = parse_time(pkg_lines[1])
- date = datetime.strptime(date, "%a %b %d %H:%M:%S %Y")
-
- pkg = CompiledPackage(name, date, time)
- packages.append(pkg)
-
- return packages
-
-
-def get_compile_time(package_amount: int) -> int:
- """Get compilation time of last n specified packages (seconds)"""
- packages = get_packages()
- last_packages = packages[-package_amount:]
- return sum(package.compile_time for package in last_packages)
-
-
-if __name__ == "__main__":
- try:
- package_amt = int(sys.argv[1])
- except IndexError:
- print("Missing required argument: package amount")
- except TypeError:
- print("Argument must be a number (package amount)")
- else:
- time = get_compile_time(package_amt)
- print(get_readable_duration(time))
-
diff --git a/home/.local/bin/scripts/gh-notification b/home/.local/bin/scripts/gh-notification
deleted file mode 100755
index 42be614..0000000
--- a/home/.local/bin/scripts/gh-notification
+++ /dev/null
@@ -1,299 +0,0 @@
-#!/bin/sh
-
-# Parse arguments
-# ------------------------------------------------------------------------------------
-ALL=0
-VERBOSE=0
-VERY_VERBOSE=0
-VERY_VERY_VERBOSE=0
-TEMP_SHOW=0
-DRY_RUN=0
-NO_CACHE=0
-NO_DISPLAY=0
-URGENCY="normal"
-RESET=0
-while [ "$1" ]; do
- case "$1" in
- -h | --help)
- cat << EOF
-gh-notification is a tool that scrapes unread github notifications
-It uses github-cli with meiji163/gh-notify addon to obtain the unread notifications
-these are then parsed and sent as desktop notifications with notify-send
-
-Options:
--a | --all: Also process already read notifications
--t | --temp-files: Show names of used temporary files for each notification
--v | --verbose: Shows info about what's happening.
--vv | --very-verbose: Implies --verbose, shows some more info about what's happening
--vvv | --very-very-verbose: Implies --very-verbose and --temp-files, shows even more details, usually just for debugging
--d | --dry-run: Run without sending any notificatinos, when ran with -r, this will also prevent any actual cache file removals
--nc | --no-cache: Ignore the cache and send all found notifications, even if they were already sent before.
--nd | --no-display: When the script is ran from headless mode (such as by crontab), this will still attempt to set the DISPLAY and send the desktop notification
--r | --reset: Resets notification cache (storing which notifications were already sent), skips notification sending, WARNING: removes the whole cache, regardless of '--all')
--u | --urgency [urgency-level]: pass over notify-send urgency attribute (low, normal, critical)
-EOF
- exit 0
- ;;
- -a | --all)
- ALL=1
- ;;
- -t | --temp-files)
- TEMP_SHOW=1
- ;;
- -v | --verbose)
- VERBOSE=1
- ;;
- -vv | --very-verbose)
- VERBOSE=1
- VERY_VERBOSE=1
- ;;
- -vvv | --very-very-verbose)
- VERBOSE=1
- TEMP_SHOW=1
- VERY_VERBOSE=1
- VERY_VERY_VERBOSE=1
- ;;
- -d | --dry-run)
- DRY_RUN=1
- ;;
- -nc | --no-cache)
- NO_CACHE=1
- ;;
- -nd | --no-display)
- NO_DISPLAY=1
- ;;
- -u | --urgency)
- URGENCY="$2"
- shift
- ;;
- -r | --reset)
- RESET=1
- ;;
- * )
- echo "Unknown argument '$1', use -h or --help for help"
- exit 1
- ;;
- esac
- shift
-done
-
-
-# Perform cache resetting, if requested
-# ------------------------------------------------------------------------------------
-if [ $RESET -eq 1 ]; then
- if [ $NO_CACHE -eq 1 ]; then
- echo "Can't ignore cache when resetting the cache..."
- exit 1
- fi
- out="$(find /tmp -maxdepth 1 -name 'gh-notification-*' 2>/dev/null)"
- total="$(printf "%s\n" "$out" | wc -l)"
- # Since we always end with a newline (to count the last entry as a line), we always get
- # at least 1 as a total here, even if $out is empty. If we didn't use the \n, we'd always
- # get 0, even if there was a single line, since it wasn't ended with a newline. To figure
- # out whether there really is a line or not when we get a total of 1, we run character
- # amount check as well
- [ "$total" -eq 1 ] && [ "$(printf "%s" "$out" | wc -c)" -eq 0 ] && total=0
-
- if [ $total -gt 0 ]; then
- # Since the loop is running in a pipe, it can't modify variables, but we need to know
- # which files have failed to be removed, so to get that information, we store it in a
- # teporary file
- fail_files_file="$(mktemp)"
-
- printf "%s\n" "$out" | while read -r file_name; do
- # If desired, let user know about the found notification cache file
- if [ $VERY_VERBOSE -eq 1 ] || [ $TEMP_SHOW -eq 1 ]; then
- contents="$(cat "$file_name")"
- title="$(printf "%s" "$contents" | awk -F '~@~' '{ print $1 }')"
-
- echo "Found cache tempfile: '$file_name' - $title"
- if [ $VERY_VERY_VERBOSE -eq 1 ]; then
- description="$(printf "%s" "$contents" | awk -F '~@~' '{ print $2 }')"
- echo "Notification description: $description"
- fi
- fi
-
- if [ $DRY_RUN -ne 1 ]; then
- # In case `rm` fails, keep track of which files it failed on
- if ! rm "$file_name" 2>/dev/null; then
- printf "%s\n" "$file_name" >> "$fail_files_file"
- fi
- else
- [ $VERY_VERY_VERBOSE -eq 1 ] && echo "Tempfile removal skipped (dry-run)"
- fi
-
- # Add a new-line separator on very very verbose to group prints from each iteration
- [ $VERY_VERY_VERBOSE -eq 1 ] && echo ""
- done
-
- # Recover failed files from the temporary file
- failed_files="$(cat "$fail_files_file")"
- failed="$(printf "%s" "$fail_files_file" | wc -l)"
- rm "$fail_files_file"
-
- if [ $VERBOSE -eq 1 ]; then
- echo "Notification cache was reset."
- removed_count="$(("$total"-"$failed"))"
- if [ $DRY_RUN -eq 1 ]; then
- echo "Removed $removed_count files (dry-run: no files were actually removed)"
- else
- echo "Removed $removed_count files"
- fi
- fi
-
- # If some cache files were'nt removed successfully, inform the user about it
- # regardless of verbosity, this shouldn't go silent, even though it may be fine
- if [ "$failed" -gt 0 ]; then
- echo "WARNING: Failed to remove $failed files."
- echo "You probably don't have permission to remove these."
- echo "Perhaps these were made by someone else? If so, you can ignore this warning."
- if [ $VERBOSE -eq 0 ]; then
- echo "Run with --verbose to show exactly which files weren't removed."
- else
- echo "These are:"
- echo "$failed_files"
- fi
- fi
- else
- [ $VERBOSE -eq 1 ] && echo "No cache files found, nothing to reset"
- fi
- exit 0
-fi
-
-
-# Helper functins
-# ------------------------------------------------------------------------------------
-# This runs notify-send, and if NO_DISPLAY is set and we're running in headless
-# mode, this will still try to send the notification by manually setting DISPLAY
-# This also has a special handle that checks if dunst is the notification daemon
-# in which case instead of using notify-send, we use dunstify to send the
-# notification, with which we can also specify some more values.
-send_notify() {
- if [ $NO_DISPLAY -eq 1 ]; then
- XDG_RUNTIME_DIR="/run/user/$(id -u)" \
- DISPLAY=:0 \
- notify-send --app-name=github-notification --urgency="$URGENCY" "$1" "$2"
- else
- notify-send --app-name=github-notification --urgency="$URGENCY" "$1" "$2"
- fi
-}
-
-
-# Obtain notifications and show them, if they weren't showed (aren't in cache) already
-# ------------------------------------------------------------------------------------
-# Request unread notifications with gh-notify extension for github-cli
-[ "$ALL" -eq 1 ] && out="$(gh notify -s -a)" || out="$(gh notify -s)"
-total="$(printf "%s\n" "$out" | wc -l)"
-# Since we always end with a newline (to count the last entry as a line), we always get
-# at least 1 as a total here, even if $out is empty. If we didn't use the \n, we'd always
-# get 0, even if there was a single line, since it wasn't ended with a newline. To figure
-# out whether there really is a line or not when we get a total of 1, we run character
-# amount check as well
-[ "$total" -eq 1 ] && [ "$(printf "%s" "$out" | wc -c)" -eq 0 ] && total=0
-
-# Only run if we actually found some notifications
-if [ "$total" -gt 0 ]; then
- # Since the loop is running in a pipe, it can't modify variables, but we need to know
- # how many notifications were sent, so to ge that information, we store it in a
- # temporary file
- sent_count_file="$(mktemp)"
- printf "0" > "$sent_count_file"
-
- # Go through each notification, one by one
- printf "%s\n" "$out" | while read -r line; do
- # Parse out the data from given output lines
- issue_type="$(echo "$line" | awk '{print $4}' | sed 's/\x1b\[[0-9;]*m//g')"
- repo_id="$(echo "$line" | awk '{print $3}' | sed 's/\x1b\[[0-9;]*m//g')"
-
-
- if [ "$issue_type" == "PullRequest" ]; then
- issue_id="$(echo "$line" | awk '{print $5}' | sed 's/\x1b\[[0-9;]*m//g' | cut -c2-)"
- description="$(echo "$line" | awk '{for (i=6; i "$temp_file"
- hashsum="$(sum < "$temp_file" | cut -f 1 -d ' ')"
- rm "$temp_file"
-
- tmpname="/tmp/gh-notification-$hashsum"
- [ $TEMP_SHOW -eq 1 ] && echo "Tempfile: $tmpname"
-
- # If the temporary file is already present, this notification was already
- # send and we don't want to re-send it
-
- # Only sent the notification if it wasn't already cached (doesn't have temp file)
- # this avoids resending the same notifications
- if [ ! -e "$tmpname" ] || [ $NO_CACHE -eq 1 ]; then
- if [ $DRY_RUN -eq 1 ]; then
- [ $VERY_VERBOSE -eq 1 ] && echo "Sending notification (dry-run, no actual notification was sent)"
- else
- [ $VERY_VERBOSE -eq 1 ] && echo "Sending notification"
- send_notify "$name" "$description <$url>"
- # Create the tempfile so that in the next run, we won't resend this notification again
- # NOTE: We're storing the name and description into this file to make it easier
- # to figure out what notification the tempfile belongs to, with ~@~ separator
- printf "%s~@~%s" "$name" "$description" > "$tmpname"
- fi
- # Keep track of how many notifications were sent (didn't have a cache file)
- sent="$(cat "$sent_count_file")"
- sent="$(("$sent"+1))"
- printf "%s" "$sent" > "$sent_count_file"
- else
- [ $VERY_VERBOSE -eq 1 ] && echo "Skipping (cached) - notification already sent"
- fi
-
- # Add a new-line separator on very verbose to group prints from each iteration
- [ $VERY_VERBOSE -eq 1 ] && echo ""
- done
-
- # Recover amount of sent notifications from the temporary file
- sent="$(cat "$sent_count_file")"
- rm "$sent_count_file"
-
- if [ $VERBOSE -eq 1 ]; then
- unsent="$(("$total"-"$sent"))"
- if [ "$sent" -eq "$total" ]; then
- echo "Found and sent $total new notifications"
- elif [ "$unsent" -eq "$total" ]; then
- echo "Found $total notifications, all of which were already sent (no new notifications to send)"
- else
- echo "Found $total notifications, of which $sent were new and sent ($unsent were skipped - cached/already sent)"
- fi
- fi
-else
- [ $VERBOSE -eq 1 ] && echo "No new notifications"
-fi
diff --git a/home/.local/bin/scripts/lfu b/home/.local/bin/scripts/lfu
deleted file mode 100755
index 224f19b..0000000
--- a/home/.local/bin/scripts/lfu
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-set -e
-
-if [ -n "$DISPLAY" ]; then
- export FIFO_UEBERZUG="${TMPDIR:-/tmp}/lf-ueberzug-$$"
-
- cleanup() {
- exec 3>&-
- rm "$FIFO_UEBERZUG"
- }
-
- mkfifo "$FIFO_UEBERZUG"
- ueberzug layer -s <"$FIFO_UEBERZUG" &
- exec 3>"$FIFO_UEBERZUG"
- trap cleanup EXIT
-
- if ! [ -d "$HOME/.cache/lf" ]; then
- mkdir -p "$HOME/.cache/lf"
- fi
-
- lf "$@" 3>&-
-else
- exec lf "$@"
-fi
diff --git a/home/.local/bin/scripts/lockscreen b/home/.local/bin/scripts/lockscreen
deleted file mode 100755
index 170c722..0000000
--- a/home/.local/bin/scripts/lockscreen
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/sh
-
-if [ "$1" = "start" ]; then
- MODE="start"
-elif [ "$1" = "stop" ]; then
- MODE="stop"
-elif [ "$1" = "toggle" ]; then
- if pidof -s xss-lock > /dev/null 2>&1; then
- MODE="stop"
- else
- MODE="start"
- fi
-elif [ "$1" = "lock" ]; then
- MODE="lock"
-else
- echo "Invalid command usage, use: lockscreen [start/stop/toggle/lock]"
- exit 1
-fi
-
-if [ "$MODE" = "start" ]; then
- echo "Starting xss-lock"
- # Set X11 lockscreen delays (DPMS)
- xset s on
- xset s 600 10 # Dim screen after 10 minutes, lock 10s later
-
- # XSS lock with xsecurelock
- xss-lock -n /usr/lib/xsecurelock/dimmer -l -- xsecurelock &
-elif [ "$MODE" = "stop" ]; then
- echo "Stopping xss-lock"
- # Remove X11 lockscreen delays (DPMS)
- xset s off
- # Stop XSS lock
- killall xss-lock
-elif [ "$MODE" = "lock" ]; then
- # Send a DPMS trigger if xss-lock is running to inform it
- # about the lockstate, if it's not running, run xsecurelock directly
- if pidof -s xss-lock > /dev/null 2>&1; then
- echo "Locking screen - using DPMS (xss-lock active)"
- xset s activate
- else
- echo "Locking screen - running xsecurelock directly (xss-lock isn't running)"
- xsecurelock
- fi
-fi
diff --git a/home/.local/bin/scripts/setbg b/home/.local/bin/scripts/setbg
deleted file mode 100755
index 76ea058..0000000
--- a/home/.local/bin/scripts/setbg
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/sh
-
-# This script does the following:
-# Run by itself, set the wallpaper
-# If given a file, set that as the new wallpaper
-# If given a directory, recursively choose a random file in it.
-
-# Location of the symlink to wallpaper image
-bgloc="${XDG_DATA_HOME:-$HOME/.local/share}/background"
-
-trueloc="$(readlink -f "$1")" &&
-case "$(file --mime-type -b "$trueloc")" in
- image/* )
- ln -sf "$(readlink -f "$1")" "$bgloc"
- notify-send -i "$bgloc" "Changing wallpaper..."
- ;;
- inode/directory )
- randimg="$(find -L $trueloc -iregex '.*.\(jpg\|jpeg\|png\|gif\)' -type f | shuf -n 1)"
- echo $randimg
- ln -sf "$randimg" "$bgloc"
- notify-send -i "$bgloc" "Random Wallpaper chosen."
- ;;
- *)
- notify-send "Error" "Not a valid image."
- exit 1
- ;;
-esac
-
-# Use xwallpaper to set the background
-xwallpaper --zoom "$bgloc"
diff --git a/home/.local/bin/scripts/unix b/home/.local/bin/scripts/unix
deleted file mode 100755
index a9fb96e..0000000
--- a/home/.local/bin/scripts/unix
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/sh
-
-#original artwork by http://www.sanderfocus.nl/#/portfolio/tech-heroes
-#converted to shell by #nixers @ irc.unix.chat
-
-cat << 'eof'
- [38;5;255m,_ ,_==▄▂[0m
- [38;5;255m, ▂▃▄▄▅▅[48;5;240m▅[48;5;20m▂[48;5;240m▅¾[0m. [38;5;199m/ [38;5;20m/[0m
- [38;5;255m[48;5;20m▄[0m[38;5;255m[48;5;199m▆[38;5;16m[48;5;255m<´ [38;5;32m"[38;5;34m»[38;5;255m▓▓[48;5;32m▓[48;5;240m%[0m\ [38;5;199m/ [38;5;20m/ [38;5;45m/ [38;5;118m/[0m
- [38;5;255m,[38;5;255m[48;5;240m▅[38;5;16m[48;5;255m7" [38;5;160m´[38;5;34m>[38;5;255m[48;5;39m▓▓[38;5;199m[48;5;255m▓[0m[38;5;255m% [38;5;20m/ [38;5;118m/ [38;5;199m> [38;5;118m/ [38;5;199m>[38;5;255m/[38;5;45m%[0m
- [38;5;255m▐[48;5;240m[38;5;255m¶[48;5;240m[38;5;255m▓[48;5;255m [38;5;196m,[38;5;34m»[48;5;201m[38;5;255m▓▓[0m[38;5;255m¾´[0m [38;5;199m/[38;5;255m> %[38;5;199m/[38;5;118m%[38;5;255m/[38;5;199m/ [38;5;45m/ [38;5;199m/[0m
- [38;5;255m[48;5;240m▓[48;5;255m[38;5;16m▃[48;5;16m[38;5;255m▅▅[38;5;16m[48;5;255m▅▃,,[38;5;32m▄[38;5;16m▅[38;5;255m[48;5;16m▅▅[38;5;255m[48;5;20mÆ[0m[38;5;255m\[0m[38;5;20m/[38;5;118m/[38;5;255m /[38;5;118m/[38;5;199m/[38;5;255m>[38;5;45m// [38;5;255m/[38;5;118m>[38;5;199m/ [38;5;20m/[0m
- [48;5;20m[38;5;255mV[48;5;255m[38;5;16m║[48;5;20m[38;5;255m«[0m[38;5;255m¼.;[48;5;240m[38;5;255m→[48;5;255m[38;5;16m ║[0m[38;5;255m<«.,[48;5;25m[38;5;255m`[48;5;240m=[0m[38;5;20m/[38;5;199m/ [38;5;255m/>[38;5;45m/[38;5;118m/[38;5;255m%/[38;5;199m% / [38;5;20m/[0m
- [38;5;20m//[48;5;255m[38;5;16m╠<´ -²,)[48;5;16m[38;5;255m(▓[48;5;255m[38;5;16m~"-[38;5;199m╝/[0m[38;5;255m¾[0m[38;5;199m/ [38;5;118m%[38;5;255m/[38;5;118m>[38;5;45m/ [38;5;118m/[38;5;199m>[0m
- [38;5;20m/ / [38;5;118m/ [48;5;20m[38;5;255m▐[48;5;240m[38;5;16m%[48;5;255m -./▄▃▄[48;5;16m[38;5;255m▅[48;5;255m[38;5;16m▐[48;5;255m[38;5;16m, [38;5;199m/[48;5;199m[38;5;255m7[0m[38;5;20m/[38;5;199m/[38;5;255m;/[38;5;199m/[38;5;118m% [38;5;20m/ /[0m
- [38;5;20m/ [38;5;199m/[38;5;255m/[38;5;45m/[38;5;118m/[38;5;255m[48;5;240m`[48;5;20m[38;5;255m▌[48;5;20m[38;5;255m▐[48;5;255m[38;5;16m %z[0m[38;5;255mWv xX[48;5;20m[38;5;255m▓[48;5;34m[38;5;255m▇[48;5;199m[38;255m▌[0m[38;5;20m/[38;5;199m/[38;5;255m&;[38;5;20m% [38;5;199m/ [38;5;20m/[0m
- [38;5;20m/ / [38;5;255m/ [38;5;118m%[38;5;199m/[38;5;255m/%/[48;5;240m[38;5;255m¾[48;5;255m[38;5;16m½´[38;5;255m[48;5;16m▌[0m[38;5;246m▃▄[38;5;255m▄▄[38;5;246m▄▃▃[0m[48;5;16m[38;5;255m▐[38;5;255m[48;5;199m¶[48;5;20m[38;5;255m\[0m[38;5;20m/[0m[48;5;255m[38;5;240m&[0m [38;5;20m/[0m
- [38;5;199m<[38;5;118m/ [38;5;45m/[38;5;255m[38;5;118m%[38;5;255m/[38;5;45m/[38;5;255m`[48;5;16m▓[48;5;255m[38;5;16m![48;5;240m[38;5;255m%[48;5;16m[38;5;255m▓[0m[38;5;255m%[48;5;240m[38;5;255m╣[48;5;240m[38;5;255;╣[0m[38;5;255mW[0m[38;5;250mY[38;5;255m)VY>[48;5;240m[38;5;255m7[0m[38;5;255m; [38;5;255m[48;5;240m\[0m[38;5;255m_[0m [38;5;255mUNIX IS VERY SIMPLE [38;5;45mIT JUST NEEDS A[0m
- [38;5;20m/ [38;5;255m/[38;5;118m<[38;5;255m/ [38;5;45m/[38;5;255m/<[38;5;199m/[38;5;20m/[38;5;199m/[38;5;20m<[38;5;255m_/%\[38;5;255m[48;5;16m▓[48;5;255m[38;5;16m V[0m[38;5;255m%[48;5;255m[38;5;16mW[0m[38;5;255m%£)XY[0m [38;5;240m_/%[38;5;255m‾\_,[0m [38;5;45mGENIUS TO UNDERSTAND ITS SIMPLICITY[38;5;255m[0m
- [38;5;199m/ [38;5;255m/ [38;5;199m/[38;5;255m/[38;5;118m%[38;5;199m/[48;5;240m[38;5;255m_,=-[48;5;20m-^[0m[38;5;255m/%/%%[48;5;255m[38;5;16m\¾%[0m[38;5;255m¶[0m[48;5;255m[38;5;16m%[0m[38;5;255m%}[0m [38;5;240m/%%%[38;5;20m%%[38;5;240m%;\,[0m
- [38;5;45m%[38;5;20m/[38;5;199m< [38;5;20m/[48;5;20m[38;5;255m_/[48;5;240m [0m[38;5;255m%%%[38;5;240m%%[38;5;20m;[38;5;255mX[38;5;240m%[38;5;20m%[38;5;255m\%[38;5;240m%;, _/%%%;[38;5;20m,[38;5;240m \[0m
- [38;5;118m/ [38;5;20m/ [38;5;240m%[38;5;20m%%%%[38;5;240m%;, [38;5;255m\[38;5;240m%[38;5;20m%[38;5;255ml[38;5;240m%%;// _/[38;5;20m%;,[0m [38;5;234mdmr[0m
- [38;5;20m/ [38;5;240m%[38;5;20m%%;,[0m [38;5;255m<[38;5;20m;[38;5;240m\-=-/ /[0m
- [38;5;20m;,[0m [38;5;240ml[0m
-eof
diff --git a/home/.local/scripts/emoji-font-setup.sh b/home/.local/scripts/emoji-font-setup.sh
deleted file mode 100755
index f49891f..0000000
--- a/home/.local/scripts/emoji-font-setup.sh
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/sh
-set -e
-if [[ $(id -u) -ne 0 ]] ; then echo "Please run as root" ; exit 1 ; fi
-
-echo "Setting up Noto Emoji font..."
-# Install noto-fonts-emoji repository as the basic emoji font
-pacman -S noto-fonts-emoji --needed
-# Install powerline-fonts for powerline statusline
-pacman -S powerline-fonts --needed
-echo "Font packages installed, setting up font-config"
-# Make sure noto emojis are preferred font /etc/fonts/local.conf
-# another way to do this would be to manually figure out the number and use /etc/fonts/conf.d/01-notosans.conf
-# note that the `01` might be too agressive and override other fonts, it is therefore easier to just use `local.conf`
-# if you still want to use the manual numbered representation, make sure to store the file into /etc/fonts/conf.avail/XX-notosans.conf
-# from which you will then make a symlink pointing to /etc/fonts/conf.d (same name)
-echo '
-
-
-
- sans-serif
-
- Noto Sans
- Noto Color Emoji
- Noto Emoji
- DejaVu Sans
-
-
-
-
- serif
-
- Noto Serif
- Noto Color Emoji
- Noto Emoji
- DejaVu Serif
-
-
-
-
- monospace
-
- Noto Mono
- Noto Color Emoji
- Noto Emoji
- DejaVu Sans Mono
-
-
-
-
-' > /etc/fonts/local.conf
-# Update font cache
-fc-cache -f
-echo "Noto Emoji Font installed! You will need to restart application to see changes."
-
diff --git a/home/.local/scripts/fixcam.sh b/home/.local/scripts/fixcam.sh
deleted file mode 100755
index 2e44874..0000000
--- a/home/.local/scripts/fixcam.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-
-# Fix camera autofocus and exposure
-v4l2-ctl -d /dev/video0 --set-ctrl=focus_auto=0
-v4l2-ctl -d /dev/video0 --set-ctrl=exposure_auto=3
-v4l2-ctl -d /dev/video0 --set-ctrl=sharpness=150
-v4l2-ctl -d /dev/video0 --set-ctrl=exposure_auto_priority=0
diff --git a/home/.local/scripts/install_virtmic.sh b/home/.local/scripts/install_virtmic.sh
deleted file mode 100755
index 9d3493d..0000000
--- a/home/.local/scripts/install_virtmic.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-
-# This script will create a virtual microphone for PulseAudio to use and set it as the default device.
-
-# Load the "module-pipe-source" module to read audio data from a FIFO special file.
-echo "Creating virtual microphone."
-pactl load-module module-pipe-source source_name=virtmic file=$HOME/.config/pulse/audioFiles/virtmic format=s16le rate=16000 channels=1
-
-# Set the virtmic as the default source device.
-echo "Set the virtual microphone as the default device."
-pactl set-default-source virtmic
-
-# Create a file that will set the default source device to virtmic for all
-PulseAudio client applications.
-echo "default-source = virtmic" > $HOME/.config/pulse/client.conf
-
-# Write the audio file to the named pipe virtmic. This will block until the named pipe is read.
-echo "Writing audio file to virtual microphone."
-while true; do
- ffmpeg -re -i input.wav -f s16le -ar 16000 -ac 1 - > $HOME/.config/pulse/audioFiles/virtmic
-done
diff --git a/home/.local/scripts/uninstall_virtmic.sh b/home/.local/scripts/uninstall_virtmic.sh
deleted file mode 100755
index c178f5f..0000000
--- a/home/.local/scripts/uninstall_virtmic.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-
-# Uninstall the virtual microphone.
-
-pactl unload-module module-pipe-source
-rm $HOME/.config/pulse/client.conf
-
diff --git a/home/.local/scripts/usbreset b/home/.local/scripts/usbreset
deleted file mode 100755
index 56d2f9f..0000000
Binary files a/home/.local/scripts/usbreset and /dev/null differ
diff --git a/home/.local/scripts/usbreset.c b/home/.local/scripts/usbreset.c
deleted file mode 100644
index 76c30c0..0000000
--- a/home/.local/scripts/usbreset.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/* usbreset -- send a USB port reset to a USB device */
-
-#include
-#include
-#include
-#include
-#include
-
-#include
-
-
-int main(int argc, char **argv)
-{
- const char *filename;
- int fd;
- int rc;
-
- if (argc != 2) {
- fprintf(stderr, "Usage: usbreset device-filename\n");
- return 1;
- }
- filename = argv[1];
-
- fd = open(filename, O_WRONLY);
- if (fd < 0) {
- perror("Error opening output file");
- return 1;
- }
-
- printf("Resetting USB device %s\n", filename);
- rc = ioctl(fd, USBDEVFS_RESET, 0);
- if (rc < 0) {
- perror("Error in ioctl");
- return 1;
- }
- printf("Reset successful\n");
-
- close(fd);
- return 0;
-}
diff --git a/home/.local/share/gnupg/gpg.conf b/home/.local/share/gnupg/gpg.conf
deleted file mode 100644
index bca085a..0000000
--- a/home/.local/share/gnupg/gpg.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-# Enter passsword via terminal, instead of using a graphical window
-pinentry-mode loopback
-# Specify my default key that will be used for signing
-default-key 7583ABA897FC6728DCAF823FB014E761034AF742
-# Specify my preferred default keyserver
-keyserver keys.openpgp.org
diff --git a/home/.local/share/xmonad/.keep b/home/.local/share/xmonad/.keep
deleted file mode 100644
index e69de29..0000000
diff --git a/home/.mozilla b/home/.mozilla
deleted file mode 120000
index 2cf2199..0000000
--- a/home/.mozilla
+++ /dev/null
@@ -1 +0,0 @@
-.config/mozilla
\ No newline at end of file
diff --git a/home/.pki b/home/.pki
deleted file mode 120000
index 2aacf8b..0000000
--- a/home/.pki
+++ /dev/null
@@ -1 +0,0 @@
-.config/pki
\ No newline at end of file
diff --git a/home/.xprofile b/home/.xprofile
deleted file mode 120000
index 61f87a7..0000000
--- a/home/.xprofile
+++ /dev/null
@@ -1 +0,0 @@
-.config/x11/xprofile
\ No newline at end of file
diff --git a/home/.zshenv b/home/.zshenv
deleted file mode 120000
index 9fbf4d2..0000000
--- a/home/.zshenv
+++ /dev/null
@@ -1 +0,0 @@
-.config/zsh/.zshenv
\ No newline at end of file
diff --git a/packages.yaml b/packages.yaml
deleted file mode 100644
index 9daf2e0..0000000
--- a/packages.yaml
+++ /dev/null
@@ -1,187 +0,0 @@
-pacman:
- # Common
- - base-devel # A set of tools needed for building pkgs
- - git # Version control system
- - neovim # Text editor (modern version of VIM)
- - sudo # Execute commands as root from unprivilledged user
- - networkmanager # Easy way to manage network connections, especially for WiFi
- - man-db # A utility for reading manpages
- - rsync # Fast tool for copying/syncing files
- - cronie # Run programs at specified time
- - zsh # Modern system shell
-
- # System
- #- kexec-tools # Kexec allows directly booting into a new kernel
-
- # CLI
- - exa # Colored LS
- - bat # Colored cat with tons of cool options
- - dust # User readable du to find biggest dirs/files
- - tldr # Shorter help pages, if man is too long
- - hyperfine # Command benchmark (times command executions)
- - abduco # Terminal session manager
- - mlocate # System indexing and quick file searching
- - pkgfile # Pacman metadata explorer
- - pacman-contrib # Includes multiple additional tools related to pacman
- - reflector # Tool to manage pacman mirror list
- - lshw # List hardware components and their attributes
- - lsof # List open files for running Unix process
- - trash-cli # Trash interraction (rather than permanent removal)
- #- libfaketime # Simulate different time for single command
- #- figlet # generate ascii text banners in terminal
- #- neofetch # Show information about system in a terminal
- #- onefetch # Show information about git repo in a terminal
- #- asciinema # Record terminal with copy-able playback
-
- # TUI
- - ncdu # Find largest folders (size)
- - calcurse # Terminal calendar with todo
- - bpytop # Modern system resource monitor
- - w3m # Terminal text-only web browser
- - newsboat # Terminal RSS feed reader
-
- # Networking/Internet
- - httpie # Obtaining http info from webpages
- - dnsutils # Tools for managing DNS
- - net-tools # Configuration tools for linux networking
- - whois # CLI for the WHOIS directory service (RFC 3912) protocol
- #- sshuttle # Transparent proxy server that forwards all TCP packets over SSH
- #- vnstat # Tool for monitoring network traffic (speed and total data transfered)
-
- # Media
- - imagemagick # Terminal image manipulation
- - mediainfo # Show info about media files (videos/photos)
- - youtube-dl # Tool for easy downloading of youtube videos
- - ffmpegthumbs # FFmpeg based thumbnail creator for videos
- - ffmpegthumbnailer # Ffmpeg based thumbnail creator for file mgrs
-
- # Security
- - arch-audit # Find installed packgaes with vulnerabilities (Similar to pkg-audit)
- - firejail # Sandboxing isolation tool
- - lynis # Security and System auditing tool
- - rkhunter # Check for the presence of rootkits and other unwanted tools.
- - apparmor # Mandantoy Access Control using Linux Security Module
- - audit # Collect system info about given events (requires audit=1 boot param)
- #- ufw # Uncomplicated firewall (I prefer application level FW like opensnitch)
- #- clamav # Anti-virus for Linux (usually only needed for servers)
-
- # WM/Xorg
- - xorg-server # Xorg server implementation
- - xorg-xinit # Simple way to start X
- - xorg-xrandr # Manage multiple monitors in X
- - xorg-xsetroot # Customize appearance of X root
- - xorg-xev # Debug tool for printing contents of X events
- - xmonad # Window Manager written in haskell
- - xmonad-contrib # Additional tools for xmonad
- - xmobar # Panel built for xmonad
- - xdotool # X11 automation tool
- - trayer # System tray standalone panel
- - xsel # X11 clipboard manager (alternatively there's xclip)
- - clipmenu # A simple clipboard manager using dmenu and xsel
- - xsecurelock # Secure lockscreen
- - xss-lock # Using external locker as X screensaver
- - xwallpaper # Setting wallpaper in X
- - numlockx # Enabling numlock from terminal (used in xprofile)
- - dunst # Notification daemon
- - papirus-icon-theme # Breeze inspired icon theme
- - gnome-themes-extra # Gnome GTK themes (mainly Adwaita)
- #- redshift # Adjust the color temperature of your system based on location
-
- # Audio
- - alsa-lib # Implementation of Linux sound support
- - alsa-utils # Utilities for alsa audio
- - pulseaudio # General purpose sound server
- - pulseaudio-alsa # ALSA configuration for PulseAudio
- - pulsemixer # CLI and curses mixer for PulseAudio
-
- # GUI
- - alacritty # Terminal Emulator
- - mpv # Video player
- - nomacs # Photo viewer
- - pcmanfm # File manager
- - firefox # Browser
- - flameshot # Screenshot taking tool
- - obs-studio # Advanced video recording tool
- - lxappearance # GTK configuration
- - file-roller # Archive manipulator (allows opening .zip/.rar/.tar/... easily)
- - ueberzug # Embed images within a terminal
- - krita # Image editor (gimp alternative)
- - discord # Popular chat app
- - network-manager-applet # NetworkManager trayer icon
-
- # Device mounting
- - udisks2 # Allows users to mount devices without root
- - udiskie # Auto-mounter using udisks2
- - gvfs # Allows using sftp:// in file managers like PcManFM
-
- # Fonts
- - libxft
- - ttf-hack
- - ttf-joypixels
- - noto-fonts
- - noto-fonts-cjk
- - noto-fonts-emoji
- - ttf-font-awesome
- - ttf-jetbrains-mono
-
- # Printer
- - cups # Daemon for printing
- - hplip # Tool to set-up HP printers
- - xsane # Scanning
-
- # Bluetooth
- - bluez # Daemon for bluetooth protocol
- - bluz-utils # CLI utility for managing bluetooth connections
- - blueman # Graphical utility for managing bluetooth connections
- - pulseaudio-bluetooth # Bluetooth speaker/headphone support for PulseAudio
-
- # Development
- - git-delta # Neat tool for showing git diffs and resolving merges
- - codespell # Spell checker for code files
- - github-cli # Manage multiple GitHub features from terminal
- - pyenv # Tool for easily managing python environments
- #- code # Open sourced version of vscode (doesn't have good extensions support)
-
-aur:
- # System
- - mkinitcpio-numlock # Enable numlock in initramfs (before asking for encryption key)
- - topgrade # A tool to update entire system (pacman, yay, pip, npm, git, neovim, ...)
-
- # CLI
- - pixterm # Convert images to ANSI colored blocks
-
- # TUI
- - lf # Terminal file manager (ranger-like)
-
- # Networking/Internet
- - ngrok # Forward your localhost without ip recovery
- - ipinfo-cli # Official cli tool for ipinfo (provides geolocation and other info about given IP)
-
- # Security
- - opensnitch # Application level firewall with traffic monitoring (Alternatively, there's portmaster)
-
- # WM/Xorg
- #- picom-git # Git version of picom compositor
- - picom-ibhagwan-git # Forked picom version with support for both rounded corner and dual_kawase blur
- - devour # WM agnostic window swallowing for terminals
- - xcursor-simp1e-breeze-snow # Breeze cursor theme
-
- # GUI
- - spotify # Online music player
- - exodus # Software cryptocurrency wallet
- - qalculate-gtk-nognome # Calculator with thousands of features, there's also less powerful kde default's kcalc
- #- mailspring-libre # Beautiful and fast mail client without tracking
-
- # Misc
- #- scrcpy # A way of seeing and controlling phone through a pc
-
- # Fonts
- - nerd-fonts-complete
-
- # Development
- - visual-studio-code-bin # Official vVsual Studio Code text editor for programmers
- #- code-marketplace # Enable the offical MS vscode marketplace for 'code' (code-oss)
-git:
- - https://aur.archlinux.org/yay-git.git # Pacman wrapper and AUR helper
-github-cli:
- - meiji163/gh-notify
diff --git a/root/.rsync-filter b/root/.rsync-filter
deleted file mode 100644
index a19ad20..0000000
--- a/root/.rsync-filter
+++ /dev/null
@@ -1,22 +0,0 @@
-# Filter file for rsync based backups
-# rsync needs to be ran with --filter 'dir-merge /.rsync-filter'
-# argument to look through this filter file
-- /dev/*
-- /proc/*
-- /sys/*
-- /media/*
-- /mnt/*
-- /tmp/*
-- /run/*
-- /var/run/*
-- /var/lock/*
-- /var/lib/docker/*
-- /var/lib/schroot/*
-- /lost+found
-- /data/*
-- /DATA/*
-- /cdrom/*
-- /sdcard/*
-- /swapfile
-- /swap/*
-- /home/*/.cache/*
diff --git a/root/etc/NetworkManager/conf.d/random_mac.conf b/root/etc/NetworkManager/conf.d/random_mac.conf
deleted file mode 100644
index 06f9e73..0000000
--- a/root/etc/NetworkManager/conf.d/random_mac.conf
+++ /dev/null
@@ -1,16 +0,0 @@
-[device-mac-randomization]
-# "yes" is already the default for scanning
-wifi.scan-rand-mac-address=yes
-
-[connection-mac-randomization]
-# Randomize MAC for every ethernet connection
-ethernet.cloned-mac-address=random
-# Generate a random MAC for each WiFi and associate the two permanently
-wifi.cloned-mac-address=stable
-
-# Opions:
-# permanent: Use HardWare address
-# preserve: Don’t change the MAC address of the device upon activation
-# stable: Randomize once and associate it permanently with that network
-# random: Randomize MAC for every connection
-
diff --git a/root/etc/X11/xorg.conf.d/40-libinput.conf b/root/etc/X11/xorg.conf.d/40-libinput.conf
deleted file mode 100644
index 79e4aa7..0000000
--- a/root/etc/X11/xorg.conf.d/40-libinput.conf
+++ /dev/null
@@ -1,7 +0,0 @@
-Section "InputClass"
- Identifier "libinput touchpad catchall"
- MatchIsTouchpad "on"
- MatchDevicePath "/dev/input/event*"
- Driver "libinput"
- Option "Tapping" "on"
-EndSection
diff --git a/root/etc/default/grub b/root/etc/default/grub
deleted file mode 100644
index f35e20c..0000000
--- a/root/etc/default/grub
+++ /dev/null
@@ -1,62 +0,0 @@
-# GRUB boot loader configuration
-
-GRUB_DEFAULT=0
-GRUB_TIMEOUT=5
-GRUB_DISTRIBUTOR="Arch"
-GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet"
-GRUB_CMDLINE_LINUX="cryptdevice=UUID=9a400ce4-df98-43eb-b88c-009a359873a5:cryptroot:allow-discards lukskeyfile=UUID=80c09daa-c562-4242-90a9-8258f6442bec:/root-key"
-# Grub should automatically detect the root UUID after decryption and set
-# that as root, we could also use root=/dev/mapper/cryptroot cmdline arg,
-# however that could lead to problems, since GRUB defines the root anyway,
-# so we'd have 2 root definitions, we could also use the UUID manually by using
-# root=7173b256-9d90-41f5-beac-4d01b3b5bbd5
-
-# Preload both GPT and MBR modules so that they are not missed
-GRUB_PRELOAD_MODULES="part_gpt part_msdos"
-
-# Uncomment to enable booting with LUKS encrypted /boot drive
-#GRUB_ENABLE_CRYPTODISK=y
-
-# Set to 'countdown' or 'hidden' to change timeout behavior,
-# press ESC key to display menu.
-GRUB_TIMEOUT_STYLE=menu
-
-# Uncomment to use basic console
-GRUB_TERMINAL_INPUT=console
-
-# Uncomment to disable graphical terminal
-#GRUB_TERMINAL_OUTPUT=console
-
-# The resolution used on graphical terminal
-# note that you can use only modes which your graphic card supports via VBE
-# you can see them in real GRUB with the command `vbeinfo'
-GRUB_GFXMODE=auto
-
-# Uncomment to allow the kernel use the same resolution used by grub
-GRUB_GFXPAYLOAD_LINUX=keep
-
-# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
-# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
-#GRUB_DISABLE_LINUX_UUID=true
-
-# Uncomment to disable generation of recovery mode menu entries
-GRUB_DISABLE_RECOVERY=true
-
-# Uncomment and set to the desired menu colors. Used by normal and wallpaper
-# modes only. Entries specified as foreground/background.
-#GRUB_COLOR_NORMAL="light-blue/black"
-#GRUB_COLOR_HIGHLIGHT="light-cyan/blue"
-
-# Uncomment one of them for the gfx desired, a image background or a gfxtheme
-#GRUB_BACKGROUND="/path/to/wallpaper"
-#GRUB_THEME="/path/to/gfxtheme"
-
-# Uncomment to get a beep at GRUB start
-#GRUB_INIT_TUNE="480 440 1"
-
-# Uncomment to make GRUB remember the last selection. This requires
-# setting 'GRUB_DEFAULT=saved' above.
-#GRUB_SAVEDEFAULT=true
-
-# Uncomment to disable submenus in boot menu
-#GRUB_DISABLE_SUBMENU=y
diff --git a/root/etc/doas.conf b/root/etc/doas.conf
deleted file mode 100644
index 381f83c..0000000
--- a/root/etc/doas.conf
+++ /dev/null
@@ -1,20 +0,0 @@
-# doas configuration file
-# doas is a sudo-like utility without that many features
-# which results in less potentional security vulnerabilities
-
-# Allow all users in wheel group to execute a command
-#permit :wheel
-
-# Allow all users of the wheel group toperform actions
-# as root without authentication
-#permit nopass :wheel
-
-# Don't require password for 5 minutes
-# for all users of wheel group
-permit persist :wheel
-
-# Deny a user to execute a command
-#deny itsdrike cmd fdisk
-
-# Allow a user to use command without password
-#permit nopass itsdrike cmd reboot
diff --git a/root/etc/grub.d/09_credentials b/root/etc/grub.d/09_credentials
deleted file mode 100755
index b033251..0000000
--- a/root/etc/grub.d/09_credentials
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/sh
-exec tail -n +3 $0
-
-# Setup GRUB credentials so that it isn't possible for anyone to change the
-# boot parameters or use the command line, unless they know user/password pair
-#set superusers="admin"
-#password admin [unsafe plaintext password]
-#password_pbkdf2 admin [safe grub-mkpasswd-pbkdf2 password]
-
-
-# Make OS Entries unrestricted, so that they can be booted into without prompting
-# for user/password pair set above
-#menuentry_id_option="--unrestricted $menuentry_id_option"
diff --git a/root/etc/grub.d/40_custom b/root/etc/grub.d/40_custom
deleted file mode 100755
index f6fb8dc..0000000
--- a/root/etc/grub.d/40_custom
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-exec tail -n +3 $0
-# This file provides an easy way to add custom menu entries. Simply type the
-# menu entries you want to add after this comment. Be careful not to change
-# the 'exec tail' line above.
-
-if [ ${grub_platform} == "efi" ]; then
- menuentry "Firmware setup" {
- fwsetup
- }
-fi
-
diff --git a/root/etc/hosts b/root/etc/hosts
deleted file mode 100644
index f18e671..0000000
--- a/root/etc/hosts
+++ /dev/null
@@ -1,44 +0,0 @@
-# /etc/hosts: Local Host Database
-# See hosts(5) for details
-#
-# This file describes a number of aliases-to-address mappings for the for
-# local hosts that share this file.
-#
-# The format of lines in this file is:
-#
-# IP_ADDRESS canonical_hostname [aliases...]
-#
-# The fields can be separated by any number of spaces or tabs.
-#
-# In the presence of the domain name service or NIS, this file may not be
-# consulted at all; see /etc/host.conf for the resolution order.
-#
-# According to RFC 1918, you can use the following IP networks for private
-# nets which will never be connected to the Internet:
-#
-# 10.0.0.0 - 10.255.255.255
-# 172.16.0.0 - 172.31.255.255
-# 192.168.0.0 - 192.168.255.255
-#
-# In case you want to be able to connect directly to the Internet (i.e. not
-# behind a NAT, ADSL router, etc...), you need real official assigned
-# numbers. Do not try to invent your own network numbers but instead get one
-# from your network provider (if any) or from your regional registry (ARIN,
-# APNIC, LACNIC, RIPE NCC, or AfriNIC.)
-#
-
-# IPv4 and IPv6 localhost aliases
-127.0.0.1 localhost ip4-localhost
-::1 ip6-localhost
-# Current system definition
-127.0.1.1 pc.localdomain pc
-
-# Extra systems on the network
-10.1.0.1 localserver.localdomain localserver
-
-# DNS servers
-45.90.30.0 nextcloud-dns
-1.1.1.1 couldflare-dns
-1.0.0.1 cloudflare-dns2
-8.8.8.8 google-dns
-
diff --git a/root/etc/initcpio/hooks/lukskeyfile b/root/etc/initcpio/hooks/lukskeyfile
deleted file mode 100644
index 4189ede..0000000
--- a/root/etc/initcpio/hooks/lukskeyfile
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/bin/ash
-
-run_hook() {
- # This is a needed kernel parameter for this hook
- if [ -n "$lukskeyfile" ]; then
- modprobe -a -q loop dm-crypt >/dev/null 2>&1
- # Refer to help from `mkinitcpio -H lukskeyfile`.
- IFS=: read rootKeyDev rootKey cryptkeyLoc </dev/null 2>&1; then
- # Copy the keyfile present in the device into the
- # ramfs filesystem to be read by dm-crypt
- cat "/mnt/${rootKey}" > "${cryptkeyLoc}"
- else
- echo "Failed to mount ${rootKeyDev} on /mnt"
- /bin/sh
- fi
- else
- echo "Failed to find ${rootKeyDev} containing LUKS root key."
- fi
- fi
-}
diff --git a/root/etc/initcpio/install/lukskeyfile b/root/etc/initcpio/install/lukskeyfile
deleted file mode 100644
index 5e78430..0000000
--- a/root/etc/initcpio/install/lukskeyfile
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/bash
-
-build() {
- add_dir "/mnt"
- add_module loop
- add_module dm-crypt
- add_runscript
-}
-
-help() {
- cat <' for
-# help on a given hook.
-# 'base' is _required_ unless you know precisely what you are doing.
-# 'udev' is _required_ in order to automatically load modules
-# 'filesystems' is _required_ unless you specify your fs modules in MODULES
-# Examples:
-## This setup specifies all modules in the MODULES setting above.
-## No raid, lvm2, or encrypted root is needed.
-# HOOKS=(base)
-#
-## This setup will autodetect all modules for your system and should
-## work as a sane default
-# HOOKS=(base udev autodetect block filesystems)
-#
-## This setup will generate a 'full' image which supports most systems.
-## No autodetection is done.
-# HOOKS=(base udev block filesystems)
-#
-## This setup assembles a pata mdadm array with an encrypted root FS.
-## Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
-# HOOKS=(base udev block mdadm encrypt filesystems)
-#
-## This setup loads an lvm2 volume group on a usb device.
-# HOOKS=(base udev block lvm2 filesystems)
-#
-## NOTE: If you have /usr on a separate partition, you MUST include the
-# usr, fsck and shutdown hooks.
-#
-## Edits applied: numlock (requires mkinitcpio-numlock (AUR)), encrypt
-HOOKS=(base udev autodetect keyboard numlock modconf block lukskeyfile encrypt filesystems fsck)
-
-# COMPRESSION
-# Use this to compress the initramfs image. By default, zstd compression
-# is used. Use 'cat' to create an uncompressed image.
-#COMPRESSION="zstd"
-#COMPRESSION="gzip"
-#COMPRESSION="bzip2"
-#COMPRESSION="lzma"
-#COMPRESSION="xz"
-#COMPRESSION="lzop"
-#COMPRESSION="lz4"
-
-# COMPRESSION_OPTIONS
-# Additional options for the compressor
-#COMPRESSION_OPTIONS=()
diff --git a/root/etc/modprobe.d/blacklist.conf b/root/etc/modprobe.d/blacklist.conf
deleted file mode 100644
index b46792e..0000000
--- a/root/etc/modprobe.d/blacklist.conf
+++ /dev/null
@@ -1 +0,0 @@
-blacklist pcspkr
diff --git a/root/etc/opensnitchd/rules/0 - Global Allow.json b/root/etc/opensnitchd/rules/0 - Global Allow.json
deleted file mode 100644
index 65a8189..0000000
--- a/root/etc/opensnitchd/rules/0 - Global Allow.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T14:38:21.237148571+01:00",
- "updated": "2021-03-26T14:38:21.237217606+01:00",
- "name": "0 - Global Allow",
- "enabled": false,
- "precedence": true,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "regexp",
- "operand": "process.path",
- "sensitive": false,
- "data": ".*",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/1 - Local Network 1: Loopback IPv4.json b/root/etc/opensnitchd/rules/1 - Local Network 1: Loopback IPv4.json
deleted file mode 100644
index dacd577..0000000
--- a/root/etc/opensnitchd/rules/1 - Local Network 1: Loopback IPv4.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T14:34:29.750639149+01:00",
- "updated": "2021-03-26T14:34:29.750717553+01:00",
- "name": "1 - Local Network 1: Loopback IPv4",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "network",
- "operand": "dest.network",
- "sensitive": false,
- "data": "127.0.0.0/8",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/1 - Local Network 1: Loopback IPv6.json b/root/etc/opensnitchd/rules/1 - Local Network 1: Loopback IPv6.json
deleted file mode 100644
index d76f133..0000000
--- a/root/etc/opensnitchd/rules/1 - Local Network 1: Loopback IPv6.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T14:35:06.471042752+01:00",
- "updated": "2021-03-26T14:35:06.471104722+01:00",
- "name": "1 - Local Network 1: Loopback IPv6",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "network",
- "operand": "dest.network",
- "sensitive": false,
- "data": "::1/128",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/1 - Local Network 2: IPv4.json b/root/etc/opensnitchd/rules/1 - Local Network 2: IPv4.json
deleted file mode 100644
index 48e150d..0000000
--- a/root/etc/opensnitchd/rules/1 - Local Network 2: IPv4.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T13:55:13.918975568+01:00",
- "updated": "2021-03-26T13:55:13.919048389+01:00",
- "name": "1 - Local Network 2: IPv4",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "network",
- "operand": "dest.network",
- "sensitive": false,
- "data": "192.0.0.0/8",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/1 - Local Network 2: IPv6.json b/root/etc/opensnitchd/rules/1 - Local Network 2: IPv6.json
deleted file mode 100644
index 4cda9fb..0000000
--- a/root/etc/opensnitchd/rules/1 - Local Network 2: IPv6.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T14:35:19.095504822+01:00",
- "updated": "2021-03-26T14:35:19.095575256+01:00",
- "name": "1 - Local Network 2: IPv6",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "network",
- "operand": "dest.network",
- "sensitive": false,
- "data": "ff00::/8",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/1 - Local Network 3: Multicast.json b/root/etc/opensnitchd/rules/1 - Local Network 3: Multicast.json
deleted file mode 100644
index 3816dae..0000000
--- a/root/etc/opensnitchd/rules/1 - Local Network 3: Multicast.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T14:35:34.624303764+01:00",
- "updated": "2021-03-26T14:35:34.624381925+01:00",
- "name": "1 - Local Network 3: Multicast",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "network",
- "operand": "dest.network",
- "sensitive": false,
- "data": "224.0.0.0/8",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/2 - DNS 1: CloudFlare.json b/root/etc/opensnitchd/rules/2 - DNS 1: CloudFlare.json
deleted file mode 100644
index 0cbde82..0000000
--- a/root/etc/opensnitchd/rules/2 - DNS 1: CloudFlare.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:05:47.752157095+01:00",
- "updated": "2021-03-26T14:05:47.752306682+01:00",
- "name": "2 - DNS 1: CloudFlare",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"53\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.ip\", \"data\": \"(1\\\\.1\\\\.1\\\\.1)|(1\\\\.0\\\\.0\\\\.1)\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "53",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.ip",
- "sensitive": false,
- "data": "(1\\.1\\.1\\.1)|(1\\.0\\.0\\.1)",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/2 - DNS 2: Local NameServer.json b/root/etc/opensnitchd/rules/2 - DNS 2: Local NameServer.json
deleted file mode 100644
index ad66026..0000000
--- a/root/etc/opensnitchd/rules/2 - DNS 2: Local NameServer.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:11:37.6695327+01:00",
- "updated": "2021-03-26T14:11:37.669693753+01:00",
- "name": "2 - DNS 2: Local NameServer",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"53\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.ip\", \"data\": \"192.168.0.1\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "53",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.ip",
- "sensitive": false,
- "data": "192.168.0.1",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/3 - Clord (color management daemon).json b/root/etc/opensnitchd/rules/3 - Clord (color management daemon).json
deleted file mode 100644
index 76729a8..0000000
--- a/root/etc/opensnitchd/rules/3 - Clord (color management daemon).json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:54:35.691185369+01:00",
- "updated": "2021-03-26T14:54:35.691334733+01:00",
- "name": "3 - Clord (color management daemon)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/colord-sane\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.ip\", \"data\": \"255.255.255.255\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"user.id\", \"data\": \"974\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/colord-sane",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.ip",
- "sensitive": false,
- "data": "255.255.255.255",
- "list": null
- },
- {
- "type": "simple",
- "operand": "user.id",
- "sensitive": false,
- "data": "974",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/3 - NetworkManager HTTP+S.json b/root/etc/opensnitchd/rules/3 - NetworkManager HTTP+S.json
deleted file mode 100644
index 711a5e4..0000000
--- a/root/etc/opensnitchd/rules/3 - NetworkManager HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:25:45.324185722+01:00",
- "updated": "2021-03-26T14:25:45.324300946+01:00",
- "name": "3 - NetworkManager HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/NetworkManager\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/NetworkManager",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/3 - Resolver: Avahi Daemon (Multicast DNS).json b/root/etc/opensnitchd/rules/3 - Resolver: Avahi Daemon (Multicast DNS).json
deleted file mode 100644
index 83a5d2d..0000000
--- a/root/etc/opensnitchd/rules/3 - Resolver: Avahi Daemon (Multicast DNS).json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "created": "2021-03-26T14:32:52.844859434+01:00",
- "updated": "2021-03-26T14:32:52.845014247+01:00",
- "name": "3 - Resolver: Avahi Daemon (Multicast DNS)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/avahi-daemon\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"5353\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.ip\", \"data\": \"^(ff02::fb|224\\\\.0\\\\.0\\\\.251)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/avahi-daemon",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "5353",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.ip",
- "sensitive": false,
- "data": "^(ff02::fb|224\\.0\\.0\\.251)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/3 - Resolver: Systemd Resolved (TCP DNS).json b/root/etc/opensnitchd/rules/3 - Resolver: Systemd Resolved (TCP DNS).json
deleted file mode 100644
index 26c5be4..0000000
--- a/root/etc/opensnitchd/rules/3 - Resolver: Systemd Resolved (TCP DNS).json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-04-07T07:30:07.18439781+02:00",
- "updated": "2021-04-07T07:30:07.184496636+02:00",
- "name": "3 - Resolver: Systemd Resolved (TCP DNS)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/systemd/systemd-resolved\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"853\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.ip\", \"data\": \"116.202.176.26\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/systemd/systemd-resolved",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "853",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.ip",
- "sensitive": false,
- "data": "116.202.176.26",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/3 - Resolver: Systemd Resolved (Unicast DNS).json b/root/etc/opensnitchd/rules/3 - Resolver: Systemd Resolved (Unicast DNS).json
deleted file mode 100644
index ac41674..0000000
--- a/root/etc/opensnitchd/rules/3 - Resolver: Systemd Resolved (Unicast DNS).json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T14:36:45.353178364+01:00",
- "updated": "2021-03-26T14:36:45.353306158+01:00",
- "name": "3 - Resolver: Systemd Resolved (Unicast DNS)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/systemd/systemd-resolved\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"53\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/systemd/systemd-resolved",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "53",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/3 - Time Synchronization.json b/root/etc/opensnitchd/rules/3 - Time Synchronization.json
deleted file mode 100644
index 33771fe..0000000
--- a/root/etc/opensnitchd/rules/3 - Time Synchronization.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T14:31:12.698421478+01:00",
- "updated": "2021-03-26T14:31:12.698577981+01:00",
- "name": "3 - Time Synchronization",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/systemd/systemd-timesyncd\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/systemd/systemd-timesyncd",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Arch-Audit HTTPS.json b/root/etc/opensnitchd/rules/4 - Arch-Audit HTTPS.json
deleted file mode 100644
index 0dfe1cc..0000000
--- a/root/etc/opensnitchd/rules/4 - Arch-Audit HTTPS.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "created": "2021-03-26T14:53:45.452433311+01:00",
- "updated": "2021-03-26T14:53:45.452584115+01:00",
- "name": "4 - Arch-Audit HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/arch-audit\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.host\", \"data\": \"security.archlinux.org\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/arch-audit",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.host",
- "sensitive": false,
- "data": "security.archlinux.org",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Curl HTTP+S.json b/root/etc/opensnitchd/rules/4 - Curl HTTP+S.json
deleted file mode 100644
index b6a4bbf..0000000
--- a/root/etc/opensnitchd/rules/4 - Curl HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:52:55.594720808+01:00",
- "updated": "2021-03-26T14:52:55.594848089+01:00",
- "name": "4 - Curl HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/curl\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/curl",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Flatpak.json b/root/etc/opensnitchd/rules/4 - Flatpak.json
deleted file mode 100644
index acaa502..0000000
--- a/root/etc/opensnitchd/rules/4 - Flatpak.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-04-01T03:02:23.608460294+02:00",
- "updated": "2021-04-01T03:02:23.608585046+02:00",
- "name": "4 - Flatpak",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/flatpak\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/flatpak",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Git All.json b/root/etc/opensnitchd/rules/4 - Git All.json
deleted file mode 100644
index 77be7e5..0000000
--- a/root/etc/opensnitchd/rules/4 - Git All.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T14:53:18.08440206+01:00",
- "updated": "2021-03-26T14:53:18.084531091+01:00",
- "name": "4 - Git All",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"process.path\", \"data\": \"(\\\\/usr\\\\/bin\\\\/git)|(\\\\/usr\\\\/lib\\\\/git-core\\\\/git-remote-https?)\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "process.path",
- "sensitive": false,
- "data": "(\\/usr\\/bin\\/git)|(\\/usr\\/lib\\/git-core\\/git-remote-https?)",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Nslookup.json b/root/etc/opensnitchd/rules/4 - Nslookup.json
deleted file mode 100644
index 9abe4be..0000000
--- a/root/etc/opensnitchd/rules/4 - Nslookup.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-04-07T07:32:01.871499604+02:00",
- "updated": "2021-04-07T07:32:01.871618908+02:00",
- "name": "4 - Nslookup",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/nslookup",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Pacman HTTP+S.json b/root/etc/opensnitchd/rules/4 - Pacman HTTP+S.json
deleted file mode 100644
index 65ec27a..0000000
--- a/root/etc/opensnitchd/rules/4 - Pacman HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-04-01T02:59:52.127387559+02:00",
- "updated": "2021-04-01T02:59:52.127534491+02:00",
- "name": "4 - Pacman HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/pacman\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/pacman",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Pkgfile HTTPS.json b/root/etc/opensnitchd/rules/4 - Pkgfile HTTPS.json
deleted file mode 100644
index 20dd9d8..0000000
--- a/root/etc/opensnitchd/rules/4 - Pkgfile HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:53:36.851205357+01:00",
- "updated": "2021-03-26T14:53:36.851336407+01:00",
- "name": "4 - Pkgfile HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/pkgfile\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/pkgfile",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - SSH.json b/root/etc/opensnitchd/rules/4 - SSH.json
deleted file mode 100644
index 933c197..0000000
--- a/root/etc/opensnitchd/rules/4 - SSH.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T14:55:32.627718743+01:00",
- "updated": "2021-03-26T14:55:32.627823529+01:00",
- "name": "4 - SSH",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/ssh\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/ssh",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Wget HTTP+S.json b/root/etc/opensnitchd/rules/4 - Wget HTTP+S.json
deleted file mode 100644
index 40a6e82..0000000
--- a/root/etc/opensnitchd/rules/4 - Wget HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:52:45.386672313+01:00",
- "updated": "2021-03-26T14:52:45.386820625+01:00",
- "name": "4 - Wget HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/wget\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/wget",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/4 - Yay (AUR) HTTPS.json b/root/etc/opensnitchd/rules/4 - Yay (AUR) HTTPS.json
deleted file mode 100644
index ce3847b..0000000
--- a/root/etc/opensnitchd/rules/4 - Yay (AUR) HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:52:25.658707558+01:00",
- "updated": "2021-03-26T14:52:25.658876726+01:00",
- "name": "4 - Yay (AUR) HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/yay\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/yay",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/5 - KDE Discover HTTPS.json b/root/etc/opensnitchd/rules/5 - KDE Discover HTTPS.json
deleted file mode 100644
index d346fe5..0000000
--- a/root/etc/opensnitchd/rules/5 - KDE Discover HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-04-01T03:00:23.962712398+02:00",
- "updated": "2021-04-01T03:00:23.962833202+02:00",
- "name": "5 - KDE Discover HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"process.path\", \"data\": \"^(\\\\/usr\\\\/bin\\\\/plasma-discover|\\\\/usr\\\\/lib\\\\/DiscoverNotifier)$\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "process.path",
- "sensitive": false,
- "data": "^(\\/usr\\/bin\\/plasma-discover|\\/usr\\/lib\\/DiscoverNotifier)$",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/5 - KDE Init (Widgets) HTTPS.json b/root/etc/opensnitchd/rules/5 - KDE Init (Widgets) HTTPS.json
deleted file mode 100644
index 56421f3..0000000
--- a/root/etc/opensnitchd/rules/5 - KDE Init (Widgets) HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:01:40.246561989+01:00",
- "updated": "2021-03-26T15:01:40.24674061+01:00",
- "name": "5 - KDE Init (Widgets) HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/kdeinit5\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/kdeinit5",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/5 - KDE Plasmashell.json b/root/etc/opensnitchd/rules/5 - KDE Plasmashell.json
deleted file mode 100644
index 2f382f2..0000000
--- a/root/etc/opensnitchd/rules/5 - KDE Plasmashell.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-04-01T02:54:46.246760182+02:00",
- "updated": "2021-04-01T02:54:46.246834823+02:00",
- "name": "5 - KDE Plasmashell",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/plasmashell",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/5 - KDE Telemetry.json b/root/etc/opensnitchd/rules/5 - KDE Telemetry.json
deleted file mode 100644
index f3a96df..0000000
--- a/root/etc/opensnitchd/rules/5 - KDE Telemetry.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:58:25.517342143+01:00",
- "updated": "2021-03-26T14:58:25.517486366+01:00",
- "name": "5 - KDE Telemetry",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/plasmashell\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.host\", \"data\": \"telemetry.kde.org\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/plasmashell",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.host",
- "sensitive": false,
- "data": "telemetry.kde.org",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/5 - KScreenLocker Greet HTTPS.json b/root/etc/opensnitchd/rules/5 - KScreenLocker Greet HTTPS.json
deleted file mode 100644
index a909b5d..0000000
--- a/root/etc/opensnitchd/rules/5 - KScreenLocker Greet HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T14:58:41.453127782+01:00",
- "updated": "2021-03-26T14:58:41.453247154+01:00",
- "name": "5 - KScreenLocker Greet HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/kscreenlocker_greet\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/kscreenlocker_greet",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/5 - Plasma Browser Integration HTTPS.json b/root/etc/opensnitchd/rules/5 - Plasma Browser Integration HTTPS.json
deleted file mode 100644
index ac2460e..0000000
--- a/root/etc/opensnitchd/rules/5 - Plasma Browser Integration HTTPS.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T14:58:51.013216555+01:00",
- "updated": "2021-03-26T14:58:51.013358956+01:00",
- "name": "5 - Plasma Browser Integration HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/plasma-browser-integration-host\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/plasma-browser-integration-host",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/5 - VirtualBox ALL.json b/root/etc/opensnitchd/rules/5 - VirtualBox ALL.json
deleted file mode 100644
index e9db358..0000000
--- a/root/etc/opensnitchd/rules/5 - VirtualBox ALL.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:06:09.065865819+01:00",
- "updated": "2021-03-26T15:06:09.065936078+01:00",
- "name": "5 - VirtualBox ALL",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/virtualbox/VirtualBoxVM",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Caprine 1 - UDP.json b/root/etc/opensnitchd/rules/6 - Caprine 1 - UDP.json
deleted file mode 100644
index 18f321b..0000000
--- a/root/etc/opensnitchd/rules/6 - Caprine 1 - UDP.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:05:34.481391307+01:00",
- "updated": "2021-03-26T15:05:34.481508413+01:00",
- "name": "6 - Caprine 1 - UDP",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.command\", \"data\": \"/usr/lib/electron/electron /usr/bin/caprine\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"53\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.command",
- "sensitive": false,
- "data": "/usr/lib/electron/electron /usr/bin/caprine",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "53",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Caprine 2 - IP Grabbers.json b/root/etc/opensnitchd/rules/6 - Caprine 2 - IP Grabbers.json
deleted file mode 100644
index 32d3f72..0000000
--- a/root/etc/opensnitchd/rules/6 - Caprine 2 - IP Grabbers.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:05:42.793872103+01:00",
- "updated": "2021-03-26T15:05:42.793987628+01:00",
- "name": "6 - Caprine 2 - IP Grabbers",
- "enabled": true,
- "precedence": true,
- "action": "deny",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.command\", \"data\": \"/usr/lib/electron/electron /usr/bin/caprine\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.host\", \"data\": \"(icanhazip.com|myip.opendns.com|api.ipify.org)\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.command",
- "sensitive": false,
- "data": "/usr/lib/electron/electron /usr/bin/caprine",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.host",
- "sensitive": false,
- "data": "(icanhazip.com|myip.opendns.com|api.ipify.org)",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Chromium 1 - HTTP+S.json b/root/etc/opensnitchd/rules/6 - Chromium 1 - HTTP+S.json
deleted file mode 100644
index d270f74..0000000
--- a/root/etc/opensnitchd/rules/6 - Chromium 1 - HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:02:22.863576228+01:00",
- "updated": "2021-03-26T15:02:22.863723433+01:00",
- "name": "6 - Chromium 1 - HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/chromium/chromium\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/chromium/chromium",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Chromium 2 - UDP.json b/root/etc/opensnitchd/rules/6 - Chromium 2 - UDP.json
deleted file mode 100644
index 078f65e..0000000
--- a/root/etc/opensnitchd/rules/6 - Chromium 2 - UDP.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:00:30.758958286+01:00",
- "updated": "2021-03-26T15:00:30.759131117+01:00",
- "name": "6 - Chromium 2 - UDP",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/chromium/chromium\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/chromium/chromium",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Chromium 3 - Google DNS.json b/root/etc/opensnitchd/rules/6 - Chromium 3 - Google DNS.json
deleted file mode 100644
index 331ef00..0000000
--- a/root/etc/opensnitchd/rules/6 - Chromium 3 - Google DNS.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "created": "2021-03-26T15:00:39.45302295+01:00",
- "updated": "2021-03-26T15:00:39.453105125+01:00",
- "name": "6 - Chromium 3 - Google DNS",
- "enabled": true,
- "precedence": true,
- "action": "deny",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/chromium/chromium\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"5228\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.host\", \"data\": \"mtalk.google.com\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/chromium/chromium",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "5228",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.host",
- "sensitive": false,
- "data": "mtalk.google.com",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Discord 1 - HTTP+S.json b/root/etc/opensnitchd/rules/6 - Discord 1 - HTTP+S.json
deleted file mode 100644
index dea5383..0000000
--- a/root/etc/opensnitchd/rules/6 - Discord 1 - HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:00:47.05534584+01:00",
- "updated": "2021-03-26T15:00:47.055503114+01:00",
- "name": "6 - Discord 1 - HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/discord/Discord\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/discord/Discord",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Discord 2 - UDP.json b/root/etc/opensnitchd/rules/6 - Discord 2 - UDP.json
deleted file mode 100644
index 554f710..0000000
--- a/root/etc/opensnitchd/rules/6 - Discord 2 - UDP.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:00:54.726404116+01:00",
- "updated": "2021-03-26T15:00:54.726525934+01:00",
- "name": "6 - Discord 2 - UDP",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/discord/Discord\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/discord/Discord",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Electron HTTPS.json b/root/etc/opensnitchd/rules/6 - Electron HTTPS.json
deleted file mode 100644
index f963c9e..0000000
--- a/root/etc/opensnitchd/rules/6 - Electron HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:03:20.472154851+01:00",
- "updated": "2021-03-26T15:03:20.472291079+01:00",
- "name": "6 - Electron HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/electron/electron\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/electron/electron",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Firefox 1 - HTTP+S.json b/root/etc/opensnitchd/rules/6 - Firefox 1 - HTTP+S.json
deleted file mode 100644
index 018f9f0..0000000
--- a/root/etc/opensnitchd/rules/6 - Firefox 1 - HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:01:03.878891592+01:00",
- "updated": "2021-03-26T15:01:03.879007456+01:00",
- "name": "6 - Firefox 1 - HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/firefox/firefox\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/firefox/firefox",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Firefox 2 - UDP.json b/root/etc/opensnitchd/rules/6 - Firefox 2 - UDP.json
deleted file mode 100644
index 9341f93..0000000
--- a/root/etc/opensnitchd/rules/6 - Firefox 2 - UDP.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:01:21.022762959+01:00",
- "updated": "2021-03-26T15:01:21.022899201+01:00",
- "name": "6 - Firefox 2 - UDP",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/firefox/firefox\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/firefox/firefox",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Firefox 3 - PingSender.json b/root/etc/opensnitchd/rules/6 - Firefox 3 - PingSender.json
deleted file mode 100644
index d4d1644..0000000
--- a/root/etc/opensnitchd/rules/6 - Firefox 3 - PingSender.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:01:27.902723849+01:00",
- "updated": "2021-03-26T15:01:27.902798768+01:00",
- "name": "6 - Firefox 3 - PingSender",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/firefox/pingsender",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Gimagereader HTTPS.json b/root/etc/opensnitchd/rules/6 - Gimagereader HTTPS.json
deleted file mode 100644
index 412bc11..0000000
--- a/root/etc/opensnitchd/rules/6 - Gimagereader HTTPS.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:06:47.786430608+01:00",
- "updated": "2021-03-26T15:06:47.786567338+01:00",
- "name": "6 - Gimagereader HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/gimagereader-qt5\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/gimagereader-qt5",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Go (language).json b/root/etc/opensnitchd/rules/6 - Go (language).json
deleted file mode 100644
index 9f19806..0000000
--- a/root/etc/opensnitchd/rules/6 - Go (language).json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:10:53.909451068+01:00",
- "updated": "2021-03-26T15:10:53.90953488+01:00",
- "name": "6 - Go (language)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/go/bin/go",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - LibreWolf HTTP+S.json b/root/etc/opensnitchd/rules/6 - LibreWolf HTTP+S.json
deleted file mode 100644
index 3d9b518..0000000
--- a/root/etc/opensnitchd/rules/6 - LibreWolf HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-04-02T23:28:24.475396074+02:00",
- "updated": "2021-04-02T23:28:24.475553501+02:00",
- "name": "6 - LibreWolf HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/lib/librewolf/librewolf\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/lib/librewolf/librewolf",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Python HTTP+S.json b/root/etc/opensnitchd/rules/6 - Python HTTP+S.json
deleted file mode 100644
index ff32ba9..0000000
--- a/root/etc/opensnitchd/rules/6 - Python HTTP+S.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:10:46.661735004+01:00",
- "updated": "2021-03-26T15:10:46.66187107+01:00",
- "name": "6 - Python HTTP+S",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"process.path\", \"data\": \"/usr/bin/python*\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(80|443)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/python*",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(80|443)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - QBitTorrent.json b/root/etc/opensnitchd/rules/6 - QBitTorrent.json
deleted file mode 100644
index 3519de4..0000000
--- a/root/etc/opensnitchd/rules/6 - QBitTorrent.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:03:59.240296743+01:00",
- "updated": "2021-03-26T15:03:59.240369823+01:00",
- "name": "6 - QBitTorrent",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/qbittorrent",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Qalculate HTTPS.json b/root/etc/opensnitchd/rules/6 - Qalculate HTTPS.json
deleted file mode 100644
index a5eb658..0000000
--- a/root/etc/opensnitchd/rules/6 - Qalculate HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:03:51.080504273+01:00",
- "updated": "2021-03-26T15:03:51.080636184+01:00",
- "name": "6 - Qalculate HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/qalculate-gtk\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/qalculate-gtk",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Spotify 1 - needed.json b/root/etc/opensnitchd/rules/6 - Spotify 1 - needed.json
deleted file mode 100644
index 8250f82..0000000
--- a/root/etc/opensnitchd/rules/6 - Spotify 1 - needed.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:01:53.487069746+01:00",
- "updated": "2021-03-26T15:01:53.487181823+01:00",
- "name": "6 - Spotify 1 - needed",
- "enabled": true,
- "precedence": true,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/spotify/spotify\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.host\", \"data\": \"^(.*\\\\.?spotify\\\\.com)|(audio.+spotify.+\\\\.akamaized\\\\.net)|(.*\\\\.?scdn\\\\.co)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/spotify/spotify",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.host",
- "sensitive": false,
- "data": "^(.*\\.?spotify\\.com)|(audio.+spotify.+\\.akamaized\\.net)|(.*\\.?scdn\\.co)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Spotify 2 - ads+telemetry.json b/root/etc/opensnitchd/rules/6 - Spotify 2 - ads+telemetry.json
deleted file mode 100644
index f944c44..0000000
--- a/root/etc/opensnitchd/rules/6 - Spotify 2 - ads+telemetry.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:02:02.343313434+01:00",
- "updated": "2021-03-26T15:02:02.343390075+01:00",
- "name": "6 - Spotify 2 - ads+telemetry",
- "enabled": true,
- "precedence": false,
- "action": "deny",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/spotify/spotify",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Spotify 3 - internal ads+telemetry.json b/root/etc/opensnitchd/rules/6 - Spotify 3 - internal ads+telemetry.json
deleted file mode 100644
index 6121bb8..0000000
--- a/root/etc/opensnitchd/rules/6 - Spotify 3 - internal ads+telemetry.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:02:16.687208851+01:00",
- "updated": "2021-03-26T15:02:16.687359725+01:00",
- "name": "6 - Spotify 3 - internal ads+telemetry",
- "enabled": false,
- "precedence": true,
- "action": "deny",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/spotify/spotify\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.host\", \"data\": \"^(ads(-.+)?\\\\.spotify\\\\.com)|(advancedtracker\\\\.spotify\\\\.com)|(analytics\\\\.spotify\\\\.com)|adlab\\\\.spotify\\\\.com|(crashdump(\\\\..+)?\\\\.spotify\\\\.com)|(log\\\\.spotify\\\\.com)|(log2\\\\.spotify\\\\.com)$\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/spotify/spotify",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.host",
- "sensitive": false,
- "data": "^(ads(-.+)?\\.spotify\\.com)|(advancedtracker\\.spotify\\.com)|(analytics\\.spotify\\.com)|adlab\\.spotify\\.com|(crashdump(\\..+)?\\.spotify\\.com)|(log\\.spotify\\.com)|(log2\\.spotify\\.com)$",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Tor Browser ALL.json b/root/etc/opensnitchd/rules/6 - Tor Browser ALL.json
deleted file mode 100644
index a04c6ed..0000000
--- a/root/etc/opensnitchd/rules/6 - Tor Browser ALL.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:02:09.109657936+01:00",
- "updated": "2021-03-26T15:02:09.109691483+01:00",
- "name": "6 - Tor Browser ALL",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/home/itsdrike/.config/tor-browser/app/Browser/TorBrowser/Tor/tor",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Tor service.json b/root/etc/opensnitchd/rules/6 - Tor service.json
deleted file mode 100644
index 42e22d0..0000000
--- a/root/etc/opensnitchd/rules/6 - Tor service.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:04:19.984514998+01:00",
- "updated": "2021-03-26T15:04:19.984594133+01:00",
- "name": "6 - Tor service",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/tor",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - VSCode HTTPS.json b/root/etc/opensnitchd/rules/6 - VSCode HTTPS.json
deleted file mode 100644
index 5f39566..0000000
--- a/root/etc/opensnitchd/rules/6 - VSCode HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:04:13.753378423+01:00",
- "updated": "2021-03-26T15:04:13.75353041+01:00",
- "name": "6 - VSCode HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"process.path\", \"data\": \"(\\\\/opt\\\\/visual-studio-code\\\\/code)|(\\\\/home\\\\/.+\\\\/\\\\.local\\\\/share\\\\/vscode\\\\/.+)\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "process.path",
- "sensitive": false,
- "data": "(\\/opt\\/visual-studio-code\\/code)|(\\/home\\/.+\\/\\.local\\/share\\/vscode\\/.+)",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Xsane (scanner software).json b/root/etc/opensnitchd/rules/6 - Xsane (scanner software).json
deleted file mode 100644
index dd744af..0000000
--- a/root/etc/opensnitchd/rules/6 - Xsane (scanner software).json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:07:51.203426947+01:00",
- "updated": "2021-03-26T15:07:51.203586715+01:00",
- "name": "6 - Xsane (scanner software)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/xsane\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"161\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.ip\", \"data\": \"255.255.255.255\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/xsane",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "161",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.ip",
- "sensitive": false,
- "data": "255.255.255.255",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Zoom 1: needed.json b/root/etc/opensnitchd/rules/6 - Zoom 1: needed.json
deleted file mode 100644
index 5aa4a60..0000000
--- a/root/etc/opensnitchd/rules/6 - Zoom 1: needed.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:07:34.123428308+01:00",
- "updated": "2021-03-26T15:07:34.123557306+01:00",
- "name": "6 - Zoom 1: needed",
- "enabled": true,
- "precedence": true,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/zoom/zoom\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.port\", \"data\": \"^(8801|443)$\", \"sensitive\": false}, {\"type\": \"regexp\", \"operand\": \"dest.host\", \"data\": \".*\\\\.zoom\\\\.us\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/zoom/zoom",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.port",
- "sensitive": false,
- "data": "^(8801|443)$",
- "list": null
- },
- {
- "type": "regexp",
- "operand": "dest.host",
- "sensitive": false,
- "data": ".*\\.zoom\\.us",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - Zoom 2: telemetry.json b/root/etc/opensnitchd/rules/6 - Zoom 2: telemetry.json
deleted file mode 100644
index fc4c293..0000000
--- a/root/etc/opensnitchd/rules/6 - Zoom 2: telemetry.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:07:42.402689917+01:00",
- "updated": "2021-03-26T15:07:42.40277358+01:00",
- "name": "6 - Zoom 2: telemetry",
- "enabled": true,
- "precedence": false,
- "action": "deny",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/zoom/zoom",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/6 - mpv.json b/root/etc/opensnitchd/rules/6 - mpv.json
deleted file mode 100644
index 7902bdb..0000000
--- a/root/etc/opensnitchd/rules/6 - mpv.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-04-02T23:52:36.689049623+02:00",
- "updated": "2021-04-02T23:52:36.689121835+02:00",
- "name": "6 - mpv",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/mpv",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - DirMngr (Accessing OpenPGP Keyservers).json b/root/etc/opensnitchd/rules/7 - DirMngr (Accessing OpenPGP Keyservers).json
deleted file mode 100644
index 0ab6295..0000000
--- a/root/etc/opensnitchd/rules/7 - DirMngr (Accessing OpenPGP Keyservers).json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-04-02T23:27:40.492145563+02:00",
- "updated": "2021-04-02T23:27:40.492220477+02:00",
- "name": "7 - DirMngr (Accessing OpenPGP Keyservers)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/dirmngr",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - DownloadHelper HTTPS.json b/root/etc/opensnitchd/rules/7 - DownloadHelper HTTPS.json
deleted file mode 100644
index b4dc6e8..0000000
--- a/root/etc/opensnitchd/rules/7 - DownloadHelper HTTPS.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "created": "2021-03-26T15:06:58.026583665+01:00",
- "updated": "2021-03-26T15:06:58.026700643+01:00",
- "name": "7 - DownloadHelper HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/local/net.downloadhelper.coapp-1.6.1/bin/net.downloadhelper.coapp-linux-64\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/local/net.downloadhelper.coapp-1.6.1/bin/net.downloadhelper.coapp-linux-64",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - Exodus HTTPS.json b/root/etc/opensnitchd/rules/7 - Exodus HTTPS.json
deleted file mode 100644
index 3633513..0000000
--- a/root/etc/opensnitchd/rules/7 - Exodus HTTPS.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:06:00.313939576+01:00",
- "updated": "2021-03-26T15:06:00.314088658+01:00",
- "name": "7 - Exodus HTTPS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/exodus/Exodus\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/exodus/Exodus",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - GImageReader.json b/root/etc/opensnitchd/rules/7 - GImageReader.json
deleted file mode 100644
index 956efaf..0000000
--- a/root/etc/opensnitchd/rules/7 - GImageReader.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-04-01T02:54:28.868922664+02:00",
- "updated": "2021-04-01T02:54:28.868997421+02:00",
- "name": "7 - GImageReader",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/gimagereader-qt5",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - Google Remote Desktop (Start).json b/root/etc/opensnitchd/rules/7 - Google Remote Desktop (Start).json
deleted file mode 100644
index 0e1a666..0000000
--- a/root/etc/opensnitchd/rules/7 - Google Remote Desktop (Start).json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:08:32.002388702+01:00",
- "updated": "2021-03-26T15:08:32.002444202+01:00",
- "name": "7 - Google Remote Desktop (Start)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/google/chrome-remote-desktop/start-host\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/google/chrome-remote-desktop/start-host",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - Google Remote Desktop (host).json b/root/etc/opensnitchd/rules/7 - Google Remote Desktop (host).json
deleted file mode 100644
index 8ad6c60..0000000
--- a/root/etc/opensnitchd/rules/7 - Google Remote Desktop (host).json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:08:40.676085602+01:00",
- "updated": "2021-03-26T15:08:40.676199845+01:00",
- "name": "7 - Google Remote Desktop (host)",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/google/chrome-remote-desktop/chrome-remote-desktop-host\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"3478\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/google/chrome-remote-desktop/chrome-remote-desktop-host",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "3478",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - Google remote desktop host HTTPS.json b/root/etc/opensnitchd/rules/7 - Google remote desktop host HTTPS.json
deleted file mode 100644
index a869318..0000000
--- a/root/etc/opensnitchd/rules/7 - Google remote desktop host HTTPS.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:08:48.779949158+01:00",
- "updated": "2021-03-26T15:08:48.78007234+01:00",
- "name": "7 - Google remote desktop host HTTPS",
- "enabled": false,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/opt/google/chrome-remote-desktop/chrome-remote-desktop-host\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/google/chrome-remote-desktop/chrome-remote-desktop-host",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - MailSpring 2: mailsync.json b/root/etc/opensnitchd/rules/7 - MailSpring 2: mailsync.json
deleted file mode 100644
index 2238537..0000000
--- a/root/etc/opensnitchd/rules/7 - MailSpring 2: mailsync.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-04-02T23:29:38.186802771+02:00",
- "updated": "2021-04-02T23:29:38.186899772+02:00",
- "name": "7 - MailSpring 2: mailsync",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/share/mailspring/resources/app.asar.unpacked/mailsync.bin",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - MailSpring.json b/root/etc/opensnitchd/rules/7 - MailSpring.json
deleted file mode 100644
index 197d6e8..0000000
--- a/root/etc/opensnitchd/rules/7 - MailSpring.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-04-02T23:29:09.554510897+02:00",
- "updated": "2021-04-02T23:29:09.554599422+02:00",
- "name": "7 - MailSpring",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/share/mailspring/mailspring",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - NMap.json b/root/etc/opensnitchd/rules/7 - NMap.json
deleted file mode 100644
index f965715..0000000
--- a/root/etc/opensnitchd/rules/7 - NMap.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-27T22:17:47.411966515+01:00",
- "updated": "2021-03-27T22:17:47.412029252+01:00",
- "name": "7 - NMap",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/nmap",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - OBS.json b/root/etc/opensnitchd/rules/7 - OBS.json
deleted file mode 100644
index 6d6889e..0000000
--- a/root/etc/opensnitchd/rules/7 - OBS.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "created": "2021-03-26T15:06:19.416884298+01:00",
- "updated": "2021-03-26T15:06:19.416964918+01:00",
- "name": "7 - OBS",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/obs\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"443\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.host\", \"data\": \"obsproject.com\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/obs",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "443",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.host",
- "sensitive": false,
- "data": "obsproject.com",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - Portmaster ALL.json b/root/etc/opensnitchd/rules/7 - Portmaster ALL.json
deleted file mode 100644
index 09ce8d3..0000000
--- a/root/etc/opensnitchd/rules/7 - Portmaster ALL.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:09:05.172414932+01:00",
- "updated": "2021-03-26T15:09:05.172493217+01:00",
- "name": "7 - Portmaster ALL",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "regexp",
- "operand": "process.path",
- "sensitive": false,
- "data": "\\/var\\/lib\\/portmaster\\/.*",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - Postgres UDP.json b/root/etc/opensnitchd/rules/7 - Postgres UDP.json
deleted file mode 100644
index 7e5ada7..0000000
--- a/root/etc/opensnitchd/rules/7 - Postgres UDP.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-03-26T15:07:12.074594056+01:00",
- "updated": "2021-03-26T15:07:12.074724626+01:00",
- "name": "7 - Postgres UDP",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"udp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"process.path\", \"data\": \"/usr/bin/postgres\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "udp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/usr/bin/postgres",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - Postman.json b/root/etc/opensnitchd/rules/7 - Postman.json
deleted file mode 100644
index 503c4dc..0000000
--- a/root/etc/opensnitchd/rules/7 - Postman.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "created": "2021-03-26T15:07:20.01066125+01:00",
- "updated": "2021-03-26T15:07:20.010747563+01:00",
- "name": "7 - Postman",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "simple",
- "operand": "process.path",
- "sensitive": false,
- "data": "/opt/postman/app/_Postman",
- "list": []
- }
-}
\ No newline at end of file
diff --git a/root/etc/opensnitchd/rules/7 - SSH 22.json b/root/etc/opensnitchd/rules/7 - SSH 22.json
deleted file mode 100644
index 631d66d..0000000
--- a/root/etc/opensnitchd/rules/7 - SSH 22.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "created": "2021-04-07T07:53:12.922862432+02:00",
- "updated": "2021-04-07T07:53:12.922993954+02:00",
- "name": "7 - SSH 22",
- "enabled": true,
- "precedence": false,
- "action": "allow",
- "duration": "always",
- "operator": {
- "type": "list",
- "operand": "list",
- "sensitive": false,
- "data": "[{\"type\": \"simple\", \"operand\": \"protocol\", \"data\": \"tcp\", \"sensitive\": false}, {\"type\": \"simple\", \"operand\": \"dest.port\", \"data\": \"22\", \"sensitive\": false}]",
- "list": [
- {
- "type": "simple",
- "operand": "protocol",
- "sensitive": false,
- "data": "tcp",
- "list": null
- },
- {
- "type": "simple",
- "operand": "dest.port",
- "sensitive": false,
- "data": "22",
- "list": null
- }
- ]
- }
-}
\ No newline at end of file
diff --git a/root/etc/pacman.conf b/root/etc/pacman.conf
deleted file mode 100644
index 59b1836..0000000
--- a/root/etc/pacman.conf
+++ /dev/null
@@ -1,105 +0,0 @@
-#
-# /etc/pacman.conf
-#
-# See the pacman.conf(5) manpage for option and repository directives
-
-#
-# GENERAL OPTIONS
-#
-[options]
-# The following paths are commented out with their default values listed.
-# If you wish to use different paths, uncomment and update the paths.
-#RootDir = /
-#DBPath = /var/lib/pacman/
-#CacheDir = /var/cache/pacman/pkg/
-#LogFile = /var/log/pacman.log
-#GPGDir = /etc/pacman.d/gnupg/
-#HookDir = /etc/pacman.d/hooks/
-HoldPkg = pacman glibc
-#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
-#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
-#CleanMethod = KeepInstalled
-Architecture = auto
-
-# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
-#IgnorePkg =
-#IgnoreGroup =
-
-#NoUpgrade =
-#NoExtract =
-
-# Misc options
-#UseSyslog
-Color
-CheckSpace
-VerbosePkgLists
-#DisableDownloadTimeout
-#ILoveCandy
-ParallelDownloads = 8
-
-# By default, pacman accepts packages signed by keys that its local keyring
-# trusts (see pacman-key and its man page), as well as unsigned packages.
-SigLevel = Required DatabaseOptional
-LocalFileSigLevel = Optional
-#RemoteFileSigLevel = Required
-
-# NOTE: You must run `pacman-key --init` before first using pacman; the local
-# keyring can then be populated with the keys of all official Arch Linux
-# packagers with `pacman-key --populate archlinux`.
-
-#
-# REPOSITORIES
-# - can be defined here or included from another file
-# - pacman will search repositories in the order defined here
-# - local/custom mirrors can be added here or in separate files
-# - repositories listed first will take precedence when packages
-# have identical names, regardless of version number
-# - URLs will have $repo replaced by the name of the current repo
-# - URLs will have $arch replaced by the name of the architecture
-#
-# Repository entries are of the format:
-# [repo-name]
-# Server = ServerName
-# Include = IncludePath
-#
-# The header [repo-name] is crucial - it must be present and
-# uncommented to enable the repo.
-#
-
-# The testing repositories are disabled by default. To enable, uncomment the
-# repo name header and Include lines. You can add preferred servers immediately
-# after the header, and they will be used before the default mirrors.
-
-# Use blackarch first, so that other indices can take precedence in
-# versions, usually core/extra/community/multilib have newer versions
-# in comparison to blackarch index
-#[testing]
-#Include = /etc/pacman.d/mirrorlist
-
-[core]
-Include = /etc/pacman.d/mirrorlist
-
-[extra]
-Include = /etc/pacman.d/mirrorlist
-
-#[community-testing]
-#Include = /etc/pacman.d/mirrorlist
-
-[community]
-Include = /etc/pacman.d/mirrorlist
-
-# If you want to run 32 bit applications on your x86_64 system,
-# enable the multilib repositories as required here.
-
-#[multilib-testing]
-#Include = /etc/pacman.d/mirrorlist
-
-[multilib]
-Include = /etc/pacman.d/mirrorlist
-
-# An example of a custom package repository. See the pacman manpage for
-# tips on creating your own repositories.
-#[custom]
-#SigLevel = Optional TrustAll
-#Server = file:///home/custompkgs
-
diff --git a/root/etc/profile b/root/etc/profile
deleted file mode 100644
index be86919..0000000
--- a/root/etc/profile
+++ /dev/null
@@ -1,45 +0,0 @@
-# /etc/profile
-
-# Set umask, 027 might be too strict for some people. if that's the case
-# you can fall back to 022 (allowing others to read everything by default)
-# or even to 002 (allowing groups to write into files just like owners)
-umask 022
-
-# Append "$1" to $PATH when not already in.
-# This function API is accessible to scripts in /etc/profile.d
-append_path () {
- case ":$PATH:" in
- *:"$1":*)
- ;;
- *)
- PATH="${PATH:+$PATH:}$1"
- esac
-}
-
-# Append our default paths
-append_path '/sbin'
-append_path '/usr/sbin'
-append_path '/bin'
-append_path '/usr/bin'
-append_path '/usr/local/sbin'
-append_path '/usr/local/bin'
-
-# Force PATH to be environment
-export PATH
-
-# Load profiles from /etc/profile.d
-if test -d /etc/profile.d/; then
- for profile in /etc/profile.d/*.sh; do
- test -r "$profile" && . "$profile"
- done
- unset profile
-fi
-
-# Unload our profile API functions
-unset -f append_path
-
-# Termcap is outdated, old, and crusty, kill it.
-unset TERMCAP
-
-# Man is much better than us at figuring this out
-unset MANPATH
diff --git a/root/etc/resolv.conf b/root/etc/resolv.conf
deleted file mode 100644
index c2791fa..0000000
--- a/root/etc/resolv.conf
+++ /dev/null
@@ -1,14 +0,0 @@
-# DNS configuration, NetworkManager tends to override this
-# but setting immutable flag to this file fixes that.
-# This can be done by running chattr +i /etc/resolv.conf
-
-# Prefer local pihole server, if aviable
-nameserver 192.168.0.10
-
-# Fallback on common DNS servers, in this order:
-# NextDNS -> CloudFlare DNS -> ISP default DNS
-nameserver 45.90.30.0
-nameserver 1.1.1.1
-nameserver 1.0.0.1
-nameserver 127.0.0.1
-nameserver ::1
diff --git a/root/etc/sudoers b/root/etc/sudoers
deleted file mode 100644
index e04b581..0000000
--- a/root/etc/sudoers
+++ /dev/null
@@ -1,99 +0,0 @@
-## sudoers file.
-##
-## This file MUST be edited with the 'visudo' command as root.
-## Failure to use 'visudo' may result in syntax or file permission errors
-## that prevent sudo from running.
-##
-## See the sudoers man page for the details on how to write a sudoers file.
-##
-
-##
-## Host alias specification
-##
-## Groups of machines. These may include host names (optionally with wildcards),
-## IP addresses, network numbers or netgroups.
-# Host_Alias WEBSERVERS = www1, www2, www3
-
-##
-## User alias specification
-##
-## Groups of users. These may consist of user names, uids, Unix groups,
-## or netgroups.
-# User_Alias ADMINS = millert, dowdy, mikef
-
-##
-## Cmnd alias specification
-##
-## Groups of commands. Often used to group related commands together.
-# Cmnd_Alias PROCESSES = /usr/bin/nice, /bin/kill, /usr/bin/renice, \
-# /usr/bin/pkill, /usr/bin/top
-# Cmnd_Alias REBOOT = /sbin/halt, /sbin/reboot, /sbin/poweroff
-
-##
-## Defaults specification
-##
-## You may wish to keep some of the following environment variables
-## when running commands via sudo.
-##
-## Locale settings
-# Defaults env_keep += "LANG LANGUAGE LINGUAS LC_* _XKB_CHARSET"
-##
-## Run X applications through sudo; HOME is used to find the
-## .Xauthority file. Note that other programs use HOME to find
-## configuration files and this may lead to privilege escalation!
-# Defaults env_keep += "HOME"
-##
-## X11 resource path settings
-# Defaults env_keep += "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH"
-##
-## Desktop path settings
-# Defaults env_keep += "QTDIR KDEDIR"
-##
-## Allow sudo-run commands to inherit the callers' ConsoleKit session
-# Defaults env_keep += "XDG_SESSION_COOKIE"
-##
-## Uncomment to enable special input methods. Care should be taken as
-## this may allow users to subvert the command being run via sudo.
-# Defaults env_keep += "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER"
-##
-## Uncomment to use a hard-coded PATH instead of the user's to find commands
-# Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
-##
-## Uncomment to send mail if the user does not enter the correct password.
-# Defaults mail_badpass
-##
-## Uncomment to enable logging of a command's output, except for
-## sudoreplay and reboot. Use sudoreplay to play back logged sessions.
-Defaults log_output
-Defaults!/usr/bin/sudoreplay !log_output
-Defaults!/usr/local/bin/sudoreplay !log_output
-Defaults!REBOOT !log_output
-
-# Add some fine insults
-Defaults insults
-
-##
-## Runas alias specification
-##
-
-##
-## User privilege specification
-##
-root ALL=(ALL) ALL
-
-## Uncomment to allow members of group wheel to execute any command
-%wheel ALL=(ALL) ALL
-
-## Same thing without a password
-# %wheel ALL=(ALL) NOPASSWD: ALL
-
-## Uncomment to allow members of group sudo to execute any command
-# %sudo ALL=(ALL) ALL
-
-## Uncomment to allow any user to run sudo if they know the password
-## of the user they are running the command as (root by default).
-# Defaults targetpw # Ask for the password of the target user
-# ALL ALL=(ALL) ALL # WARNING: only use this together with 'Defaults targetpw'
-
-## Read drop-in files from /etc/sudoers.d
-@includedir /etc/sudoers.d
diff --git a/root/etc/sudoers.d/brightness-mod b/root/etc/sudoers.d/brightness-mod
deleted file mode 100644
index 75dd592..0000000
--- a/root/etc/sudoers.d/brightness-mod
+++ /dev/null
@@ -1,2 +0,0 @@
-ALL ALL=(ALL) NOPASSWD: /usr/bin/tee /sys/class/backlight/intel_backlight/brightness
-
diff --git a/root/etc/sudoers.d/poweroff b/root/etc/sudoers.d/poweroff
deleted file mode 100644
index 73ae525..0000000
--- a/root/etc/sudoers.d/poweroff
+++ /dev/null
@@ -1,4 +0,0 @@
-ALL ALL=(ALL) NOPASSWD: /sbin/poweroff
-ALL ALL=(ALL) NOPASSWD: /sbin/shutdown
-ALL ALL=(ALL) NOPASSWD: /sbin/reboot
-
diff --git a/root/etc/systemd/system/paccache.timer b/root/etc/systemd/system/paccache.timer
deleted file mode 100644
index 6528cb7..0000000
--- a/root/etc/systemd/system/paccache.timer
+++ /dev/null
@@ -1,14 +0,0 @@
-# Clean pacman cache of old and uninstalled packages every month
-# This needs to be started by running `systemctl start paccache.timer`
-# Usage requires `pacman-contrib` package to be installed
-
-[Unit]
-Description=Clean-up old pacman pkg
-
-[Timer]
-OnCalendar=weekly
-AccuracySec=1h
-Persistent=true
-
-[Install]
-WantedBy=timers.target
diff --git a/root/usr/lib/systemd/system/paccache.timer b/root/usr/lib/systemd/system/paccache.timer
deleted file mode 100644
index 8423e18..0000000
--- a/root/usr/lib/systemd/system/paccache.timer
+++ /dev/null
@@ -1,13 +0,0 @@
-# Clean pacman cache of old and uninstalled packages every month
-# This needs to be started by systemctl stat paccache.timer
-# Usage requires pacman-contrib package to be installed
-
-[Unit]
-Description=Clean-up old pacman pkg
-
-[Timer]
-OnCalendar=monthly
-Persistent=true
-
-[Install]
-WantedBy=multi-user.target
diff --git a/root/usr/local/bin/auto-chroot b/root/usr/local/bin/auto-chroot
deleted file mode 100755
index 0e875ae..0000000
--- a/root/usr/local/bin/auto-chroot
+++ /dev/null
@@ -1,81 +0,0 @@
-#!/bin/sh
-
-yes_no() {
- while true; do
- printf "$1 (y/n): "
- read -r yn
- case $yn in
- [Yy]* ) return 0;;
- [Nn]* ) return 1;;
- * ) echo "Please answer yes or no";;
- esac
- done
-}
-
-# Ensure we run as root
-if [ "$EUID" -ne 0 ]; then
- echo "Must be ran as root"
- exit 1
-fi
-
-# Take NEWROOT as 1st argument
-if [ $# -ge 1 ]; then
- NEWROOT="$1"
-else
- echo "Provide newroot directory"
- exit 1
-fi
-
-# Take chroot user as 2nd argument, default to root
-if [ $# -ge 2 ]; then
- USERNAME="$2"
-else
- USERNAME="root"
-fi
-
-# Check if given NEWROOT is already mounted, if it is
-# set REMOUNT to the mount source, so that we can remount
-# it once we're done.
-df_out=$(df --output=source,target | grep -w "$NEWROOT")
-if [ -n "$df_out" ]; then
- REMOUNT="$(echo $df_out | awk '{print $1}')"
-else
- # If the target isn't mounted already, check
- # if user gave $3 (mount location)
- if [ $# -ge 3 ]; then
- mount "$3" "$NEWROOT"
- else
- # If user didn't give mount location, try to
- # mount according to fstab
- if [ -n "$(grep -w "$NEWROOT" /etc/fstab)" ]; then
- mount "$NEWROOT"
- else
- # Ask for user confirmation to ensure that filesystem
- # is ready for chroot in given NEWROOT, exit if not
- yes_no "$NEWROOT wasn't mounted, is your filesystem in place?" || exit 1
- fi
- fi
-fi
-
-# Mount necessary directories for chroot to be possible
-mount --types proc /proc "$NEWROOT/proc"
-mount --rbind /sys "$NEWROOT/sys"
-mount --make-rslave "$NEWROOT/sys"
-mount --rbind /dev "$NEWROOT/dev"
-mount --make-rslave "$NEWROOT/dev"
-
-# Use /bin/su for chrooting with --login to also run
-# /etc/profile and ~/.profile or ~/.zprofile
-chroot "$NEWROOT" "/bin/su" "$USERNAME" --login
-
-# Unmount recursively mounted directories
-umount -l "$NEWROOT/dev"
-umount -l "$NEWROOT/sys"
-umount -l "$NEWROOT/proc"
-umount -R "$NEWROOT"
-
-# Remount partition according to fstab if REMOUT is set
-# in order to leave the filesystem in the state it was
-if [ -n "$REMOUNT" ]; then
- mount "$REMOUNT" "$NEWROOT"
-fi
diff --git a/root/usr/local/bin/cron-notify b/root/usr/local/bin/cron-notify
deleted file mode 100755
index 6e352df..0000000
--- a/root/usr/local/bin/cron-notify
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-# Crontab requires DISPLAY and XDG_RUNTIME_HOME
-# to be set when running notify-send, this script
-# makes defines those to make it eaiser to send
-# notifications from crontab without cluttering it
-# It sets "Cron Notification" title, rest of the
-# arguments are passed to notfiy-send
-
-XDG_RUNTIME_DIR="/run/user/$(id -u)" \
-DISPLAY=:0 \
-notify-send "$@"
diff --git a/root/usr/local/bin/incremental-backup b/root/usr/local/bin/incremental-backup
deleted file mode 100755
index 6aba77a..0000000
--- a/root/usr/local/bin/incremental-backup
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/bash
-
-# Script to perform incremental backups using rsync
-# It is often ran as crontab rule for automated backup solution
-#
-# This script will respect .rsync-filter files, which can be used
-# to define custom exclude rules for files/dirs in which it is present
-
-if [ $# -lt 2 ]; then
- echo "Invalid amount of arguments passed!"
- echo "Arguments: [Source path] [Backup path]"
- echo " Source path: directory to be backed up, usually '/'"
- echo " Backup path: directory to back up to (destination), usually mounted drive"
- exit
-fi
-
-SOURCE_DIR="$1"
-BACKUP_DIR="$2"
-DATETIME="$(date '+%Y-%m-%d_%H:%M:%S')"
-BACKUP_PATH="${BACKUP_DIR}/${DATETIME}"
-LATEST_LINK="${BACKUP_DIR}/latest"
-
-mkdir -p "$BACKUP_DIR"
-
-rsync -avHAXS \
- --delete \
- --filter='dir-merge /.rsync-filter' \
- --link-dest "${LATEST_LINK}" \
- "${@:3}" "${SOURCE_DIR}/" "${BACKUP_PATH}"
-
-# Only attempt to override the symlink if we made new backup_path
-# user might've passed --dry-run option in which case we wouldn't
-# want to override latest symlink to non-existent location
-if [ -d "${BACKUP_PATH}" ]; then
- rm "${LATEST_LINK}" 2>/dev/null
- ln -s "${BACKUP_PATH}" "${LATEST_LINK}"
-fi
diff --git a/root/usr/local/bin/tamper-check b/root/usr/local/bin/tamper-check
deleted file mode 100755
index 82159ca..0000000
--- a/root/usr/local/bin/tamper-check
+++ /dev/null
@@ -1,292 +0,0 @@
-#!/bin/python3
-import json
-import subprocess
-import sys
-import argparse
-from pathlib import Path
-
-try:
- import colorama
-except ImportError:
- from unittest.mock import Mock
- class NoReprMock(Mock):
- __repr__ = lambda self: ""
- colorama = NoReprMock()
-
-colorama.init(autoreset=True)
-
-
-# default path to the JSON file that stores known file checksums
-# this can be overridden by using `--checksum-file=path` flag
-CHECKSUM_FILE = Path('/usr/local/share/tamper-check/checksums.json')
-
-
-def _yes_no(text: str, add_yn: bool = True) -> bool:
- if add_yn:
- text += ' (y/n): '
- while True:
- user_inp = input(text).lower()
- if user_inp in ('y', 'yes'):
- return True
- elif user_inp in ('n', 'no'):
- return False
-
-
-def _get_checksum_dict(checksum_file: Path) -> dict[Path, str]:
- """Read the JSON checksum file and return it as python dictionary object."""
- try:
- with open(checksum_file, 'r') as f:
- checksums = json.load(f)
- except FileNotFoundError:
- print(
- f'{colorama.Fore.YELLOW}Checksum file not found: {colorama.Fore.RESET}'
- f"'{colorama.Fore.BLUE}{checksum_file}{colorama.Fore.RESET}'{colorama.Fore.YELLOW} "
- 'Creating new empty checksum file...'
- )
- checksum_file.parent.mkdir(parents=True, exist_ok=True)
- checksums = {}
- with open(checksum_file, 'w') as f:
- json.dump(checksums, f, indent=4)
- return checksums
- except PermissionError:
- print(
- f'{colorama.Fore.RED}PermissionError: {colorama.Fore.RESET}'
- 'to run tamper-check you must have read access to checksum file: '
- f"'{colorama.Fore.BLUE}{checksum_file}{colorama.Fore.RESET}' (forgot sudo?)"
- )
- exit(2)
- except json.decoder.JSONDecodeError as e:
- print(
- f'{colorama.Fore.RED}Checksum file is corrupted, unable to decode JSON. '
- f"{colorama.Fore.RESET}('{colorama.Fore.BLUE}{checksum_file}{colorama.Fore.RESET}').\n"
- f'Error text: {e}'
- )
- exit(3)
- else:
- dct = {}
- for file_str, checksum in checksums.items():
- dct[Path(file_str)] = checksum
- return dct
-
-
-def _get_checksum(file: Path) -> str:
- """Obtain a checksum of given file"""
- proc = subprocess.run(['sha256sum', file], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
- proc_stdout = proc.stdout.decode('utf-8')
-
- if "No such file or directory" in proc_stdout:
- raise FileNotFoundError(f"'{file}' not found, can't produce sha256 checksum")
- elif "Permission denied" in proc_stdout:
- raise PermissionError(f"Unable to read file '{file}'")
- elif "Is a directory" in proc_stdout:
- raise RuntimeError(f"{file} is a directory, can't produce sha256sum")
-
- return proc_stdout.replace(f' {file}\n', '')
-
-
-def _update_checksum(file_path: Path, checksum: str, checksum_file: Path, new_entry: bool = False) -> None:
- """Update existing checksums or add new file entries in checksum_file"""
- checksums = _get_checksum_dict(checksum_file)
-
- if new_entry and file_path in checksums:
- print(
- f"{colorama.Fore.RED}Path {colorama.Fore.RESET}"
- f"'{colorama.Fore.BLUE}{file_path}{colorama.Fore.RESET}' {colorama.Fore.RED}"
- "is already in the checksum file perhaps you wanted `--update`?"
- )
- raise SystemExit(3)
-
- checksums[file_path] = checksum
-
- writeable_checksums = {str(file_path): file_checksum for file_path, file_checksum in checksums.items()}
- try:
- with open(checksum_file, 'w') as f:
- json.dump(writeable_checksums, f, indent=4)
- except PermissionError:
- print(
- f'{colorama.Fore.RED}PermissionError: {colorama.Fore.RESET}'
- 'To add a new rule, you must have write access to: '
- f"'{colorama.Fore.BLUE}{checksum_file}{colorama.Fore.RESET}' (forgot sudo?)"
- )
- raise SystemExit(2)
-
-
-def update(file_path: Path, checksum_file: Path, text: str, no_confirm: bool = False) -> bool:
- """Ask user if a file should be updated, or update automatically if no_confirm is True"""
- new_checksum = _get_checksum(file_path)
-
- if no_confirm:
- print(text + ' checksum auto-updating')
- elif not _yes_no(text + ' update checksum?'):
- print(f'{colorama.Fore.RED} -> Staying mismatched')
- return False
-
- _update_checksum(file_path, new_checksum, checksum_file)
- print(f'{colorama.Fore.GREEN} -> Updated')
- return True
-
-
-def run_check(checksum_file: Path, verbose: bool) -> list[Path]:
- """
- Go through all files listed in checksum_file and make sure that the checksums are matching.
- Return all entries which didn't match.
- """
- checksums = _get_checksum_dict(checksum_file)
-
- not_matched = []
- for file, stored_checksum in checksums.items():
- line = f"Checksum of '{colorama.Fore.BLUE}{file}{colorama.Fore.RESET}': "
-
- try:
- real_sha256_sum = _get_checksum(file)
- except PermissionError as exc:
- print(line + f'{colorama.Fore.YELLOW}SKIPPED [PermissionError - no read perms]')
- if verbose:
- print(f' -> Error text: {colorama.Fore.CYAN}{exc}')
- continue
- except FileNotFoundError as exc:
- print(line + f'{colorama.Fore.YELLOW}FAILED [FileNotFound - fix checksum file]')
- if verbose:
- print(f' -> Error text: {colorama.Fore.CYAN}{exc}')
- continue
- except RuntimeError as exc:
- print(line + f'{colorama.Fore.YELLOW}FAILED [{exc.__class__.__name__}: {exc} - fix checksum file]')
- if verbose:
- print(f' -> Error text: {colorama.Fore.CYAN}{exc}')
- continue
-
- if real_sha256_sum == stored_checksum:
- print(line + f'{colorama.Fore.GREEN}OK')
- else:
- not_matched.append(file)
- print(line + f'{colorama.Fore.RED}FAIL [Checksum Mismatch]')
- if verbose:
- print(f' -> detected: {colorama.Fore.CYAN}{real_sha256_sum}')
- print(f' -> stored: {colorama.Fore.CYAN}{stored_checksum}')
-
- return not_matched
-
-
-def parse_args(*, checksum_file_default) -> dict:
- parser = argparse.ArgumentParser(
- description='tamper-check is a command line utility to automate checking for file edits. '
- 'This is achieved by storing sha256 checksums of each added file and comparing them.'
- )
- parser.add_argument(
- '-v', '--verbose', action='store_true',
- help='Verbose mode, show checksums on failures and some more info'
- )
- parser.add_argument(
- '-u', '--update', action='store_true',
- help='If invalid checksum is found, ask user if it should be updated (y/n)'
- )
- parser.add_argument(
- '--no-confirm', action='store_true',
- help='Used in combination with `--update`, automatically assumes `y` for all questions'
- )
- parser.add_argument(
- '--checksum-file', metavar='FILE', type=Path, default=checksum_file_default,
- help='JSON file storing the file checksums'
- )
- parser.add_argument(
- '-a', '--add', metavar='FILE', nargs='+', action='extend', type=Path, default=[],
- dest='files_to_add', help='Add a new file to the list of check entries'
- )
-
- namespace = parser.parse_args()
- cli_args = {k: v for k, v in vars(namespace).items()}
-
- # Handle non-existing paths
- for path in cli_args['files_to_add']:
- if not path.exists():
- raise FileNotFoundError(path)
- if not path.is_file():
- raise RuntimeError("Can't add a directory")
- if not cli_args['checksum_file'].exists():
- raise FileNotFoundError(cli_args['checksum_file'])
-
- return cli_args
-
-
-def main() -> int:
- """Run the program as intended, return the exit code"""
- try:
- run_parameters = parse_args(checksum_file_default=CHECKSUM_FILE)
- except FileNotFoundError as exc:
- path = exc.args[0]
- print(
- f'{colorama.Fore.RED}FileNotFoundError: {colorama.Fore.RESET}'
- f"'{colorama.Fore.BLUE}{path}{colorama.Fore.RESET}' -> invalid path"
- )
- return 2
- except RuntimeError as exc:
- print(
- f'{colorama.Fore.RED}{exc.__class__.__name__}: {colorama.Fore.RESET}'
- f"'{colorama.Fore.BLUE}{exc}{colorama.Fore.RESET}'"
- )
- return 2
- except SystemExit as exc:
- return exc.code
-
- if len(run_parameters["files_to_add"]) > 0:
- for file_to_add in run_parameters["files_to_add"]:
- checksum = _get_checksum(file_to_add)
- try:
- _update_checksum(
- file_to_add, checksum,
- run_parameters["checksum_file"],
- new_entry=True
- )
- except SystemExit as e:
- return e.code
-
- print(
- f"Added '{colorama.Fore.BLUE}{file_to_add}{colorama.Fore.RESET}': "
- f"'{colorama.Fore.CYAN}{checksum}{colorama.Fore.RESET}'"
- )
-
- return 0 # don't proceed to check if we're adding files
-
- # Run the check
- mismatched_files = run_check(run_parameters["checksum_file"], run_parameters["verbose"])
- if len(mismatched_files) == 0:
- return 0 # all files are ok
-
- print("\nFiles with mismatched checksums:")
- prefix = f"{colorama.Fore.RED} - {colorama.Fore.RESET}"
- unfixed = []
- for mismatched_file in mismatched_files:
- line = prefix + f"'{colorama.Fore.BLUE}{mismatched_file}{colorama.Fore.RESET}'"
-
- if not run_parameters["update"]:
- unfixed.append(mismatched_file)
- print(line)
- continue
-
- if not update(
- file_path=mismatched_file,
- checksum_file=run_parameters["checksum_file"],
- no_confirm=run_parameters["no_confirm"],
- text=line
- ):
- unfixed.append(mismatched_file)
-
- if len(unfixed) > 0:
- return 1
-
- print(f'\n{colorama.Fore.GREEN}All checksums are correct')
- return 0
-
-
-if __name__ == '__main__':
- exit_code = main()
- try:
- exit(exit_code) # exit gracefully, with silent exit code
- except TypeError:
- # Some python interpreters/extensions (such as IPython) don't like exit.
- # sys.exit will raise a full exception and go to python traceback, exiting
- # with code 1. The real exit code will be preserved in the traceback.
- # This isn't ideal, but it's better than out of the place TypeError
- # and with exit code 0, this will exit normally.
- # CPython doesn't do this and most users will never experience this.
- sys.exit(exit_code)
diff --git a/root/usr/local/share/tamper-check/checksums.json b/root/usr/local/share/tamper-check/checksums.json
deleted file mode 100644
index b03588d..0000000
--- a/root/usr/local/share/tamper-check/checksums.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
- "/etc/pam.d/system-auth": "89d62406b2d623a76d53c33aca98ce8ee124ed4a450ff6c8a44cfccca78baa2f",
- "/etc/pam.d/su": "7d8962b4a2cd10cf4bc13da8949a4a6151b572d39e87b7125be55f882b16c4da",
- "/etc/pam.d/sudo": "d1738818070684a5d2c9b26224906aad69a4fea77aabd960fc2675aee2df1fa2",
- "/etc/passwd": "28d6bec52ac5b4957a2c30dfcd15008dc1a39665c27abce97408489f3dbf02c9",
- "/etc/shadow": "a24f72cba4cbc6b0a8433da2f4b011f31345068e3e5d6bebed6fb6a35769bd59",
- "/etc/ssh/sshd_config": "515db2484625122b4254472f7e673649e3d89b57577eaa29395017676735907b",
- "/bin/sudo": "4ff88367f05a314a98cf69d9949d8ca6b266cee6b93e9ff4d553b399ea472264",
- "/bin/su": "3101438405d98e71e9eb68fbc5a33536f1ad0dad5a1c8aacd6da6c95ef082194",
- "/usr/bin/passwd": "d4df1659159737bb4c08a430d493d257d75cdd93e18427946265ae5862a714c7",
- "/usr/bin/chsh": "6bc0ae69620dde18f7942e2573afb4a6200b10269612151f48f54ef8423a64fe",
- "/usr/bin/chfn": "63178af1347a62f58874640d38d605d3cb1bebe8092533787965ba317e8b553b",
- "/home/itsdrike/.ssh/authorized_keys": "674806197893dbf67d3c9ba3abf049d30e571de0c4b450fc9819d3e8b0f854cc",
- "/boot/vmlinuz-linux": "fcd97f4aa96cce36e0bd5d69a6135741a37019b57157c97ffceaf9f5f0e86f32",
- "/boot/grub/grub.cfg": "39a57270f03a2fbd89f8e99af101ba34380a216a2cb2150268538c84480bc69c",
- "/efi/EFI/GRUB/grubx64.efi": "511141419219eeabb86f8f585d9a186094d3a449c9126d667fe8d37bddccb46c"
-}
\ No newline at end of file
diff --git a/root/usr/local/src/dmenu b/root/usr/local/src/dmenu
deleted file mode 160000
index 8d9d74e..0000000
--- a/root/usr/local/src/dmenu
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 8d9d74e056ea918f02dd7d617486da6677f65e19
diff --git a/root/usr/local/src/z.lua b/root/usr/local/src/z.lua
deleted file mode 160000
index a3d4f5d..0000000
--- a/root/usr/local/src/z.lua
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit a3d4f5db684ed6dfd3041e73d1d761f5fe944179
diff --git a/root/usr/share/libalpm/hooks/paccache.hook.bak b/root/usr/share/libalpm/hooks/paccache.hook.bak
deleted file mode 100644
index 53f1439..0000000
--- a/root/usr/share/libalpm/hooks/paccache.hook.bak
+++ /dev/null
@@ -1,15 +0,0 @@
-# Pacman hook to automatically run paccache -r with pacman
-# This hook is disabled by default, it can be enabled by
-# renaming this file from paccache.hook.bak to paccache.hook
-
-[Trigger]
-Operation = Upgrade
-Operation = Install
-Operation = Remove
-Type = Package
-Target = *
-
-[Action]
-Description = Cleaning pacman cache with paccache ...
-When = PostTransaction
-Exec = /usr/bin/paccache -r
diff --git a/root/usr/share/libalpm/hooks/xmonad-recompile.hook b/root/usr/share/libalpm/hooks/xmonad-recompile.hook
deleted file mode 100644
index a90b68a..0000000
--- a/root/usr/share/libalpm/hooks/xmonad-recompile.hook
+++ /dev/null
@@ -1,15 +0,0 @@
-# Pacman hook to automatically recompile xmonad if it or any of it's dependencies were updated
-
-[Trigger]
-Operation = Upgrade
-Operation = Install
-Type = Package
-Target = xmonad*
-Target = haskell*
-
-[Action]
-Description = Recompiling Xmonad after package update...
-When = PostTransaction
-Depends = coreutils
-Depends = xmonad
-Exec = /usr/bin/bash -euc "command -v xmonad > /dev/null || exit 0; find /home -mindepth 1 -maxdepth 1 -type d -printf '%P\0' | xargs -0I'{}' su '{}' -c 'xmonad --recompile || true'"
diff --git a/root/usr/share/xsessions/dwm.desktop b/root/usr/share/xsessions/dwm.desktop
deleted file mode 100644
index 4054ca0..0000000
--- a/root/usr/share/xsessions/dwm.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-# DWM doesn't automatically make a .desktop entry
-# so it needs to be manually added for other DMs
-# to recognize it and be able to log in with it
-[Desktop Entry]
-Encoding=UTF-8
-Name=Dwm
-Comment=Dynamic Window Manager
-Exec=dwm
-Icon=dwm
-Type=XSession
diff --git a/root/usr/share/xsessions/xmonad.desktop b/root/usr/share/xsessions/xmonad.desktop
deleted file mode 100644
index 0198fb1..0000000
--- a/root/usr/share/xsessions/xmonad.desktop
+++ /dev/null
@@ -1,12 +0,0 @@
-[Desktop Entry]
-Type=Application
-Encoding=UTF-8
-Name=xmonad
-Comment=A lightweight window manager
-Exec=/etc/X11/Sessions/xmonad
-TryExec=xmonad
-Icon=
-X-GNOME-WMName=Xmonad
-X-GNOME-Autostart-Phase=WindowManager
-X-GNOME-Provides=windowmanager
-X-GNOME-Autostart-Notify=false
diff --git a/root/usr/share/zsh/site-functions/zsh-autosuggestions b/root/usr/share/zsh/site-functions/zsh-autosuggestions
deleted file mode 160000
index a411ef3..0000000
--- a/root/usr/share/zsh/site-functions/zsh-autosuggestions
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit a411ef3e0992d4839f0732ebeb9823024afaaaa8
diff --git a/root/usr/share/zsh/site-functions/zsh-syntax-highlighting b/root/usr/share/zsh/site-functions/zsh-syntax-highlighting
deleted file mode 160000
index dffe304..0000000
--- a/root/usr/share/zsh/site-functions/zsh-syntax-highlighting
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit dffe304567c86f06bf1be0fce200077504e79783
diff --git a/root/usr/src/linux/.config b/root/usr/src/linux/.config
deleted file mode 100644
index be77e4f..0000000
--- a/root/usr/src/linux/.config
+++ /dev/null
@@ -1,4789 +0,0 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# Linux/x86 5.13.6-gentoo Kernel Configuration
-#
-CONFIG_CC_VERSION_TEXT="gcc (Gentoo Hardened 10.3.0-r2 p3) 10.3.0"
-CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=100300
-CONFIG_CLANG_VERSION=0
-CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23502
-CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23502
-CONFIG_LLD_VERSION=0
-CONFIG_CC_CAN_LINK=y
-CONFIG_CC_CAN_LINK_STATIC=y
-CONFIG_CC_HAS_ASM_GOTO=y
-CONFIG_CC_HAS_ASM_INLINE=y
-CONFIG_IRQ_WORK=y
-CONFIG_BUILDTIME_TABLE_SORT=y
-CONFIG_THREAD_INFO_IN_TASK=y
-
-#
-# General setup
-#
-CONFIG_INIT_ENV_ARG_LIMIT=32
-# CONFIG_COMPILE_TEST is not set
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_BUILD_SALT=""
-CONFIG_HAVE_KERNEL_GZIP=y
-CONFIG_HAVE_KERNEL_BZIP2=y
-CONFIG_HAVE_KERNEL_LZMA=y
-CONFIG_HAVE_KERNEL_XZ=y
-CONFIG_HAVE_KERNEL_LZO=y
-CONFIG_HAVE_KERNEL_LZ4=y
-CONFIG_HAVE_KERNEL_ZSTD=y
-# CONFIG_KERNEL_GZIP is not set
-# CONFIG_KERNEL_BZIP2 is not set
-# CONFIG_KERNEL_LZMA is not set
-# CONFIG_KERNEL_XZ is not set
-# CONFIG_KERNEL_LZO is not set
-CONFIG_KERNEL_LZ4=y
-# CONFIG_KERNEL_ZSTD is not set
-CONFIG_DEFAULT_INIT=""
-CONFIG_DEFAULT_HOSTNAME="(none)"
-CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-CONFIG_SYSVIPC_SYSCTL=y
-CONFIG_POSIX_MQUEUE=y
-CONFIG_POSIX_MQUEUE_SYSCTL=y
-# CONFIG_WATCH_QUEUE is not set
-CONFIG_CROSS_MEMORY_ATTACH=y
-# CONFIG_USELIB is not set
-CONFIG_AUDIT=y
-CONFIG_HAVE_ARCH_AUDITSYSCALL=y
-CONFIG_AUDITSYSCALL=y
-
-#
-# IRQ subsystem
-#
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_GENERIC_IRQ_SHOW=y
-CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
-CONFIG_GENERIC_PENDING_IRQ=y
-CONFIG_GENERIC_IRQ_MIGRATION=y
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_IRQ_DOMAIN=y
-CONFIG_IRQ_DOMAIN_HIERARCHY=y
-CONFIG_GENERIC_MSI_IRQ=y
-CONFIG_GENERIC_MSI_IRQ_DOMAIN=y
-CONFIG_IRQ_MSI_IOMMU=y
-CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y
-CONFIG_GENERIC_IRQ_RESERVATION_MODE=y
-CONFIG_IRQ_FORCED_THREADING=y
-CONFIG_SPARSE_IRQ=y
-# CONFIG_GENERIC_IRQ_DEBUGFS is not set
-# end of IRQ subsystem
-
-CONFIG_CLOCKSOURCE_WATCHDOG=y
-CONFIG_ARCH_CLOCKSOURCE_INIT=y
-CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y
-CONFIG_GENERIC_TIME_VSYSCALL=y
-CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
-CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
-CONFIG_GENERIC_CMOS_UPDATE=y
-CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
-CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
-
-#
-# Timers subsystem
-#
-CONFIG_TICK_ONESHOT=y
-CONFIG_NO_HZ_COMMON=y
-# CONFIG_HZ_PERIODIC is not set
-CONFIG_NO_HZ_IDLE=y
-# CONFIG_NO_HZ_FULL is not set
-CONFIG_NO_HZ=y
-CONFIG_HIGH_RES_TIMERS=y
-# end of Timers subsystem
-
-CONFIG_BPF=y
-CONFIG_HAVE_EBPF_JIT=y
-CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
-
-#
-# BPF subsystem
-#
-# CONFIG_BPF_SYSCALL is not set
-# CONFIG_BPF_JIT is not set
-# end of BPF subsystem
-
-# CONFIG_PREEMPT_NONE is not set
-CONFIG_PREEMPT_VOLUNTARY=y
-# CONFIG_PREEMPT is not set
-
-#
-# CPU/Task time and stats accounting
-#
-CONFIG_TICK_CPU_ACCOUNTING=y
-# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
-# CONFIG_IRQ_TIME_ACCOUNTING is not set
-CONFIG_BSD_PROCESS_ACCT=y
-# CONFIG_BSD_PROCESS_ACCT_V3 is not set
-CONFIG_TASKSTATS=y
-CONFIG_TASK_DELAY_ACCT=y
-CONFIG_TASK_XACCT=y
-CONFIG_TASK_IO_ACCOUNTING=y
-# CONFIG_PSI is not set
-# end of CPU/Task time and stats accounting
-
-CONFIG_CPU_ISOLATION=y
-
-#
-# RCU Subsystem
-#
-CONFIG_TREE_RCU=y
-# CONFIG_RCU_EXPERT is not set
-CONFIG_SRCU=y
-CONFIG_TREE_SRCU=y
-CONFIG_RCU_STALL_COMMON=y
-CONFIG_RCU_NEED_SEGCBLIST=y
-# end of RCU Subsystem
-
-CONFIG_IKCONFIG=y
-CONFIG_IKCONFIG_PROC=y
-# CONFIG_IKHEADERS is not set
-CONFIG_LOG_BUF_SHIFT=15
-CONFIG_LOG_CPU_MAX_BUF_SHIFT=15
-CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
-CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
-
-#
-# Scheduler features
-#
-# CONFIG_UCLAMP_TASK is not set
-# end of Scheduler features
-
-CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
-CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
-CONFIG_CC_HAS_INT128=y
-CONFIG_ARCH_SUPPORTS_INT128=y
-# CONFIG_NUMA_BALANCING is not set
-CONFIG_CGROUPS=y
-CONFIG_PAGE_COUNTER=y
-CONFIG_MEMCG=y
-CONFIG_MEMCG_SWAP=y
-CONFIG_MEMCG_KMEM=y
-CONFIG_BLK_CGROUP=y
-CONFIG_CGROUP_WRITEBACK=y
-CONFIG_CGROUP_SCHED=y
-CONFIG_FAIR_GROUP_SCHED=y
-CONFIG_CFS_BANDWIDTH=y
-# CONFIG_RT_GROUP_SCHED is not set
-CONFIG_CGROUP_PIDS=y
-# CONFIG_CGROUP_RDMA is not set
-CONFIG_CGROUP_FREEZER=y
-CONFIG_CGROUP_HUGETLB=y
-CONFIG_CPUSETS=y
-CONFIG_PROC_PID_CPUSET=y
-CONFIG_CGROUP_DEVICE=y
-CONFIG_CGROUP_CPUACCT=y
-CONFIG_CGROUP_PERF=y
-# CONFIG_CGROUP_MISC is not set
-# CONFIG_CGROUP_DEBUG is not set
-CONFIG_SOCK_CGROUP_DATA=y
-CONFIG_NAMESPACES=y
-CONFIG_UTS_NS=y
-CONFIG_TIME_NS=y
-CONFIG_IPC_NS=y
-CONFIG_USER_NS=y
-CONFIG_PID_NS=y
-CONFIG_NET_NS=y
-# CONFIG_CHECKPOINT_RESTORE is not set
-# CONFIG_SCHED_AUTOGROUP is not set
-# CONFIG_SYSFS_DEPRECATED is not set
-CONFIG_RELAY=y
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_INITRAMFS_SOURCE=""
-CONFIG_RD_GZIP=y
-CONFIG_RD_BZIP2=y
-CONFIG_RD_LZMA=y
-CONFIG_RD_XZ=y
-CONFIG_RD_LZO=y
-CONFIG_RD_LZ4=y
-CONFIG_RD_ZSTD=y
-# CONFIG_BOOT_CONFIG is not set
-CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
-# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
-CONFIG_LD_ORPHAN_WARN=y
-CONFIG_SYSCTL=y
-CONFIG_HAVE_UID16=y
-CONFIG_SYSCTL_EXCEPTION_TRACE=y
-CONFIG_HAVE_PCSPKR_PLATFORM=y
-# CONFIG_EXPERT is not set
-CONFIG_UID16=y
-CONFIG_MULTIUSER=y
-CONFIG_SGETMASK_SYSCALL=y
-CONFIG_SYSFS_SYSCALL=y
-CONFIG_FHANDLE=y
-CONFIG_POSIX_TIMERS=y
-CONFIG_PRINTK=y
-CONFIG_PRINTK_NMI=y
-CONFIG_BUG=y
-CONFIG_ELF_CORE=y
-CONFIG_PCSPKR_PLATFORM=y
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_FUTEX_PI=y
-CONFIG_EPOLL=y
-CONFIG_SIGNALFD=y
-CONFIG_TIMERFD=y
-CONFIG_EVENTFD=y
-CONFIG_SHMEM=y
-CONFIG_AIO=y
-CONFIG_IO_URING=y
-CONFIG_ADVISE_SYSCALLS=y
-CONFIG_MEMBARRIER=y
-CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_ALL is not set
-CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y
-CONFIG_KALLSYMS_BASE_RELATIVE=y
-# CONFIG_USERFAULTFD is not set
-CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
-CONFIG_KCMP=y
-CONFIG_RSEQ=y
-# CONFIG_EMBEDDED is not set
-CONFIG_HAVE_PERF_EVENTS=y
-
-#
-# Kernel Performance Events And Counters
-#
-CONFIG_PERF_EVENTS=y
-# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
-# end of Kernel Performance Events And Counters
-
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_SLUB_DEBUG=y
-# CONFIG_COMPAT_BRK is not set
-# CONFIG_SLAB is not set
-CONFIG_SLUB=y
-CONFIG_SLAB_MERGE_DEFAULT=y
-# CONFIG_SLAB_FREELIST_RANDOM is not set
-# CONFIG_SLAB_FREELIST_HARDENED is not set
-# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set
-CONFIG_SLUB_CPU_PARTIAL=y
-CONFIG_SYSTEM_DATA_VERIFICATION=y
-CONFIG_PROFILING=y
-CONFIG_TRACEPOINTS=y
-# end of General setup
-
-CONFIG_64BIT=y
-CONFIG_X86_64=y
-CONFIG_X86=y
-CONFIG_INSTRUCTION_DECODER=y
-CONFIG_OUTPUT_FORMAT="elf64-x86-64"
-CONFIG_LOCKDEP_SUPPORT=y
-CONFIG_STACKTRACE_SUPPORT=y
-CONFIG_MMU=y
-CONFIG_ARCH_MMAP_RND_BITS_MIN=28
-CONFIG_ARCH_MMAP_RND_BITS_MAX=32
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16
-CONFIG_GENERIC_ISA_DMA=y
-CONFIG_GENERIC_BUG=y
-CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
-CONFIG_ARCH_MAY_HAVE_PC_FDC=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_ARCH_HAS_CPU_RELAX=y
-CONFIG_ARCH_HAS_FILTER_PGPROT=y
-CONFIG_HAVE_SETUP_PER_CPU_AREA=y
-CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
-CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
-CONFIG_ARCH_HIBERNATION_POSSIBLE=y
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
-CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
-CONFIG_ZONE_DMA32=y
-CONFIG_AUDIT_ARCH=y
-CONFIG_HAVE_INTEL_TXT=y
-CONFIG_X86_64_SMP=y
-CONFIG_ARCH_SUPPORTS_UPROBES=y
-CONFIG_FIX_EARLYCON_MEM=y
-CONFIG_PGTABLE_LEVELS=4
-CONFIG_CC_HAS_SANE_STACKPROTECTOR=y
-
-#
-# Processor type and features
-#
-CONFIG_ZONE_DMA=y
-CONFIG_SMP=y
-CONFIG_X86_FEATURE_NAMES=y
-# CONFIG_X86_MPPARSE is not set
-# CONFIG_GOLDFISH is not set
-CONFIG_RETPOLINE=y
-# CONFIG_X86_CPU_RESCTRL is not set
-# CONFIG_X86_EXTENDED_PLATFORM is not set
-# CONFIG_X86_INTEL_LPSS is not set
-# CONFIG_X86_AMD_PLATFORM_DEVICE is not set
-CONFIG_IOSF_MBI=y
-# CONFIG_IOSF_MBI_DEBUG is not set
-CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
-CONFIG_SCHED_OMIT_FRAME_POINTER=y
-# CONFIG_HYPERVISOR_GUEST is not set
-# CONFIG_MK8 is not set
-# CONFIG_MPSC is not set
-CONFIG_MCORE2=y
-# CONFIG_MATOM is not set
-# CONFIG_GENERIC_CPU is not set
-CONFIG_X86_INTERNODE_CACHE_SHIFT=6
-CONFIG_X86_L1_CACHE_SHIFT=6
-CONFIG_X86_INTEL_USERCOPY=y
-CONFIG_X86_USE_PPRO_CHECKSUM=y
-CONFIG_X86_P6_NOP=y
-CONFIG_X86_TSC=y
-CONFIG_X86_CMPXCHG64=y
-CONFIG_X86_CMOV=y
-CONFIG_X86_MINIMUM_CPU_FAMILY=64
-CONFIG_X86_DEBUGCTLMSR=y
-CONFIG_IA32_FEAT_CTL=y
-CONFIG_X86_VMX_FEATURE_NAMES=y
-CONFIG_CPU_SUP_INTEL=y
-CONFIG_CPU_SUP_AMD=y
-CONFIG_CPU_SUP_HYGON=y
-CONFIG_CPU_SUP_CENTAUR=y
-CONFIG_CPU_SUP_ZHAOXIN=y
-CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
-CONFIG_DMI=y
-# CONFIG_GART_IOMMU is not set
-# CONFIG_MAXSMP is not set
-CONFIG_NR_CPUS_RANGE_BEGIN=2
-CONFIG_NR_CPUS_RANGE_END=512
-CONFIG_NR_CPUS_DEFAULT=64
-CONFIG_NR_CPUS=8
-CONFIG_SCHED_SMT=y
-# CONFIG_SCHED_MC is not set
-CONFIG_X86_LOCAL_APIC=y
-CONFIG_X86_IO_APIC=y
-# CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set
-CONFIG_X86_MCE=y
-# CONFIG_X86_MCELOG_LEGACY is not set
-CONFIG_X86_MCE_INTEL=y
-# CONFIG_X86_MCE_AMD is not set
-CONFIG_X86_MCE_THRESHOLD=y
-# CONFIG_X86_MCE_INJECT is not set
-
-#
-# Performance monitoring
-#
-CONFIG_PERF_EVENTS_INTEL_UNCORE=y
-CONFIG_PERF_EVENTS_INTEL_RAPL=y
-CONFIG_PERF_EVENTS_INTEL_CSTATE=y
-# CONFIG_PERF_EVENTS_AMD_POWER is not set
-# end of Performance monitoring
-
-CONFIG_X86_16BIT=y
-CONFIG_X86_ESPFIX64=y
-CONFIG_X86_VSYSCALL_EMULATION=y
-# CONFIG_X86_IOPL_IOPERM is not set
-# CONFIG_I8K is not set
-CONFIG_MICROCODE=y
-CONFIG_MICROCODE_INTEL=y
-# CONFIG_MICROCODE_AMD is not set
-# CONFIG_MICROCODE_OLD_INTERFACE is not set
-CONFIG_X86_MSR=y
-CONFIG_X86_CPUID=y
-# CONFIG_X86_5LEVEL is not set
-CONFIG_X86_DIRECT_GBPAGES=y
-# CONFIG_X86_CPA_STATISTICS is not set
-# CONFIG_AMD_MEM_ENCRYPT is not set
-CONFIG_NUMA=y
-CONFIG_AMD_NUMA=y
-CONFIG_X86_64_ACPI_NUMA=y
-# CONFIG_NUMA_EMU is not set
-CONFIG_NODES_SHIFT=6
-CONFIG_ARCH_SPARSEMEM_ENABLE=y
-CONFIG_ARCH_SPARSEMEM_DEFAULT=y
-CONFIG_ARCH_SELECT_MEMORY_MODEL=y
-CONFIG_ARCH_PROC_KCORE_TEXT=y
-CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
-# CONFIG_X86_PMEM_LEGACY is not set
-# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set
-CONFIG_X86_RESERVE_LOW=64
-CONFIG_MTRR=y
-CONFIG_MTRR_SANITIZER=y
-CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1
-CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
-CONFIG_X86_PAT=y
-CONFIG_ARCH_USES_PG_UNCACHED=y
-CONFIG_ARCH_RANDOM=y
-CONFIG_X86_SMAP=y
-CONFIG_X86_UMIP=y
-CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y
-CONFIG_X86_INTEL_TSX_MODE_OFF=y
-# CONFIG_X86_INTEL_TSX_MODE_ON is not set
-# CONFIG_X86_INTEL_TSX_MODE_AUTO is not set
-# CONFIG_X86_SGX is not set
-CONFIG_EFI=y
-CONFIG_EFI_STUB=y
-CONFIG_EFI_MIXED=y
-# CONFIG_HZ_100 is not set
-# CONFIG_HZ_250 is not set
-# CONFIG_HZ_300 is not set
-CONFIG_HZ_1000=y
-CONFIG_HZ=1000
-CONFIG_SCHED_HRTICK=y
-CONFIG_KEXEC=y
-# CONFIG_KEXEC_FILE is not set
-CONFIG_CRASH_DUMP=y
-# CONFIG_KEXEC_JUMP is not set
-CONFIG_PHYSICAL_START=0x1000000
-CONFIG_RELOCATABLE=y
-CONFIG_RANDOMIZE_BASE=y
-CONFIG_X86_NEED_RELOCS=y
-CONFIG_PHYSICAL_ALIGN=0x200000
-CONFIG_DYNAMIC_MEMORY_LAYOUT=y
-CONFIG_RANDOMIZE_MEMORY=y
-CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0x0
-CONFIG_HOTPLUG_CPU=y
-# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
-# CONFIG_DEBUG_HOTPLUG_CPU0 is not set
-# CONFIG_COMPAT_VDSO is not set
-# CONFIG_LEGACY_VSYSCALL_EMULATE is not set
-CONFIG_LEGACY_VSYSCALL_XONLY=y
-# CONFIG_LEGACY_VSYSCALL_NONE is not set
-# CONFIG_CMDLINE_BOOL is not set
-CONFIG_MODIFY_LDT_SYSCALL=y
-CONFIG_HAVE_LIVEPATCH=y
-# end of Processor type and features
-
-CONFIG_ARCH_HAS_ADD_PAGES=y
-CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
-CONFIG_USE_PERCPU_NUMA_NODE_ID=y
-
-#
-# Power management and ACPI options
-#
-CONFIG_ARCH_HIBERNATION_HEADER=y
-CONFIG_SUSPEND=y
-CONFIG_SUSPEND_FREEZER=y
-CONFIG_HIBERNATE_CALLBACKS=y
-CONFIG_HIBERNATION=y
-CONFIG_HIBERNATION_SNAPSHOT_DEV=y
-CONFIG_PM_STD_PARTITION=""
-CONFIG_PM_SLEEP=y
-CONFIG_PM_SLEEP_SMP=y
-# CONFIG_PM_AUTOSLEEP is not set
-# CONFIG_PM_WAKELOCKS is not set
-CONFIG_PM=y
-CONFIG_PM_DEBUG=y
-# CONFIG_PM_ADVANCED_DEBUG is not set
-# CONFIG_PM_TEST_SUSPEND is not set
-CONFIG_PM_SLEEP_DEBUG=y
-CONFIG_PM_TRACE=y
-CONFIG_PM_TRACE_RTC=y
-CONFIG_PM_CLK=y
-# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
-# CONFIG_ENERGY_MODEL is not set
-CONFIG_ARCH_SUPPORTS_ACPI=y
-CONFIG_ACPI=y
-CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y
-CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y
-CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y
-# CONFIG_ACPI_DEBUGGER is not set
-CONFIG_ACPI_SPCR_TABLE=y
-# CONFIG_ACPI_FPDT is not set
-CONFIG_ACPI_LPIT=y
-CONFIG_ACPI_SLEEP=y
-CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
-# CONFIG_ACPI_EC_DEBUGFS is not set
-CONFIG_ACPI_AC=y
-CONFIG_ACPI_BATTERY=y
-CONFIG_ACPI_BUTTON=y
-CONFIG_ACPI_VIDEO=y
-CONFIG_ACPI_FAN=y
-# CONFIG_ACPI_TAD is not set
-CONFIG_ACPI_DOCK=y
-CONFIG_ACPI_CPU_FREQ_PSS=y
-CONFIG_ACPI_PROCESSOR_CSTATE=y
-CONFIG_ACPI_PROCESSOR_IDLE=y
-CONFIG_ACPI_PROCESSOR=y
-CONFIG_ACPI_HOTPLUG_CPU=y
-# CONFIG_ACPI_PROCESSOR_AGGREGATOR is not set
-CONFIG_ACPI_THERMAL=y
-CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
-CONFIG_ACPI_TABLE_UPGRADE=y
-# CONFIG_ACPI_DEBUG is not set
-# CONFIG_ACPI_PCI_SLOT is not set
-CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_HOTPLUG_IOAPIC=y
-# CONFIG_ACPI_SBS is not set
-# CONFIG_ACPI_HED is not set
-# CONFIG_ACPI_CUSTOM_METHOD is not set
-CONFIG_ACPI_BGRT=y
-# CONFIG_ACPI_NFIT is not set
-CONFIG_ACPI_NUMA=y
-# CONFIG_ACPI_HMAT is not set
-CONFIG_HAVE_ACPI_APEI=y
-CONFIG_HAVE_ACPI_APEI_NMI=y
-# CONFIG_ACPI_APEI is not set
-# CONFIG_ACPI_DPTF is not set
-# CONFIG_ACPI_CONFIGFS is not set
-# CONFIG_PMIC_OPREGION is not set
-CONFIG_X86_PM_TIMER=y
-
-#
-# CPU Frequency scaling
-#
-CONFIG_CPU_FREQ=y
-CONFIG_CPU_FREQ_GOV_ATTR_SET=y
-CONFIG_CPU_FREQ_GOV_COMMON=y
-# CONFIG_CPU_FREQ_STAT is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
-CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
-# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
-CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-CONFIG_CPU_FREQ_GOV_POWERSAVE=y
-# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
-CONFIG_CPU_FREQ_GOV_ONDEMAND=y
-# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
-CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
-
-#
-# CPU frequency scaling drivers
-#
-# CONFIG_X86_INTEL_PSTATE is not set
-# CONFIG_X86_PCC_CPUFREQ is not set
-# CONFIG_X86_ACPI_CPUFREQ is not set
-# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
-# CONFIG_X86_P4_CLOCKMOD is not set
-
-#
-# shared options
-#
-# end of CPU Frequency scaling
-
-#
-# CPU Idle
-#
-CONFIG_CPU_IDLE=y
-# CONFIG_CPU_IDLE_GOV_LADDER is not set
-CONFIG_CPU_IDLE_GOV_MENU=y
-# CONFIG_CPU_IDLE_GOV_TEO is not set
-# end of CPU Idle
-
-CONFIG_INTEL_IDLE=y
-# end of Power management and ACPI options
-
-#
-# Bus options (PCI etc.)
-#
-CONFIG_PCI_DIRECT=y
-CONFIG_PCI_MMCONFIG=y
-CONFIG_MMCONF_FAM10H=y
-CONFIG_ISA_DMA_API=y
-CONFIG_AMD_NB=y
-# CONFIG_X86_SYSFB is not set
-# end of Bus options (PCI etc.)
-
-#
-# Binary Emulations
-#
-CONFIG_IA32_EMULATION=y
-# CONFIG_X86_X32 is not set
-CONFIG_COMPAT_32=y
-CONFIG_COMPAT=y
-CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
-CONFIG_SYSVIPC_COMPAT=y
-# end of Binary Emulations
-
-#
-# Firmware Drivers
-#
-# CONFIG_EDD is not set
-CONFIG_FIRMWARE_MEMMAP=y
-CONFIG_DMIID=y
-# CONFIG_DMI_SYSFS is not set
-CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y
-# CONFIG_FW_CFG_SYSFS is not set
-# CONFIG_GOOGLE_FIRMWARE is not set
-
-#
-# EFI (Extensible Firmware Interface) Support
-#
-CONFIG_EFI_VARS=y
-CONFIG_EFI_ESRT=y
-CONFIG_EFI_RUNTIME_MAP=y
-# CONFIG_EFI_FAKE_MEMMAP is not set
-CONFIG_EFI_RUNTIME_WRAPPERS=y
-CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y
-# CONFIG_EFI_BOOTLOADER_CONTROL is not set
-# CONFIG_EFI_CAPSULE_LOADER is not set
-# CONFIG_EFI_TEST is not set
-# CONFIG_APPLE_PROPERTIES is not set
-# CONFIG_RESET_ATTACK_MITIGATION is not set
-# CONFIG_EFI_RCI2_TABLE is not set
-# CONFIG_EFI_DISABLE_PCI_DMA is not set
-# end of EFI (Extensible Firmware Interface) Support
-
-CONFIG_EFI_EARLYCON=y
-CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y
-
-#
-# Tegra firmware driver
-#
-# end of Tegra firmware driver
-# end of Firmware Drivers
-
-CONFIG_HAVE_KVM=y
-CONFIG_HAVE_KVM_IRQCHIP=y
-CONFIG_HAVE_KVM_IRQFD=y
-CONFIG_HAVE_KVM_IRQ_ROUTING=y
-CONFIG_HAVE_KVM_EVENTFD=y
-CONFIG_KVM_MMIO=y
-CONFIG_KVM_ASYNC_PF=y
-CONFIG_HAVE_KVM_MSI=y
-CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
-CONFIG_KVM_VFIO=y
-CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
-CONFIG_KVM_COMPAT=y
-CONFIG_HAVE_KVM_IRQ_BYPASS=y
-CONFIG_HAVE_KVM_NO_POLL=y
-CONFIG_KVM_XFER_TO_GUEST_WORK=y
-CONFIG_VIRTUALIZATION=y
-CONFIG_KVM=y
-CONFIG_KVM_INTEL=y
-# CONFIG_KVM_AMD is not set
-# CONFIG_KVM_XEN is not set
-# CONFIG_KVM_MMU_AUDIT is not set
-CONFIG_AS_AVX512=y
-CONFIG_AS_SHA1_NI=y
-CONFIG_AS_SHA256_NI=y
-CONFIG_AS_TPAUSE=y
-
-#
-# General architecture-dependent options
-#
-CONFIG_CRASH_CORE=y
-CONFIG_KEXEC_CORE=y
-CONFIG_HOTPLUG_SMT=y
-CONFIG_GENERIC_ENTRY=y
-CONFIG_KPROBES=y
-CONFIG_JUMP_LABEL=y
-# CONFIG_STATIC_KEYS_SELFTEST is not set
-# CONFIG_STATIC_CALL_SELFTEST is not set
-CONFIG_OPTPROBES=y
-CONFIG_UPROBES=y
-CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
-CONFIG_ARCH_USE_BUILTIN_BSWAP=y
-CONFIG_KRETPROBES=y
-CONFIG_USER_RETURN_NOTIFIER=y
-CONFIG_HAVE_IOREMAP_PROT=y
-CONFIG_HAVE_KPROBES=y
-CONFIG_HAVE_KRETPROBES=y
-CONFIG_HAVE_OPTPROBES=y
-CONFIG_HAVE_KPROBES_ON_FTRACE=y
-CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
-CONFIG_HAVE_NMI=y
-CONFIG_HAVE_ARCH_TRACEHOOK=y
-CONFIG_HAVE_DMA_CONTIGUOUS=y
-CONFIG_GENERIC_SMP_IDLE_THREAD=y
-CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
-CONFIG_ARCH_HAS_SET_MEMORY=y
-CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
-CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
-CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y
-CONFIG_HAVE_ASM_MODVERSIONS=y
-CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
-CONFIG_HAVE_RSEQ=y
-CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
-CONFIG_HAVE_HW_BREAKPOINT=y
-CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
-CONFIG_HAVE_USER_RETURN_NOTIFIER=y
-CONFIG_HAVE_PERF_EVENTS_NMI=y
-CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y
-CONFIG_HAVE_PERF_REGS=y
-CONFIG_HAVE_PERF_USER_STACK_DUMP=y
-CONFIG_HAVE_ARCH_JUMP_LABEL=y
-CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
-CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
-CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
-CONFIG_HAVE_CMPXCHG_LOCAL=y
-CONFIG_HAVE_CMPXCHG_DOUBLE=y
-CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
-CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y
-CONFIG_HAVE_ARCH_SECCOMP=y
-CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
-CONFIG_SECCOMP=y
-CONFIG_SECCOMP_FILTER=y
-# CONFIG_SECCOMP_CACHE_DEBUG is not set
-CONFIG_HAVE_ARCH_STACKLEAK=y
-CONFIG_HAVE_STACKPROTECTOR=y
-CONFIG_STACKPROTECTOR=y
-CONFIG_STACKPROTECTOR_STRONG=y
-CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
-CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
-CONFIG_LTO_NONE=y
-CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y
-CONFIG_HAVE_CONTEXT_TRACKING=y
-CONFIG_HAVE_CONTEXT_TRACKING_OFFSTACK=y
-CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
-CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
-CONFIG_HAVE_MOVE_PUD=y
-CONFIG_HAVE_MOVE_PMD=y
-CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
-CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y
-CONFIG_HAVE_ARCH_HUGE_VMAP=y
-CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
-CONFIG_HAVE_ARCH_SOFT_DIRTY=y
-CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
-CONFIG_MODULES_USE_ELF_RELA=y
-CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y
-CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y
-CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
-CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
-CONFIG_HAVE_EXIT_THREAD=y
-CONFIG_ARCH_MMAP_RND_BITS=28
-CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
-CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8
-CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y
-CONFIG_HAVE_STACK_VALIDATION=y
-CONFIG_HAVE_RELIABLE_STACKTRACE=y
-CONFIG_OLD_SIGSUSPEND3=y
-CONFIG_COMPAT_OLD_SIGACTION=y
-CONFIG_COMPAT_32BIT_TIME=y
-CONFIG_HAVE_ARCH_VMAP_STACK=y
-CONFIG_VMAP_STACK=y
-CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
-# CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set
-CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
-CONFIG_STRICT_KERNEL_RWX=y
-CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
-CONFIG_STRICT_MODULE_RWX=y
-CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
-CONFIG_ARCH_USE_MEMREMAP_PROT=y
-# CONFIG_LOCK_EVENT_COUNTS is not set
-CONFIG_ARCH_HAS_MEM_ENCRYPT=y
-CONFIG_HAVE_STATIC_CALL=y
-CONFIG_HAVE_STATIC_CALL_INLINE=y
-CONFIG_HAVE_PREEMPT_DYNAMIC=y
-CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
-CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
-CONFIG_ARCH_HAS_ELFCORE_COMPAT=y
-
-#
-# GCOV-based kernel profiling
-#
-# CONFIG_GCOV_KERNEL is not set
-CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
-# end of GCOV-based kernel profiling
-
-CONFIG_HAVE_GCC_PLUGINS=y
-CONFIG_GCC_PLUGINS=y
-# CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set
-# CONFIG_GCC_PLUGIN_RANDSTRUCT is not set
-# end of General architecture-dependent options
-
-CONFIG_RT_MUTEXES=y
-CONFIG_BASE_SMALL=0
-CONFIG_MODULES=y
-# CONFIG_MODULE_FORCE_LOAD is not set
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-# CONFIG_MODULE_SIG is not set
-CONFIG_MODULE_COMPRESS_NONE=y
-# CONFIG_MODULE_COMPRESS_GZIP is not set
-# CONFIG_MODULE_COMPRESS_XZ is not set
-# CONFIG_MODULE_COMPRESS_ZSTD is not set
-# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
-CONFIG_MODPROBE_PATH="/sbin/modprobe"
-CONFIG_MODULES_TREE_LOOKUP=y
-CONFIG_BLOCK=y
-CONFIG_BLK_SCSI_REQUEST=y
-CONFIG_BLK_CGROUP_RWSTAT=y
-CONFIG_BLK_DEV_BSG=y
-# CONFIG_BLK_DEV_BSGLIB is not set
-# CONFIG_BLK_DEV_INTEGRITY is not set
-# CONFIG_BLK_DEV_ZONED is not set
-CONFIG_BLK_DEV_THROTTLING=y
-# CONFIG_BLK_DEV_THROTTLING_LOW is not set
-# CONFIG_BLK_CMDLINE_PARSER is not set
-# CONFIG_BLK_WBT is not set
-# CONFIG_BLK_CGROUP_IOLATENCY is not set
-# CONFIG_BLK_CGROUP_IOCOST is not set
-# CONFIG_BLK_DEBUG_FS is not set
-# CONFIG_BLK_SED_OPAL is not set
-# CONFIG_BLK_INLINE_ENCRYPTION is not set
-
-#
-# Partition Types
-#
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_ACORN_PARTITION is not set
-# CONFIG_AIX_PARTITION is not set
-# CONFIG_OSF_PARTITION is not set
-# CONFIG_AMIGA_PARTITION is not set
-# CONFIG_ATARI_PARTITION is not set
-# CONFIG_MAC_PARTITION is not set
-CONFIG_MSDOS_PARTITION=y
-# CONFIG_BSD_DISKLABEL is not set
-# CONFIG_MINIX_SUBPARTITION is not set
-# CONFIG_SOLARIS_X86_PARTITION is not set
-# CONFIG_UNIXWARE_DISKLABEL is not set
-# CONFIG_LDM_PARTITION is not set
-# CONFIG_SGI_PARTITION is not set
-# CONFIG_ULTRIX_PARTITION is not set
-# CONFIG_SUN_PARTITION is not set
-# CONFIG_KARMA_PARTITION is not set
-CONFIG_EFI_PARTITION=y
-# CONFIG_SYSV68_PARTITION is not set
-# CONFIG_CMDLINE_PARTITION is not set
-# end of Partition Types
-
-CONFIG_BLOCK_COMPAT=y
-CONFIG_BLK_MQ_PCI=y
-CONFIG_BLK_PM=y
-
-#
-# IO Schedulers
-#
-# CONFIG_MQ_IOSCHED_DEADLINE is not set
-# CONFIG_MQ_IOSCHED_KYBER is not set
-CONFIG_IOSCHED_BFQ=y
-# CONFIG_BFQ_GROUP_IOSCHED is not set
-# end of IO Schedulers
-
-CONFIG_PREEMPT_NOTIFIERS=y
-CONFIG_ASN1=y
-CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
-CONFIG_INLINE_READ_UNLOCK=y
-CONFIG_INLINE_READ_UNLOCK_IRQ=y
-CONFIG_INLINE_WRITE_UNLOCK=y
-CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
-CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
-CONFIG_MUTEX_SPIN_ON_OWNER=y
-CONFIG_RWSEM_SPIN_ON_OWNER=y
-CONFIG_LOCK_SPIN_ON_OWNER=y
-CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
-CONFIG_QUEUED_SPINLOCKS=y
-CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
-CONFIG_QUEUED_RWLOCKS=y
-CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y
-CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y
-CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
-CONFIG_FREEZER=y
-
-#
-# Executable file formats
-#
-CONFIG_BINFMT_ELF=y
-CONFIG_COMPAT_BINFMT_ELF=y
-CONFIG_ELFCORE=y
-CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
-CONFIG_BINFMT_SCRIPT=y
-CONFIG_BINFMT_MISC=y
-CONFIG_COREDUMP=y
-# end of Executable file formats
-
-#
-# Memory Management options
-#
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_SPARSEMEM_MANUAL=y
-CONFIG_SPARSEMEM=y
-CONFIG_NEED_MULTIPLE_NODES=y
-CONFIG_SPARSEMEM_EXTREME=y
-CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
-CONFIG_SPARSEMEM_VMEMMAP=y
-CONFIG_HAVE_FAST_GUP=y
-CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
-# CONFIG_MEMORY_HOTPLUG is not set
-CONFIG_SPLIT_PTLOCK_CPUS=4
-CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
-CONFIG_COMPACTION=y
-# CONFIG_PAGE_REPORTING is not set
-CONFIG_MIGRATION=y
-CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y
-CONFIG_PHYS_ADDR_T_64BIT=y
-CONFIG_VIRT_TO_BUS=y
-CONFIG_MMU_NOTIFIER=y
-# CONFIG_KSM is not set
-CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
-CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
-# CONFIG_MEMORY_FAILURE is not set
-# CONFIG_TRANSPARENT_HUGEPAGE is not set
-CONFIG_ARCH_WANTS_THP_SWAP=y
-# CONFIG_CLEANCACHE is not set
-# CONFIG_FRONTSWAP is not set
-# CONFIG_CMA is not set
-# CONFIG_ZPOOL is not set
-# CONFIG_ZBUD is not set
-# CONFIG_ZSMALLOC is not set
-CONFIG_GENERIC_EARLY_IOREMAP=y
-# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_IDLE_PAGE_TRACKING is not set
-CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
-CONFIG_ARCH_HAS_PTE_DEVMAP=y
-CONFIG_VMAP_PFN=y
-CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
-CONFIG_ARCH_HAS_PKEYS=y
-# CONFIG_PERCPU_STATS is not set
-# CONFIG_GUP_TEST is not set
-CONFIG_ARCH_HAS_PTE_SPECIAL=y
-# end of Memory Management options
-
-CONFIG_NET=y
-CONFIG_NET_INGRESS=y
-CONFIG_SKB_EXTENSIONS=y
-
-#
-# Networking options
-#
-CONFIG_PACKET=y
-# CONFIG_PACKET_DIAG is not set
-CONFIG_UNIX=y
-CONFIG_UNIX_SCM=y
-# CONFIG_UNIX_DIAG is not set
-# CONFIG_TLS is not set
-CONFIG_XFRM=y
-CONFIG_XFRM_ALGO=y
-CONFIG_XFRM_USER=y
-# CONFIG_XFRM_USER_COMPAT is not set
-# CONFIG_XFRM_INTERFACE is not set
-# CONFIG_XFRM_SUB_POLICY is not set
-# CONFIG_XFRM_MIGRATE is not set
-# CONFIG_XFRM_STATISTICS is not set
-CONFIG_XFRM_AH=y
-CONFIG_XFRM_ESP=y
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-# CONFIG_IP_FIB_TRIE_STATS is not set
-CONFIG_IP_MULTIPLE_TABLES=y
-CONFIG_IP_ROUTE_MULTIPATH=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_IP_PNP_RARP=y
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE_DEMUX is not set
-CONFIG_NET_IP_TUNNEL=m
-CONFIG_IP_MROUTE_COMMON=y
-CONFIG_IP_MROUTE=y
-# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-CONFIG_SYN_COOKIES=y
-# CONFIG_NET_IPVTI is not set
-CONFIG_NET_UDP_TUNNEL=m
-# CONFIG_NET_FOU is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_DIAG is not set
-CONFIG_TCP_CONG_ADVANCED=y
-# CONFIG_TCP_CONG_BIC is not set
-CONFIG_TCP_CONG_CUBIC=y
-# CONFIG_TCP_CONG_WESTWOOD is not set
-# CONFIG_TCP_CONG_HTCP is not set
-# CONFIG_TCP_CONG_HSTCP is not set
-# CONFIG_TCP_CONG_HYBLA is not set
-# CONFIG_TCP_CONG_VEGAS is not set
-# CONFIG_TCP_CONG_NV is not set
-# CONFIG_TCP_CONG_SCALABLE is not set
-# CONFIG_TCP_CONG_LP is not set
-# CONFIG_TCP_CONG_VENO is not set
-# CONFIG_TCP_CONG_YEAH is not set
-# CONFIG_TCP_CONG_ILLINOIS is not set
-# CONFIG_TCP_CONG_DCTCP is not set
-# CONFIG_TCP_CONG_CDG is not set
-# CONFIG_TCP_CONG_BBR is not set
-CONFIG_DEFAULT_CUBIC=y
-# CONFIG_DEFAULT_RENO is not set
-CONFIG_DEFAULT_TCP_CONG="cubic"
-CONFIG_TCP_MD5SIG=y
-CONFIG_IPV6=y
-# CONFIG_IPV6_ROUTER_PREF is not set
-# CONFIG_IPV6_OPTIMISTIC_DAD is not set
-CONFIG_INET6_AH=y
-CONFIG_INET6_ESP=y
-# CONFIG_INET6_ESP_OFFLOAD is not set
-# CONFIG_INET6_ESPINTCP is not set
-# CONFIG_INET6_IPCOMP is not set
-# CONFIG_IPV6_MIP6 is not set
-# CONFIG_IPV6_ILA is not set
-# CONFIG_IPV6_VTI is not set
-# CONFIG_IPV6_SIT is not set
-# CONFIG_IPV6_TUNNEL is not set
-# CONFIG_IPV6_MULTIPLE_TABLES is not set
-# CONFIG_IPV6_MROUTE is not set
-# CONFIG_IPV6_SEG6_LWTUNNEL is not set
-# CONFIG_IPV6_SEG6_HMAC is not set
-# CONFIG_IPV6_RPL_LWTUNNEL is not set
-CONFIG_NETLABEL=y
-# CONFIG_MPTCP is not set
-# CONFIG_NETWORK_SECMARK is not set
-CONFIG_NET_PTP_CLASSIFY=y
-# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
-CONFIG_NETFILTER=y
-CONFIG_NETFILTER_ADVANCED=y
-CONFIG_BRIDGE_NETFILTER=y
-
-#
-# Core Netfilter Configuration
-#
-CONFIG_NETFILTER_INGRESS=y
-CONFIG_NETFILTER_NETLINK=y
-CONFIG_NETFILTER_FAMILY_BRIDGE=y
-# CONFIG_NETFILTER_NETLINK_ACCT is not set
-# CONFIG_NETFILTER_NETLINK_QUEUE is not set
-CONFIG_NETFILTER_NETLINK_LOG=y
-# CONFIG_NETFILTER_NETLINK_OSF is not set
-CONFIG_NF_CONNTRACK=y
-CONFIG_NF_LOG_SYSLOG=m
-# CONFIG_NF_CONNTRACK_MARK is not set
-# CONFIG_NF_CONNTRACK_ZONES is not set
-CONFIG_NF_CONNTRACK_PROCFS=y
-# CONFIG_NF_CONNTRACK_EVENTS is not set
-# CONFIG_NF_CONNTRACK_TIMEOUT is not set
-# CONFIG_NF_CONNTRACK_TIMESTAMP is not set
-# CONFIG_NF_CONNTRACK_LABELS is not set
-CONFIG_NF_CT_PROTO_DCCP=y
-CONFIG_NF_CT_PROTO_SCTP=y
-CONFIG_NF_CT_PROTO_UDPLITE=y
-# CONFIG_NF_CONNTRACK_AMANDA is not set
-CONFIG_NF_CONNTRACK_FTP=y
-# CONFIG_NF_CONNTRACK_H323 is not set
-CONFIG_NF_CONNTRACK_IRC=y
-# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set
-# CONFIG_NF_CONNTRACK_SNMP is not set
-# CONFIG_NF_CONNTRACK_PPTP is not set
-# CONFIG_NF_CONNTRACK_SANE is not set
-CONFIG_NF_CONNTRACK_SIP=y
-# CONFIG_NF_CONNTRACK_TFTP is not set
-CONFIG_NF_CT_NETLINK=y
-# CONFIG_NETFILTER_NETLINK_GLUE_CT is not set
-CONFIG_NF_NAT=y
-CONFIG_NF_NAT_FTP=y
-CONFIG_NF_NAT_IRC=y
-CONFIG_NF_NAT_SIP=y
-CONFIG_NF_NAT_MASQUERADE=y
-# CONFIG_NF_TABLES is not set
-CONFIG_NETFILTER_XTABLES=y
-CONFIG_NETFILTER_XTABLES_COMPAT=y
-
-#
-# Xtables combined modules
-#
-CONFIG_NETFILTER_XT_MARK=m
-# CONFIG_NETFILTER_XT_CONNMARK is not set
-
-#
-# Xtables targets
-#
-# CONFIG_NETFILTER_XT_TARGET_AUDIT is not set
-# CONFIG_NETFILTER_XT_TARGET_CHECKSUM is not set
-# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
-# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
-# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
-# CONFIG_NETFILTER_XT_TARGET_HL is not set
-# CONFIG_NETFILTER_XT_TARGET_HMARK is not set
-# CONFIG_NETFILTER_XT_TARGET_IDLETIMER is not set
-# CONFIG_NETFILTER_XT_TARGET_LED is not set
-CONFIG_NETFILTER_XT_TARGET_LOG=m
-# CONFIG_NETFILTER_XT_TARGET_MARK is not set
-CONFIG_NETFILTER_XT_NAT=m
-# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
-CONFIG_NETFILTER_XT_TARGET_NFLOG=y
-# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
-# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
-# CONFIG_NETFILTER_XT_TARGET_REDIRECT is not set
-CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
-# CONFIG_NETFILTER_XT_TARGET_TEE is not set
-# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
-CONFIG_NETFILTER_XT_TARGET_TCPMSS=y
-# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
-
-#
-# Xtables matches
-#
-CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
-# CONFIG_NETFILTER_XT_MATCH_BPF is not set
-# CONFIG_NETFILTER_XT_MATCH_CGROUP is not set
-# CONFIG_NETFILTER_XT_MATCH_CLUSTER is not set
-# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNBYTES is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNLABEL is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNLIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_CONNMARK is not set
-CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
-# CONFIG_NETFILTER_XT_MATCH_CPU is not set
-# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
-# CONFIG_NETFILTER_XT_MATCH_DEVGROUP is not set
-# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
-# CONFIG_NETFILTER_XT_MATCH_ECN is not set
-# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_HELPER is not set
-# CONFIG_NETFILTER_XT_MATCH_HL is not set
-# CONFIG_NETFILTER_XT_MATCH_IPCOMP is not set
-# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
-CONFIG_NETFILTER_XT_MATCH_IPVS=m
-# CONFIG_NETFILTER_XT_MATCH_L2TP is not set
-# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set
-# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_MAC is not set
-# CONFIG_NETFILTER_XT_MATCH_MARK is not set
-# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
-# CONFIG_NETFILTER_XT_MATCH_NFACCT is not set
-# CONFIG_NETFILTER_XT_MATCH_OSF is not set
-# CONFIG_NETFILTER_XT_MATCH_OWNER is not set
-CONFIG_NETFILTER_XT_MATCH_POLICY=y
-# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
-# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
-# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
-# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set
-# CONFIG_NETFILTER_XT_MATCH_REALM is not set
-# CONFIG_NETFILTER_XT_MATCH_RECENT is not set
-# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
-# CONFIG_NETFILTER_XT_MATCH_SOCKET is not set
-CONFIG_NETFILTER_XT_MATCH_STATE=y
-# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
-# CONFIG_NETFILTER_XT_MATCH_STRING is not set
-# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set
-# CONFIG_NETFILTER_XT_MATCH_TIME is not set
-# CONFIG_NETFILTER_XT_MATCH_U32 is not set
-# end of Core Netfilter Configuration
-
-# CONFIG_IP_SET is not set
-CONFIG_IP_VS=m
-# CONFIG_IP_VS_IPV6 is not set
-# CONFIG_IP_VS_DEBUG is not set
-CONFIG_IP_VS_TAB_BITS=12
-
-#
-# IPVS transport protocol load balancing support
-#
-CONFIG_IP_VS_PROTO_TCP=y
-CONFIG_IP_VS_PROTO_UDP=y
-# CONFIG_IP_VS_PROTO_ESP is not set
-# CONFIG_IP_VS_PROTO_AH is not set
-# CONFIG_IP_VS_PROTO_SCTP is not set
-
-#
-# IPVS scheduler
-#
-CONFIG_IP_VS_RR=m
-# CONFIG_IP_VS_WRR is not set
-# CONFIG_IP_VS_LC is not set
-# CONFIG_IP_VS_WLC is not set
-# CONFIG_IP_VS_FO is not set
-# CONFIG_IP_VS_OVF is not set
-# CONFIG_IP_VS_LBLC is not set
-# CONFIG_IP_VS_LBLCR is not set
-# CONFIG_IP_VS_DH is not set
-# CONFIG_IP_VS_SH is not set
-# CONFIG_IP_VS_MH is not set
-# CONFIG_IP_VS_SED is not set
-# CONFIG_IP_VS_NQ is not set
-# CONFIG_IP_VS_TWOS is not set
-
-#
-# IPVS SH scheduler
-#
-CONFIG_IP_VS_SH_TAB_BITS=8
-
-#
-# IPVS MH scheduler
-#
-CONFIG_IP_VS_MH_TAB_INDEX=12
-
-#
-# IPVS application helper
-#
-# CONFIG_IP_VS_FTP is not set
-CONFIG_IP_VS_NFCT=y
-# CONFIG_IP_VS_PE_SIP is not set
-
-#
-# IP: Netfilter Configuration
-#
-CONFIG_NF_DEFRAG_IPV4=y
-# CONFIG_NF_SOCKET_IPV4 is not set
-# CONFIG_NF_TPROXY_IPV4 is not set
-# CONFIG_NF_DUP_IPV4 is not set
-CONFIG_NF_LOG_ARP=m
-CONFIG_NF_LOG_IPV4=m
-CONFIG_NF_REJECT_IPV4=y
-CONFIG_IP_NF_IPTABLES=y
-# CONFIG_IP_NF_MATCH_AH is not set
-# CONFIG_IP_NF_MATCH_ECN is not set
-# CONFIG_IP_NF_MATCH_RPFILTER is not set
-# CONFIG_IP_NF_MATCH_TTL is not set
-CONFIG_IP_NF_FILTER=y
-CONFIG_IP_NF_TARGET_REJECT=y
-# CONFIG_IP_NF_TARGET_SYNPROXY is not set
-CONFIG_IP_NF_NAT=m
-CONFIG_IP_NF_TARGET_MASQUERADE=m
-# CONFIG_IP_NF_TARGET_NETMAP is not set
-# CONFIG_IP_NF_TARGET_REDIRECT is not set
-CONFIG_IP_NF_MANGLE=y
-# CONFIG_IP_NF_TARGET_CLUSTERIP is not set
-# CONFIG_IP_NF_TARGET_ECN is not set
-# CONFIG_IP_NF_TARGET_TTL is not set
-# CONFIG_IP_NF_RAW is not set
-# CONFIG_IP_NF_SECURITY is not set
-# CONFIG_IP_NF_ARPTABLES is not set
-# end of IP: Netfilter Configuration
-
-#
-# IPv6: Netfilter Configuration
-#
-# CONFIG_NF_SOCKET_IPV6 is not set
-# CONFIG_NF_TPROXY_IPV6 is not set
-# CONFIG_NF_DUP_IPV6 is not set
-CONFIG_NF_REJECT_IPV6=y
-CONFIG_NF_LOG_IPV6=m
-CONFIG_IP6_NF_IPTABLES=y
-# CONFIG_IP6_NF_MATCH_AH is not set
-# CONFIG_IP6_NF_MATCH_EUI64 is not set
-# CONFIG_IP6_NF_MATCH_FRAG is not set
-# CONFIG_IP6_NF_MATCH_OPTS is not set
-# CONFIG_IP6_NF_MATCH_HL is not set
-CONFIG_IP6_NF_MATCH_IPV6HEADER=y
-# CONFIG_IP6_NF_MATCH_MH is not set
-# CONFIG_IP6_NF_MATCH_RPFILTER is not set
-# CONFIG_IP6_NF_MATCH_RT is not set
-# CONFIG_IP6_NF_MATCH_SRH is not set
-# CONFIG_IP6_NF_TARGET_HL is not set
-CONFIG_IP6_NF_FILTER=y
-CONFIG_IP6_NF_TARGET_REJECT=y
-# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
-CONFIG_IP6_NF_MANGLE=y
-# CONFIG_IP6_NF_RAW is not set
-# CONFIG_IP6_NF_SECURITY is not set
-# CONFIG_IP6_NF_NAT is not set
-# end of IPv6: Netfilter Configuration
-
-CONFIG_NF_DEFRAG_IPV6=y
-# CONFIG_NF_CONNTRACK_BRIDGE is not set
-# CONFIG_BRIDGE_NF_EBTABLES is not set
-# CONFIG_BPFILTER is not set
-# CONFIG_IP_DCCP is not set
-# CONFIG_IP_SCTP is not set
-# CONFIG_RDS is not set
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_L2TP is not set
-CONFIG_STP=y
-CONFIG_BRIDGE=y
-CONFIG_BRIDGE_IGMP_SNOOPING=y
-# CONFIG_BRIDGE_MRP is not set
-# CONFIG_BRIDGE_CFM is not set
-# CONFIG_NET_DSA is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-CONFIG_LLC=y
-# CONFIG_LLC2 is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_PHONET is not set
-# CONFIG_6LOWPAN is not set
-# CONFIG_IEEE802154 is not set
-CONFIG_NET_SCHED=y
-
-#
-# Queueing/Scheduling
-#
-# CONFIG_NET_SCH_CBQ is not set
-# CONFIG_NET_SCH_HTB is not set
-# CONFIG_NET_SCH_HFSC is not set
-# CONFIG_NET_SCH_PRIO is not set
-# CONFIG_NET_SCH_MULTIQ is not set
-# CONFIG_NET_SCH_RED is not set
-# CONFIG_NET_SCH_SFB is not set
-# CONFIG_NET_SCH_SFQ is not set
-# CONFIG_NET_SCH_TEQL is not set
-# CONFIG_NET_SCH_TBF is not set
-# CONFIG_NET_SCH_CBS is not set
-# CONFIG_NET_SCH_ETF is not set
-# CONFIG_NET_SCH_TAPRIO is not set
-# CONFIG_NET_SCH_GRED is not set
-# CONFIG_NET_SCH_DSMARK is not set
-# CONFIG_NET_SCH_NETEM is not set
-# CONFIG_NET_SCH_DRR is not set
-# CONFIG_NET_SCH_MQPRIO is not set
-# CONFIG_NET_SCH_SKBPRIO is not set
-# CONFIG_NET_SCH_CHOKE is not set
-# CONFIG_NET_SCH_QFQ is not set
-# CONFIG_NET_SCH_CODEL is not set
-# CONFIG_NET_SCH_FQ_CODEL is not set
-# CONFIG_NET_SCH_CAKE is not set
-# CONFIG_NET_SCH_FQ is not set
-# CONFIG_NET_SCH_HHF is not set
-# CONFIG_NET_SCH_PIE is not set
-# CONFIG_NET_SCH_INGRESS is not set
-# CONFIG_NET_SCH_PLUG is not set
-# CONFIG_NET_SCH_ETS is not set
-# CONFIG_NET_SCH_DEFAULT is not set
-
-#
-# Classification
-#
-CONFIG_NET_CLS=y
-# CONFIG_NET_CLS_BASIC is not set
-# CONFIG_NET_CLS_TCINDEX is not set
-# CONFIG_NET_CLS_ROUTE4 is not set
-# CONFIG_NET_CLS_FW is not set
-# CONFIG_NET_CLS_U32 is not set
-# CONFIG_NET_CLS_RSVP is not set
-# CONFIG_NET_CLS_RSVP6 is not set
-# CONFIG_NET_CLS_FLOW is not set
-CONFIG_NET_CLS_CGROUP=y
-# CONFIG_NET_CLS_BPF is not set
-# CONFIG_NET_CLS_FLOWER is not set
-# CONFIG_NET_CLS_MATCHALL is not set
-CONFIG_NET_EMATCH=y
-CONFIG_NET_EMATCH_STACK=32
-# CONFIG_NET_EMATCH_CMP is not set
-# CONFIG_NET_EMATCH_NBYTE is not set
-# CONFIG_NET_EMATCH_U32 is not set
-# CONFIG_NET_EMATCH_META is not set
-# CONFIG_NET_EMATCH_TEXT is not set
-# CONFIG_NET_EMATCH_IPT is not set
-CONFIG_NET_CLS_ACT=y
-# CONFIG_NET_ACT_POLICE is not set
-# CONFIG_NET_ACT_GACT is not set
-# CONFIG_NET_ACT_MIRRED is not set
-# CONFIG_NET_ACT_SAMPLE is not set
-# CONFIG_NET_ACT_IPT is not set
-# CONFIG_NET_ACT_NAT is not set
-# CONFIG_NET_ACT_PEDIT is not set
-# CONFIG_NET_ACT_SIMP is not set
-# CONFIG_NET_ACT_SKBEDIT is not set
-# CONFIG_NET_ACT_CSUM is not set
-# CONFIG_NET_ACT_MPLS is not set
-# CONFIG_NET_ACT_VLAN is not set
-# CONFIG_NET_ACT_BPF is not set
-# CONFIG_NET_ACT_SKBMOD is not set
-# CONFIG_NET_ACT_IFE is not set
-# CONFIG_NET_ACT_TUNNEL_KEY is not set
-# CONFIG_NET_ACT_GATE is not set
-# CONFIG_NET_TC_SKB_EXT is not set
-CONFIG_NET_SCH_FIFO=y
-# CONFIG_DCB is not set
-CONFIG_DNS_RESOLVER=y
-# CONFIG_BATMAN_ADV is not set
-# CONFIG_OPENVSWITCH is not set
-# CONFIG_VSOCKETS is not set
-# CONFIG_NETLINK_DIAG is not set
-# CONFIG_MPLS is not set
-# CONFIG_NET_NSH is not set
-# CONFIG_HSR is not set
-# CONFIG_NET_SWITCHDEV is not set
-CONFIG_NET_L3_MASTER_DEV=y
-# CONFIG_QRTR is not set
-# CONFIG_NET_NCSI is not set
-CONFIG_PCPU_DEV_REFCNT=y
-CONFIG_RPS=y
-CONFIG_RFS_ACCEL=y
-CONFIG_SOCK_RX_QUEUE_MAPPING=y
-CONFIG_XPS=y
-CONFIG_CGROUP_NET_PRIO=y
-CONFIG_CGROUP_NET_CLASSID=y
-CONFIG_NET_RX_BUSY_POLL=y
-CONFIG_BQL=y
-CONFIG_NET_FLOW_LIMIT=y
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_NET_DROP_MONITOR is not set
-# end of Network testing
-# end of Networking options
-
-# CONFIG_HAMRADIO is not set
-# CONFIG_CAN is not set
-CONFIG_BT=y
-CONFIG_BT_BREDR=y
-# CONFIG_BT_RFCOMM is not set
-# CONFIG_BT_BNEP is not set
-# CONFIG_BT_HIDP is not set
-# CONFIG_BT_HS is not set
-CONFIG_BT_LE=y
-# CONFIG_BT_LEDS is not set
-# CONFIG_BT_MSFTEXT is not set
-# CONFIG_BT_AOSPEXT is not set
-CONFIG_BT_DEBUGFS=y
-# CONFIG_BT_SELFTEST is not set
-# CONFIG_BT_FEATURE_DEBUG is not set
-
-#
-# Bluetooth device drivers
-#
-# CONFIG_BT_HCIBTUSB is not set
-# CONFIG_BT_HCIUART is not set
-# CONFIG_BT_HCIBCM203X is not set
-# CONFIG_BT_HCIBPA10X is not set
-# CONFIG_BT_HCIBFUSB is not set
-# CONFIG_BT_HCIDTL1 is not set
-# CONFIG_BT_HCIBT3C is not set
-# CONFIG_BT_HCIBLUECARD is not set
-# CONFIG_BT_HCIVHCI is not set
-# CONFIG_BT_MRVL is not set
-# end of Bluetooth device drivers
-
-# CONFIG_AF_RXRPC is not set
-# CONFIG_AF_KCM is not set
-CONFIG_FIB_RULES=y
-CONFIG_WIRELESS=y
-CONFIG_CFG80211=m
-# CONFIG_NL80211_TESTMODE is not set
-# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
-CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
-CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
-CONFIG_CFG80211_DEFAULT_PS=y
-# CONFIG_CFG80211_DEBUGFS is not set
-CONFIG_CFG80211_CRDA_SUPPORT=y
-# CONFIG_CFG80211_WEXT is not set
-CONFIG_MAC80211=m
-CONFIG_MAC80211_HAS_RC=y
-CONFIG_MAC80211_RC_MINSTREL=y
-CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
-CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
-CONFIG_MAC80211_MESH=y
-CONFIG_MAC80211_LEDS=y
-# CONFIG_MAC80211_DEBUGFS is not set
-# CONFIG_MAC80211_MESSAGE_TRACING is not set
-# CONFIG_MAC80211_DEBUG_MENU is not set
-CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
-CONFIG_RFKILL=y
-CONFIG_RFKILL_LEDS=y
-CONFIG_RFKILL_INPUT=y
-# CONFIG_NET_9P is not set
-# CONFIG_CAIF is not set
-# CONFIG_CEPH_LIB is not set
-# CONFIG_NFC is not set
-# CONFIG_PSAMPLE is not set
-# CONFIG_NET_IFE is not set
-# CONFIG_LWTUNNEL is not set
-CONFIG_DST_CACHE=y
-CONFIG_GRO_CELLS=y
-CONFIG_NET_SELFTESTS=y
-# CONFIG_FAILOVER is not set
-CONFIG_ETHTOOL_NETLINK=y
-
-#
-# Device Drivers
-#
-CONFIG_HAVE_EISA=y
-# CONFIG_EISA is not set
-CONFIG_HAVE_PCI=y
-CONFIG_PCI=y
-CONFIG_PCI_DOMAINS=y
-CONFIG_PCIEPORTBUS=y
-# CONFIG_HOTPLUG_PCI_PCIE is not set
-# CONFIG_PCIEAER is not set
-CONFIG_PCIEASPM=y
-CONFIG_PCIEASPM_DEFAULT=y
-# CONFIG_PCIEASPM_POWERSAVE is not set
-# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-# CONFIG_PCIEASPM_PERFORMANCE is not set
-CONFIG_PCIE_PME=y
-# CONFIG_PCIE_PTM is not set
-CONFIG_PCI_MSI=y
-CONFIG_PCI_MSI_IRQ_DOMAIN=y
-CONFIG_PCI_QUIRKS=y
-# CONFIG_PCI_DEBUG is not set
-# CONFIG_PCI_STUB is not set
-CONFIG_PCI_ATS=y
-CONFIG_PCI_LOCKLESS_CONFIG=y
-# CONFIG_PCI_IOV is not set
-CONFIG_PCI_PRI=y
-CONFIG_PCI_PASID=y
-CONFIG_PCI_LABEL=y
-CONFIG_HOTPLUG_PCI=y
-# CONFIG_HOTPLUG_PCI_ACPI is not set
-# CONFIG_HOTPLUG_PCI_CPCI is not set
-# CONFIG_HOTPLUG_PCI_SHPC is not set
-
-#
-# PCI controller drivers
-#
-# CONFIG_VMD is not set
-
-#
-# DesignWare PCI Core Support
-#
-# CONFIG_PCIE_DW_PLAT_HOST is not set
-# CONFIG_PCI_MESON is not set
-# end of DesignWare PCI Core Support
-
-#
-# Mobiveil PCIe Core Support
-#
-# end of Mobiveil PCIe Core Support
-
-#
-# Cadence PCIe controllers support
-#
-# end of Cadence PCIe controllers support
-# end of PCI controller drivers
-
-#
-# PCI Endpoint
-#
-# CONFIG_PCI_ENDPOINT is not set
-# end of PCI Endpoint
-
-#
-# PCI switch controller drivers
-#
-# CONFIG_PCI_SW_SWITCHTEC is not set
-# end of PCI switch controller drivers
-
-# CONFIG_CXL_BUS is not set
-CONFIG_PCCARD=y
-CONFIG_PCMCIA=y
-CONFIG_PCMCIA_LOAD_CIS=y
-CONFIG_CARDBUS=y
-
-#
-# PC-card bridges
-#
-CONFIG_YENTA=y
-CONFIG_YENTA_O2=y
-CONFIG_YENTA_RICOH=y
-CONFIG_YENTA_TI=y
-CONFIG_YENTA_ENE_TUNE=y
-CONFIG_YENTA_TOSHIBA=y
-# CONFIG_PD6729 is not set
-# CONFIG_I82092 is not set
-CONFIG_PCCARD_NONSTATIC=y
-# CONFIG_RAPIDIO is not set
-
-#
-# Generic Driver Options
-#
-# CONFIG_UEVENT_HELPER is not set
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
-CONFIG_STANDALONE=y
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-
-#
-# Firmware loader
-#
-CONFIG_FW_LOADER=y
-CONFIG_EXTRA_FIRMWARE=""
-# CONFIG_FW_LOADER_USER_HELPER is not set
-# CONFIG_FW_LOADER_COMPRESS is not set
-CONFIG_FW_CACHE=y
-# end of Firmware loader
-
-CONFIG_WANT_DEV_COREDUMP=y
-CONFIG_ALLOW_DEV_COREDUMP=y
-CONFIG_DEV_COREDUMP=y
-# CONFIG_DEBUG_DRIVER is not set
-CONFIG_DEBUG_DEVRES=y
-# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
-# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
-CONFIG_GENERIC_CPU_AUTOPROBE=y
-CONFIG_GENERIC_CPU_VULNERABILITIES=y
-CONFIG_REGMAP=y
-CONFIG_DMA_SHARED_BUFFER=y
-# CONFIG_DMA_FENCE_TRACE is not set
-# end of Generic Driver Options
-
-#
-# Bus devices
-#
-# CONFIG_MHI_BUS is not set
-# end of Bus devices
-
-CONFIG_CONNECTOR=y
-CONFIG_PROC_EVENTS=y
-# CONFIG_GNSS is not set
-# CONFIG_MTD is not set
-# CONFIG_OF is not set
-CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
-# CONFIG_PARPORT is not set
-CONFIG_PNP=y
-CONFIG_PNP_DEBUG_MESSAGES=y
-
-#
-# Protocols
-#
-CONFIG_PNPACPI=y
-CONFIG_BLK_DEV=y
-# CONFIG_BLK_DEV_NULL_BLK is not set
-# CONFIG_BLK_DEV_FD is not set
-CONFIG_CDROM=y
-# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
-# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-# CONFIG_BLK_DEV_DRBD is not set
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_SX8 is not set
-# CONFIG_BLK_DEV_RAM is not set
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-# CONFIG_BLK_DEV_RBD is not set
-# CONFIG_BLK_DEV_RSXX is not set
-
-#
-# NVME Support
-#
-# CONFIG_BLK_DEV_NVME is not set
-# CONFIG_NVME_FC is not set
-# CONFIG_NVME_TCP is not set
-# end of NVME Support
-
-#
-# Misc devices
-#
-# CONFIG_AD525X_DPOT is not set
-# CONFIG_DUMMY_IRQ is not set
-# CONFIG_IBM_ASM is not set
-# CONFIG_PHANTOM is not set
-# CONFIG_TIFM_CORE is not set
-# CONFIG_ICS932S401 is not set
-# CONFIG_ENCLOSURE_SERVICES is not set
-# CONFIG_HP_ILO is not set
-# CONFIG_APDS9802ALS is not set
-# CONFIG_ISL29003 is not set
-# CONFIG_ISL29020 is not set
-# CONFIG_SENSORS_TSL2550 is not set
-# CONFIG_SENSORS_BH1770 is not set
-# CONFIG_SENSORS_APDS990X is not set
-# CONFIG_HMC6352 is not set
-# CONFIG_DS1682 is not set
-# CONFIG_SRAM is not set
-# CONFIG_DW_XDATA_PCIE is not set
-# CONFIG_PCI_ENDPOINT_TEST is not set
-# CONFIG_XILINX_SDFEC is not set
-# CONFIG_C2PORT is not set
-
-#
-# EEPROM support
-#
-# CONFIG_EEPROM_AT24 is not set
-# CONFIG_EEPROM_LEGACY is not set
-# CONFIG_EEPROM_MAX6875 is not set
-# CONFIG_EEPROM_93CX6 is not set
-# CONFIG_EEPROM_IDT_89HPESX is not set
-# CONFIG_EEPROM_EE1004 is not set
-# end of EEPROM support
-
-# CONFIG_CB710_CORE is not set
-
-#
-# Texas Instruments shared transport line discipline
-#
-# end of Texas Instruments shared transport line discipline
-
-# CONFIG_SENSORS_LIS3_I2C is not set
-# CONFIG_ALTERA_STAPL is not set
-# CONFIG_INTEL_MEI is not set
-# CONFIG_INTEL_MEI_ME is not set
-# CONFIG_INTEL_MEI_TXE is not set
-# CONFIG_INTEL_MEI_HDCP is not set
-# CONFIG_VMWARE_VMCI is not set
-# CONFIG_GENWQE is not set
-# CONFIG_ECHO is not set
-# CONFIG_BCM_VK is not set
-# CONFIG_MISC_ALCOR_PCI is not set
-# CONFIG_MISC_RTSX_PCI is not set
-# CONFIG_MISC_RTSX_USB is not set
-# CONFIG_HABANA_AI is not set
-# CONFIG_UACCE is not set
-# CONFIG_PVPANIC is not set
-# end of Misc devices
-
-CONFIG_HAVE_IDE=y
-# CONFIG_IDE is not set
-
-#
-# SCSI device support
-#
-CONFIG_SCSI_MOD=y
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=y
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-CONFIG_BLK_DEV_SR=y
-CONFIG_CHR_DEV_SG=y
-# CONFIG_CHR_DEV_SCH is not set
-CONFIG_SCSI_CONSTANTS=y
-# CONFIG_SCSI_LOGGING is not set
-CONFIG_SCSI_SCAN_ASYNC=y
-
-#
-# SCSI Transports
-#
-CONFIG_SCSI_SPI_ATTRS=y
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-# CONFIG_SCSI_SRP_ATTRS is not set
-# end of SCSI Transports
-
-# CONFIG_SCSI_LOWLEVEL is not set
-# CONFIG_SCSI_DH is not set
-# end of SCSI device support
-
-CONFIG_ATA=y
-CONFIG_SATA_HOST=y
-CONFIG_PATA_TIMINGS=y
-CONFIG_ATA_VERBOSE_ERROR=y
-CONFIG_ATA_FORCE=y
-CONFIG_ATA_ACPI=y
-# CONFIG_SATA_ZPODD is not set
-CONFIG_SATA_PMP=y
-
-#
-# Controllers with non-SFF native interface
-#
-CONFIG_SATA_AHCI=y
-CONFIG_SATA_MOBILE_LPM_POLICY=0
-# CONFIG_SATA_AHCI_PLATFORM is not set
-# CONFIG_SATA_INIC162X is not set
-# CONFIG_SATA_ACARD_AHCI is not set
-# CONFIG_SATA_SIL24 is not set
-CONFIG_ATA_SFF=y
-
-#
-# SFF controllers with custom DMA interface
-#
-# CONFIG_PDC_ADMA is not set
-# CONFIG_SATA_QSTOR is not set
-# CONFIG_SATA_SX4 is not set
-CONFIG_ATA_BMDMA=y
-
-#
-# SATA SFF controllers with BMDMA
-#
-CONFIG_ATA_PIIX=y
-# CONFIG_SATA_DWC is not set
-# CONFIG_SATA_MV is not set
-# CONFIG_SATA_NV is not set
-# CONFIG_SATA_PROMISE is not set
-# CONFIG_SATA_SIL is not set
-# CONFIG_SATA_SIS is not set
-# CONFIG_SATA_SVW is not set
-# CONFIG_SATA_ULI is not set
-# CONFIG_SATA_VIA is not set
-# CONFIG_SATA_VITESSE is not set
-
-#
-# PATA SFF controllers with BMDMA
-#
-# CONFIG_PATA_ALI is not set
-CONFIG_PATA_AMD=y
-# CONFIG_PATA_ARTOP is not set
-# CONFIG_PATA_ATIIXP is not set
-# CONFIG_PATA_ATP867X is not set
-# CONFIG_PATA_CMD64X is not set
-# CONFIG_PATA_CYPRESS is not set
-# CONFIG_PATA_EFAR is not set
-# CONFIG_PATA_HPT366 is not set
-# CONFIG_PATA_HPT37X is not set
-# CONFIG_PATA_HPT3X2N is not set
-# CONFIG_PATA_HPT3X3 is not set
-# CONFIG_PATA_IT8213 is not set
-# CONFIG_PATA_IT821X is not set
-# CONFIG_PATA_JMICRON is not set
-# CONFIG_PATA_MARVELL is not set
-# CONFIG_PATA_NETCELL is not set
-# CONFIG_PATA_NINJA32 is not set
-# CONFIG_PATA_NS87415 is not set
-CONFIG_PATA_OLDPIIX=y
-# CONFIG_PATA_OPTIDMA is not set
-# CONFIG_PATA_PDC2027X is not set
-# CONFIG_PATA_PDC_OLD is not set
-# CONFIG_PATA_RADISYS is not set
-# CONFIG_PATA_RDC is not set
-CONFIG_PATA_SCH=y
-# CONFIG_PATA_SERVERWORKS is not set
-# CONFIG_PATA_SIL680 is not set
-# CONFIG_PATA_SIS is not set
-# CONFIG_PATA_TOSHIBA is not set
-# CONFIG_PATA_TRIFLEX is not set
-# CONFIG_PATA_VIA is not set
-# CONFIG_PATA_WINBOND is not set
-
-#
-# PIO-only SFF controllers
-#
-# CONFIG_PATA_CMD640_PCI is not set
-# CONFIG_PATA_MPIIX is not set
-# CONFIG_PATA_NS87410 is not set
-# CONFIG_PATA_OPTI is not set
-# CONFIG_PATA_PCMCIA is not set
-# CONFIG_PATA_RZ1000 is not set
-
-#
-# Generic fallback / legacy drivers
-#
-# CONFIG_PATA_ACPI is not set
-# CONFIG_ATA_GENERIC is not set
-# CONFIG_PATA_LEGACY is not set
-CONFIG_MD=y
-# CONFIG_BLK_DEV_MD is not set
-# CONFIG_BCACHE is not set
-CONFIG_BLK_DEV_DM_BUILTIN=y
-CONFIG_BLK_DEV_DM=y
-# CONFIG_DM_DEBUG is not set
-CONFIG_DM_BUFIO=y
-# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
-CONFIG_DM_BIO_PRISON=y
-CONFIG_DM_PERSISTENT_DATA=y
-# CONFIG_DM_UNSTRIPED is not set
-CONFIG_DM_CRYPT=y
-# CONFIG_DM_SNAPSHOT is not set
-CONFIG_DM_THIN_PROVISIONING=y
-# CONFIG_DM_CACHE is not set
-# CONFIG_DM_WRITECACHE is not set
-# CONFIG_DM_EBS is not set
-# CONFIG_DM_ERA is not set
-# CONFIG_DM_CLONE is not set
-# CONFIG_DM_MIRROR is not set
-# CONFIG_DM_RAID is not set
-# CONFIG_DM_ZERO is not set
-# CONFIG_DM_MULTIPATH is not set
-# CONFIG_DM_DELAY is not set
-# CONFIG_DM_DUST is not set
-# CONFIG_DM_INIT is not set
-# CONFIG_DM_UEVENT is not set
-# CONFIG_DM_FLAKEY is not set
-# CONFIG_DM_VERITY is not set
-# CONFIG_DM_SWITCH is not set
-# CONFIG_DM_LOG_WRITES is not set
-# CONFIG_DM_INTEGRITY is not set
-# CONFIG_TARGET_CORE is not set
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-# CONFIG_FIREWIRE is not set
-# CONFIG_FIREWIRE_NOSY is not set
-# end of IEEE 1394 (FireWire) support
-
-# CONFIG_MACINTOSH_DRIVERS is not set
-CONFIG_NETDEVICES=y
-CONFIG_NET_CORE=y
-# CONFIG_BONDING is not set
-CONFIG_DUMMY=m
-# CONFIG_WIREGUARD is not set
-# CONFIG_EQUALIZER is not set
-# CONFIG_NET_FC is not set
-# CONFIG_IFB is not set
-# CONFIG_NET_TEAM is not set
-CONFIG_MACVLAN=m
-# CONFIG_MACVTAP is not set
-CONFIG_IPVLAN_L3S=y
-CONFIG_IPVLAN=m
-# CONFIG_IPVTAP is not set
-CONFIG_VXLAN=m
-# CONFIG_GENEVE is not set
-# CONFIG_BAREUDP is not set
-# CONFIG_GTP is not set
-# CONFIG_MACSEC is not set
-CONFIG_NETCONSOLE=y
-CONFIG_NETPOLL=y
-CONFIG_NET_POLL_CONTROLLER=y
-# CONFIG_TUN is not set
-# CONFIG_TUN_VNET_CROSS_LE is not set
-CONFIG_VETH=y
-# CONFIG_NLMON is not set
-# CONFIG_ARCNET is not set
-CONFIG_ETHERNET=y
-CONFIG_MDIO=m
-# CONFIG_NET_VENDOR_3COM is not set
-# CONFIG_NET_VENDOR_ADAPTEC is not set
-# CONFIG_NET_VENDOR_AGERE is not set
-# CONFIG_NET_VENDOR_ALACRITECH is not set
-# CONFIG_NET_VENDOR_ALTEON is not set
-# CONFIG_ALTERA_TSE is not set
-# CONFIG_NET_VENDOR_AMAZON is not set
-# CONFIG_NET_VENDOR_AMD is not set
-# CONFIG_NET_VENDOR_AQUANTIA is not set
-# CONFIG_NET_VENDOR_ARC is not set
-CONFIG_NET_VENDOR_ATHEROS=y
-# CONFIG_ATL2 is not set
-# CONFIG_ATL1 is not set
-# CONFIG_ATL1E is not set
-# CONFIG_ATL1C is not set
-CONFIG_ALX=m
-# CONFIG_NET_VENDOR_BROADCOM is not set
-# CONFIG_NET_VENDOR_BROCADE is not set
-# CONFIG_NET_VENDOR_CADENCE is not set
-# CONFIG_NET_VENDOR_CAVIUM is not set
-# CONFIG_NET_VENDOR_CHELSIO is not set
-# CONFIG_NET_VENDOR_CISCO is not set
-# CONFIG_NET_VENDOR_CORTINA is not set
-# CONFIG_CX_ECAT is not set
-# CONFIG_DNET is not set
-# CONFIG_NET_VENDOR_DEC is not set
-# CONFIG_NET_VENDOR_DLINK is not set
-# CONFIG_NET_VENDOR_EMULEX is not set
-# CONFIG_NET_VENDOR_EZCHIP is not set
-# CONFIG_NET_VENDOR_FUJITSU is not set
-# CONFIG_NET_VENDOR_GOOGLE is not set
-# CONFIG_NET_VENDOR_HUAWEI is not set
-# CONFIG_NET_VENDOR_INTEL is not set
-# CONFIG_NET_VENDOR_MICROSOFT is not set
-# CONFIG_JME is not set
-# CONFIG_NET_VENDOR_MARVELL is not set
-# CONFIG_NET_VENDOR_MELLANOX is not set
-# CONFIG_NET_VENDOR_MICREL is not set
-# CONFIG_NET_VENDOR_MICROCHIP is not set
-# CONFIG_NET_VENDOR_MICROSEMI is not set
-# CONFIG_NET_VENDOR_MYRI is not set
-# CONFIG_FEALNX is not set
-# CONFIG_NET_VENDOR_NATSEMI is not set
-# CONFIG_NET_VENDOR_NETERION is not set
-# CONFIG_NET_VENDOR_NETRONOME is not set
-# CONFIG_NET_VENDOR_NI is not set
-# CONFIG_NET_VENDOR_NVIDIA is not set
-# CONFIG_NET_VENDOR_OKI is not set
-# CONFIG_ETHOC is not set
-# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
-# CONFIG_NET_VENDOR_PENSANDO is not set
-# CONFIG_NET_VENDOR_QLOGIC is not set
-# CONFIG_NET_VENDOR_QUALCOMM is not set
-# CONFIG_NET_VENDOR_RDC is not set
-# CONFIG_NET_VENDOR_REALTEK is not set
-# CONFIG_NET_VENDOR_RENESAS is not set
-# CONFIG_NET_VENDOR_ROCKER is not set
-# CONFIG_NET_VENDOR_SAMSUNG is not set
-# CONFIG_NET_VENDOR_SEEQ is not set
-# CONFIG_NET_VENDOR_SOLARFLARE is not set
-# CONFIG_NET_VENDOR_SILAN is not set
-# CONFIG_NET_VENDOR_SIS is not set
-# CONFIG_NET_VENDOR_SMSC is not set
-# CONFIG_NET_VENDOR_SOCIONEXT is not set
-# CONFIG_NET_VENDOR_STMICRO is not set
-# CONFIG_NET_VENDOR_SUN is not set
-# CONFIG_NET_VENDOR_SYNOPSYS is not set
-# CONFIG_NET_VENDOR_TEHUTI is not set
-# CONFIG_NET_VENDOR_TI is not set
-# CONFIG_NET_VENDOR_VIA is not set
-# CONFIG_NET_VENDOR_WIZNET is not set
-# CONFIG_NET_VENDOR_XILINX is not set
-# CONFIG_NET_VENDOR_XIRCOM is not set
-# CONFIG_FDDI is not set
-# CONFIG_HIPPI is not set
-# CONFIG_NET_SB1000 is not set
-CONFIG_PHYLIB=y
-# CONFIG_LED_TRIGGER_PHY is not set
-# CONFIG_FIXED_PHY is not set
-
-#
-# MII PHY device drivers
-#
-# CONFIG_AMD_PHY is not set
-# CONFIG_ADIN_PHY is not set
-# CONFIG_AQUANTIA_PHY is not set
-# CONFIG_AX88796B_PHY is not set
-# CONFIG_BROADCOM_PHY is not set
-# CONFIG_BCM54140_PHY is not set
-# CONFIG_BCM7XXX_PHY is not set
-# CONFIG_BCM84881_PHY is not set
-# CONFIG_BCM87XX_PHY is not set
-# CONFIG_CICADA_PHY is not set
-# CONFIG_CORTINA_PHY is not set
-# CONFIG_DAVICOM_PHY is not set
-# CONFIG_ICPLUS_PHY is not set
-# CONFIG_LXT_PHY is not set
-# CONFIG_INTEL_XWAY_PHY is not set
-# CONFIG_LSI_ET1011C_PHY is not set
-# CONFIG_MARVELL_PHY is not set
-# CONFIG_MARVELL_10G_PHY is not set
-# CONFIG_MARVELL_88X2222_PHY is not set
-# CONFIG_MICREL_PHY is not set
-# CONFIG_MICROCHIP_PHY is not set
-# CONFIG_MICROCHIP_T1_PHY is not set
-# CONFIG_MICROSEMI_PHY is not set
-# CONFIG_NATIONAL_PHY is not set
-# CONFIG_NXP_C45_TJA11XX_PHY is not set
-# CONFIG_NXP_TJA11XX_PHY is not set
-# CONFIG_QSEMI_PHY is not set
-CONFIG_REALTEK_PHY=y
-# CONFIG_RENESAS_PHY is not set
-# CONFIG_ROCKCHIP_PHY is not set
-# CONFIG_SMSC_PHY is not set
-# CONFIG_STE10XP is not set
-# CONFIG_TERANETICS_PHY is not set
-# CONFIG_DP83822_PHY is not set
-# CONFIG_DP83TC811_PHY is not set
-# CONFIG_DP83848_PHY is not set
-# CONFIG_DP83867_PHY is not set
-# CONFIG_DP83869_PHY is not set
-# CONFIG_VITESSE_PHY is not set
-# CONFIG_XILINX_GMII2RGMII is not set
-CONFIG_MDIO_DEVICE=y
-CONFIG_MDIO_BUS=y
-CONFIG_MDIO_DEVRES=y
-# CONFIG_MDIO_BITBANG is not set
-# CONFIG_MDIO_BCM_UNIMAC is not set
-# CONFIG_MDIO_MVUSB is not set
-# CONFIG_MDIO_MSCC_MIIM is not set
-# CONFIG_MDIO_THUNDER is not set
-
-#
-# MDIO Multiplexers
-#
-
-#
-# PCS device drivers
-#
-# CONFIG_PCS_XPCS is not set
-# end of PCS device drivers
-
-CONFIG_PPP=m
-CONFIG_PPP_BSDCOMP=m
-CONFIG_PPP_DEFLATE=m
-# CONFIG_PPP_FILTER is not set
-CONFIG_PPP_MPPE=m
-# CONFIG_PPP_MULTILINK is not set
-CONFIG_PPPOE=m
-CONFIG_PPP_ASYNC=m
-CONFIG_PPP_SYNC_TTY=m
-# CONFIG_SLIP is not set
-CONFIG_SLHC=m
-# CONFIG_USB_NET_DRIVERS is not set
-CONFIG_WLAN=y
-# CONFIG_WLAN_VENDOR_ADMTEK is not set
-CONFIG_ATH_COMMON=m
-CONFIG_WLAN_VENDOR_ATH=y
-# CONFIG_ATH_DEBUG is not set
-# CONFIG_ATH5K is not set
-# CONFIG_ATH5K_PCI is not set
-# CONFIG_ATH9K is not set
-# CONFIG_ATH9K_HTC is not set
-# CONFIG_CARL9170 is not set
-# CONFIG_ATH6KL is not set
-# CONFIG_AR5523 is not set
-# CONFIG_WIL6210 is not set
-CONFIG_ATH10K=m
-CONFIG_ATH10K_CE=y
-CONFIG_ATH10K_PCI=m
-# CONFIG_ATH10K_USB is not set
-# CONFIG_ATH10K_DEBUG is not set
-# CONFIG_ATH10K_DEBUGFS is not set
-# CONFIG_ATH10K_TRACING is not set
-# CONFIG_WCN36XX is not set
-# CONFIG_WLAN_VENDOR_ATMEL is not set
-# CONFIG_WLAN_VENDOR_BROADCOM is not set
-# CONFIG_WLAN_VENDOR_CISCO is not set
-# CONFIG_WLAN_VENDOR_INTEL is not set
-# CONFIG_WLAN_VENDOR_INTERSIL is not set
-# CONFIG_WLAN_VENDOR_MARVELL is not set
-# CONFIG_WLAN_VENDOR_MEDIATEK is not set
-# CONFIG_WLAN_VENDOR_MICROCHIP is not set
-# CONFIG_WLAN_VENDOR_RALINK is not set
-# CONFIG_WLAN_VENDOR_REALTEK is not set
-# CONFIG_WLAN_VENDOR_RSI is not set
-# CONFIG_WLAN_VENDOR_ST is not set
-# CONFIG_WLAN_VENDOR_TI is not set
-# CONFIG_WLAN_VENDOR_ZYDAS is not set
-# CONFIG_WLAN_VENDOR_QUANTENNA is not set
-# CONFIG_PCMCIA_RAYCS is not set
-# CONFIG_PCMCIA_WL3501 is not set
-# CONFIG_MAC80211_HWSIM is not set
-# CONFIG_USB_NET_RNDIS_WLAN is not set
-# CONFIG_VIRT_WIFI is not set
-# CONFIG_WAN is not set
-
-#
-# Wireless WAN
-#
-# CONFIG_WWAN is not set
-# end of Wireless WAN
-
-# CONFIG_VMXNET3 is not set
-# CONFIG_FUJITSU_ES is not set
-# CONFIG_NETDEVSIM is not set
-# CONFIG_NET_FAILOVER is not set
-# CONFIG_ISDN is not set
-# CONFIG_NVM is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-CONFIG_INPUT_LEDS=y
-CONFIG_INPUT_FF_MEMLESS=y
-CONFIG_INPUT_SPARSEKMAP=y
-# CONFIG_INPUT_MATRIXKMAP is not set
-
-#
-# Userland interfaces
-#
-# CONFIG_INPUT_MOUSEDEV is not set
-# CONFIG_INPUT_JOYDEV is not set
-CONFIG_INPUT_EVDEV=y
-# CONFIG_INPUT_EVBUG is not set
-
-#
-# Input Device Drivers
-#
-CONFIG_INPUT_KEYBOARD=y
-# CONFIG_KEYBOARD_ADP5588 is not set
-# CONFIG_KEYBOARD_ADP5589 is not set
-CONFIG_KEYBOARD_ATKBD=y
-# CONFIG_KEYBOARD_QT1050 is not set
-# CONFIG_KEYBOARD_QT1070 is not set
-# CONFIG_KEYBOARD_QT2160 is not set
-# CONFIG_KEYBOARD_DLINK_DIR685 is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_TCA6416 is not set
-# CONFIG_KEYBOARD_TCA8418 is not set
-# CONFIG_KEYBOARD_LM8323 is not set
-# CONFIG_KEYBOARD_LM8333 is not set
-# CONFIG_KEYBOARD_MAX7359 is not set
-# CONFIG_KEYBOARD_MCS is not set
-# CONFIG_KEYBOARD_MPR121 is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_OPENCORES is not set
-# CONFIG_KEYBOARD_SAMSUNG is not set
-# CONFIG_KEYBOARD_STOWAWAY is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-CONFIG_INPUT_MOUSE=y
-CONFIG_MOUSE_PS2=y
-CONFIG_MOUSE_PS2_ALPS=y
-CONFIG_MOUSE_PS2_BYD=y
-CONFIG_MOUSE_PS2_LOGIPS2PP=y
-CONFIG_MOUSE_PS2_SYNAPTICS=y
-CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y
-CONFIG_MOUSE_PS2_CYPRESS=y
-CONFIG_MOUSE_PS2_LIFEBOOK=y
-CONFIG_MOUSE_PS2_TRACKPOINT=y
-CONFIG_MOUSE_PS2_ELANTECH=y
-CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y
-CONFIG_MOUSE_PS2_SENTELIC=y
-CONFIG_MOUSE_PS2_TOUCHKIT=y
-CONFIG_MOUSE_PS2_FOCALTECH=y
-CONFIG_MOUSE_PS2_SMBUS=y
-# CONFIG_MOUSE_SERIAL is not set
-# CONFIG_MOUSE_APPLETOUCH is not set
-# CONFIG_MOUSE_BCM5974 is not set
-# CONFIG_MOUSE_CYAPA is not set
-# CONFIG_MOUSE_ELAN_I2C is not set
-# CONFIG_MOUSE_VSXXXAA is not set
-CONFIG_MOUSE_SYNAPTICS_I2C=y
-# CONFIG_MOUSE_SYNAPTICS_USB is not set
-# CONFIG_INPUT_JOYSTICK is not set
-# CONFIG_INPUT_TABLET is not set
-# CONFIG_INPUT_TOUCHSCREEN is not set
-# CONFIG_INPUT_MISC is not set
-# CONFIG_RMI4_CORE is not set
-
-#
-# Hardware I/O ports
-#
-CONFIG_SERIO=y
-CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y
-CONFIG_SERIO_I8042=y
-CONFIG_SERIO_SERPORT=y
-# CONFIG_SERIO_CT82C710 is not set
-# CONFIG_SERIO_PCIPS2 is not set
-CONFIG_SERIO_LIBPS2=y
-# CONFIG_SERIO_RAW is not set
-# CONFIG_SERIO_ALTERA_PS2 is not set
-# CONFIG_SERIO_PS2MULT is not set
-# CONFIG_SERIO_ARC_PS2 is not set
-# CONFIG_USERIO is not set
-# CONFIG_GAMEPORT is not set
-# end of Hardware I/O ports
-# end of Input device support
-
-#
-# Character devices
-#
-CONFIG_TTY=y
-CONFIG_VT=y
-CONFIG_CONSOLE_TRANSLATIONS=y
-CONFIG_VT_CONSOLE=y
-CONFIG_VT_CONSOLE_SLEEP=y
-CONFIG_HW_CONSOLE=y
-CONFIG_VT_HW_CONSOLE_BINDING=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_LEGACY_PTYS is not set
-CONFIG_LDISC_AUTOLOAD=y
-
-#
-# Serial drivers
-#
-CONFIG_SERIAL_EARLYCON=y
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
-CONFIG_SERIAL_8250_PNP=y
-# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_FINTEK is not set
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_DMA=y
-CONFIG_SERIAL_8250_PCI=y
-CONFIG_SERIAL_8250_EXAR=y
-# CONFIG_SERIAL_8250_CS is not set
-CONFIG_SERIAL_8250_NR_UARTS=32
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-CONFIG_SERIAL_8250_EXTENDED=y
-CONFIG_SERIAL_8250_MANY_PORTS=y
-CONFIG_SERIAL_8250_SHARE_IRQ=y
-CONFIG_SERIAL_8250_DETECT_IRQ=y
-CONFIG_SERIAL_8250_RSA=y
-CONFIG_SERIAL_8250_DWLIB=y
-# CONFIG_SERIAL_8250_DW is not set
-# CONFIG_SERIAL_8250_RT288X is not set
-CONFIG_SERIAL_8250_LPSS=y
-CONFIG_SERIAL_8250_MID=y
-
-#
-# Non-8250 serial port support
-#
-# CONFIG_SERIAL_UARTLITE is not set
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-# CONFIG_SERIAL_JSM is not set
-# CONFIG_SERIAL_LANTIQ is not set
-# CONFIG_SERIAL_SCCNXP is not set
-# CONFIG_SERIAL_SC16IS7XX is not set
-# CONFIG_SERIAL_BCM63XX is not set
-# CONFIG_SERIAL_ALTERA_JTAGUART is not set
-# CONFIG_SERIAL_ALTERA_UART is not set
-# CONFIG_SERIAL_ARC is not set
-# CONFIG_SERIAL_RP2 is not set
-# CONFIG_SERIAL_FSL_LPUART is not set
-# CONFIG_SERIAL_FSL_LINFLEXUART is not set
-# CONFIG_SERIAL_SPRD is not set
-# end of Serial drivers
-
-CONFIG_SERIAL_NONSTANDARD=y
-# CONFIG_MOXA_INTELLIO is not set
-# CONFIG_MOXA_SMARTIO is not set
-# CONFIG_SYNCLINK_GT is not set
-# CONFIG_N_HDLC is not set
-# CONFIG_N_GSM is not set
-# CONFIG_NOZOMI is not set
-# CONFIG_NULL_TTY is not set
-# CONFIG_SERIAL_DEV_BUS is not set
-# CONFIG_VIRTIO_CONSOLE is not set
-# CONFIG_IPMI_HANDLER is not set
-CONFIG_HW_RANDOM=y
-# CONFIG_HW_RANDOM_TIMERIOMEM is not set
-# CONFIG_HW_RANDOM_INTEL is not set
-# CONFIG_HW_RANDOM_AMD is not set
-# CONFIG_HW_RANDOM_BA431 is not set
-CONFIG_HW_RANDOM_VIA=y
-# CONFIG_HW_RANDOM_XIPHERA is not set
-# CONFIG_APPLICOM is not set
-
-#
-# PCMCIA character devices
-#
-# CONFIG_SYNCLINK_CS is not set
-# CONFIG_CARDMAN_4000 is not set
-# CONFIG_CARDMAN_4040 is not set
-# CONFIG_SCR24X is not set
-# CONFIG_IPWIRELESS is not set
-# end of PCMCIA character devices
-
-# CONFIG_MWAVE is not set
-CONFIG_DEVMEM=y
-CONFIG_NVRAM=y
-# CONFIG_RAW_DRIVER is not set
-CONFIG_DEVPORT=y
-CONFIG_HPET=y
-# CONFIG_HPET_MMAP is not set
-# CONFIG_HANGCHECK_TIMER is not set
-# CONFIG_TCG_TPM is not set
-# CONFIG_TELCLOCK is not set
-# CONFIG_XILLYBUS is not set
-# end of Character devices
-
-# CONFIG_RANDOM_TRUST_CPU is not set
-# CONFIG_RANDOM_TRUST_BOOTLOADER is not set
-
-#
-# I2C support
-#
-CONFIG_I2C=y
-CONFIG_ACPI_I2C_OPREGION=y
-CONFIG_I2C_BOARDINFO=y
-CONFIG_I2C_COMPAT=y
-# CONFIG_I2C_CHARDEV is not set
-# CONFIG_I2C_MUX is not set
-CONFIG_I2C_HELPER_AUTO=y
-CONFIG_I2C_SMBUS=y
-CONFIG_I2C_ALGOBIT=y
-
-#
-# I2C Hardware Bus support
-#
-
-#
-# PC SMBus host controller drivers
-#
-# CONFIG_I2C_ALI1535 is not set
-# CONFIG_I2C_ALI1563 is not set
-# CONFIG_I2C_ALI15X3 is not set
-# CONFIG_I2C_AMD756 is not set
-# CONFIG_I2C_AMD8111 is not set
-# CONFIG_I2C_AMD_MP2 is not set
-CONFIG_I2C_I801=y
-# CONFIG_I2C_ISCH is not set
-# CONFIG_I2C_ISMT is not set
-# CONFIG_I2C_PIIX4 is not set
-# CONFIG_I2C_NFORCE2 is not set
-# CONFIG_I2C_NVIDIA_GPU is not set
-# CONFIG_I2C_SIS5595 is not set
-# CONFIG_I2C_SIS630 is not set
-# CONFIG_I2C_SIS96X is not set
-# CONFIG_I2C_VIA is not set
-# CONFIG_I2C_VIAPRO is not set
-
-#
-# ACPI drivers
-#
-# CONFIG_I2C_SCMI is not set
-
-#
-# I2C system bus drivers (mostly embedded / system-on-chip)
-#
-# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
-# CONFIG_I2C_DESIGNWARE_PCI is not set
-# CONFIG_I2C_EMEV2 is not set
-# CONFIG_I2C_OCORES is not set
-# CONFIG_I2C_PCA_PLATFORM is not set
-# CONFIG_I2C_SIMTEC is not set
-# CONFIG_I2C_XILINX is not set
-
-#
-# External I2C/SMBus adapter drivers
-#
-# CONFIG_I2C_DIOLAN_U2C is not set
-# CONFIG_I2C_CP2615 is not set
-# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
-# CONFIG_I2C_TAOS_EVM is not set
-# CONFIG_I2C_TINY_USB is not set
-
-#
-# Other I2C/SMBus bus drivers
-#
-# CONFIG_I2C_MLXCPLD is not set
-# end of I2C Hardware Bus support
-
-# CONFIG_I2C_STUB is not set
-# CONFIG_I2C_SLAVE is not set
-# CONFIG_I2C_DEBUG_CORE is not set
-# CONFIG_I2C_DEBUG_ALGO is not set
-# CONFIG_I2C_DEBUG_BUS is not set
-# end of I2C support
-
-# CONFIG_I3C is not set
-# CONFIG_SPI is not set
-# CONFIG_SPMI is not set
-# CONFIG_HSI is not set
-CONFIG_PPS=y
-# CONFIG_PPS_DEBUG is not set
-
-#
-# PPS clients support
-#
-# CONFIG_PPS_CLIENT_KTIMER is not set
-# CONFIG_PPS_CLIENT_LDISC is not set
-# CONFIG_PPS_CLIENT_GPIO is not set
-
-#
-# PPS generators support
-#
-
-#
-# PTP clock support
-#
-CONFIG_PTP_1588_CLOCK=y
-
-#
-# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
-#
-# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set
-# CONFIG_PTP_1588_CLOCK_IDTCM is not set
-# CONFIG_PTP_1588_CLOCK_OCP is not set
-# end of PTP clock support
-
-# CONFIG_PINCTRL is not set
-# CONFIG_GPIOLIB is not set
-# CONFIG_W1 is not set
-# CONFIG_POWER_RESET is not set
-CONFIG_POWER_SUPPLY=y
-# CONFIG_POWER_SUPPLY_DEBUG is not set
-CONFIG_POWER_SUPPLY_HWMON=y
-# CONFIG_PDA_POWER is not set
-# CONFIG_TEST_POWER is not set
-# CONFIG_CHARGER_ADP5061 is not set
-# CONFIG_BATTERY_CW2015 is not set
-# CONFIG_BATTERY_DS2780 is not set
-# CONFIG_BATTERY_DS2781 is not set
-# CONFIG_BATTERY_DS2782 is not set
-# CONFIG_BATTERY_SBS is not set
-# CONFIG_CHARGER_SBS is not set
-# CONFIG_BATTERY_BQ27XXX is not set
-# CONFIG_BATTERY_MAX17040 is not set
-# CONFIG_BATTERY_MAX17042 is not set
-# CONFIG_CHARGER_MAX8903 is not set
-# CONFIG_CHARGER_LP8727 is not set
-# CONFIG_CHARGER_LTC4162L is not set
-# CONFIG_CHARGER_BQ2415X is not set
-# CONFIG_CHARGER_SMB347 is not set
-# CONFIG_BATTERY_GAUGE_LTC2941 is not set
-# CONFIG_BATTERY_GOLDFISH is not set
-# CONFIG_BATTERY_RT5033 is not set
-# CONFIG_CHARGER_BD99954 is not set
-CONFIG_HWMON=y
-# CONFIG_HWMON_DEBUG_CHIP is not set
-
-#
-# Native drivers
-#
-# CONFIG_SENSORS_ABITUGURU is not set
-# CONFIG_SENSORS_ABITUGURU3 is not set
-# CONFIG_SENSORS_AD7414 is not set
-# CONFIG_SENSORS_AD7418 is not set
-# CONFIG_SENSORS_ADM1021 is not set
-# CONFIG_SENSORS_ADM1025 is not set
-# CONFIG_SENSORS_ADM1026 is not set
-# CONFIG_SENSORS_ADM1029 is not set
-# CONFIG_SENSORS_ADM1031 is not set
-# CONFIG_SENSORS_ADM1177 is not set
-# CONFIG_SENSORS_ADM9240 is not set
-# CONFIG_SENSORS_ADT7410 is not set
-# CONFIG_SENSORS_ADT7411 is not set
-# CONFIG_SENSORS_ADT7462 is not set
-# CONFIG_SENSORS_ADT7470 is not set
-# CONFIG_SENSORS_ADT7475 is not set
-# CONFIG_SENSORS_AHT10 is not set
-# CONFIG_SENSORS_AS370 is not set
-# CONFIG_SENSORS_ASC7621 is not set
-# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
-# CONFIG_SENSORS_K8TEMP is not set
-# CONFIG_SENSORS_K10TEMP is not set
-# CONFIG_SENSORS_FAM15H_POWER is not set
-# CONFIG_SENSORS_APPLESMC is not set
-# CONFIG_SENSORS_ASB100 is not set
-# CONFIG_SENSORS_ASPEED is not set
-# CONFIG_SENSORS_ATXP1 is not set
-# CONFIG_SENSORS_CORSAIR_CPRO is not set
-# CONFIG_SENSORS_CORSAIR_PSU is not set
-# CONFIG_SENSORS_DRIVETEMP is not set
-# CONFIG_SENSORS_DS620 is not set
-# CONFIG_SENSORS_DS1621 is not set
-# CONFIG_SENSORS_DELL_SMM is not set
-# CONFIG_SENSORS_I5K_AMB is not set
-# CONFIG_SENSORS_F71805F is not set
-# CONFIG_SENSORS_F71882FG is not set
-# CONFIG_SENSORS_F75375S is not set
-# CONFIG_SENSORS_FSCHMD is not set
-# CONFIG_SENSORS_FTSTEUTATES is not set
-# CONFIG_SENSORS_GL518SM is not set
-# CONFIG_SENSORS_GL520SM is not set
-# CONFIG_SENSORS_G760A is not set
-# CONFIG_SENSORS_G762 is not set
-# CONFIG_SENSORS_HIH6130 is not set
-# CONFIG_SENSORS_I5500 is not set
-CONFIG_SENSORS_CORETEMP=y
-# CONFIG_SENSORS_IT87 is not set
-# CONFIG_SENSORS_JC42 is not set
-# CONFIG_SENSORS_POWR1220 is not set
-# CONFIG_SENSORS_LINEAGE is not set
-# CONFIG_SENSORS_LTC2945 is not set
-# CONFIG_SENSORS_LTC2947_I2C is not set
-# CONFIG_SENSORS_LTC2990 is not set
-# CONFIG_SENSORS_LTC4151 is not set
-# CONFIG_SENSORS_LTC4215 is not set
-# CONFIG_SENSORS_LTC4222 is not set
-# CONFIG_SENSORS_LTC4245 is not set
-# CONFIG_SENSORS_LTC4260 is not set
-# CONFIG_SENSORS_LTC4261 is not set
-# CONFIG_SENSORS_MAX127 is not set
-# CONFIG_SENSORS_MAX16065 is not set
-# CONFIG_SENSORS_MAX1619 is not set
-# CONFIG_SENSORS_MAX1668 is not set
-# CONFIG_SENSORS_MAX197 is not set
-# CONFIG_SENSORS_MAX31730 is not set
-# CONFIG_SENSORS_MAX6621 is not set
-# CONFIG_SENSORS_MAX6639 is not set
-# CONFIG_SENSORS_MAX6642 is not set
-# CONFIG_SENSORS_MAX6650 is not set
-# CONFIG_SENSORS_MAX6697 is not set
-# CONFIG_SENSORS_MAX31790 is not set
-# CONFIG_SENSORS_MCP3021 is not set
-# CONFIG_SENSORS_TC654 is not set
-# CONFIG_SENSORS_TPS23861 is not set
-# CONFIG_SENSORS_MR75203 is not set
-# CONFIG_SENSORS_LM63 is not set
-# CONFIG_SENSORS_LM73 is not set
-# CONFIG_SENSORS_LM75 is not set
-# CONFIG_SENSORS_LM77 is not set
-# CONFIG_SENSORS_LM78 is not set
-# CONFIG_SENSORS_LM80 is not set
-# CONFIG_SENSORS_LM83 is not set
-# CONFIG_SENSORS_LM85 is not set
-# CONFIG_SENSORS_LM87 is not set
-# CONFIG_SENSORS_LM90 is not set
-# CONFIG_SENSORS_LM92 is not set
-# CONFIG_SENSORS_LM93 is not set
-# CONFIG_SENSORS_LM95234 is not set
-# CONFIG_SENSORS_LM95241 is not set
-# CONFIG_SENSORS_LM95245 is not set
-# CONFIG_SENSORS_PC87360 is not set
-# CONFIG_SENSORS_PC87427 is not set
-# CONFIG_SENSORS_NTC_THERMISTOR is not set
-# CONFIG_SENSORS_NCT6683 is not set
-# CONFIG_SENSORS_NCT6775 is not set
-# CONFIG_SENSORS_NCT7802 is not set
-# CONFIG_SENSORS_NCT7904 is not set
-# CONFIG_SENSORS_NPCM7XX is not set
-# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
-# CONFIG_SENSORS_PCF8591 is not set
-# CONFIG_PMBUS is not set
-# CONFIG_SENSORS_SBTSI is not set
-# CONFIG_SENSORS_SHT21 is not set
-# CONFIG_SENSORS_SHT3x is not set
-# CONFIG_SENSORS_SHTC1 is not set
-# CONFIG_SENSORS_SIS5595 is not set
-# CONFIG_SENSORS_DME1737 is not set
-# CONFIG_SENSORS_EMC1403 is not set
-# CONFIG_SENSORS_EMC2103 is not set
-# CONFIG_SENSORS_EMC6W201 is not set
-# CONFIG_SENSORS_SMSC47M1 is not set
-# CONFIG_SENSORS_SMSC47M192 is not set
-# CONFIG_SENSORS_SMSC47B397 is not set
-# CONFIG_SENSORS_SCH5627 is not set
-# CONFIG_SENSORS_SCH5636 is not set
-# CONFIG_SENSORS_STTS751 is not set
-# CONFIG_SENSORS_SMM665 is not set
-# CONFIG_SENSORS_ADC128D818 is not set
-# CONFIG_SENSORS_ADS7828 is not set
-# CONFIG_SENSORS_AMC6821 is not set
-# CONFIG_SENSORS_INA209 is not set
-# CONFIG_SENSORS_INA2XX is not set
-# CONFIG_SENSORS_INA3221 is not set
-# CONFIG_SENSORS_TC74 is not set
-# CONFIG_SENSORS_THMC50 is not set
-# CONFIG_SENSORS_TMP102 is not set
-# CONFIG_SENSORS_TMP103 is not set
-# CONFIG_SENSORS_TMP108 is not set
-# CONFIG_SENSORS_TMP401 is not set
-# CONFIG_SENSORS_TMP421 is not set
-# CONFIG_SENSORS_TMP513 is not set
-# CONFIG_SENSORS_VIA_CPUTEMP is not set
-# CONFIG_SENSORS_VIA686A is not set
-# CONFIG_SENSORS_VT1211 is not set
-# CONFIG_SENSORS_VT8231 is not set
-# CONFIG_SENSORS_W83773G is not set
-# CONFIG_SENSORS_W83781D is not set
-# CONFIG_SENSORS_W83791D is not set
-# CONFIG_SENSORS_W83792D is not set
-# CONFIG_SENSORS_W83793 is not set
-# CONFIG_SENSORS_W83795 is not set
-# CONFIG_SENSORS_W83L785TS is not set
-# CONFIG_SENSORS_W83L786NG is not set
-# CONFIG_SENSORS_W83627HF is not set
-# CONFIG_SENSORS_W83627EHF is not set
-
-#
-# ACPI drivers
-#
-# CONFIG_SENSORS_ACPI_POWER is not set
-# CONFIG_SENSORS_ATK0110 is not set
-CONFIG_THERMAL=y
-# CONFIG_THERMAL_NETLINK is not set
-# CONFIG_THERMAL_STATISTICS is not set
-CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
-CONFIG_THERMAL_HWMON=y
-CONFIG_THERMAL_WRITABLE_TRIPS=y
-CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
-# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
-# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
-# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
-CONFIG_THERMAL_GOV_STEP_WISE=y
-# CONFIG_THERMAL_GOV_BANG_BANG is not set
-CONFIG_THERMAL_GOV_USER_SPACE=y
-# CONFIG_THERMAL_EMULATION is not set
-
-#
-# Intel thermal drivers
-#
-# CONFIG_INTEL_POWERCLAMP is not set
-CONFIG_X86_THERMAL_VECTOR=y
-CONFIG_X86_PKG_TEMP_THERMAL=m
-# CONFIG_INTEL_SOC_DTS_THERMAL is not set
-
-#
-# ACPI INT340X thermal drivers
-#
-# CONFIG_INT340X_THERMAL is not set
-# end of ACPI INT340X thermal drivers
-
-# CONFIG_INTEL_PCH_THERMAL is not set
-# CONFIG_INTEL_TCC_COOLING is not set
-# end of Intel thermal drivers
-
-CONFIG_WATCHDOG=y
-# CONFIG_WATCHDOG_CORE is not set
-# CONFIG_WATCHDOG_NOWAYOUT is not set
-CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
-CONFIG_WATCHDOG_OPEN_TIMEOUT=0
-# CONFIG_WATCHDOG_SYSFS is not set
-
-#
-# Watchdog Pretimeout Governors
-#
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-# CONFIG_WDAT_WDT is not set
-# CONFIG_XILINX_WATCHDOG is not set
-# CONFIG_ZIIRAVE_WATCHDOG is not set
-# CONFIG_CADENCE_WATCHDOG is not set
-# CONFIG_DW_WATCHDOG is not set
-# CONFIG_MAX63XX_WATCHDOG is not set
-# CONFIG_ACQUIRE_WDT is not set
-# CONFIG_ADVANTECH_WDT is not set
-# CONFIG_ALIM1535_WDT is not set
-# CONFIG_ALIM7101_WDT is not set
-# CONFIG_EBC_C384_WDT is not set
-# CONFIG_F71808E_WDT is not set
-# CONFIG_SP5100_TCO is not set
-# CONFIG_SBC_FITPC2_WATCHDOG is not set
-# CONFIG_EUROTECH_WDT is not set
-# CONFIG_IB700_WDT is not set
-# CONFIG_IBMASR is not set
-# CONFIG_WAFER_WDT is not set
-# CONFIG_I6300ESB_WDT is not set
-# CONFIG_IE6XX_WDT is not set
-# CONFIG_ITCO_WDT is not set
-# CONFIG_IT8712F_WDT is not set
-# CONFIG_IT87_WDT is not set
-# CONFIG_HP_WATCHDOG is not set
-# CONFIG_SC1200_WDT is not set
-# CONFIG_PC87413_WDT is not set
-# CONFIG_NV_TCO is not set
-# CONFIG_60XX_WDT is not set
-# CONFIG_CPU5_WDT is not set
-# CONFIG_SMSC_SCH311X_WDT is not set
-# CONFIG_SMSC37B787_WDT is not set
-# CONFIG_TQMX86_WDT is not set
-# CONFIG_VIA_WDT is not set
-# CONFIG_W83627HF_WDT is not set
-# CONFIG_W83877F_WDT is not set
-# CONFIG_W83977F_WDT is not set
-# CONFIG_MACHZ_WDT is not set
-# CONFIG_SBC_EPX_C3_WATCHDOG is not set
-# CONFIG_NI903X_WDT is not set
-# CONFIG_NIC7018_WDT is not set
-
-#
-# PCI-based Watchdog Cards
-#
-# CONFIG_PCIPCWATCHDOG is not set
-# CONFIG_WDTPCI is not set
-
-#
-# USB-based Watchdog Cards
-#
-# CONFIG_USBPCWATCHDOG is not set
-CONFIG_SSB_POSSIBLE=y
-# CONFIG_SSB is not set
-CONFIG_BCMA_POSSIBLE=y
-# CONFIG_BCMA is not set
-
-#
-# Multifunction device drivers
-#
-CONFIG_MFD_CORE=y
-# CONFIG_MFD_AS3711 is not set
-# CONFIG_PMIC_ADP5520 is not set
-# CONFIG_MFD_BCM590XX is not set
-# CONFIG_MFD_BD9571MWV is not set
-# CONFIG_MFD_AXP20X_I2C is not set
-# CONFIG_MFD_MADERA is not set
-# CONFIG_PMIC_DA903X is not set
-# CONFIG_MFD_DA9052_I2C is not set
-# CONFIG_MFD_DA9055 is not set
-# CONFIG_MFD_DA9062 is not set
-# CONFIG_MFD_DA9063 is not set
-# CONFIG_MFD_DA9150 is not set
-# CONFIG_MFD_DLN2 is not set
-# CONFIG_MFD_MC13XXX_I2C is not set
-# CONFIG_MFD_MP2629 is not set
-# CONFIG_HTC_PASIC3 is not set
-CONFIG_MFD_INTEL_QUARK_I2C_GPIO=y
-CONFIG_LPC_ICH=y
-CONFIG_LPC_SCH=y
-# CONFIG_INTEL_SOC_PMIC_BXTWC is not set
-CONFIG_MFD_INTEL_LPSS=y
-CONFIG_MFD_INTEL_LPSS_ACPI=y
-CONFIG_MFD_INTEL_LPSS_PCI=y
-CONFIG_MFD_INTEL_PMC_BXT=y
-CONFIG_MFD_INTEL_PMT=y
-# CONFIG_MFD_IQS62X is not set
-# CONFIG_MFD_JANZ_CMODIO is not set
-# CONFIG_MFD_KEMPLD is not set
-# CONFIG_MFD_88PM800 is not set
-# CONFIG_MFD_88PM805 is not set
-# CONFIG_MFD_88PM860X is not set
-# CONFIG_MFD_MAX14577 is not set
-# CONFIG_MFD_MAX77693 is not set
-# CONFIG_MFD_MAX77843 is not set
-# CONFIG_MFD_MAX8907 is not set
-# CONFIG_MFD_MAX8925 is not set
-# CONFIG_MFD_MAX8997 is not set
-# CONFIG_MFD_MAX8998 is not set
-# CONFIG_MFD_MT6360 is not set
-# CONFIG_MFD_MT6397 is not set
-# CONFIG_MFD_MENF21BMC is not set
-# CONFIG_MFD_VIPERBOARD is not set
-# CONFIG_MFD_RETU is not set
-# CONFIG_MFD_PCF50633 is not set
-# CONFIG_MFD_RDC321X is not set
-# CONFIG_MFD_RT5033 is not set
-# CONFIG_MFD_RC5T583 is not set
-# CONFIG_MFD_SEC_CORE is not set
-# CONFIG_MFD_SI476X_CORE is not set
-# CONFIG_MFD_SM501 is not set
-# CONFIG_MFD_SKY81452 is not set
-# CONFIG_MFD_SYSCON is not set
-# CONFIG_MFD_TI_AM335X_TSCADC is not set
-# CONFIG_MFD_LP3943 is not set
-# CONFIG_MFD_LP8788 is not set
-# CONFIG_MFD_TI_LMU is not set
-# CONFIG_MFD_PALMAS is not set
-# CONFIG_TPS6105X is not set
-# CONFIG_TPS6507X is not set
-# CONFIG_MFD_TPS65086 is not set
-# CONFIG_MFD_TPS65090 is not set
-# CONFIG_MFD_TI_LP873X is not set
-# CONFIG_MFD_TPS6586X is not set
-# CONFIG_MFD_TPS65912_I2C is not set
-# CONFIG_MFD_TPS80031 is not set
-# CONFIG_TWL4030_CORE is not set
-# CONFIG_TWL6040_CORE is not set
-# CONFIG_MFD_WL1273_CORE is not set
-# CONFIG_MFD_LM3533 is not set
-# CONFIG_MFD_TQMX86 is not set
-# CONFIG_MFD_VX855 is not set
-# CONFIG_MFD_ARIZONA_I2C is not set
-# CONFIG_MFD_WM8400 is not set
-# CONFIG_MFD_WM831X_I2C is not set
-# CONFIG_MFD_WM8350_I2C is not set
-# CONFIG_MFD_WM8994 is not set
-# CONFIG_MFD_ATC260X_I2C is not set
-# end of Multifunction device drivers
-
-# CONFIG_REGULATOR is not set
-# CONFIG_RC_CORE is not set
-# CONFIG_MEDIA_CEC_SUPPORT is not set
-# CONFIG_MEDIA_SUPPORT is not set
-
-#
-# Graphics support
-#
-CONFIG_AGP=y
-CONFIG_AGP_AMD64=y
-CONFIG_AGP_INTEL=y
-# CONFIG_AGP_SIS is not set
-# CONFIG_AGP_VIA is not set
-CONFIG_INTEL_GTT=y
-CONFIG_VGA_ARB=y
-CONFIG_VGA_ARB_MAX_GPUS=2
-# CONFIG_VGA_SWITCHEROO is not set
-CONFIG_DRM=y
-CONFIG_DRM_MIPI_DSI=y
-# CONFIG_DRM_DP_AUX_CHARDEV is not set
-# CONFIG_DRM_DEBUG_MM is not set
-# CONFIG_DRM_DEBUG_SELFTEST is not set
-CONFIG_DRM_KMS_HELPER=y
-CONFIG_DRM_KMS_FB_HELPER=y
-CONFIG_DRM_FBDEV_EMULATION=y
-CONFIG_DRM_FBDEV_OVERALLOC=100
-# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
-# CONFIG_DRM_DP_CEC is not set
-
-#
-# I2C encoder or helper chips
-#
-# CONFIG_DRM_I2C_CH7006 is not set
-# CONFIG_DRM_I2C_SIL164 is not set
-# CONFIG_DRM_I2C_NXP_TDA998X is not set
-# CONFIG_DRM_I2C_NXP_TDA9950 is not set
-# end of I2C encoder or helper chips
-
-#
-# ARM devices
-#
-# end of ARM devices
-
-# CONFIG_DRM_RADEON is not set
-# CONFIG_DRM_AMDGPU is not set
-# CONFIG_DRM_NOUVEAU is not set
-CONFIG_DRM_I915=y
-CONFIG_DRM_I915_FORCE_PROBE=""
-CONFIG_DRM_I915_CAPTURE_ERROR=y
-CONFIG_DRM_I915_COMPRESS_ERROR=y
-CONFIG_DRM_I915_USERPTR=y
-# CONFIG_DRM_I915_GVT is not set
-CONFIG_DRM_I915_REQUEST_TIMEOUT=20000
-CONFIG_DRM_I915_FENCE_TIMEOUT=10000
-CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250
-CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500
-CONFIG_DRM_I915_PREEMPT_TIMEOUT=640
-CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000
-CONFIG_DRM_I915_STOP_TIMEOUT=100
-CONFIG_DRM_I915_TIMESLICE_DURATION=1
-# CONFIG_DRM_VGEM is not set
-# CONFIG_DRM_VKMS is not set
-# CONFIG_DRM_VMWGFX is not set
-# CONFIG_DRM_GMA500 is not set
-# CONFIG_DRM_UDL is not set
-# CONFIG_DRM_AST is not set
-# CONFIG_DRM_MGAG200 is not set
-# CONFIG_DRM_QXL is not set
-# CONFIG_DRM_BOCHS is not set
-# CONFIG_DRM_VIRTIO_GPU is not set
-CONFIG_DRM_PANEL=y
-
-#
-# Display Panels
-#
-# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
-# end of Display Panels
-
-CONFIG_DRM_BRIDGE=y
-CONFIG_DRM_PANEL_BRIDGE=y
-
-#
-# Display Interface Bridges
-#
-# CONFIG_DRM_ANALOGIX_ANX78XX is not set
-# end of Display Interface Bridges
-
-# CONFIG_DRM_ETNAVIV is not set
-# CONFIG_DRM_CIRRUS_QEMU is not set
-# CONFIG_DRM_GM12U320 is not set
-# CONFIG_DRM_VBOXVIDEO is not set
-# CONFIG_DRM_GUD is not set
-# CONFIG_DRM_LEGACY is not set
-CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y
-
-#
-# Frame buffer Devices
-#
-CONFIG_FB_CMDLINE=y
-CONFIG_FB_NOTIFY=y
-CONFIG_FB=y
-# CONFIG_FIRMWARE_EDID is not set
-CONFIG_FB_CFB_FILLRECT=y
-CONFIG_FB_CFB_COPYAREA=y
-CONFIG_FB_CFB_IMAGEBLIT=y
-CONFIG_FB_SYS_FILLRECT=y
-CONFIG_FB_SYS_COPYAREA=y
-CONFIG_FB_SYS_IMAGEBLIT=y
-# CONFIG_FB_FOREIGN_ENDIAN is not set
-CONFIG_FB_SYS_FOPS=y
-CONFIG_FB_DEFERRED_IO=y
-CONFIG_FB_MODE_HELPERS=y
-CONFIG_FB_TILEBLITTING=y
-
-#
-# Frame buffer hardware drivers
-#
-# CONFIG_FB_CIRRUS is not set
-# CONFIG_FB_PM2 is not set
-# CONFIG_FB_CYBER2000 is not set
-# CONFIG_FB_ARC is not set
-# CONFIG_FB_ASILIANT is not set
-# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_VGA16 is not set
-# CONFIG_FB_UVESA is not set
-# CONFIG_FB_VESA is not set
-CONFIG_FB_EFI=y
-# CONFIG_FB_N411 is not set
-# CONFIG_FB_HGA is not set
-# CONFIG_FB_OPENCORES is not set
-# CONFIG_FB_S1D13XXX is not set
-# CONFIG_FB_NVIDIA is not set
-# CONFIG_FB_RIVA is not set
-# CONFIG_FB_I740 is not set
-# CONFIG_FB_LE80578 is not set
-# CONFIG_FB_MATROX is not set
-# CONFIG_FB_RADEON is not set
-# CONFIG_FB_ATY128 is not set
-# CONFIG_FB_ATY is not set
-# CONFIG_FB_S3 is not set
-# CONFIG_FB_SAVAGE is not set
-# CONFIG_FB_SIS is not set
-# CONFIG_FB_NEOMAGIC is not set
-# CONFIG_FB_KYRO is not set
-# CONFIG_FB_3DFX is not set
-# CONFIG_FB_VOODOO1 is not set
-# CONFIG_FB_VT8623 is not set
-# CONFIG_FB_TRIDENT is not set
-# CONFIG_FB_ARK is not set
-# CONFIG_FB_PM3 is not set
-# CONFIG_FB_CARMINE is not set
-# CONFIG_FB_SMSCUFX is not set
-# CONFIG_FB_UDL is not set
-# CONFIG_FB_IBM_GXT4500 is not set
-# CONFIG_FB_VIRTUAL is not set
-# CONFIG_FB_METRONOME is not set
-# CONFIG_FB_MB862XX is not set
-# CONFIG_FB_SIMPLE is not set
-# CONFIG_FB_SM712 is not set
-# end of Frame buffer Devices
-
-#
-# Backlight & LCD device support
-#
-# CONFIG_LCD_CLASS_DEVICE is not set
-CONFIG_BACKLIGHT_CLASS_DEVICE=y
-# CONFIG_BACKLIGHT_APPLE is not set
-# CONFIG_BACKLIGHT_QCOM_WLED is not set
-# CONFIG_BACKLIGHT_SAHARA is not set
-# CONFIG_BACKLIGHT_ADP8860 is not set
-# CONFIG_BACKLIGHT_ADP8870 is not set
-# CONFIG_BACKLIGHT_LM3639 is not set
-# CONFIG_BACKLIGHT_LV5207LP is not set
-# CONFIG_BACKLIGHT_BD6107 is not set
-# CONFIG_BACKLIGHT_ARCXCNN is not set
-# end of Backlight & LCD device support
-
-CONFIG_HDMI=y
-
-#
-# Console display driver support
-#
-CONFIG_VGA_CONSOLE=y
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_DUMMY_CONSOLE_COLUMNS=80
-CONFIG_DUMMY_CONSOLE_ROWS=25
-CONFIG_FRAMEBUFFER_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
-# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
-# end of Console display driver support
-
-CONFIG_LOGO=y
-# CONFIG_LOGO_LINUX_MONO is not set
-# CONFIG_LOGO_LINUX_VGA16 is not set
-CONFIG_LOGO_LINUX_CLUT224=y
-# end of Graphics support
-
-CONFIG_SOUND=y
-CONFIG_SND=y
-CONFIG_SND_TIMER=y
-CONFIG_SND_PCM=y
-CONFIG_SND_HWDEP=y
-CONFIG_SND_SEQ_DEVICE=y
-CONFIG_SND_RAWMIDI=y
-CONFIG_SND_JACK=y
-CONFIG_SND_JACK_INPUT_DEV=y
-# CONFIG_SND_OSSEMUL is not set
-CONFIG_SND_PCM_TIMER=y
-CONFIG_SND_HRTIMER=y
-CONFIG_SND_DYNAMIC_MINORS=y
-CONFIG_SND_MAX_CARDS=32
-CONFIG_SND_SUPPORT_OLD_API=y
-CONFIG_SND_PROC_FS=y
-CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
-# CONFIG_SND_DEBUG is not set
-CONFIG_SND_VMASTER=y
-CONFIG_SND_DMA_SGBUF=y
-CONFIG_SND_CTL_LED=y
-CONFIG_SND_SEQUENCER=y
-CONFIG_SND_SEQ_DUMMY=y
-CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
-CONFIG_SND_SEQ_MIDI_EVENT=y
-CONFIG_SND_SEQ_MIDI=y
-CONFIG_SND_AC97_CODEC=y
-CONFIG_SND_DRIVERS=y
-# CONFIG_SND_PCSP is not set
-# CONFIG_SND_DUMMY is not set
-# CONFIG_SND_ALOOP is not set
-# CONFIG_SND_VIRMIDI is not set
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_MPU401 is not set
-# CONFIG_SND_AC97_POWER_SAVE is not set
-CONFIG_SND_PCI=y
-# CONFIG_SND_AD1889 is not set
-# CONFIG_SND_ALS300 is not set
-# CONFIG_SND_ALS4000 is not set
-# CONFIG_SND_ALI5451 is not set
-# CONFIG_SND_ASIHPI is not set
-# CONFIG_SND_ATIIXP is not set
-# CONFIG_SND_ATIIXP_MODEM is not set
-# CONFIG_SND_AU8810 is not set
-# CONFIG_SND_AU8820 is not set
-# CONFIG_SND_AU8830 is not set
-# CONFIG_SND_AW2 is not set
-# CONFIG_SND_AZT3328 is not set
-# CONFIG_SND_BT87X is not set
-# CONFIG_SND_CA0106 is not set
-# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
-# CONFIG_SND_CS4281 is not set
-# CONFIG_SND_CS46XX is not set
-# CONFIG_SND_CTXFI is not set
-# CONFIG_SND_DARLA20 is not set
-# CONFIG_SND_GINA20 is not set
-# CONFIG_SND_LAYLA20 is not set
-# CONFIG_SND_DARLA24 is not set
-# CONFIG_SND_GINA24 is not set
-# CONFIG_SND_LAYLA24 is not set
-# CONFIG_SND_MONA is not set
-# CONFIG_SND_MIA is not set
-# CONFIG_SND_ECHO3G is not set
-# CONFIG_SND_INDIGO is not set
-# CONFIG_SND_INDIGOIO is not set
-# CONFIG_SND_INDIGODJ is not set
-# CONFIG_SND_INDIGOIOX is not set
-# CONFIG_SND_INDIGODJX is not set
-# CONFIG_SND_EMU10K1 is not set
-# CONFIG_SND_EMU10K1X is not set
-# CONFIG_SND_ENS1370 is not set
-# CONFIG_SND_ENS1371 is not set
-# CONFIG_SND_ES1938 is not set
-# CONFIG_SND_ES1968 is not set
-# CONFIG_SND_FM801 is not set
-# CONFIG_SND_HDSP is not set
-# CONFIG_SND_HDSPM is not set
-# CONFIG_SND_ICE1712 is not set
-# CONFIG_SND_ICE1724 is not set
-CONFIG_SND_INTEL8X0=y
-# CONFIG_SND_INTEL8X0M is not set
-# CONFIG_SND_KORG1212 is not set
-# CONFIG_SND_LOLA is not set
-# CONFIG_SND_LX6464ES is not set
-# CONFIG_SND_MAESTRO3 is not set
-# CONFIG_SND_MIXART is not set
-# CONFIG_SND_NM256 is not set
-# CONFIG_SND_PCXHR is not set
-# CONFIG_SND_RIPTIDE is not set
-# CONFIG_SND_RME32 is not set
-# CONFIG_SND_RME96 is not set
-# CONFIG_SND_RME9652 is not set
-# CONFIG_SND_SE6X is not set
-# CONFIG_SND_SONICVIBES is not set
-# CONFIG_SND_TRIDENT is not set
-# CONFIG_SND_VIA82XX is not set
-# CONFIG_SND_VIA82XX_MODEM is not set
-# CONFIG_SND_VIRTUOSO is not set
-# CONFIG_SND_VX222 is not set
-# CONFIG_SND_YMFPCI is not set
-
-#
-# HD-Audio
-#
-CONFIG_SND_HDA=y
-CONFIG_SND_HDA_GENERIC_LEDS=y
-CONFIG_SND_HDA_INTEL=y
-CONFIG_SND_HDA_HWDEP=y
-# CONFIG_SND_HDA_RECONFIG is not set
-# CONFIG_SND_HDA_INPUT_BEEP is not set
-# CONFIG_SND_HDA_PATCH_LOADER is not set
-# CONFIG_SND_HDA_CODEC_REALTEK is not set
-# CONFIG_SND_HDA_CODEC_ANALOG is not set
-# CONFIG_SND_HDA_CODEC_SIGMATEL is not set
-# CONFIG_SND_HDA_CODEC_VIA is not set
-CONFIG_SND_HDA_CODEC_HDMI=y
-# CONFIG_SND_HDA_CODEC_CIRRUS is not set
-CONFIG_SND_HDA_CODEC_CONEXANT=y
-# CONFIG_SND_HDA_CODEC_CA0110 is not set
-# CONFIG_SND_HDA_CODEC_CA0132 is not set
-# CONFIG_SND_HDA_CODEC_CMEDIA is not set
-# CONFIG_SND_HDA_CODEC_SI3054 is not set
-CONFIG_SND_HDA_GENERIC=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
-# CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM is not set
-# end of HD-Audio
-
-CONFIG_SND_HDA_CORE=y
-CONFIG_SND_HDA_COMPONENT=y
-CONFIG_SND_HDA_I915=y
-CONFIG_SND_HDA_PREALLOC_SIZE=0
-CONFIG_SND_INTEL_NHLT=y
-CONFIG_SND_INTEL_DSP_CONFIG=y
-CONFIG_SND_INTEL_SOUNDWIRE_ACPI=y
-CONFIG_SND_USB=y
-CONFIG_SND_USB_AUDIO=y
-# CONFIG_SND_USB_UA101 is not set
-# CONFIG_SND_USB_USX2Y is not set
-# CONFIG_SND_USB_CAIAQ is not set
-# CONFIG_SND_USB_US122L is not set
-# CONFIG_SND_USB_6FIRE is not set
-# CONFIG_SND_USB_HIFACE is not set
-# CONFIG_SND_BCD2000 is not set
-# CONFIG_SND_USB_POD is not set
-# CONFIG_SND_USB_PODHD is not set
-# CONFIG_SND_USB_TONEPORT is not set
-# CONFIG_SND_USB_VARIAX is not set
-CONFIG_SND_PCMCIA=y
-# CONFIG_SND_VXPOCKET is not set
-# CONFIG_SND_PDAUDIOCF is not set
-# CONFIG_SND_SOC is not set
-CONFIG_SND_X86=y
-# CONFIG_HDMI_LPE_AUDIO is not set
-CONFIG_AC97_BUS=y
-
-#
-# HID support
-#
-CONFIG_HID=y
-# CONFIG_HID_BATTERY_STRENGTH is not set
-CONFIG_HIDRAW=y
-# CONFIG_UHID is not set
-CONFIG_HID_GENERIC=y
-
-#
-# Special HID drivers
-#
-CONFIG_HID_A4TECH=y
-# CONFIG_HID_ACCUTOUCH is not set
-# CONFIG_HID_ACRUX is not set
-# CONFIG_HID_APPLE is not set
-# CONFIG_HID_APPLEIR is not set
-# CONFIG_HID_ASUS is not set
-# CONFIG_HID_AUREAL is not set
-CONFIG_HID_BELKIN=y
-# CONFIG_HID_BETOP_FF is not set
-# CONFIG_HID_BIGBEN_FF is not set
-CONFIG_HID_CHERRY=y
-CONFIG_HID_CHICONY=y
-# CONFIG_HID_CORSAIR is not set
-# CONFIG_HID_COUGAR is not set
-# CONFIG_HID_MACALLY is not set
-# CONFIG_HID_PRODIKEYS is not set
-# CONFIG_HID_CMEDIA is not set
-# CONFIG_HID_CREATIVE_SB0540 is not set
-CONFIG_HID_CYPRESS=y
-# CONFIG_HID_DRAGONRISE is not set
-# CONFIG_HID_EMS_FF is not set
-# CONFIG_HID_ELAN is not set
-# CONFIG_HID_ELECOM is not set
-# CONFIG_HID_ELO is not set
-CONFIG_HID_EZKEY=y
-# CONFIG_HID_FT260 is not set
-# CONFIG_HID_GEMBIRD is not set
-# CONFIG_HID_GFRM is not set
-# CONFIG_HID_GLORIOUS is not set
-# CONFIG_HID_HOLTEK is not set
-# CONFIG_HID_VIVALDI is not set
-# CONFIG_HID_GT683R is not set
-# CONFIG_HID_KEYTOUCH is not set
-# CONFIG_HID_KYE is not set
-# CONFIG_HID_UCLOGIC is not set
-# CONFIG_HID_WALTOP is not set
-# CONFIG_HID_VIEWSONIC is not set
-CONFIG_HID_GYRATION=y
-# CONFIG_HID_ICADE is not set
-CONFIG_HID_ITE=y
-# CONFIG_HID_JABRA is not set
-# CONFIG_HID_TWINHAN is not set
-CONFIG_HID_KENSINGTON=y
-# CONFIG_HID_LCPOWER is not set
-# CONFIG_HID_LED is not set
-# CONFIG_HID_LENOVO is not set
-CONFIG_HID_LOGITECH=y
-# CONFIG_HID_LOGITECH_DJ is not set
-# CONFIG_HID_LOGITECH_HIDPP is not set
-CONFIG_LOGITECH_FF=y
-# CONFIG_LOGIRUMBLEPAD2_FF is not set
-# CONFIG_LOGIG940_FF is not set
-CONFIG_LOGIWHEELS_FF=y
-# CONFIG_HID_MAGICMOUSE is not set
-# CONFIG_HID_MALTRON is not set
-# CONFIG_HID_MAYFLASH is not set
-CONFIG_HID_REDRAGON=y
-CONFIG_HID_MICROSOFT=y
-CONFIG_HID_MONTEREY=y
-CONFIG_HID_MULTITOUCH=m
-# CONFIG_HID_NTI is not set
-CONFIG_HID_NTRIG=y
-# CONFIG_HID_ORTEK is not set
-CONFIG_HID_PANTHERLORD=y
-CONFIG_PANTHERLORD_FF=y
-# CONFIG_HID_PENMOUNT is not set
-CONFIG_HID_PETALYNX=y
-# CONFIG_HID_PICOLCD is not set
-# CONFIG_HID_PLANTRONICS is not set
-# CONFIG_HID_PLAYSTATION is not set
-# CONFIG_HID_PRIMAX is not set
-# CONFIG_HID_RETRODE is not set
-# CONFIG_HID_ROCCAT is not set
-# CONFIG_HID_SAITEK is not set
-CONFIG_HID_SAMSUNG=y
-# CONFIG_HID_SEMITEK is not set
-CONFIG_HID_SONY=y
-# CONFIG_SONY_FF is not set
-# CONFIG_HID_SPEEDLINK is not set
-# CONFIG_HID_STEAM is not set
-# CONFIG_HID_STEELSERIES is not set
-CONFIG_HID_SUNPLUS=y
-# CONFIG_HID_RMI is not set
-# CONFIG_HID_GREENASIA is not set
-# CONFIG_HID_SMARTJOYPLUS is not set
-# CONFIG_HID_TIVO is not set
-CONFIG_HID_TOPSEED=y
-# CONFIG_HID_THINGM is not set
-# CONFIG_HID_THRUSTMASTER is not set
-# CONFIG_HID_UDRAW_PS3 is not set
-# CONFIG_HID_U2FZERO is not set
-# CONFIG_HID_WACOM is not set
-# CONFIG_HID_WIIMOTE is not set
-# CONFIG_HID_XINMO is not set
-# CONFIG_HID_ZEROPLUS is not set
-# CONFIG_HID_ZYDACRON is not set
-CONFIG_HID_SENSOR_HUB=m
-# CONFIG_HID_SENSOR_CUSTOM_SENSOR is not set
-# CONFIG_HID_ALPS is not set
-# end of Special HID drivers
-
-#
-# USB HID support
-#
-CONFIG_USB_HID=y
-CONFIG_HID_PID=y
-CONFIG_USB_HIDDEV=y
-# end of USB HID support
-
-#
-# I2C HID support
-#
-CONFIG_I2C_HID_ACPI=m
-# end of I2C HID support
-
-CONFIG_I2C_HID_CORE=m
-
-#
-# Intel ISH HID support
-#
-# CONFIG_INTEL_ISH_HID is not set
-# end of Intel ISH HID support
-
-#
-# AMD SFH HID Support
-#
-# CONFIG_AMD_SFH_HID is not set
-# end of AMD SFH HID Support
-# end of HID support
-
-CONFIG_USB_OHCI_LITTLE_ENDIAN=y
-CONFIG_USB_SUPPORT=y
-CONFIG_USB_COMMON=y
-# CONFIG_USB_LED_TRIG is not set
-# CONFIG_USB_ULPI_BUS is not set
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB=y
-CONFIG_USB_PCI=y
-CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
-
-#
-# Miscellaneous USB options
-#
-CONFIG_USB_DEFAULT_PERSIST=y
-# CONFIG_USB_FEW_INIT_RETRIES is not set
-# CONFIG_USB_DYNAMIC_MINORS is not set
-# CONFIG_USB_OTG is not set
-# CONFIG_USB_OTG_PRODUCTLIST is not set
-# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
-CONFIG_USB_AUTOSUSPEND_DELAY=2
-CONFIG_USB_MON=y
-
-#
-# USB Host Controller Drivers
-#
-# CONFIG_USB_C67X00_HCD is not set
-CONFIG_USB_XHCI_HCD=y
-# CONFIG_USB_XHCI_DBGCAP is not set
-CONFIG_USB_XHCI_PCI=y
-# CONFIG_USB_XHCI_PCI_RENESAS is not set
-# CONFIG_USB_XHCI_PLATFORM is not set
-CONFIG_USB_EHCI_HCD=y
-# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
-CONFIG_USB_EHCI_TT_NEWSCHED=y
-CONFIG_USB_EHCI_PCI=y
-# CONFIG_USB_EHCI_FSL is not set
-# CONFIG_USB_EHCI_HCD_PLATFORM is not set
-# CONFIG_USB_OXU210HP_HCD is not set
-# CONFIG_USB_ISP116X_HCD is not set
-# CONFIG_USB_FOTG210_HCD is not set
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_OHCI_HCD_PCI=y
-# CONFIG_USB_OHCI_HCD_PLATFORM is not set
-CONFIG_USB_UHCI_HCD=y
-# CONFIG_USB_SL811_HCD is not set
-# CONFIG_USB_R8A66597_HCD is not set
-# CONFIG_USB_HCD_TEST_MODE is not set
-
-#
-# USB Device Class drivers
-#
-# CONFIG_USB_ACM is not set
-CONFIG_USB_PRINTER=y
-# CONFIG_USB_WDM is not set
-# CONFIG_USB_TMC is not set
-
-#
-# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
-#
-
-#
-# also be needed; see USB_STORAGE Help for more info
-#
-CONFIG_USB_STORAGE=y
-# CONFIG_USB_STORAGE_DEBUG is not set
-# CONFIG_USB_STORAGE_REALTEK is not set
-# CONFIG_USB_STORAGE_DATAFAB is not set
-# CONFIG_USB_STORAGE_FREECOM is not set
-# CONFIG_USB_STORAGE_ISD200 is not set
-# CONFIG_USB_STORAGE_USBAT is not set
-# CONFIG_USB_STORAGE_SDDR09 is not set
-# CONFIG_USB_STORAGE_SDDR55 is not set
-# CONFIG_USB_STORAGE_JUMPSHOT is not set
-# CONFIG_USB_STORAGE_ALAUDA is not set
-# CONFIG_USB_STORAGE_ONETOUCH is not set
-# CONFIG_USB_STORAGE_KARMA is not set
-# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
-# CONFIG_USB_STORAGE_ENE_UB6250 is not set
-# CONFIG_USB_UAS is not set
-
-#
-# USB Imaging devices
-#
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-# CONFIG_USBIP_CORE is not set
-# CONFIG_USB_CDNS_SUPPORT is not set
-# CONFIG_USB_MUSB_HDRC is not set
-# CONFIG_USB_DWC3 is not set
-# CONFIG_USB_DWC2 is not set
-# CONFIG_USB_CHIPIDEA is not set
-# CONFIG_USB_ISP1760 is not set
-
-#
-# USB port drivers
-#
-# CONFIG_USB_SERIAL is not set
-
-#
-# USB Miscellaneous drivers
-#
-# CONFIG_USB_EMI62 is not set
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_ADUTUX is not set
-# CONFIG_USB_SEVSEG is not set
-# CONFIG_USB_LEGOTOWER is not set
-# CONFIG_USB_LCD is not set
-# CONFIG_USB_CYPRESS_CY7C63 is not set
-# CONFIG_USB_CYTHERM is not set
-# CONFIG_USB_IDMOUSE is not set
-# CONFIG_USB_FTDI_ELAN is not set
-# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_APPLE_MFI_FASTCHARGE is not set
-# CONFIG_USB_SISUSBVGA is not set
-# CONFIG_USB_LD is not set
-# CONFIG_USB_TRANCEVIBRATOR is not set
-# CONFIG_USB_IOWARRIOR is not set
-# CONFIG_USB_TEST is not set
-# CONFIG_USB_EHSET_TEST_FIXTURE is not set
-# CONFIG_USB_ISIGHTFW is not set
-# CONFIG_USB_YUREX is not set
-# CONFIG_USB_EZUSB_FX2 is not set
-# CONFIG_USB_HUB_USB251XB is not set
-# CONFIG_USB_HSIC_USB3503 is not set
-# CONFIG_USB_HSIC_USB4604 is not set
-# CONFIG_USB_LINK_LAYER_TEST is not set
-# CONFIG_USB_CHAOSKEY is not set
-
-#
-# USB Physical Layer drivers
-#
-# CONFIG_NOP_USB_XCEIV is not set
-# CONFIG_USB_ISP1301 is not set
-# end of USB Physical Layer drivers
-
-# CONFIG_USB_GADGET is not set
-# CONFIG_TYPEC is not set
-# CONFIG_USB_ROLE_SWITCH is not set
-# CONFIG_MMC is not set
-# CONFIG_MEMSTICK is not set
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-# CONFIG_LEDS_CLASS_FLASH is not set
-# CONFIG_LEDS_CLASS_MULTICOLOR is not set
-# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
-
-#
-# LED drivers
-#
-# CONFIG_LEDS_APU is not set
-# CONFIG_LEDS_LM3530 is not set
-# CONFIG_LEDS_LM3532 is not set
-# CONFIG_LEDS_LM3642 is not set
-# CONFIG_LEDS_PCA9532 is not set
-# CONFIG_LEDS_LP3944 is not set
-# CONFIG_LEDS_CLEVO_MAIL is not set
-# CONFIG_LEDS_PCA955X is not set
-# CONFIG_LEDS_PCA963X is not set
-# CONFIG_LEDS_BD2802 is not set
-# CONFIG_LEDS_INTEL_SS4200 is not set
-# CONFIG_LEDS_TCA6507 is not set
-# CONFIG_LEDS_TLC591XX is not set
-# CONFIG_LEDS_LM355x is not set
-
-#
-# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
-#
-# CONFIG_LEDS_BLINKM is not set
-# CONFIG_LEDS_MLXCPLD is not set
-# CONFIG_LEDS_MLXREG is not set
-# CONFIG_LEDS_USER is not set
-# CONFIG_LEDS_NIC78BX is not set
-# CONFIG_LEDS_TI_LMU_COMMON is not set
-
-#
-# Flash and Torch LED drivers
-#
-
-#
-# LED Triggers
-#
-CONFIG_LEDS_TRIGGERS=y
-# CONFIG_LEDS_TRIGGER_TIMER is not set
-# CONFIG_LEDS_TRIGGER_ONESHOT is not set
-# CONFIG_LEDS_TRIGGER_DISK is not set
-# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set
-# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
-# CONFIG_LEDS_TRIGGER_CPU is not set
-# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
-# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set
-
-#
-# iptables trigger is under Netfilter config (LED target)
-#
-# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
-# CONFIG_LEDS_TRIGGER_CAMERA is not set
-# CONFIG_LEDS_TRIGGER_PANIC is not set
-# CONFIG_LEDS_TRIGGER_NETDEV is not set
-# CONFIG_LEDS_TRIGGER_PATTERN is not set
-CONFIG_LEDS_TRIGGER_AUDIO=y
-# CONFIG_LEDS_TRIGGER_TTY is not set
-# CONFIG_ACCESSIBILITY is not set
-# CONFIG_INFINIBAND is not set
-CONFIG_EDAC_ATOMIC_SCRUB=y
-CONFIG_EDAC_SUPPORT=y
-CONFIG_RTC_LIB=y
-CONFIG_RTC_MC146818_LIB=y
-CONFIG_RTC_CLASS=y
-# CONFIG_RTC_HCTOSYS is not set
-CONFIG_RTC_SYSTOHC=y
-CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
-# CONFIG_RTC_DEBUG is not set
-CONFIG_RTC_NVMEM=y
-
-#
-# RTC interfaces
-#
-CONFIG_RTC_INTF_SYSFS=y
-CONFIG_RTC_INTF_PROC=y
-CONFIG_RTC_INTF_DEV=y
-# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
-# CONFIG_RTC_DRV_TEST is not set
-
-#
-# I2C RTC drivers
-#
-# CONFIG_RTC_DRV_ABB5ZES3 is not set
-# CONFIG_RTC_DRV_ABEOZ9 is not set
-# CONFIG_RTC_DRV_ABX80X is not set
-# CONFIG_RTC_DRV_DS1307 is not set
-# CONFIG_RTC_DRV_DS1374 is not set
-# CONFIG_RTC_DRV_DS1672 is not set
-# CONFIG_RTC_DRV_MAX6900 is not set
-# CONFIG_RTC_DRV_RS5C372 is not set
-# CONFIG_RTC_DRV_ISL1208 is not set
-# CONFIG_RTC_DRV_ISL12022 is not set
-# CONFIG_RTC_DRV_X1205 is not set
-# CONFIG_RTC_DRV_PCF8523 is not set
-# CONFIG_RTC_DRV_PCF85063 is not set
-# CONFIG_RTC_DRV_PCF85363 is not set
-# CONFIG_RTC_DRV_PCF8563 is not set
-# CONFIG_RTC_DRV_PCF8583 is not set
-# CONFIG_RTC_DRV_M41T80 is not set
-# CONFIG_RTC_DRV_BQ32K is not set
-# CONFIG_RTC_DRV_S35390A is not set
-# CONFIG_RTC_DRV_FM3130 is not set
-# CONFIG_RTC_DRV_RX8010 is not set
-# CONFIG_RTC_DRV_RX8581 is not set
-# CONFIG_RTC_DRV_RX8025 is not set
-# CONFIG_RTC_DRV_EM3027 is not set
-# CONFIG_RTC_DRV_RV3028 is not set
-# CONFIG_RTC_DRV_RV3032 is not set
-# CONFIG_RTC_DRV_RV8803 is not set
-# CONFIG_RTC_DRV_SD3078 is not set
-
-#
-# SPI RTC drivers
-#
-CONFIG_RTC_I2C_AND_SPI=y
-
-#
-# SPI and I2C RTC drivers
-#
-# CONFIG_RTC_DRV_DS3232 is not set
-# CONFIG_RTC_DRV_PCF2127 is not set
-# CONFIG_RTC_DRV_RV3029C2 is not set
-# CONFIG_RTC_DRV_RX6110 is not set
-
-#
-# Platform RTC drivers
-#
-CONFIG_RTC_DRV_CMOS=y
-# CONFIG_RTC_DRV_DS1286 is not set
-# CONFIG_RTC_DRV_DS1511 is not set
-# CONFIG_RTC_DRV_DS1553 is not set
-# CONFIG_RTC_DRV_DS1685_FAMILY is not set
-# CONFIG_RTC_DRV_DS1742 is not set
-# CONFIG_RTC_DRV_DS2404 is not set
-# CONFIG_RTC_DRV_STK17TA8 is not set
-# CONFIG_RTC_DRV_M48T86 is not set
-# CONFIG_RTC_DRV_M48T35 is not set
-# CONFIG_RTC_DRV_M48T59 is not set
-# CONFIG_RTC_DRV_MSM6242 is not set
-# CONFIG_RTC_DRV_BQ4802 is not set
-# CONFIG_RTC_DRV_RP5C01 is not set
-# CONFIG_RTC_DRV_V3020 is not set
-
-#
-# on-CPU RTC drivers
-#
-# CONFIG_RTC_DRV_FTRTC010 is not set
-
-#
-# HID Sensor RTC drivers
-#
-# CONFIG_RTC_DRV_GOLDFISH is not set
-CONFIG_DMADEVICES=y
-# CONFIG_DMADEVICES_DEBUG is not set
-
-#
-# DMA Devices
-#
-CONFIG_DMA_ENGINE=y
-CONFIG_DMA_VIRTUAL_CHANNELS=y
-CONFIG_DMA_ACPI=y
-# CONFIG_ALTERA_MSGDMA is not set
-# CONFIG_INTEL_IDMA64 is not set
-# CONFIG_INTEL_IDXD is not set
-# CONFIG_INTEL_IOATDMA is not set
-# CONFIG_PLX_DMA is not set
-# CONFIG_QCOM_HIDMA_MGMT is not set
-# CONFIG_QCOM_HIDMA is not set
-CONFIG_DW_DMAC_CORE=y
-# CONFIG_DW_DMAC is not set
-# CONFIG_DW_DMAC_PCI is not set
-# CONFIG_DW_EDMA is not set
-# CONFIG_DW_EDMA_PCIE is not set
-CONFIG_HSU_DMA=y
-# CONFIG_SF_PDMA is not set
-# CONFIG_INTEL_LDMA is not set
-
-#
-# DMA Clients
-#
-# CONFIG_ASYNC_TX_DMA is not set
-# CONFIG_DMATEST is not set
-
-#
-# DMABUF options
-#
-CONFIG_SYNC_FILE=y
-# CONFIG_SW_SYNC is not set
-# CONFIG_UDMABUF is not set
-# CONFIG_DMABUF_MOVE_NOTIFY is not set
-# CONFIG_DMABUF_DEBUG is not set
-# CONFIG_DMABUF_SELFTESTS is not set
-# CONFIG_DMABUF_HEAPS is not set
-# end of DMABUF options
-
-# CONFIG_AUXDISPLAY is not set
-# CONFIG_UIO is not set
-# CONFIG_VFIO is not set
-CONFIG_IRQ_BYPASS_MANAGER=y
-# CONFIG_VIRT_DRIVERS is not set
-CONFIG_VIRTIO_MENU=y
-# CONFIG_VIRTIO_PCI is not set
-# CONFIG_VIRTIO_MMIO is not set
-# CONFIG_VDPA is not set
-CONFIG_VHOST_MENU=y
-# CONFIG_VHOST_NET is not set
-# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
-
-#
-# Microsoft Hyper-V guest support
-#
-# end of Microsoft Hyper-V guest support
-
-# CONFIG_GREYBUS is not set
-# CONFIG_COMEDI is not set
-# CONFIG_STAGING is not set
-CONFIG_X86_PLATFORM_DEVICES=y
-# CONFIG_ACPI_WMI is not set
-# CONFIG_ACERHDF is not set
-# CONFIG_ACER_WIRELESS is not set
-# CONFIG_AMD_PMC is not set
-# CONFIG_ADV_SWBUTTON is not set
-# CONFIG_APPLE_GMUX is not set
-# CONFIG_ASUS_LAPTOP is not set
-# CONFIG_ASUS_WIRELESS is not set
-CONFIG_EEEPC_LAPTOP=y
-# CONFIG_X86_PLATFORM_DRIVERS_DELL is not set
-# CONFIG_AMILO_RFKILL is not set
-# CONFIG_FUJITSU_LAPTOP is not set
-# CONFIG_FUJITSU_TABLET is not set
-# CONFIG_GPD_POCKET_FAN is not set
-# CONFIG_HP_ACCEL is not set
-# CONFIG_HP_WIRELESS is not set
-# CONFIG_IBM_RTL is not set
-# CONFIG_IDEAPAD_LAPTOP is not set
-# CONFIG_SENSORS_HDAPS is not set
-# CONFIG_THINKPAD_ACPI is not set
-# CONFIG_INTEL_ATOMISP2_PM is not set
-# CONFIG_INTEL_HID_EVENT is not set
-# CONFIG_INTEL_MENLOW is not set
-# CONFIG_INTEL_OAKTRAIL is not set
-# CONFIG_INTEL_VBTN is not set
-# CONFIG_MSI_LAPTOP is not set
-# CONFIG_SAMSUNG_LAPTOP is not set
-# CONFIG_SAMSUNG_Q10 is not set
-# CONFIG_TOSHIBA_BT_RFKILL is not set
-# CONFIG_TOSHIBA_HAPS is not set
-# CONFIG_ACPI_CMPC is not set
-# CONFIG_COMPAL_LAPTOP is not set
-# CONFIG_PANASONIC_LAPTOP is not set
-# CONFIG_SONY_LAPTOP is not set
-# CONFIG_SYSTEM76_ACPI is not set
-# CONFIG_TOPSTAR_LAPTOP is not set
-# CONFIG_I2C_MULTI_INSTANTIATE is not set
-# CONFIG_MLX_PLATFORM is not set
-# CONFIG_INTEL_IPS is not set
-# CONFIG_INTEL_RST is not set
-# CONFIG_INTEL_SMARTCONNECT is not set
-
-#
-# Intel Speed Select Technology interface support
-#
-# CONFIG_INTEL_SPEED_SELECT_INTERFACE is not set
-# end of Intel Speed Select Technology interface support
-
-# CONFIG_INTEL_UNCORE_FREQ_CONTROL is not set
-# CONFIG_INTEL_PMC_CORE is not set
-# CONFIG_INTEL_PMT_TELEMETRY is not set
-# CONFIG_INTEL_PMT_CRASHLOG is not set
-# CONFIG_INTEL_PUNIT_IPC is not set
-CONFIG_INTEL_SCU_IPC=y
-# CONFIG_INTEL_SCU_PCI is not set
-# CONFIG_INTEL_SCU_PLATFORM is not set
-CONFIG_PMC_ATOM=y
-# CONFIG_CHROME_PLATFORMS is not set
-# CONFIG_MELLANOX_PLATFORM is not set
-CONFIG_SURFACE_PLATFORMS=y
-# CONFIG_SURFACE_3_POWER_OPREGION is not set
-# CONFIG_SURFACE_GPE is not set
-# CONFIG_SURFACE_PRO3_BUTTON is not set
-CONFIG_HAVE_CLK=y
-CONFIG_CLKDEV_LOOKUP=y
-CONFIG_HAVE_CLK_PREPARE=y
-CONFIG_COMMON_CLK=y
-# CONFIG_COMMON_CLK_MAX9485 is not set
-# CONFIG_COMMON_CLK_SI5341 is not set
-# CONFIG_COMMON_CLK_SI5351 is not set
-# CONFIG_COMMON_CLK_SI544 is not set
-# CONFIG_COMMON_CLK_CDCE706 is not set
-# CONFIG_COMMON_CLK_CS2000_CP is not set
-# CONFIG_XILINX_VCU is not set
-# CONFIG_HWSPINLOCK is not set
-
-#
-# Clock Source drivers
-#
-CONFIG_CLKEVT_I8253=y
-CONFIG_I8253_LOCK=y
-CONFIG_CLKBLD_I8253=y
-# end of Clock Source drivers
-
-# CONFIG_MAILBOX is not set
-CONFIG_IOMMU_IOVA=y
-CONFIG_IOASID=y
-CONFIG_IOMMU_API=y
-CONFIG_IOMMU_SUPPORT=y
-
-#
-# Generic IOMMU Pagetable Support
-#
-CONFIG_IOMMU_IO_PGTABLE=y
-# end of Generic IOMMU Pagetable Support
-
-# CONFIG_IOMMU_DEBUGFS is not set
-# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set
-CONFIG_IOMMU_DMA=y
-CONFIG_AMD_IOMMU=y
-# CONFIG_AMD_IOMMU_V2 is not set
-CONFIG_DMAR_TABLE=y
-CONFIG_INTEL_IOMMU=y
-# CONFIG_INTEL_IOMMU_SVM is not set
-# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
-CONFIG_INTEL_IOMMU_FLOPPY_WA=y
-# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
-# CONFIG_IRQ_REMAP is not set
-
-#
-# Remoteproc drivers
-#
-# CONFIG_REMOTEPROC is not set
-# end of Remoteproc drivers
-
-#
-# Rpmsg drivers
-#
-# CONFIG_RPMSG_VIRTIO is not set
-# end of Rpmsg drivers
-
-# CONFIG_SOUNDWIRE is not set
-
-#
-# SOC (System On Chip) specific Drivers
-#
-
-#
-# Amlogic SoC drivers
-#
-# end of Amlogic SoC drivers
-
-#
-# Broadcom SoC drivers
-#
-# end of Broadcom SoC drivers
-
-#
-# NXP/Freescale QorIQ SoC drivers
-#
-# end of NXP/Freescale QorIQ SoC drivers
-
-#
-# i.MX SoC drivers
-#
-# end of i.MX SoC drivers
-
-#
-# Enable LiteX SoC Builder specific drivers
-#
-# end of Enable LiteX SoC Builder specific drivers
-
-#
-# Qualcomm SoC drivers
-#
-# end of Qualcomm SoC drivers
-
-# CONFIG_SOC_TI is not set
-
-#
-# Xilinx SoC drivers
-#
-# end of Xilinx SoC drivers
-# end of SOC (System On Chip) specific Drivers
-
-# CONFIG_PM_DEVFREQ is not set
-# CONFIG_EXTCON is not set
-# CONFIG_MEMORY is not set
-# CONFIG_IIO is not set
-# CONFIG_NTB is not set
-# CONFIG_VME_BUS is not set
-# CONFIG_PWM is not set
-
-#
-# IRQ chip support
-#
-# end of IRQ chip support
-
-# CONFIG_IPACK_BUS is not set
-# CONFIG_RESET_CONTROLLER is not set
-
-#
-# PHY Subsystem
-#
-# CONFIG_GENERIC_PHY is not set
-# CONFIG_USB_LGM_PHY is not set
-# CONFIG_BCM_KONA_USB2_PHY is not set
-# CONFIG_PHY_PXA_28NM_HSIC is not set
-# CONFIG_PHY_PXA_28NM_USB2 is not set
-# CONFIG_PHY_INTEL_LGM_EMMC is not set
-# end of PHY Subsystem
-
-# CONFIG_POWERCAP is not set
-# CONFIG_MCB is not set
-
-#
-# Performance monitor support
-#
-# end of Performance monitor support
-
-# CONFIG_RAS is not set
-# CONFIG_USB4 is not set
-
-#
-# Android
-#
-# CONFIG_ANDROID is not set
-# end of Android
-
-# CONFIG_LIBNVDIMM is not set
-# CONFIG_DAX is not set
-CONFIG_NVMEM=y
-CONFIG_NVMEM_SYSFS=y
-# CONFIG_NVMEM_RMEM is not set
-
-#
-# HW tracing support
-#
-# CONFIG_STM is not set
-# CONFIG_INTEL_TH is not set
-# end of HW tracing support
-
-# CONFIG_FPGA is not set
-# CONFIG_TEE is not set
-# CONFIG_UNISYS_VISORBUS is not set
-# CONFIG_SIOX is not set
-# CONFIG_SLIMBUS is not set
-# CONFIG_INTERCONNECT is not set
-# CONFIG_COUNTER is not set
-# end of Device Drivers
-
-#
-# File systems
-#
-CONFIG_DCACHE_WORD_ACCESS=y
-# CONFIG_VALIDATE_FS_PARSER is not set
-CONFIG_FS_IOMAP=y
-# CONFIG_EXT2_FS is not set
-# CONFIG_EXT3_FS is not set
-CONFIG_EXT4_FS=y
-CONFIG_EXT4_USE_FOR_EXT2=y
-CONFIG_EXT4_FS_POSIX_ACL=y
-CONFIG_EXT4_FS_SECURITY=y
-# CONFIG_EXT4_DEBUG is not set
-CONFIG_JBD2=y
-# CONFIG_JBD2_DEBUG is not set
-CONFIG_FS_MBCACHE=y
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_GFS2_FS is not set
-# CONFIG_BTRFS_FS is not set
-# CONFIG_NILFS2_FS is not set
-# CONFIG_F2FS_FS is not set
-# CONFIG_FS_DAX is not set
-CONFIG_FS_POSIX_ACL=y
-CONFIG_EXPORTFS=y
-# CONFIG_EXPORTFS_BLOCK_OPS is not set
-CONFIG_FILE_LOCKING=y
-CONFIG_MANDATORY_FILE_LOCKING=y
-# CONFIG_FS_ENCRYPTION is not set
-# CONFIG_FS_VERITY is not set
-CONFIG_FSNOTIFY=y
-CONFIG_DNOTIFY=y
-CONFIG_INOTIFY_USER=y
-# CONFIG_FANOTIFY is not set
-CONFIG_QUOTA=y
-CONFIG_QUOTA_NETLINK_INTERFACE=y
-# CONFIG_PRINT_QUOTA_WARNING is not set
-# CONFIG_QUOTA_DEBUG is not set
-CONFIG_QUOTA_TREE=y
-# CONFIG_QFMT_V1 is not set
-CONFIG_QFMT_V2=y
-CONFIG_QUOTACTL=y
-CONFIG_AUTOFS4_FS=y
-CONFIG_AUTOFS_FS=y
-CONFIG_FUSE_FS=y
-# CONFIG_CUSE is not set
-# CONFIG_VIRTIO_FS is not set
-CONFIG_OVERLAY_FS=y
-# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
-CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
-# CONFIG_OVERLAY_FS_INDEX is not set
-# CONFIG_OVERLAY_FS_XINO_AUTO is not set
-# CONFIG_OVERLAY_FS_METACOPY is not set
-
-#
-# Caches
-#
-# CONFIG_FSCACHE is not set
-# end of Caches
-
-#
-# CD-ROM/DVD Filesystems
-#
-CONFIG_ISO9660_FS=y
-CONFIG_JOLIET=y
-CONFIG_ZISOFS=y
-CONFIG_UDF_FS=m
-# end of CD-ROM/DVD Filesystems
-
-#
-# DOS/FAT/EXFAT/NT Filesystems
-#
-CONFIG_FAT_FS=y
-CONFIG_MSDOS_FS=y
-CONFIG_VFAT_FS=y
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-# CONFIG_FAT_DEFAULT_UTF8 is not set
-CONFIG_EXFAT_FS=y
-CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
-CONFIG_NTFS_FS=y
-# CONFIG_NTFS_DEBUG is not set
-CONFIG_NTFS_RW=y
-# end of DOS/FAT/EXFAT/NT Filesystems
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-CONFIG_PROC_KCORE=y
-CONFIG_PROC_VMCORE=y
-# CONFIG_PROC_VMCORE_DEVICE_DUMP is not set
-CONFIG_PROC_SYSCTL=y
-CONFIG_PROC_PAGE_MONITOR=y
-# CONFIG_PROC_CHILDREN is not set
-CONFIG_PROC_PID_ARCH_STATUS=y
-CONFIG_KERNFS=y
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-CONFIG_TMPFS_POSIX_ACL=y
-CONFIG_TMPFS_XATTR=y
-# CONFIG_TMPFS_INODE64 is not set
-CONFIG_HUGETLBFS=y
-CONFIG_HUGETLB_PAGE=y
-CONFIG_MEMFD_CREATE=y
-CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
-# CONFIG_CONFIGFS_FS is not set
-CONFIG_EFIVAR_FS=m
-# end of Pseudo filesystems
-
-# CONFIG_MISC_FILESYSTEMS is not set
-CONFIG_NETWORK_FILESYSTEMS=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V2=y
-CONFIG_NFS_V3=y
-CONFIG_NFS_V3_ACL=y
-CONFIG_NFS_V4=y
-# CONFIG_NFS_SWAP is not set
-# CONFIG_NFS_V4_1 is not set
-CONFIG_ROOT_NFS=y
-# CONFIG_NFS_USE_LEGACY_DNS is not set
-CONFIG_NFS_USE_KERNEL_DNS=y
-CONFIG_NFS_DISABLE_UDP_SUPPORT=y
-# CONFIG_NFSD is not set
-CONFIG_GRACE_PERIOD=y
-CONFIG_LOCKD=y
-CONFIG_LOCKD_V4=y
-CONFIG_NFS_ACL_SUPPORT=y
-CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=y
-CONFIG_SUNRPC_GSS=y
-# CONFIG_SUNRPC_DEBUG is not set
-# CONFIG_CEPH_FS is not set
-# CONFIG_CIFS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="utf8"
-CONFIG_NLS_CODEPAGE_437=y
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-# CONFIG_NLS_CODEPAGE_852 is not set
-# CONFIG_NLS_CODEPAGE_855 is not set
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-# CONFIG_NLS_CODEPAGE_866 is not set
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-CONFIG_NLS_ASCII=y
-CONFIG_NLS_ISO8859_1=y
-# CONFIG_NLS_ISO8859_2 is not set
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-# CONFIG_NLS_ISO8859_5 is not set
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-# CONFIG_NLS_ISO8859_15 is not set
-# CONFIG_NLS_KOI8_R is not set
-# CONFIG_NLS_KOI8_U is not set
-# CONFIG_NLS_MAC_ROMAN is not set
-# CONFIG_NLS_MAC_CELTIC is not set
-# CONFIG_NLS_MAC_CENTEURO is not set
-# CONFIG_NLS_MAC_CROATIAN is not set
-# CONFIG_NLS_MAC_CYRILLIC is not set
-# CONFIG_NLS_MAC_GAELIC is not set
-# CONFIG_NLS_MAC_GREEK is not set
-# CONFIG_NLS_MAC_ICELAND is not set
-# CONFIG_NLS_MAC_INUIT is not set
-# CONFIG_NLS_MAC_ROMANIAN is not set
-# CONFIG_NLS_MAC_TURKISH is not set
-CONFIG_NLS_UTF8=y
-# CONFIG_UNICODE is not set
-CONFIG_IO_WQ=y
-# end of File systems
-
-#
-# Security options
-#
-CONFIG_KEYS=y
-# CONFIG_KEYS_REQUEST_CACHE is not set
-# CONFIG_PERSISTENT_KEYRINGS is not set
-# CONFIG_ENCRYPTED_KEYS is not set
-# CONFIG_KEY_DH_OPERATIONS is not set
-# CONFIG_SECURITY_DMESG_RESTRICT is not set
-CONFIG_SECURITY=y
-CONFIG_SECURITYFS=y
-CONFIG_SECURITY_NETWORK=y
-CONFIG_PAGE_TABLE_ISOLATION=y
-# CONFIG_SECURITY_NETWORK_XFRM is not set
-CONFIG_SECURITY_PATH=y
-# CONFIG_INTEL_TXT is not set
-CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y
-# CONFIG_HARDENED_USERCOPY is not set
-# CONFIG_FORTIFY_SOURCE is not set
-# CONFIG_STATIC_USERMODEHELPER is not set
-# CONFIG_SECURITY_SELINUX is not set
-# CONFIG_SECURITY_SMACK is not set
-# CONFIG_SECURITY_TOMOYO is not set
-CONFIG_SECURITY_APPARMOR=y
-CONFIG_SECURITY_APPARMOR_HASH=y
-CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y
-# CONFIG_SECURITY_APPARMOR_DEBUG is not set
-# CONFIG_SECURITY_LOADPIN is not set
-# CONFIG_SECURITY_YAMA is not set
-# CONFIG_SECURITY_SAFESETID is not set
-# CONFIG_SECURITY_LOCKDOWN_LSM is not set
-# CONFIG_SECURITY_LANDLOCK is not set
-CONFIG_INTEGRITY=y
-# CONFIG_INTEGRITY_SIGNATURE is not set
-CONFIG_INTEGRITY_AUDIT=y
-# CONFIG_IMA is not set
-# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set
-# CONFIG_EVM is not set
-CONFIG_DEFAULT_SECURITY_APPARMOR=y
-# CONFIG_DEFAULT_SECURITY_DAC is not set
-CONFIG_LSM="lockdown,yama,loadpin,safesetid,integrity,apparmor,selinux,smack,tomoyo,bpf"
-
-#
-# Kernel hardening options
-#
-
-#
-# Memory initialization
-#
-CONFIG_INIT_STACK_NONE=y
-# CONFIG_GCC_PLUGIN_STRUCTLEAK_USER is not set
-# CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF is not set
-# CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL is not set
-# CONFIG_GCC_PLUGIN_STACKLEAK is not set
-# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
-# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
-# end of Memory initialization
-# end of Kernel hardening options
-# end of Security options
-
-CONFIG_CRYPTO=y
-
-#
-# Crypto core or helper
-#
-CONFIG_CRYPTO_ALGAPI=y
-CONFIG_CRYPTO_ALGAPI2=y
-CONFIG_CRYPTO_AEAD=y
-CONFIG_CRYPTO_AEAD2=y
-CONFIG_CRYPTO_SKCIPHER=y
-CONFIG_CRYPTO_SKCIPHER2=y
-CONFIG_CRYPTO_HASH=y
-CONFIG_CRYPTO_HASH2=y
-CONFIG_CRYPTO_RNG=y
-CONFIG_CRYPTO_RNG2=y
-CONFIG_CRYPTO_RNG_DEFAULT=y
-CONFIG_CRYPTO_AKCIPHER2=y
-CONFIG_CRYPTO_AKCIPHER=y
-CONFIG_CRYPTO_KPP2=y
-CONFIG_CRYPTO_KPP=y
-CONFIG_CRYPTO_ACOMP2=y
-CONFIG_CRYPTO_MANAGER=y
-CONFIG_CRYPTO_MANAGER2=y
-# CONFIG_CRYPTO_USER is not set
-CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
-CONFIG_CRYPTO_GF128MUL=y
-CONFIG_CRYPTO_NULL=y
-CONFIG_CRYPTO_NULL2=y
-# CONFIG_CRYPTO_PCRYPT is not set
-# CONFIG_CRYPTO_CRYPTD is not set
-CONFIG_CRYPTO_AUTHENC=y
-# CONFIG_CRYPTO_TEST is not set
-
-#
-# Public-key cryptography
-#
-CONFIG_CRYPTO_RSA=y
-# CONFIG_CRYPTO_DH is not set
-CONFIG_CRYPTO_ECC=y
-CONFIG_CRYPTO_ECDH=y
-# CONFIG_CRYPTO_ECDSA is not set
-# CONFIG_CRYPTO_ECRDSA is not set
-# CONFIG_CRYPTO_SM2 is not set
-# CONFIG_CRYPTO_CURVE25519 is not set
-# CONFIG_CRYPTO_CURVE25519_X86 is not set
-
-#
-# Authenticated Encryption with Associated Data
-#
-CONFIG_CRYPTO_CCM=y
-CONFIG_CRYPTO_GCM=y
-# CONFIG_CRYPTO_CHACHA20POLY1305 is not set
-# CONFIG_CRYPTO_AEGIS128 is not set
-# CONFIG_CRYPTO_AEGIS128_AESNI_SSE2 is not set
-CONFIG_CRYPTO_SEQIV=y
-CONFIG_CRYPTO_ECHAINIV=y
-
-#
-# Block modes
-#
-CONFIG_CRYPTO_CBC=y
-# CONFIG_CRYPTO_CFB is not set
-CONFIG_CRYPTO_CTR=y
-# CONFIG_CRYPTO_CTS is not set
-CONFIG_CRYPTO_ECB=y
-# CONFIG_CRYPTO_LRW is not set
-# CONFIG_CRYPTO_OFB is not set
-# CONFIG_CRYPTO_PCBC is not set
-# CONFIG_CRYPTO_XTS is not set
-# CONFIG_CRYPTO_KEYWRAP is not set
-# CONFIG_CRYPTO_NHPOLY1305_SSE2 is not set
-# CONFIG_CRYPTO_NHPOLY1305_AVX2 is not set
-# CONFIG_CRYPTO_ADIANTUM is not set
-CONFIG_CRYPTO_ESSIV=y
-
-#
-# Hash modes
-#
-CONFIG_CRYPTO_CMAC=y
-CONFIG_CRYPTO_HMAC=y
-# CONFIG_CRYPTO_XCBC is not set
-# CONFIG_CRYPTO_VMAC is not set
-
-#
-# Digest
-#
-CONFIG_CRYPTO_CRC32C=y
-# CONFIG_CRYPTO_CRC32C_INTEL is not set
-# CONFIG_CRYPTO_CRC32 is not set
-# CONFIG_CRYPTO_CRC32_PCLMUL is not set
-CONFIG_CRYPTO_XXHASH=y
-CONFIG_CRYPTO_BLAKE2B=y
-# CONFIG_CRYPTO_BLAKE2S is not set
-# CONFIG_CRYPTO_BLAKE2S_X86 is not set
-# CONFIG_CRYPTO_CRCT10DIF is not set
-CONFIG_CRYPTO_GHASH=y
-# CONFIG_CRYPTO_POLY1305 is not set
-# CONFIG_CRYPTO_POLY1305_X86_64 is not set
-# CONFIG_CRYPTO_MD4 is not set
-CONFIG_CRYPTO_MD5=y
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-# CONFIG_CRYPTO_RMD160 is not set
-CONFIG_CRYPTO_SHA1=y
-# CONFIG_CRYPTO_SHA1_SSSE3 is not set
-# CONFIG_CRYPTO_SHA256_SSSE3 is not set
-# CONFIG_CRYPTO_SHA512_SSSE3 is not set
-CONFIG_CRYPTO_SHA256=y
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_SHA3 is not set
-# CONFIG_CRYPTO_SM3 is not set
-# CONFIG_CRYPTO_STREEBOG is not set
-# CONFIG_CRYPTO_WP512 is not set
-# CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL is not set
-
-#
-# Ciphers
-#
-CONFIG_CRYPTO_AES=y
-# CONFIG_CRYPTO_AES_TI is not set
-# CONFIG_CRYPTO_AES_NI_INTEL is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_BLOWFISH_X86_64 is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAMELLIA_X86_64 is not set
-# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64 is not set
-# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST5_AVX_X86_64 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_CAST6_AVX_X86_64 is not set
-# CONFIG_CRYPTO_DES is not set
-# CONFIG_CRYPTO_DES3_EDE_X86_64 is not set
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_CHACHA20 is not set
-# CONFIG_CRYPTO_CHACHA20_X86_64 is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_SERPENT_SSE2_X86_64 is not set
-# CONFIG_CRYPTO_SERPENT_AVX_X86_64 is not set
-# CONFIG_CRYPTO_SERPENT_AVX2_X86_64 is not set
-# CONFIG_CRYPTO_SM4 is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_TWOFISH_X86_64 is not set
-# CONFIG_CRYPTO_TWOFISH_X86_64_3WAY is not set
-# CONFIG_CRYPTO_TWOFISH_AVX_X86_64 is not set
-
-#
-# Compression
-#
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
-# CONFIG_CRYPTO_842 is not set
-# CONFIG_CRYPTO_LZ4 is not set
-# CONFIG_CRYPTO_LZ4HC is not set
-# CONFIG_CRYPTO_ZSTD is not set
-
-#
-# Random Number Generation
-#
-# CONFIG_CRYPTO_ANSI_CPRNG is not set
-CONFIG_CRYPTO_DRBG_MENU=y
-CONFIG_CRYPTO_DRBG_HMAC=y
-# CONFIG_CRYPTO_DRBG_HASH is not set
-# CONFIG_CRYPTO_DRBG_CTR is not set
-CONFIG_CRYPTO_DRBG=y
-CONFIG_CRYPTO_JITTERENTROPY=y
-# CONFIG_CRYPTO_USER_API_HASH is not set
-# CONFIG_CRYPTO_USER_API_SKCIPHER is not set
-# CONFIG_CRYPTO_USER_API_RNG is not set
-# CONFIG_CRYPTO_USER_API_AEAD is not set
-CONFIG_CRYPTO_HASH_INFO=y
-
-#
-# Crypto library routines
-#
-CONFIG_CRYPTO_LIB_AES=y
-CONFIG_CRYPTO_LIB_ARC4=m
-# CONFIG_CRYPTO_LIB_BLAKE2S is not set
-# CONFIG_CRYPTO_LIB_CHACHA is not set
-# CONFIG_CRYPTO_LIB_CURVE25519 is not set
-CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11
-# CONFIG_CRYPTO_LIB_POLY1305 is not set
-# CONFIG_CRYPTO_LIB_CHACHA20POLY1305 is not set
-CONFIG_CRYPTO_LIB_SHA256=y
-CONFIG_CRYPTO_HW=y
-# CONFIG_CRYPTO_DEV_PADLOCK is not set
-# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
-# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
-# CONFIG_CRYPTO_DEV_CCP is not set
-# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set
-# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set
-# CONFIG_CRYPTO_DEV_QAT_C62X is not set
-# CONFIG_CRYPTO_DEV_QAT_4XXX is not set
-# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set
-# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set
-# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set
-# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set
-# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
-# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
-CONFIG_ASYMMETRIC_KEY_TYPE=y
-CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
-CONFIG_X509_CERTIFICATE_PARSER=y
-# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set
-CONFIG_PKCS7_MESSAGE_PARSER=y
-# CONFIG_PKCS7_TEST_KEY is not set
-# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
-
-#
-# Certificates for signature checking
-#
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
-CONFIG_SYSTEM_TRUSTED_KEYS=""
-# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
-# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
-# end of Certificates for signature checking
-
-CONFIG_BINARY_PRINTF=y
-
-#
-# Library routines
-#
-# CONFIG_PACKING is not set
-CONFIG_BITREVERSE=y
-CONFIG_GENERIC_STRNCPY_FROM_USER=y
-CONFIG_GENERIC_STRNLEN_USER=y
-CONFIG_GENERIC_NET_UTILS=y
-CONFIG_GENERIC_FIND_FIRST_BIT=y
-# CONFIG_CORDIC is not set
-# CONFIG_PRIME_NUMBERS is not set
-CONFIG_RATIONAL=y
-CONFIG_GENERIC_PCI_IOMAP=y
-CONFIG_GENERIC_IOMAP=y
-CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
-CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
-CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
-CONFIG_CRC_CCITT=y
-CONFIG_CRC16=y
-# CONFIG_CRC_T10DIF is not set
-CONFIG_CRC_ITU_T=y
-CONFIG_CRC32=y
-# CONFIG_CRC32_SELFTEST is not set
-CONFIG_CRC32_SLICEBY8=y
-# CONFIG_CRC32_SLICEBY4 is not set
-# CONFIG_CRC32_SARWATE is not set
-# CONFIG_CRC32_BIT is not set
-# CONFIG_CRC64 is not set
-# CONFIG_CRC4 is not set
-# CONFIG_CRC7 is not set
-CONFIG_LIBCRC32C=y
-# CONFIG_CRC8 is not set
-CONFIG_XXHASH=y
-# CONFIG_RANDOM32_SELFTEST is not set
-CONFIG_ZLIB_INFLATE=y
-CONFIG_ZLIB_DEFLATE=y
-CONFIG_LZO_COMPRESS=y
-CONFIG_LZO_DECOMPRESS=y
-CONFIG_LZ4_DECOMPRESS=y
-CONFIG_ZSTD_DECOMPRESS=y
-CONFIG_XZ_DEC=y
-CONFIG_XZ_DEC_X86=y
-CONFIG_XZ_DEC_POWERPC=y
-CONFIG_XZ_DEC_IA64=y
-CONFIG_XZ_DEC_ARM=y
-CONFIG_XZ_DEC_ARMTHUMB=y
-CONFIG_XZ_DEC_SPARC=y
-CONFIG_XZ_DEC_BCJ=y
-# CONFIG_XZ_DEC_TEST is not set
-CONFIG_DECOMPRESS_GZIP=y
-CONFIG_DECOMPRESS_BZIP2=y
-CONFIG_DECOMPRESS_LZMA=y
-CONFIG_DECOMPRESS_XZ=y
-CONFIG_DECOMPRESS_LZO=y
-CONFIG_DECOMPRESS_LZ4=y
-CONFIG_DECOMPRESS_ZSTD=y
-CONFIG_GENERIC_ALLOCATOR=y
-CONFIG_INTERVAL_TREE=y
-CONFIG_ASSOCIATIVE_ARRAY=y
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT_MAP=y
-CONFIG_HAS_DMA=y
-CONFIG_DMA_OPS=y
-CONFIG_NEED_SG_DMA_LENGTH=y
-CONFIG_NEED_DMA_MAP_STATE=y
-CONFIG_ARCH_DMA_ADDR_T_64BIT=y
-CONFIG_SWIOTLB=y
-# CONFIG_DMA_API_DEBUG is not set
-# CONFIG_DMA_MAP_BENCHMARK is not set
-CONFIG_SGL_ALLOC=y
-CONFIG_CHECK_SIGNATURE=y
-CONFIG_CPU_RMAP=y
-CONFIG_DQL=y
-CONFIG_GLOB=y
-# CONFIG_GLOB_SELFTEST is not set
-CONFIG_NLATTR=y
-CONFIG_CLZ_TAB=y
-# CONFIG_IRQ_POLL is not set
-CONFIG_MPILIB=y
-CONFIG_OID_REGISTRY=y
-CONFIG_UCS2_STRING=y
-CONFIG_HAVE_GENERIC_VDSO=y
-CONFIG_GENERIC_GETTIMEOFDAY=y
-CONFIG_GENERIC_VDSO_TIME_NS=y
-CONFIG_FONT_SUPPORT=y
-# CONFIG_FONTS is not set
-CONFIG_FONT_8x8=y
-CONFIG_FONT_8x16=y
-CONFIG_SG_POOL=y
-CONFIG_ARCH_HAS_PMEM_API=y
-CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y
-CONFIG_ARCH_HAS_COPY_MC=y
-CONFIG_ARCH_STACKWALK=y
-CONFIG_SBITMAP=y
-# CONFIG_STRING_SELFTEST is not set
-# end of Library routines
-
-#
-# Kernel hacking
-#
-
-#
-# printk and dmesg options
-#
-CONFIG_PRINTK_TIME=y
-# CONFIG_PRINTK_CALLER is not set
-CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
-CONFIG_CONSOLE_LOGLEVEL_QUIET=4
-CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
-# CONFIG_BOOT_PRINTK_DELAY is not set
-# CONFIG_DYNAMIC_DEBUG is not set
-# CONFIG_DYNAMIC_DEBUG_CORE is not set
-CONFIG_SYMBOLIC_ERRNAME=y
-CONFIG_DEBUG_BUGVERBOSE=y
-# end of printk and dmesg options
-
-#
-# Compile-time checks and compiler options
-#
-# CONFIG_DEBUG_INFO is not set
-CONFIG_FRAME_WARN=2048
-# CONFIG_STRIP_ASM_SYMS is not set
-# CONFIG_READABLE_ASM is not set
-# CONFIG_HEADERS_INSTALL is not set
-# CONFIG_DEBUG_SECTION_MISMATCH is not set
-CONFIG_SECTION_MISMATCH_WARN_ONLY=y
-CONFIG_STACK_VALIDATION=y
-# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
-# end of Compile-time checks and compiler options
-
-#
-# Generic Kernel Debugging Instruments
-#
-CONFIG_MAGIC_SYSRQ=y
-CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
-CONFIG_MAGIC_SYSRQ_SERIAL=y
-CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
-CONFIG_DEBUG_FS=y
-CONFIG_DEBUG_FS_ALLOW_ALL=y
-# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set
-# CONFIG_DEBUG_FS_ALLOW_NONE is not set
-CONFIG_HAVE_ARCH_KGDB=y
-# CONFIG_KGDB is not set
-CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
-# CONFIG_UBSAN is not set
-CONFIG_HAVE_ARCH_KCSAN=y
-# end of Generic Kernel Debugging Instruments
-
-CONFIG_DEBUG_KERNEL=y
-CONFIG_DEBUG_MISC=y
-
-#
-# Memory Debugging
-#
-# CONFIG_PAGE_EXTENSION is not set
-# CONFIG_DEBUG_PAGEALLOC is not set
-# CONFIG_PAGE_OWNER is not set
-# CONFIG_PAGE_POISONING is not set
-# CONFIG_DEBUG_PAGE_REF is not set
-# CONFIG_DEBUG_RODATA_TEST is not set
-CONFIG_ARCH_HAS_DEBUG_WX=y
-# CONFIG_DEBUG_WX is not set
-CONFIG_GENERIC_PTDUMP=y
-# CONFIG_PTDUMP_DEBUGFS is not set
-# CONFIG_DEBUG_OBJECTS is not set
-# CONFIG_SLUB_DEBUG_ON is not set
-# CONFIG_SLUB_STATS is not set
-CONFIG_HAVE_DEBUG_KMEMLEAK=y
-# CONFIG_DEBUG_KMEMLEAK is not set
-CONFIG_DEBUG_STACK_USAGE=y
-# CONFIG_SCHED_STACK_END_CHECK is not set
-CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
-# CONFIG_DEBUG_VM is not set
-# CONFIG_DEBUG_VM_PGTABLE is not set
-CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
-# CONFIG_DEBUG_VIRTUAL is not set
-CONFIG_DEBUG_MEMORY_INIT=y
-# CONFIG_DEBUG_PER_CPU_MAPS is not set
-CONFIG_ARCH_SUPPORTS_KMAP_LOCAL_FORCE_MAP=y
-# CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP is not set
-CONFIG_HAVE_ARCH_KASAN=y
-CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
-CONFIG_CC_HAS_KASAN_GENERIC=y
-CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
-# CONFIG_KASAN is not set
-CONFIG_HAVE_ARCH_KFENCE=y
-# CONFIG_KFENCE is not set
-# end of Memory Debugging
-
-# CONFIG_DEBUG_SHIRQ is not set
-
-#
-# Debug Oops, Lockups and Hangs
-#
-# CONFIG_PANIC_ON_OOPS is not set
-CONFIG_PANIC_ON_OOPS_VALUE=0
-CONFIG_PANIC_TIMEOUT=0
-# CONFIG_SOFTLOCKUP_DETECTOR is not set
-CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y
-# CONFIG_HARDLOCKUP_DETECTOR is not set
-# CONFIG_DETECT_HUNG_TASK is not set
-# CONFIG_WQ_WATCHDOG is not set
-# CONFIG_TEST_LOCKUP is not set
-# end of Debug Oops, Lockups and Hangs
-
-#
-# Scheduler Debugging
-#
-# CONFIG_SCHED_DEBUG is not set
-CONFIG_SCHED_INFO=y
-CONFIG_SCHEDSTATS=y
-# end of Scheduler Debugging
-
-# CONFIG_DEBUG_TIMEKEEPING is not set
-
-#
-# Lock Debugging (spinlocks, mutexes, etc...)
-#
-CONFIG_LOCK_DEBUGGING_SUPPORT=y
-# CONFIG_PROVE_LOCKING is not set
-# CONFIG_LOCK_STAT is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_DEBUG_SPINLOCK is not set
-# CONFIG_DEBUG_MUTEXES is not set
-# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
-# CONFIG_DEBUG_RWSEMS is not set
-# CONFIG_DEBUG_LOCK_ALLOC is not set
-# CONFIG_DEBUG_ATOMIC_SLEEP is not set
-# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
-# CONFIG_LOCK_TORTURE_TEST is not set
-# CONFIG_WW_MUTEX_SELFTEST is not set
-# CONFIG_SCF_TORTURE_TEST is not set
-# CONFIG_CSD_LOCK_WAIT_DEBUG is not set
-# end of Lock Debugging (spinlocks, mutexes, etc...)
-
-# CONFIG_DEBUG_IRQFLAGS is not set
-CONFIG_STACKTRACE=y
-# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
-# CONFIG_DEBUG_KOBJECT is not set
-
-#
-# Debug kernel data structures
-#
-# CONFIG_DEBUG_LIST is not set
-# CONFIG_DEBUG_PLIST is not set
-# CONFIG_DEBUG_SG is not set
-# CONFIG_DEBUG_NOTIFIERS is not set
-# CONFIG_BUG_ON_DATA_CORRUPTION is not set
-# end of Debug kernel data structures
-
-# CONFIG_DEBUG_CREDENTIALS is not set
-
-#
-# RCU Debugging
-#
-# CONFIG_RCU_SCALE_TEST is not set
-# CONFIG_RCU_TORTURE_TEST is not set
-# CONFIG_RCU_REF_SCALE_TEST is not set
-CONFIG_RCU_CPU_STALL_TIMEOUT=21
-CONFIG_RCU_TRACE=y
-# CONFIG_RCU_EQS_DEBUG is not set
-# end of RCU Debugging
-
-# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
-# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
-# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
-# CONFIG_LATENCYTOP is not set
-CONFIG_USER_STACKTRACE_SUPPORT=y
-CONFIG_NOP_TRACER=y
-CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
-CONFIG_HAVE_DYNAMIC_FTRACE=y
-CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
-CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y
-CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y
-CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
-CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
-CONFIG_HAVE_FENTRY=y
-CONFIG_HAVE_OBJTOOL_MCOUNT=y
-CONFIG_HAVE_C_RECORDMCOUNT=y
-CONFIG_TRACE_CLOCK=y
-CONFIG_RING_BUFFER=y
-CONFIG_EVENT_TRACING=y
-CONFIG_CONTEXT_SWITCH_TRACER=y
-CONFIG_TRACING=y
-CONFIG_GENERIC_TRACER=y
-CONFIG_TRACING_SUPPORT=y
-CONFIG_FTRACE=y
-# CONFIG_BOOTTIME_TRACING is not set
-# CONFIG_FUNCTION_TRACER is not set
-# CONFIG_STACK_TRACER is not set
-# CONFIG_IRQSOFF_TRACER is not set
-# CONFIG_SCHED_TRACER is not set
-# CONFIG_HWLAT_TRACER is not set
-# CONFIG_MMIOTRACE is not set
-# CONFIG_FTRACE_SYSCALLS is not set
-# CONFIG_TRACER_SNAPSHOT is not set
-CONFIG_BRANCH_PROFILE_NONE=y
-# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
-# CONFIG_PROFILE_ALL_BRANCHES is not set
-CONFIG_BLK_DEV_IO_TRACE=y
-CONFIG_KPROBE_EVENTS=y
-CONFIG_UPROBE_EVENTS=y
-CONFIG_DYNAMIC_EVENTS=y
-CONFIG_PROBE_EVENTS=y
-# CONFIG_SYNTH_EVENTS is not set
-# CONFIG_HIST_TRIGGERS is not set
-# CONFIG_TRACE_EVENT_INJECT is not set
-# CONFIG_TRACEPOINT_BENCHMARK is not set
-# CONFIG_RING_BUFFER_BENCHMARK is not set
-# CONFIG_TRACE_EVAL_MAP_FILE is not set
-# CONFIG_FTRACE_STARTUP_TEST is not set
-# CONFIG_RING_BUFFER_STARTUP_TEST is not set
-# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
-# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
-# CONFIG_KPROBE_EVENT_GEN_TEST is not set
-CONFIG_PROVIDE_OHCI1394_DMA_INIT=y
-# CONFIG_SAMPLES is not set
-CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y
-CONFIG_STRICT_DEVMEM=y
-# CONFIG_IO_STRICT_DEVMEM is not set
-
-#
-# x86 Debugging
-#
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
-CONFIG_EARLY_PRINTK_USB=y
-CONFIG_X86_VERBOSE_BOOTUP=y
-CONFIG_EARLY_PRINTK=y
-CONFIG_EARLY_PRINTK_DBGP=y
-# CONFIG_EARLY_PRINTK_USB_XDBC is not set
-# CONFIG_EFI_PGT_DUMP is not set
-# CONFIG_DEBUG_TLBFLUSH is not set
-CONFIG_HAVE_MMIOTRACE_SUPPORT=y
-# CONFIG_X86_DECODER_SELFTEST is not set
-CONFIG_IO_DELAY_0X80=y
-# CONFIG_IO_DELAY_0XED is not set
-# CONFIG_IO_DELAY_UDELAY is not set
-# CONFIG_IO_DELAY_NONE is not set
-CONFIG_DEBUG_BOOT_PARAMS=y
-# CONFIG_CPA_DEBUG is not set
-# CONFIG_DEBUG_ENTRY is not set
-# CONFIG_DEBUG_NMI_SELFTEST is not set
-CONFIG_X86_DEBUG_FPU=y
-# CONFIG_PUNIT_ATOM_DEBUG is not set
-CONFIG_UNWINDER_ORC=y
-# CONFIG_UNWINDER_FRAME_POINTER is not set
-# end of x86 Debugging
-
-#
-# Kernel Testing and Coverage
-#
-# CONFIG_KUNIT is not set
-# CONFIG_NOTIFIER_ERROR_INJECTION is not set
-CONFIG_FUNCTION_ERROR_INJECTION=y
-# CONFIG_FAULT_INJECTION is not set
-CONFIG_ARCH_HAS_KCOV=y
-CONFIG_CC_HAS_SANCOV_TRACE_PC=y
-# CONFIG_KCOV is not set
-CONFIG_RUNTIME_TESTING_MENU=y
-# CONFIG_LKDTM is not set
-# CONFIG_TEST_LIST_SORT is not set
-# CONFIG_TEST_MIN_HEAP is not set
-# CONFIG_TEST_SORT is not set
-# CONFIG_TEST_DIV64 is not set
-# CONFIG_KPROBES_SANITY_TEST is not set
-# CONFIG_BACKTRACE_SELF_TEST is not set
-# CONFIG_RBTREE_TEST is not set
-# CONFIG_REED_SOLOMON_TEST is not set
-# CONFIG_INTERVAL_TREE_TEST is not set
-# CONFIG_PERCPU_TEST is not set
-# CONFIG_ATOMIC64_SELFTEST is not set
-# CONFIG_TEST_HEXDUMP is not set
-# CONFIG_TEST_STRING_HELPERS is not set
-# CONFIG_TEST_STRSCPY is not set
-# CONFIG_TEST_KSTRTOX is not set
-# CONFIG_TEST_PRINTF is not set
-# CONFIG_TEST_BITMAP is not set
-# CONFIG_TEST_UUID is not set
-# CONFIG_TEST_XARRAY is not set
-# CONFIG_TEST_OVERFLOW is not set
-# CONFIG_TEST_RHASHTABLE is not set
-# CONFIG_TEST_HASH is not set
-# CONFIG_TEST_IDA is not set
-# CONFIG_TEST_LKM is not set
-# CONFIG_TEST_BITOPS is not set
-# CONFIG_TEST_VMALLOC is not set
-# CONFIG_TEST_USER_COPY is not set
-# CONFIG_TEST_BPF is not set
-# CONFIG_TEST_BLACKHOLE_DEV is not set
-# CONFIG_FIND_BIT_BENCHMARK is not set
-# CONFIG_TEST_FIRMWARE is not set
-# CONFIG_TEST_SYSCTL is not set
-# CONFIG_TEST_UDELAY is not set
-# CONFIG_TEST_STATIC_KEYS is not set
-# CONFIG_TEST_KMOD is not set
-# CONFIG_TEST_MEMCAT_P is not set
-# CONFIG_TEST_STACKINIT is not set
-# CONFIG_TEST_MEMINIT is not set
-# CONFIG_TEST_FREE_PAGES is not set
-# CONFIG_TEST_FPU is not set
-CONFIG_ARCH_USE_MEMTEST=y
-# CONFIG_MEMTEST is not set
-# end of Kernel Testing and Coverage
-# end of Kernel hacking
-
-#
-# Gentoo Linux
-#
-CONFIG_GENTOO_LINUX=y
-CONFIG_GENTOO_LINUX_UDEV=y
-CONFIG_GENTOO_LINUX_PORTAGE=y
-
-#
-# Support for init systems, system and service managers
-#
-CONFIG_GENTOO_LINUX_INIT_SCRIPT=y
-# CONFIG_GENTOO_LINUX_INIT_SYSTEMD is not set
-# end of Support for init systems, system and service managers
-
-#
-# Enable Kernel Self Protection Project Recommendations
-#
-
-#
-# Architecture Specific Self Protection Project Recommendations
-#
-# end of Architecture Specific Self Protection Project Recommendations
-# end of Enable Kernel Self Protection Project Recommendations
-# end of Gentoo Linux
diff --git a/sync.py b/sync.py
deleted file mode 100755
index c36cef7..0000000
--- a/sync.py
+++ /dev/null
@@ -1,194 +0,0 @@
-#!/usr/bin/env python
-from __future__ import annotations
-
-import hashlib
-import sys
-from collections.abc import Iterable, Iterator
-from enum import Enum, auto
-from pathlib import Path
-from typing import NamedTuple
-
-try:
- import rich
-except ImportError:
- print("rich not found (`pip install rich`), falling back to no colors", file=sys.stderr)
- rich = None
-
-DOTHOMEDIR = Path("./home")
-HOMEDIR = Path("~")
-DOTROOTDIR = Path("./root")
-ROOTDIR = Path("/")
-
-
-class DiffStatus(Enum):
- NOT_FOUND = auto()
- PERMISSION_ERROR = auto()
- MATCH = auto()
- EXPECTED_SYMLINK = auto()
- UNEXPECTED_SYMLINK = auto()
- CONTENT_DIFFERS = auto()
- SYMLINK_DIFFERS = auto()
-
-
-class FileDiff(NamedTuple):
- dot_file: Path
- sys_file: Path
- status: DiffStatus
-
- def __repr__(self) -> str:
- dot_file = str(self.rel_dot_file)
- sys_file = str(self.sys_file)
- status = self.status.name
- return f"FileDiff({dot_file=}, {sys_file=}, {status=})"
-
- @property
- def rel_dot_file(self) -> Path:
- """Returns path to a dot_file relative to workdir."""
- return self.dot_file.relative_to(Path.cwd())
-
-
-def iter_dir(directory: Path) -> Iterator[Path]:
- """Recursively iterate over given directory and yield all files in it."""
- for subpath in directory.iterdir():
- if subpath.is_file() or subpath.is_symlink():
- yield subpath
- else:
- yield from iter_dir(subpath)
-
-
-def file_sum(file: Path) -> str:
- """Compute SHA-256 hash sum of given file."""
- sha256_hash = hashlib.sha256()
- with file.open("rb") as f:
- for byte_block in iter(lambda: f.read(4096), b""):
- sha256_hash.update(byte_block)
- return sha256_hash.hexdigest()
-
-
-def compare_files(dot_file: Path, sys_file: Path) -> DiffStatus:
- """Compare two files returning their diff status."""
- try:
- if not sys_file.exists():
- return DiffStatus.NOT_FOUND
- except PermissionError:
- return DiffStatus.PERMISSION_ERROR
-
- if dot_file.is_symlink():
- if sys_file.is_symlink():
- if dot_file.readlink() == sys_file.readlink():
- return DiffStatus.MATCH
- else:
- # In case the sys_file link uses an absolute path, make sure
- # it points to the same location, even if that location is a
- # symlink.
- dot_target = sys_file.parent.joinpath(dot_file.readlink()).absolute()
- sys_target = sys_file.parent.joinpath(sys_file.readlink()).absolute()
- if dot_target == sys_target:
- return DiffStatus.MATCH
- return DiffStatus.SYMLINK_DIFFERS
- return DiffStatus.EXPECTED_SYMLINK
- elif sys_file.is_symlink():
- return DiffStatus.UNEXPECTED_SYMLINK
-
- try:
- if file_sum(dot_file) == file_sum(sys_file):
- return DiffStatus.MATCH
- except PermissionError:
- return DiffStatus.PERMISSION_ERROR
-
- return DiffStatus.CONTENT_DIFFERS
-
-
-def iter_pairs() -> Iterator[tuple[Path, Path]]:
- """Go through all files in the dotfiles directories and match them to system paths.
-
- Yields tuples of (dotfile file path, matching system path)
- """
- for dot_file in iter_dir(DOTHOMEDIR):
- real_file = Path(HOMEDIR, *dot_file.parts[1:])
- yield dot_file.expanduser().absolute(), real_file.expanduser().absolute()
-
- for dot_file in iter_dir(DOTROOTDIR):
- real_file = Path(ROOTDIR, *dot_file.parts[1:])
- yield dot_file.expanduser().absolute(), real_file.expanduser().absolute()
-
-
-def iter_diffs() -> Iterator[FileDiff]:
- """Go through all files and compute their diffs."""
- for dot_file, sys_file in iter_pairs():
- diff_status = compare_files(dot_file, sys_file)
- yield FileDiff(dot_file, sys_file, diff_status)
-
-
-def print_status(diffs: Iterable[FileDiff]) -> None:
- """Pretty print the individual diff statuses."""
- # Exhause the iterable, and ensure we work on a copy
- diffs = list(diffs)
-
- # Sort by DiffStatus, with MATCH entries being first
- diffs.sort(key=lambda v: (v.status is not DiffStatus.MATCH, v.status.name))
-
- if rich is None:
- for diff in diffs:
- print(f"{diff.status.name} -> {diff.sys_file}")
- return
-
- from rich.table import Table
- table = Table()
- table.add_column("Status")
- table.add_column("System file", style="magenta")
- table.add_column("Dotfile file", style="magenta")
-
- for diff in diffs:
- _str_status = diff.status.name.replace("_", " ")
- if diff.status is DiffStatus.MATCH:
- status_str = (f"[green]{_str_status}[/green]")
- elif diff.status is DiffStatus.PERMISSION_ERROR:
- status_str = f"[bold yellow]{_str_status}[/bold yellow]"
- elif diff.status is DiffStatus.NOT_FOUND:
- status_str = f"[bold orange_red1]{_str_status}[/bold orange_red1]"
- else:
- status_str = f"[bold red]{_str_status}[/bold red]"
-
- try:
- # Unexpand home (/home/xyz/foo -> ~/foo)
- sys_file = Path("~") / diff.sys_file.relative_to(Path.home())
- except ValueError: # File not in home
- sys_file = diff.sys_file
-
- sys_file = str(sys_file)
- dot_file = "./" + str(diff.rel_dot_file)
- table.add_row(status_str, sys_file, dot_file)
-
- rich.print(table)
-
-def exclude_fun(diff: FileDiff) -> bool:
- EXCLUDE_RULES = [
- lambda d: d.status is DiffStatus.MATCH,
- lambda d: d.rel_dot_file.name == ".keep" and d.sys_file.parent.is_dir(),
- lambda d: Path("root/etc/opensnitchd/rules") in d.rel_dot_file.parents,
- lambda d: Path("home/.config/xmobar") in d.rel_dot_file.parents,
- lambda d: Path("home/.config/xmonad") in d.rel_dot_file.parents,
- lambda d: Path("home/.local/share/xmonad") in d.rel_dot_file.parents,
- lambda d: Path("home/.config/topgrade.toml") == d.rel_dot_file,
- lambda d: Path("home/.config/newsboat") in d.rel_dot_file.parents,
- lambda d: Path("home/.cache/zsh/history") == d.rel_dot_file and d.status is DiffStatus.CONTENT_DIFFERS,
- lambda d: Path("home/.local/scripts") in d.rel_dot_file.parents, # Temporary
- lambda d: Path("root") in d.rel_dot_file.parents, # Temporary
- ]
-
- for exc_rule in EXCLUDE_RULES:
- if exc_rule(diff):
- return False
- return True
-
-
-def main() -> None:
- diffs = iter_diffs()
- diffs = filter(exclude_fun, diffs)
- print_status(diffs)
-
-
-
-if __name__ == "__main__":
- main()