Compare commits
No commits in common. "main" and "Arch-Hyprland-v2.2-1" have entirely different histories.
main
...
Arch-Hyprl
|
|
@ -1,4 +0,0 @@
|
|||
# These are supported funding model platforms
|
||||
|
||||
github: JaKooLit
|
||||
ko_fi: jakoolit
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: "[Bug]: Short description of the issue"
|
||||
labels: "Something isn't working"
|
||||
---
|
||||
|
||||
## Bug Report
|
||||
|
||||
### Before submitting report
|
||||
|
||||
[Kindly review the log files in Install-Logs directory. Some apps may have not installed properly.]
|
||||
|
||||
### Description
|
||||
|
||||
[Provide a clear and concise description of the bug.]
|
||||
|
||||
[If you have issue with installation, kindly attach the Install-Logs which was created by the install script]
|
||||
|
||||
|
||||
### Steps to Reproduce
|
||||
|
||||
1. [First Step]
|
||||
2. [Second Step]
|
||||
3. [and so on...]
|
||||
|
||||
### Expected Behavior
|
||||
|
||||
[What did you expect to happen?]
|
||||
|
||||
### Actual Behavior
|
||||
|
||||
[What actually happened?]
|
||||
|
||||
### Screenshots
|
||||
|
||||
[If applicable, add screenshots to help explain your problem.]
|
||||
|
||||
### Environment
|
||||
|
||||
[Please add any other relevant information about the bug and remove the unnecessary lines.]
|
||||
|
||||
### show output of `inxi -CGIsSMnr` install package `inxi` if not exist
|
||||
show output here
|
||||
```
|
||||
|
||||
|
||||
```
|
||||
|
||||
### Additional Information
|
||||
|
||||
[Add any other information about the problem here. For example, you might include the error message, any recent changes that you made to the project, or any other relevant details.]
|
||||
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
---
|
||||
name: Custom template
|
||||
about: Use this template to submit a custom issue
|
||||
title: "[Custom]: Short description of the issue"
|
||||
labels: "custom"
|
||||
---
|
||||
|
||||
## Custom Template
|
||||
|
||||
### Before submitting report
|
||||
|
||||
[Kindly review the log files in Install-Logs directory. Some apps may have not installed properly.]
|
||||
|
||||
### Description
|
||||
|
||||
[Provide a clear and concise description of the issue or request.]
|
||||
|
||||
### Steps to Reproduce (if applicable)
|
||||
|
||||
1. [First Step]
|
||||
2. [Second Step]
|
||||
3. [and so on...]
|
||||
|
||||
### Expected Behavior
|
||||
|
||||
[What did you expect to happen?]
|
||||
|
||||
### Actual Behavior
|
||||
|
||||
[What actually happened?]
|
||||
|
||||
### Screenshots (if applicable)
|
||||
|
||||
[If applicable, add screenshots to help explain your problem.]
|
||||
|
||||
### Proposed Solution (if applicable)
|
||||
|
||||
[If you have a specific solution in mind, describe it here. If not, you can skip this section.]
|
||||
|
||||
### Additional Information
|
||||
|
||||
[Add any other information about the issue or request here. For example, you might include links to similar features in other projects, or screenshots or diagrams to help explain your idea.]
|
||||
|
||||
### show output of `inxi -CGIsSMnr` install package `inxi` if not exist
|
||||
show output here
|
||||
```
|
||||
|
||||
|
||||
```
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
---
|
||||
name: Documentation update
|
||||
about: Propose a change to the project documentation
|
||||
title: "[Docs]: Short description of the change"
|
||||
labels: "documentation update"
|
||||
---
|
||||
|
||||
## Documentation Update
|
||||
|
||||
### Description
|
||||
|
||||
[Provide a clear and concise description of the documentation update you'd like to see made.]
|
||||
|
||||
### Current Documentation
|
||||
|
||||
[Provide a link to the current documentation or describe where it can be found.]
|
||||
|
||||
### Proposed Documentation
|
||||
|
||||
[Provide a clear and concise description of the updated documentation that you'd like to see added.]
|
||||
|
||||
### Additional Information
|
||||
|
||||
[Add any other information about the documentation update here. For example, you might include links to similar documentation in other projects, or screenshots or diagrams to help explain your idea.]
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
---
|
||||
name: Feature request
|
||||
about: Suggest a feature for this project
|
||||
title: "[Feature Request]: Short description of the feature"
|
||||
labels: "enhancement, needs triage, feature request"
|
||||
---
|
||||
|
||||
## Feature Request
|
||||
|
||||
### Description
|
||||
|
||||
[Provide a clear and concise description of the feature you'd like to see added.]
|
||||
|
||||
### Use Case
|
||||
|
||||
[Describe how this feature would be useful to you or to other users of the project.]
|
||||
|
||||
### Proposed Solution
|
||||
|
||||
[If you have a specific solution in mind, describe it here. If not, you can skip this section.]
|
||||
|
||||
### Alternatives
|
||||
|
||||
[Are there any alternative solutions or workarounds that you've considered? If so, describe them here.]
|
||||
|
||||
### Additional Information
|
||||
|
||||
[Add any other information about the feature request here. For example, you might include links to similar features in other projects, or screenshots or diagrams to help explain your idea.]
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
# Pull Request
|
||||
|
||||
## Description
|
||||
|
||||
Please read these instructions and remove unnecessary text.
|
||||
|
||||
- Try to include a summary of the changes and which issue is fixed.
|
||||
- Also include relevant motivation and context (if applicable).
|
||||
- List any dependencies that are required for this change. (e.g., packages or other PRs)
|
||||
- Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue)
|
||||
- Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable)
|
||||
|
||||
## Type of change
|
||||
|
||||
Please put an `x` in the boxes that apply:
|
||||
|
||||
- [ ] **Bug fix** (non-breaking change which fixes an issue)
|
||||
- [ ] **New feature** (non-breaking change which adds functionality)
|
||||
- [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected)
|
||||
- [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations)
|
||||
- [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs)
|
||||
- [ ] **Other** (provide details below)
|
||||
|
||||
## Checklist
|
||||
|
||||
Please put an `x` in the boxes that apply:
|
||||
|
||||
- [ ] I have read the [CONTRIBUTING](https://github.com/JaKooLit/Arch-Hyprland/blob/main/CONTRIBUTING.md) document.
|
||||
- [ ] My code follows the code style of this project.
|
||||
- [ ] My commit message follows the [commit guidelines](https://github.com/JaKooLit/Arch-Hyprland/blob/main/CONTRIBUTING.md#git-commit-messages).
|
||||
- [ ] My change requires a change to the documentation.
|
||||
- [ ] I want to add something in Arch-Hyprland wiki.
|
||||
- [ ] I have added tests to cover my changes.
|
||||
- [ ] I have tested my code locally and it works as expected.
|
||||
- [ ] All new and existing tests passed.
|
||||
|
||||
## Screenshots
|
||||
|
||||
(if appropriate)
|
||||
|
||||
## Additional context
|
||||
|
||||
Add any other context about the problem here.
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 665 KiB |
109
CHANGELOGS.md
109
CHANGELOGS.md
|
|
@ -1,114 +1,5 @@
|
|||
## Changelogs
|
||||
|
||||
## 20 Sep 2024
|
||||
- User will be ask if they want to set Thunar as default file manager if they decided to install it
|
||||
|
||||
## 19 Sep 2024
|
||||
- Added fastfetch on tty. However, will be disabled if user decided to install pokemon colorscripts
|
||||
|
||||
## 18 Sep 2024
|
||||
- dotfiles will now be downloaded from main or master branch instead of from the releases version.
|
||||
|
||||
## 14 Sep 2024
|
||||
- remove the final error checks instead, introduced a final check of essential packages to ran Hyprland
|
||||
|
||||
## 08 Sep 2024
|
||||
- Added final error checks on install-logs
|
||||
|
||||
## 07 Sep 2024
|
||||
- added pulseaudio check
|
||||
- added sof-firmware
|
||||
|
||||
## 29 Aug 2024
|
||||
- switched over to non-git wallust package
|
||||
- improved indentions on some install scripts
|
||||
|
||||
## 28 Aug 2024
|
||||
- Added final check if hyprland is installed and will give an error to user
|
||||
|
||||
## 26 Aug 2024
|
||||
- Set to uninstall rofi as conflicts with rofi-wayland
|
||||
- added nvidia_drm.fbdev=1 for grub
|
||||
|
||||
## 14 Aug 2024
|
||||
- added archlinux-keyring on base.sh
|
||||
|
||||
## 08 Aug 2024
|
||||
- Increased to 1 sec delay for installing base-devel [commit](https://github.com/JaKooLit/Arch-Hyprland/commit/7ebfa06c3b186f9bec0bcf268fae401ba67dfc2a)
|
||||
|
||||
## 07 Jul 2024
|
||||
- added eza (ls replacement for tty). Note only on .zshrc
|
||||
|
||||
## 25 Jun 2024
|
||||
- added fbdev=1 for nvidia.sh on `/etc/modprobe.d/nvidia.conf`. see here `https://wiki.hyprland.org/Nvidia/#drm-kernel-mode-setting`
|
||||
|
||||
## 26 May 2024
|
||||
- Added fzf for zsh (CTRL R to invoke FZF history)
|
||||
|
||||
## 23 May 2024
|
||||
- added qalculate-gtk to work with rofi-calc. Default keybinds (SUPER ALT C)
|
||||
- added power-profiles-daemon for ROG laptops. Note, I cant add to all since it conflicts with TLP, CPU-Auto-frequency etc.
|
||||
- added fastfetch
|
||||
|
||||
## 22 May 2024
|
||||
- nwg-look is now in extra repo so replaced with nwg-look from nwg-look-bin
|
||||
- change the sddm theme destination to /etc/sddm.conf.d/10-theme.conf to theme.conf.user
|
||||
|
||||
## 19 May 2024
|
||||
- Disabled the auto-login in .zprofile as it causes auto-login to Hyprland if any wayland was chosen. Can enabled if only using hyprland
|
||||
|
||||
## 10 May 2024
|
||||
- added wallust-git and remove python-pywal for migration to wallust on Hyprland-Dots v2.2.11
|
||||
|
||||
## 08 May 2024
|
||||
- Adjusted sddm.sh since it does not respect preset.sh
|
||||
- install.sh have been rearranged so it quits if user choose not to proceed
|
||||
|
||||
## 07 May 2024
|
||||
- Minor typo change on nvidia.sh
|
||||
- switch back to cava since installing cava-git keep it hanging (see known-issue on readme)
|
||||
|
||||
## 05 May 2024
|
||||
- switched to rofi-wayland Extra Repo
|
||||
|
||||
## 04 May 2024
|
||||
- separated fonts installation script for easy debugging
|
||||
|
||||
## 03 May 2024
|
||||
- added python3-pyquery for new weather-waybar python based on Hyprland-Dots
|
||||
|
||||
## 02 May 2024
|
||||
- Added pyprland (hyprland plugin)
|
||||
|
||||
## 26 Apr 2024
|
||||
- Updated sddm.sh for Qt6 variant
|
||||
|
||||
## 23 Apr 2024
|
||||
- Dropping swayidle and swaylock in favor of hypridle and hyprlock
|
||||
|
||||
## 20 Apr 2024
|
||||
- Change default Oh-my-zsh theme to xiong-chiamiov-plus
|
||||
|
||||
## 16 Mar 2024
|
||||
- added hyprcursor
|
||||
|
||||
## 1 Mar 2024
|
||||
- replaced sddm-git with sddm
|
||||
|
||||
## 11 Jan 2024
|
||||
- dropped wlsunset
|
||||
|
||||
## 05 Jan 2024
|
||||
- Added a preset feature
|
||||
- Added templates for contributing, and reporting, etc
|
||||
|
||||
## 01 Jan 2024
|
||||
- Re-coded complete and test
|
||||
- Added to spice up pacman.conf including adding of ILoveCandy on it :)
|
||||
|
||||
## 30 Dec 2023
|
||||
- Install scripts reconstructed
|
||||
|
||||
## 29 December 2023
|
||||
- Remove dunst in favor of swaync. NOTE: Part of the script is to also uninstall mako and dunst (if installed) as on my experience, dunst is sometimes taking over the notification even if it is not set to start
|
||||
|
||||
|
|
|
|||
|
|
@ -1,128 +0,0 @@
|
|||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
We as members, contributors, and leaders pledge to make participation in our
|
||||
community a harassment-free experience for everyone, regardless of age, body
|
||||
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||
identity and expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, religion, or sexual identity
|
||||
and orientation.
|
||||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to a positive environment for our
|
||||
community include:
|
||||
|
||||
* Demonstrating empathy and kindness toward other people
|
||||
* Being respectful of differing opinions, viewpoints, and experiences
|
||||
* Giving and gracefully accepting constructive feedback
|
||||
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||
and learning from the experience
|
||||
* Focusing on what is best not just for us as individuals, but for the
|
||||
overall community
|
||||
|
||||
Examples of unacceptable behavior include:
|
||||
|
||||
* The use of sexualized language or imagery, and sexual attention or
|
||||
advances of any kind
|
||||
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or email
|
||||
address, without their explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
## Enforcement Responsibilities
|
||||
|
||||
Community leaders are responsible for clarifying and enforcing our standards of
|
||||
acceptable behavior and will take appropriate and fair corrective action in
|
||||
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||
or harmful.
|
||||
|
||||
Community leaders have the right and responsibility to remove, edit, or reject
|
||||
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||
decisions when appropriate.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies within all community spaces, and also applies when
|
||||
an individual is officially representing the community in public spaces.
|
||||
Examples of representing our community include using an official e-mail address,
|
||||
posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement at
|
||||
mail[at]ml4w.com.
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
reporter of any incident.
|
||||
|
||||
## Enforcement Guidelines
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining
|
||||
the consequences for any action they deem in violation of this Code of Conduct:
|
||||
|
||||
### 1. Correction
|
||||
|
||||
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||
unprofessional or unwelcome in the community.
|
||||
|
||||
**Consequence**: A private, written warning from community leaders, providing
|
||||
clarity around the nature of the violation and an explanation of why the
|
||||
behavior was inappropriate. A public apology may be requested.
|
||||
|
||||
### 2. Warning
|
||||
|
||||
**Community Impact**: A violation through a single incident or series
|
||||
of actions.
|
||||
|
||||
**Consequence**: A warning with consequences for continued behavior. No
|
||||
interaction with the people involved, including unsolicited interaction with
|
||||
those enforcing the Code of Conduct, for a specified period of time. This
|
||||
includes avoiding interactions in community spaces as well as external channels
|
||||
like social media. Violating these terms may lead to a temporary or
|
||||
permanent ban.
|
||||
|
||||
### 3. Temporary Ban
|
||||
|
||||
**Community Impact**: A serious violation of community standards, including
|
||||
sustained inappropriate behavior.
|
||||
|
||||
**Consequence**: A temporary ban from any sort of interaction or public
|
||||
communication with the community for a specified period of time. No public or
|
||||
private interaction with the people involved, including unsolicited interaction
|
||||
with those enforcing the Code of Conduct, is allowed during this period.
|
||||
Violating these terms may lead to a permanent ban.
|
||||
|
||||
### 4. Permanent Ban
|
||||
|
||||
**Community Impact**: Demonstrating a pattern of violation of community
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
individual, or aggression toward or disparagement of classes of individuals.
|
||||
|
||||
**Consequence**: A permanent ban from any sort of public interaction within
|
||||
the community.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||
version 2.0, available at
|
||||
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
||||
|
||||
Community Impact Guidelines were inspired by [Mozilla's code of conduct
|
||||
enforcement ladder](https://github.com/mozilla/diversity).
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
|
||||
For answers to common questions about this code of conduct, see the FAQ at
|
||||
https://www.contributor-covenant.org/faq. Translations are available at
|
||||
https://www.contributor-covenant.org/translations.
|
||||
|
|
@ -1,149 +0,0 @@
|
|||
# Commit Message Guidelines
|
||||
|
||||
A good commit message should be descriptive and provide context about the changes made. This makes it easier to understand and review the changes in the future.
|
||||
|
||||
Here are some guidelines for writing descriptive commit messages:
|
||||
|
||||
- Start with a short summary of the changes made in the commit.
|
||||
|
||||
- Use imperative mood for the summary, as if you're giving a command. For example, "Add feature" instead of "Added feature".
|
||||
|
||||
- Provide additional details in the commit message body, if necessary. This could include the reason for the change, the impact of the change, or any dependencies that were introduced or removed.
|
||||
|
||||
- Keep the message within 72 characters per line to ensure that it's easy to read in Git log output.
|
||||
|
||||
Examples of good commit messages:
|
||||
|
||||
- "Add authentication feature for user login"
|
||||
- "Fix bug causing application to crash on startup"
|
||||
- "Update documentation for API endpoints"
|
||||
|
||||
Remember, writing descriptive commit messages can save time and frustration in the future, and help others understand the changes made to the codebase.
|
||||
|
||||
## Commit Message Types
|
||||
|
||||
Here's a more comprehensive list of commit types that you can use:
|
||||
|
||||
`feat`: Adding a new feature to the project
|
||||
|
||||
```markdown
|
||||
feat: Add multi-image upload support
|
||||
```
|
||||
|
||||
`fix`: Fixing a bug or issue in the project
|
||||
|
||||
```markdown
|
||||
fix: Fix bug causing application to crash on startup
|
||||
```
|
||||
|
||||
`docs`: Updating documentation in the project
|
||||
|
||||
```markdown
|
||||
docs: Update documentation for API endpoints
|
||||
```
|
||||
|
||||
`style`: Making cosmetic or style changes to the project (such as changing colors or formatting code)
|
||||
|
||||
```markdown
|
||||
style: Update colors and formatting
|
||||
```
|
||||
|
||||
`refactor`: Making code changes that don't affect the behavior of the project, but improve its quality or maintainability
|
||||
|
||||
```markdown
|
||||
refactor: Remove unused code
|
||||
```
|
||||
|
||||
`test`: Adding or modifying tests for the project
|
||||
|
||||
```markdown
|
||||
test: Add tests for new feature
|
||||
```
|
||||
|
||||
`chore`: Making changes to the project that don't fit into any other category, such as updating dependencies or configuring the build system
|
||||
|
||||
```markdown
|
||||
chore: Update dependencies
|
||||
```
|
||||
|
||||
`perf`: Improving performance of the project
|
||||
|
||||
```markdown
|
||||
perf: Improve performance of image processing
|
||||
```
|
||||
|
||||
`security`: Addressing security issues in the project
|
||||
|
||||
```markdown
|
||||
security: Update dependencies to address security issues
|
||||
```
|
||||
|
||||
`merge`: Merging branches in the project
|
||||
|
||||
```markdown
|
||||
merge: Merge branch 'feature/branch-name' into develop
|
||||
```
|
||||
|
||||
`revert`: Reverting a previous commit
|
||||
|
||||
```markdown
|
||||
revert: Revert "Add feature"
|
||||
```
|
||||
|
||||
`build`: Making changes to the build system or dependencies of the project
|
||||
|
||||
```markdown
|
||||
build: Update dependencies
|
||||
```
|
||||
|
||||
`ci`: Making changes to the continuous integration (CI) system for the project
|
||||
|
||||
```markdown
|
||||
ci: Update CI configuration
|
||||
```
|
||||
|
||||
`config`: Making changes to configuration files for the project
|
||||
|
||||
```markdown
|
||||
config: Update configuration files
|
||||
```
|
||||
|
||||
`deploy`: Making changes to the deployment process for the project
|
||||
|
||||
```markdown
|
||||
deploy: Update deployment scripts
|
||||
```
|
||||
|
||||
`init`: Creating or initializing a new repository or project
|
||||
|
||||
```markdown
|
||||
init: Initialize project
|
||||
```
|
||||
|
||||
`move`: Moving files or directories within the project
|
||||
|
||||
```markdown
|
||||
move: Move files to new directory
|
||||
```
|
||||
|
||||
`rename`: Renaming files or directories within the project
|
||||
|
||||
```markdown
|
||||
rename: Rename files
|
||||
```
|
||||
|
||||
`remove`: Removing files or directories from the project
|
||||
|
||||
```markdown
|
||||
remove: Remove files
|
||||
```
|
||||
|
||||
`update`: Updating code, dependencies, or other components of the project
|
||||
|
||||
```markdown
|
||||
update: Update code
|
||||
```
|
||||
|
||||
These are just some examples, and you can create your own custom commit types as well. However, it's important to use them consistently and write clear, descriptive commit messages to make it easy for others to understand the changes you've made.
|
||||
|
||||
**Important:** If you are planning to use a custom commit message type other than the ones listed above, make sure to add it to this list so that others can understand it as well. Create a pull request to add it to this file.
|
||||
|
|
@ -1,70 +0,0 @@
|
|||
# Contributing to Community Standards
|
||||
|
||||
Thank you for your interest in contributing to Community Standards! We welcome any contributions, including bug fixes, feature enhancements, documentation improvements, and other general improvements.
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. Fork the branch development repository to your GitHub account. This will create a copy of this repository in your account. You can make changes to this copy without affecting the original repository.
|
||||
- For fork this repository, click the **Fork** button in the top right corner of this page or click [here](https://github.com/JaKooLit/Arch-Hyprland/fork).
|
||||
- Make sure to uncheck the Copy the `main` branch only. This will copy the development branch and other branches (if any)
|
||||
|
||||
2. Clone your forked repository to your local machine.
|
||||
|
||||
- Use the following command to clone your forked repository to your local machine.
|
||||
|
||||
```bash
|
||||
git clone --depth=1 -b development https://github.com/JaKooLit/Arch-Hyprland.git
|
||||
```
|
||||
|
||||
3. Create a new branch for your changes.
|
||||
|
||||
- For example, to create a new branch named `your-branch-name`, use the following command.
|
||||
|
||||
```bash
|
||||
git checkout -b your-branch-name
|
||||
```
|
||||
|
||||
4. Make your changes and commit them with a descriptive commit message.
|
||||
|
||||
- For example, to commit your changes, use the following command and make sure to follow the [commit message guidelines](https://github.com/JaKooLit/Arch-Hyprland/blob/main/COMMIT_MESSAGE_GUIDELINES.md).
|
||||
|
||||
```bash
|
||||
git commit -m "feat: add a new feature"
|
||||
```
|
||||
|
||||
5. Push your changes to your forked repository.
|
||||
|
||||
- For example, to push your changes to your forked repository, use the following command.
|
||||
|
||||
```bash
|
||||
git push origin your-branch-name
|
||||
```
|
||||
|
||||
6. Submit a **pull request** to the development branch repository.
|
||||
- For example, to create a pull request, use the following steps.
|
||||
1. Go to your forked repository.
|
||||
2. Click the **Compare & pull request** button next to your `your-branch-name` branch.
|
||||
3. Add a title and description for your pull request.
|
||||
4. Click **Create pull request** and remember to add the relevant labels with using the [pull request template](https://github.com/JaKooLit/Arch-Hyprland/blob/main/.github/PULL_REQUEST_TEMPLATE.md).
|
||||
|
||||
## Guidelines
|
||||
|
||||
- Follow the code style of the project.
|
||||
- Update the **documentation** if necessary.
|
||||
- Add tests if applicable.
|
||||
- Make sure all tests pass or fully tested before submitting your changes.
|
||||
- Keep your pull request focused and avoid including unrelated changes.
|
||||
- Remember to follow the following files before submitting your changes.
|
||||
- [bug_report.md](https://github.com/JaKooLit/Arch-Hyprland/blob/main/.github/ISSUE_TEMPLATE/bug_report.md) - Use this template to create a report to help us improve.
|
||||
- [feature_request.md](https://github.com/JaKooLit/Arch-Hyprland/blob/main/.github/ISSUE_TEMPLATE/feature_request.md) - Use this template to suggest a feature for this project.
|
||||
- [documentation_update.md](https://github.com/JaKooLit/Arch-Hyprland/blob/main/.github/ISSUE_TEMPLATE/documentation_update.md) - Use this template to propose a change to the documentation.
|
||||
- [custom.md](https://github.com/JaKooLit/Arch-Hyprland/blob/main/.github/ISSUE_TEMPLATE/custom.md) - Use this template to submit a custom issue.
|
||||
- [PULL_REQUEST_TEMPLATE.md](https://github.com/JaKooLit/Arch-Hyprland/blob/main/.github/PULL_REQUEST_TEMPLATE.md) - Use this template to submit a pull request.
|
||||
- [COMMIT_MESSAGE_GUIDELINES.md](https://github.com/JaKooLit/Arch-Hyprland/blob/main/COMMIT_MESSAGE_GUIDELINES.md) - Read this file to learn about the commit message guidelines.
|
||||
- [CONTRIBUTING.md](https://github.com/JaKooLit/Arch-Hyprland/blob/main/CONTRIBUTING.md) - Read this file to learn about the contributing guidelines.
|
||||
- [LICENSE](https://github.com/JaKooLit/Arch-Hyprland/blob/main/LICENSE.md) - Read this file to learn about the license.
|
||||
- [README.md](https://github.com/JaKooLit/Arch-Hyprland/blob/main/README.md) - Read this file to learn about the project.
|
||||
|
||||
## Contact
|
||||
|
||||
If you have any questions, feel free to contact via [GitHub Discussions](https://github.com/JaKooLit/Arch-Hyprland/discussions) or [Through Discord Server](https://discord.gg/V2SJ92vbEN)
|
||||
BIN
Installer.png
BIN
Installer.png
Binary file not shown.
|
Before Width: | Height: | Size: 2.3 MiB |
139
README.md
139
README.md
|
|
@ -1,51 +1,14 @@
|
|||
<div align="center">
|
||||
<br>
|
||||
<a href="#-announcement-"><kbd> <br> Read this First <br> </kbd></a>  
|
||||
<a href="#-to-use-this-script"><kbd> <br> How to use this script <br> </kbd></a>  
|
||||
<a href="#gallery-and-videos"><kbd> <br> Gallery <br> </kbd></a>  
|
||||
</div><br>
|
||||
|
||||
<div align="center">
|
||||
|
||||
## 💌 ** JaKooLit's Arch Hyprland Install Script ** 💌
|
||||
|
||||
   <a href="https://discord.gg/9JEgZsfhex"> <img src="https://img.shields.io/discord/1151869464405606400?style=for-the-badge&logo=discord&color=cba6f7&link=https%3A%2F%2Fdiscord.gg%9JEgZsfhex"> </a>
|
||||
  
|
||||
|
||||
|
||||
<br/>
|
||||
</div>
|
||||
|
||||
<div align="center">
|
||||
👇 KOOL's Hyprland-Dots related Links 👇
|
||||
<br/>
|
||||
</div>
|
||||
<div align="center">
|
||||
<br>
|
||||
<a href="https://github.com/JaKooLit/Hyprland-Dots"><kbd> <br> Hyprland-Dots repo <br> </kbd></a>  
|
||||
<a href="https://www.youtube.com/playlist?list=PLDtGd5Fw5_GjXCznR0BzCJJDIQSZJRbxx"><kbd> <br> Youtube <br> </kbd></a>  
|
||||
<a href="https://github.com/JaKooLit/Hyprland-Dots/wiki"><kbd> <br> Wiki <br> </kbd></a>  
|
||||
<a href="https://github.com/JaKooLit/Hyprland-Dots/wiki/Keybinds"><kbd> <br> Keybinds <br> </kbd></a>  
|
||||
<a href="https://github.com/JaKooLit/Hyprland-Dots/wiki/FAQ"><kbd> <br> FAQ <br> </kbd></a>  
|
||||
<a href="https://discord.gg/9JEgZsfhex"><kbd> <br> Discord <br> </kbd></a>
|
||||
</div><br>
|
||||
|
||||
<h3 align="center">
|
||||
<img src="https://github.com/JaKooLit/Telegram-Animated-Emojis/blob/main/Activity/Sparkles.webp" alt="Sparkles" width="38" height="38" />
|
||||
KooL Hyprland-Dotfiles Showcase
|
||||
<img src="https://github.com/JaKooLit/Telegram-Animated-Emojis/blob/main/Activity/Sparkles.webp" alt="Sparkles" width="38" height="38" />
|
||||
</h3>
|
||||
|
||||
<div align="center">
|
||||
|
||||
https://github.com/JaKooLit/Hyprland-Dots/assets/85185940/50d53755-0f11-45d6-9913-76039e84a2cd
|
||||
|
||||
</div>
|
||||
|
||||
### Gallery and Videos
|
||||
<details>
|
||||
<summary>
|
||||
📷 Screenshots
|
||||
</summary>
|
||||
#### Hyprland-Dots-showcase
|
||||
<p align="center">
|
||||
<img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-ScreenShots/Arch-v2/Arch-Default-Layout.png" /> <img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-Dots-Showcase/dark-theme.png" />
|
||||
<img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-Dots-Showcase/Light-theme.png" /> <img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-ScreenShots/Arch-v2/Another-Screenshot.png"" />
|
||||
|
|
@ -66,60 +29,46 @@ https://github.com/JaKooLit/Hyprland-Dots/assets/85185940/50d53755-0f11-45d6-991
|
|||
|
||||
#### 📽️ youtube video showcase: [`Link`](https://youtu.be/W2UFwkgdwNo)
|
||||
|
||||
</details>
|
||||
|
||||
|
||||
### 🪧🪧🪧 ANNOUNCEMENT 🪧🪧🪧
|
||||
- This Repo does not contain Hyprland Dots or configs! Dotfiles can be checked here [`Hyprland-Dots`](https://github.com/JaKooLit/Hyprland-Dots) . During installation, if you opt to copy pre-configured dots, it will be downloaded from that centralized repo.
|
||||
- This Repo does not contain Hyprland Dots or configs! Dotfiles can be checked here [`Hyprland-Dots`](https://github.com/JaKooLit/Hyprland-Dots) . During installation, if you opt to copy installation, it will be downloaded from that centralized repo.
|
||||
- Hyprland-Dots use are constantly evolving / improving. you can check CHANGELOGS here [`Hyprland-Dots-Changelogs`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Changelogs)
|
||||
- Since the Hyprland-Dots are evolving, some of the screenshots maybe old
|
||||
- the wallpaper offered to be downloaded towards the end is from this [`REPO`](https://github.com/JaKooLit/Wallpaper-Bank)
|
||||
|
||||
> [!IMPORTANT]
|
||||
> [❗!IMPORTANT]
|
||||
> install a backup tool like `snapper` or `timeshift`. and Backup your system before installing hyprland using this script. This script does NOT include uninstallation of packages
|
||||
|
||||
> [!NOTE]
|
||||
> Main reason why I have not included an uninstallation script is simple. Some packages maybe already installed on your system by default. If I create an uninstall script with packages that I have set to install, you may end up a unrecoverable system.
|
||||
|
||||
> [!WARNING]
|
||||
> Download this script on a directory where you have write permissions. ie. HOME. Or any directory within your home directory. Else script will fail
|
||||
|
||||
#### 🆕 Prerequisites
|
||||
- This install script is intended for atleast Server type / Minimal Arch Linux installed.
|
||||
|
||||
> [!NOTE]
|
||||
> 🔘 Pipewire and Pipewire audio
|
||||
- This script will install pipewire and will also disable or will uninstall pulseaudio. If you dont want it, edit install.sh, about line 191 and comment the line `execute_script "pipewire.sh"` or you can simply just delete pipewire.sh in install-scripts directory before installing.
|
||||
#### 🔘 Pipewire and Pipewire audio
|
||||
- This script will install pipewire and will also disable or will uninstall pulseaudio. If you dont want it, you can simply just delete pipewire.sh in install-scripts folder before installing.
|
||||
|
||||
#### ✨ Costumize the packages to be installed
|
||||
- inside the install-scripts directory, you can edit 00-hypr-pkgs.sh. Care though as the Hyprland Dots may not work properly!
|
||||
- inside the install-scripts folder, you can edit 00-hypr-pkgs.sh. Care though as the Hyprland Dots may not work properly!
|
||||
- default GTK theme if agreed to be installed is Tokyo night GTK themes (dark and light) + Tokyo night SE icons
|
||||
|
||||
#### 💫 SDDM and GTK Themes offered
|
||||
- If you opted to install SDDM theme, here's the [`LINK`](https://github.com/JaKooLit/simple-sddm-2)
|
||||
- If you opted to install GTK Themes, Icons, here's the [`LINK`](https://github.com/JaKooLit/GTK-themes-icons) & Bibata Cursor Modern Ice (assets directory)
|
||||
- If you opted to install SDDM theme, here's the [`LINK`](https://github.com/JaKooLit/simple-sddm)
|
||||
- If you opted to install GTK Themes, Icons and Cursor offered are Tokyo Nights. [`LINK`](https://github.com/JaKooLit/GTK-themes-icons) & Bibata Cursor Modern Ice
|
||||
|
||||
#### 👀 NVidia GPU Owners.
|
||||
- By default, nvidia-dkms will be installed. and only supports GTX 900 and newer. If required to install older driver, edit the nvidia.sh in install-scripts directory
|
||||
- By default, nvidia-dkms will be installed. and only supports GTX 900 and newer. If required to install older driver, edit the nvidia.sh in scripts-folder
|
||||
> [!IMPORTANT]
|
||||
> If you want to use nouveau driver, choose N when asked if you have nvidia gpu. This is because the nvidia installer part, it will blacklist nouveau. Hyprland will still be installed but it will skip blacklisting nouveau.
|
||||
- After installation, check [`THIS`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Notes_to_remember#--for-nvidia-gpu-users)
|
||||
|
||||
## ✨ to use this script
|
||||
#### ✨ to run
|
||||
> clone this repo (latest commit only) to reduce file size download by using git. Change directory, make executable and run the script
|
||||
|
||||
>[!IMPORTANT]
|
||||
> Make sure you have base-devel installed
|
||||
|
||||
- Without base-devel installed, script will fail
|
||||
|
||||
```bash
|
||||
git clone --depth=1 https://github.com/JaKooLit/Arch-Hyprland.git ~/Arch-Hyprland
|
||||
cd ~/Arch-Hyprland
|
||||
git clone --depth=1 https://github.com/JaKooLit/Arch-Hyprland.git
|
||||
cd Arch-Hyprland
|
||||
chmod +x install.sh
|
||||
./install.sh
|
||||
```
|
||||
|
||||
<p align="center">
|
||||
<img align="center" width="100%" src="https://raw.githubusercontent.com/JaKooLit/Arch-Hyprland/main/Installer.png" />
|
||||
<img align="center" width="100%" src="https://raw.githubusercontent.com/JaKooLit/Arch-Hyprland/main/Arch-Installer.png" />
|
||||
|
||||
#### ✨ for ZSH and OH-MY-ZSH installation
|
||||
> installer should auto change your default shell to zsh. However, if it does not, do this
|
||||
|
|
@ -138,31 +87,18 @@ source ~/.zshrc
|
|||
- SUPER H for HINT or click on the waybar HINT! Button
|
||||
- Head over to [FAQ](https://github.com/JaKooLit/Hyprland-Dots/wiki/FAQ) and [TIPS](https://github.com/JaKooLit/Hyprland-Dots/wiki/TIPS)
|
||||
|
||||
|
||||
#### 🙋 Got a questions regarding the Hyprland Dots or configurations? 🙋
|
||||
- Head over to wiki Link [`WIKI`](https://github.com/JaKooLit/Hyprland-Dots/wiki)
|
||||
|
||||
#### ⌨ Keybinds
|
||||
- Keybinds [`CLICK`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Keybinds)
|
||||
> [!TIP]
|
||||
> KooL's Dots v2.3.7 has a searchable keybind function via rofi. (SUPER SHIFT K) or right click the `HINTS` waybar button
|
||||
|
||||
#### 🙋 👋 Having issues or questions?
|
||||
- for the install part, kindly open issue on this repo
|
||||
- for the Pre-configured Hyprland dots / configuration, submit issue [`here`](https://github.com/JaKooLit/Hyprland-Dots/issues)
|
||||
|
||||
#### 🔧 Proper way to re-installing a particular script from install-scripts directory
|
||||
- CD into Arch-Hyprland directory and then ran the below command.
|
||||
- i.e. `./install-scripts/gtk-themes.sh` - For reinstall GTK Themes or
|
||||
- `./install-scripts/sddm.sh` - For reinstall sddm
|
||||
> [!IMPORTANT]
|
||||
> DO NOT cd into install-scripts directory as script will most likely to fail
|
||||
|
||||
#### 🛣️ Roadmap:
|
||||
- ~~[ ] Install zsh and oh-my-zsh without necessary steps above~~ DONE
|
||||
- [ ] possibly adding gruvbox themes, cursors, icons
|
||||
|
||||
#### ❗ some known issues for nvidia
|
||||
#### ⚠️ some known issues
|
||||
- reports from members of my discord, states that some users of nvidia are getting stuck on sddm login. credit to @Kenni Fix stated was
|
||||
```
|
||||
while in sddm press ctrl+alt+F2 or F3
|
||||
|
|
@ -171,45 +107,14 @@ log into your account
|
|||
`ls /dev/dri/by-path` find the matching id
|
||||
`ls -l /dev/dri/by-path` to check where the symlink points to
|
||||
)
|
||||
7. add "env = WLR_DRM_DEVICES,/dev/dri/cardX" to the ENVvariables config (.config/hypr/configs/ENVariables.conf) ; X being where the symlink of the gpu points to
|
||||
```
|
||||
- add "env = WLR_DRM_DEVICES,/dev/dri/cardX" to the ENVvariables config `~/.config/hypr/UserConfigs/ENVariables.conf` ; X being where the symlink of the gpu points to
|
||||
|
||||
- more info from the hyprland wiki [`Hyprland Wiki Link`](https://wiki.hyprland.org/FAQ/#my-external-monitor-is-blank--doesnt-render--receives-no-signal-laptop)
|
||||
|
||||
|
||||
- reports from a member of discord for Nvidia for additional env's
|
||||
- remove # from the following env's on
|
||||
```
|
||||
env = GBM_BACKEND,nvidia-drm
|
||||
env = WLR_RENDERER_ALLOW_SOFTWARE,1
|
||||
```
|
||||
|
||||
#### ❗ other known issues
|
||||
- [ ] If you are using this script on an Arch-Based distros like Arco linux, or cachy OS or EOS or Manjaro, make sure to install pipewire, pipewire-pulse & pipewire-audio first. Arco Linux, on some of their ISO's still shipped with pulseaudio as audio backend. You will experience getting "stuck" on installation.
|
||||
- [ ] To install pipewire and its services , `sudo pacman -S pipewire wireplumber pipewire-audio pipewire-pulse` . When prompted, remove / replace pulseaudio. After that, you can ran `./install.sh`
|
||||
- [ ] installing of cava-git on a newly installed Arch makes the install keep hanging. Switched back to cava. After booting and logged in, if cava dont work, replace it cava-git `yay -S cava-git` or `paru -S cava-git`
|
||||
> [!NOTE]
|
||||
> Auto start of Hyprland after login (no SDDM or GDM or any login managers)
|
||||
- [ ] This was disabled a few days ago. (19 May 2024). This was because some users, after they used the Distro-Hyprland scripts with other DE (gnome-wayland or plasma-wayland), if they choose to login into gnome-wayland for example, Hyprland is starting.
|
||||
- [ ] to avoid this, I disabled it. You can re-enable again by editing `~/.zprofile` . Remove all the # on the first lines
|
||||
- [ ] ROFI issues (scaling, unexplained scaling etc). This is most likely to experience if you are installing on a system where rofi is currently installed. To fix it uninstall rofi and install rofi-wayland . `sudo pacman -Rns rofi` . Install rofi-wayland with `sudo pacman -S rofi-wayland`. Rofi-wayland is compatible with x11 so no need to worry.
|
||||
|
||||
|
||||
#### 🫥 Improving performance for Older Nvidia Cards using driver 470
|
||||
- [`SEE HERE`](https://github.com/JaKooLit/Hyprland-Dots/discussions/123#discussion-6035205)
|
||||
|
||||
#### 📒 Final Notes
|
||||
- join my discord channel [`Discord`](https://discord.com/invite/9JEgZsfhex)
|
||||
- join my discord channel [`Discord`](https://discord.gg/V2SJ92vbEN)
|
||||
- Feel free to copy, re-distribute, and use this script however you want. Would appreciate if you give me some loves by crediting my work :)
|
||||
|
||||
|
||||
|
||||
#### ⏩ Contributing
|
||||
- As stated above, these script does not contain actual config files. These are only the installer of packages
|
||||
- The development branch of this script is pulling the latest "stable" releases of the Hyprland-Dotfiles.
|
||||
- If you want to contribute and/or test the Hyprland-Dotfiles (development branch), [`Hyprland-Dots-Development`](https://github.com/JaKooLit/Hyprland-Dots/tree/development)
|
||||
|
||||
|
||||
#### 👍👍👍 Thanks and Credits!
|
||||
- [`Hyprland`](https://hyprland.org/) Of course to Hyprland and @vaxerski for this awesome Dynamic Tiling Manager.
|
||||
|
||||
|
|
@ -225,8 +130,4 @@ env = WLR_RENDERER_ALLOW_SOFTWARE,1
|
|||
[](https://www.buymeacoffee.com/JaKooLit)
|
||||
|
||||
#### 📹 Youtube videos (Click to view and watch the playlist) 📹
|
||||
[](https://youtube.com/playlist?list=PLDtGd5Fw5_GjXCznR0BzCJJDIQSZJRbxx&si=iaNjLulFdsZ6AV-t)
|
||||
|
||||
|
||||
## 🥰🥰 💖💖 👍👍👍
|
||||
[](https://starchart.cc/JaKooLit/Arch-Hyprland)
|
||||
[](https://youtube.com/playlist?list=PLDtGd5Fw5_GjXCznR0BzCJJDIQSZJRbxx&si=iaNjLulFdsZ6AV-t)
|
||||
|
|
@ -1,3 +1,3 @@
|
|||
#if [ -z "${DISPLAY}" ] && [ "${XDG_VTNR}" -eq 1 ]; then
|
||||
# Hyprland
|
||||
#fi
|
||||
if [ -z "${DISPLAY}" ] && [ "${XDG_VTNR}" -eq 1 ]; then
|
||||
Hyprland
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@
|
|||
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
ZSH_THEME="xiong-chiamiov-plus"
|
||||
ZSH_THEME="agnoster"
|
||||
|
||||
plugins=(
|
||||
plugins=(
|
||||
git
|
||||
archlinux
|
||||
zsh-autosuggestions
|
||||
|
|
@ -17,22 +17,22 @@ source $ZSH/oh-my-zsh.sh
|
|||
# Check archlinux plugin commands here
|
||||
# https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/archlinux
|
||||
|
||||
|
||||
# Display Pokemon-colorscripts
|
||||
# Project page: https://gitlab.com/phoneybadger/pokemon-colorscripts#on-other-distros-and-macos
|
||||
#pokemon-colorscripts --no-title -s -r
|
||||
pokemon-colorscripts --no-title -s -r
|
||||
|
||||
# fastfetch. Will be disabled if above colorscript was chosen to install
|
||||
fastfetch -c $HOME/.config/fastfetch/config-compact.jsonc
|
||||
|
||||
# Set-up icons for files/folders in terminal
|
||||
alias ls='eza -a --icons'
|
||||
alias ll='eza -al --icons'
|
||||
alias lt='eza -a --tree --level=1 --icons'
|
||||
### From this line is for pywal-colors
|
||||
# Import colorscheme from 'wal' asynchronously
|
||||
# & # Run the process in the background.
|
||||
# ( ) # Hide shell job control messages.
|
||||
# Not supported in the "fish" shell.
|
||||
#(cat ~/.cache/wal/sequences &)
|
||||
|
||||
# Set-up FZF key bindings (CTRL R for fuzzy history finder)
|
||||
source <(fzf --zsh)
|
||||
# Alternative (blocks terminal for 0-3ms)
|
||||
#cat ~/.cache/wal/sequences
|
||||
|
||||
# To add support for TTYs this line can be optionally added.
|
||||
#source ~/.cache/wal/colors-tty.sh
|
||||
|
||||
HISTFILE=~/.zsh_history
|
||||
HISTSIZE=10000
|
||||
SAVEHIST=10000
|
||||
setopt appendhistory
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,124 +0,0 @@
|
|||
; Thunar GtkAccelMap rc-file -*- scheme -*-
|
||||
; this file is an automated accelerator map dump
|
||||
;
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-type" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-last-modified" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut" "<Primary>x")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-size" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/file-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-tab" "<Primary>w")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-window" "<Primary>n")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/clear-directory-specific-settings" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-window" "<Primary>q")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-parent" "<Alt>Up")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size-in-bytes" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab" "<Primary>Page_Up")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/3925ac2f7e4055558c447a20c2e047ad" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open" "<Primary>o")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-ascending" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-split-view" "F3")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy-2" "<Primary>Insert")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete" "Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-recent" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-configure-toolbar" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/forward" "<Alt>Right")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/9f0d843e4074095bf657b996746ec75c" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location-alt" "<Alt>d")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/a16339451d60726d0755a887bd755af2" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out-alt" "<Primary>KP_Subtract")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-by-pattern" "<Primary>s")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-menu" "F10")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents" "F1")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-highlight" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/44e0e66b3d753576f90ed75c87917822" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-descending" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-name" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-all-files" "<Primary>a")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/execute" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/properties" "<Alt>Return")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut-2" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-dtime" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab" "<Primary>Page_Down")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste-2" "<Shift>Insert")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-templates" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-filetype" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-all-windows" "<Primary><Shift>w")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-document" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/detach-tab" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/978d3e7a7225e42c977fe94183792d87" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/cancel-search" "Escape")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt2" "<Primary>equal")
|
||||
; (gtk_accel_path "<Actions>/ThunarShortcutsPane/sendto-shortcuts" "<Primary>d")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/undo" "<Primary>z")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/toggle-sort-order" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt" "F5")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-entry" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste" "<Primary>v")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt1" "<Primary>KP_Add")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menubar" "<Primary>m")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back" "<Alt>Left")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-desktop" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-detailed-list" "<Primary>2")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore-show" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out" "<Primary>minus")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-display-name" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/sendto-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/go-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/remove-from-recent" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-with-other" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/invert-selection" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-shortcuts" "<Primary>b")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/edit-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload" "<Primary>r")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/move-to-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy" "<Primary>c")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-3" "<Shift>KP_Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-side-pane" "F9")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-mtime" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/a50db0a56a1e6c31df6bf18c55eb78cd" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/arrange-items-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/unselect-all-files" "Escape")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-computer" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/bookmarks-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-image-preview" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-icons" "<Primary>1")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-2" "<Shift>Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in" "<Primary>plus")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/rename" "F2")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location" "<Primary>l")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-compact-list" "<Primary>3")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/search" "<Primary>f")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-tab" "<Primary>t")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset" "<Primary>0")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents/help-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-tab" "<Primary><Shift>p")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-buttons" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/redo" "<Primary><Shift>z")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-window" "<Primary><Shift>o")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-statusbar" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-location" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/duplicate" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/c76f07a72d3c8ef5d4bf8e84c8981221" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete-2" "KP_Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-folder" "<Primary><Shift>n")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-home" "<Alt>Home")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-hidden" "<Primary>h")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/set-default-app" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/empty-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt" "BackSpace")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/preferences" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/8ea92a0b35875a5a65ffafcf02698ce8" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-tree" "<Primary>e")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-system" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-network" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/sendto-desktop" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/make-link" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset-alt" "<Primary>KP_0")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/about" "")
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
[Settings]
|
||||
gtk-theme-name=Andromeda-dark
|
||||
gtk-icon-theme-name=Flat-Remix-Blue-Dark
|
||||
gtk-font-name=Fira Code Semi-Bold 14
|
||||
gtk-cursor-theme-name=Bibata-Modern-Ice
|
||||
gtk-cursor-theme-size=24
|
||||
gtk-toolbar-style=GTK_TOOLBAR_ICONS
|
||||
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=0
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle=hintslight
|
||||
gtk-xft-rgba=rgb
|
||||
gtk-application-prefer-dark-theme=1
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
[Desktop Entry]
|
||||
Name=Hyprland
|
||||
Comment=An intelligent dynamic tiling Wayland compositor
|
||||
Exec=Hyprland
|
||||
Type=Application
|
||||
|
|
@ -1,23 +1,50 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# base devel + archlinux-keyring #
|
||||
|
||||
# https://github.com/JaKooLit
|
||||
|
||||
base=(
|
||||
base-devel
|
||||
archlinux-keyring
|
||||
)
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
############## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ######################################
|
||||
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_base.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_base.log"
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if pacman -Q "$1" &>/dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
sudo pacman -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if pacman -Q "$1" &>/dev/null ; then
|
||||
echo -e "${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "${ERROR} $1 failed to install. Please check the $LOG. You may need to install manually."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Installation of main components
|
||||
printf "\n%s - Installing base-devel \n" "${NOTE}"
|
||||
|
||||
for PKG1 in "${base[@]}"; do
|
||||
sudo pacman -S --noconfirm "$PKG1" | tee -a "$LOG"
|
||||
install_package "$PKG1" | tee -a "$LOG"
|
||||
done
|
||||
|
||||
clear
|
||||
|
||||
# clear
|
||||
|
|
|
|||
|
|
@ -0,0 +1,166 @@
|
|||
#!/bin/bash
|
||||
|
||||
# https://github.com/JaKooLit
|
||||
|
||||
# edit your packages desired here.
|
||||
# WARNING! If you remove packages here, dotfiles may not work properly.
|
||||
# and also, ensure that packages are present in AUR and official Arch Repo
|
||||
|
||||
# add packages wanted here
|
||||
Extra=(
|
||||
|
||||
)
|
||||
|
||||
hypr_package=(
|
||||
cliphist
|
||||
curl
|
||||
grim
|
||||
gvfs
|
||||
gvfs-mtp
|
||||
imagemagick
|
||||
jq
|
||||
kitty
|
||||
kvantum
|
||||
nano
|
||||
network-manager-applet
|
||||
pamixer
|
||||
pavucontrol
|
||||
pipewire-alsa
|
||||
playerctl
|
||||
polkit-gnome
|
||||
python-requests
|
||||
python-pywal
|
||||
qt5ct
|
||||
qt6ct
|
||||
qt6-svg
|
||||
rofi-lbonn-wayland-git
|
||||
slurp
|
||||
swappy
|
||||
swayidle
|
||||
swaylock-effects-git
|
||||
swaync
|
||||
swww
|
||||
waybar
|
||||
wget
|
||||
wl-clipboard
|
||||
wlogout
|
||||
xdg-user-dirs
|
||||
xdg-utils
|
||||
yad
|
||||
)
|
||||
|
||||
# the following packages can be deleted. however, dotfiles may not work properly
|
||||
hypr_package_2=(
|
||||
brightnessctl
|
||||
btop
|
||||
cava
|
||||
eog
|
||||
gnome-system-monitor
|
||||
mousepad
|
||||
mpv
|
||||
mpv-mpris
|
||||
nvtop
|
||||
nwg-look-bin
|
||||
pacman-contrib
|
||||
vim
|
||||
wlsunset
|
||||
yt-dlp
|
||||
)
|
||||
|
||||
fonts=(
|
||||
adobe-source-code-pro-fonts
|
||||
noto-fonts-emoji
|
||||
otf-font-awesome
|
||||
ttf-droid
|
||||
ttf-fira-code
|
||||
ttf-jetbrains-mono
|
||||
ttf-jetbrains-mono-nerd
|
||||
)
|
||||
|
||||
# List of packages to uninstall as it conflicts with swaync or causing swaync to not function properly
|
||||
uninstall=(
|
||||
dunst
|
||||
mako
|
||||
)
|
||||
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="install-$(date +%d-%H%M%S)_hypr-pkgs.log"
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Function for uninstalling packages
|
||||
uninstall_package() {
|
||||
# Checking if package is installed
|
||||
if pacman -Qi "$1" &>> /dev/null ; then
|
||||
# Package is installed
|
||||
echo -e "${NOTE} Uninstalling $1 ..."
|
||||
sudo pacman -Rns --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is uninstalled
|
||||
if ! pacman -Qi "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was uninstalled."
|
||||
else
|
||||
# Something went wrong, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to uninstall. Please check the log."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Installation of main components
|
||||
printf "\n%s - Installing hyprland packages.... \n" "${NOTE}"
|
||||
|
||||
for PKG1 in "${hypr_package[@]}" "${hypr_package_2[@]}" "${fonts[@]}" "${Extra[@]}"; do
|
||||
install_package "$PKG1" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[1A\e[K${ERROR} - $PKG1 install had failed, please check the log"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
printf "\n%s - Checking if mako or dunst are installed and removing for swaync to work properly \n" "${NOTE}"
|
||||
|
||||
for PKG in "${uninstall[@]}"; do
|
||||
uninstall_package "$PKG" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[1A\e[K${ERROR} - $PKG uninstallation had failed, please check the log"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
clear
|
||||
|
||||
|
|
@ -1,123 +0,0 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Hyprland Packages #
|
||||
|
||||
# edit your packages desired here.
|
||||
# WARNING! If you remove packages here, dotfiles may not work properly.
|
||||
# and also, ensure that packages are present in AUR and official Arch Repo
|
||||
|
||||
# add packages wanted here
|
||||
Extra=(
|
||||
|
||||
)
|
||||
|
||||
hypr_package=(
|
||||
aylurs-gtk-shell
|
||||
cliphist
|
||||
curl
|
||||
grim
|
||||
gvfs
|
||||
gvfs-mtp
|
||||
imagemagick
|
||||
inxi
|
||||
jq
|
||||
kitty
|
||||
kvantum
|
||||
nano
|
||||
network-manager-applet
|
||||
pamixer
|
||||
pavucontrol
|
||||
pipewire-alsa
|
||||
playerctl
|
||||
polkit-gnome
|
||||
python-requests
|
||||
python-pyquery
|
||||
qt5ct
|
||||
qt6ct
|
||||
qt6-svg
|
||||
rofi-wayland
|
||||
slurp
|
||||
swappy
|
||||
swaync
|
||||
swww
|
||||
wallust
|
||||
waybar
|
||||
wget
|
||||
wl-clipboard
|
||||
wlogout
|
||||
xdg-user-dirs
|
||||
xdg-utils
|
||||
yad
|
||||
)
|
||||
|
||||
# the following packages can be deleted. however, dotfiles may not work properly
|
||||
hypr_package_2=(
|
||||
brightnessctl
|
||||
btop
|
||||
cava
|
||||
eog
|
||||
fastfetch
|
||||
gnome-system-monitor
|
||||
mousepad
|
||||
mpv
|
||||
mpv-mpris
|
||||
nvtop
|
||||
nwg-look
|
||||
pacman-contrib
|
||||
qalculate-gtk
|
||||
vim
|
||||
yt-dlp
|
||||
)
|
||||
|
||||
# List of packages to uninstall as it conflicts with swaync and rofi-wayland
|
||||
uninstall=(
|
||||
dunst
|
||||
mako
|
||||
rofi
|
||||
wallust-git
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
# Change the working directory to the parent directory of the script
|
||||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_hypr-pkgs.log"
|
||||
|
||||
# uninstalling conflicting packages
|
||||
# Initialize a variable to track overall errors
|
||||
overall_failed=0
|
||||
|
||||
printf "\n%s - Removing Mako, Dunst, and rofi as they conflict with swaync and rofi-wayland \n" "${NOTE}"
|
||||
for PKG in "${uninstall[@]}"; do
|
||||
uninstall_package "$PKG" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
# Track if any uninstallation failed
|
||||
overall_failed=1
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $overall_failed -ne 0 ]; then
|
||||
echo -e "${ERROR} Some packages failed to uninstall. Please check the log."
|
||||
fi
|
||||
|
||||
|
||||
# Installation of main components
|
||||
printf "\n%s - Installing hyprland packages.... \n" "${NOTE}"
|
||||
|
||||
for PKG1 in "${hypr_package[@]}" "${hypr_package_2[@]}" "${Extra[@]}"; do
|
||||
install_package "$PKG1" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[1A\e[K${ERROR} - $PKG1 Package installation failed, Please check the installation logs"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
clear
|
||||
|
||||
|
|
@ -1,67 +0,0 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Final checking if packages are installed
|
||||
# NOTE: These package check are only the essentials
|
||||
|
||||
packages=(
|
||||
aylurs-gtk-shell
|
||||
cliphist
|
||||
kvantum
|
||||
rofi-wayland
|
||||
imagemagick
|
||||
swaync
|
||||
swww
|
||||
wallust
|
||||
waybar
|
||||
wl-clipboard
|
||||
wlogout
|
||||
kitty
|
||||
hypridle
|
||||
hyprlock
|
||||
hyprland
|
||||
pyprland
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
# Change the working directory to the parent directory of the script
|
||||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/00_CHECK-$(date +%d-%H%M%S)_installed.log"
|
||||
|
||||
|
||||
printf "\n%s - Final Check if essential packages where installed \n" "${NOTE}"
|
||||
# Initialize an empty array to hold missing packages
|
||||
missing=()
|
||||
|
||||
# Loop through each package
|
||||
for pkg in "${packages[@]}"; do
|
||||
# Check if the package is installed
|
||||
if ! pacman -Qi "$pkg" > /dev/null 2>&1; then
|
||||
missing+=("$pkg")
|
||||
fi
|
||||
done
|
||||
|
||||
# Check if the missing array is empty or not
|
||||
if [ ${#missing[@]} -eq 0 ]; then
|
||||
echo "${OK} All essential packages are installed." | tee -a "$LOG"
|
||||
else
|
||||
# Message to user on missing packages
|
||||
echo "${WARN} The following packages are missing and will be logged:"
|
||||
|
||||
# Log only the missing packages and inform the user
|
||||
for pkg in "${missing[@]}"; do
|
||||
echo "$pkg"
|
||||
echo "$pkg" >> "$LOG" # Log the missing package to the file
|
||||
done
|
||||
|
||||
# Add a timestamp when the missing packages were logged
|
||||
echo "${NOTE} Missing packages logged at $(date)" >> "$LOG"
|
||||
fi
|
||||
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Global Functions for Scripts #
|
||||
|
||||
set -e
|
||||
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
|
||||
# Create Directory for Install Logs
|
||||
if [ ! -d Install-Logs ]; then
|
||||
mkdir Install-Logs
|
||||
fi
|
||||
|
||||
# Function for installing packages
|
||||
install_package_pacman() {
|
||||
# Checking if package is already installed
|
||||
if pacman -Q "$1" &>/dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
sudo pacman -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if pacman -Q "$1" &>/dev/null ; then
|
||||
echo -e "${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "${ERROR} $1 failed to install. Please check the $LOG. You may need to install manually."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Function for uninstalling packages
|
||||
uninstall_package() {
|
||||
local pkg="$1"
|
||||
|
||||
# Checking if package is installed
|
||||
if pacman -Qi "$pkg" &>> /dev/null ; then
|
||||
# Package is installed
|
||||
echo -e "${NOTE} Uninstalling $pkg ..."
|
||||
sudo pacman -R --noconfirm "$pkg" 2>&1 | tee -a "$LOG" | grep -v "error: target not found"
|
||||
# Check if the package was uninstalled
|
||||
if ! pacman -Qi "$pkg" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $pkg was uninstalled."
|
||||
else
|
||||
echo -e "\e[1A\e[K${ERROR} $pkg failed to uninstall. Please check the log."
|
||||
return 1
|
||||
fi
|
||||
else
|
||||
echo -e "${NOTE} $pkg is not installed, skipping uninstallation."
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
|
|
@ -1,12 +1,6 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Adding users into input group #
|
||||
|
||||
if [[ $USE_PRESET = [Yy] ]]; then
|
||||
source ./preset.sh
|
||||
fi
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
|
|
@ -14,22 +8,26 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_input.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_input.log"
|
||||
|
||||
while true; do
|
||||
echo "${WARN} This script will add your user to the 'input' group."
|
||||
echo "${WARN} This script will add or remove your user from the 'input' group."
|
||||
echo "${NOTE} Please note that adding yourself to the 'input' group might be necessary for waybar keyboard-state functionality."
|
||||
|
||||
printf "\n%.0s" {1..1}
|
||||
|
||||
if [[ -z $input_group_choid ]]; then
|
||||
read -p "${YELLOW}Do you want to proceed? (y/n): ${RESET}" input_group_choid
|
||||
fi
|
||||
|
||||
if [[ $input_group_choid == "y" || $input_group_choid == "Y" ]]; then
|
||||
read -p "${YELLOW}Do you want to proceed? (y/n): ${RESET}" choice
|
||||
|
||||
if [[ $choice == "y" || $choice == "Y" ]]; then
|
||||
# Check if the 'input' group exists
|
||||
if grep -q '^input:' /etc/group; then
|
||||
echo "${OK} 'input' group exists."
|
||||
|
|
@ -38,7 +36,7 @@ while true; do
|
|||
sudo groupadd input
|
||||
|
||||
# Log the creation of the 'input' group
|
||||
echo "'input' group created" >> "$LOG"
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') - 'input' group created" >> "$LOG"
|
||||
fi
|
||||
|
||||
# Add the user to the input group
|
||||
|
|
@ -46,14 +44,12 @@ while true; do
|
|||
echo "${OK} User added to the 'input' group. Changes will take effect after you log out and log back in."
|
||||
|
||||
# Log the addition of the user to the 'input' group
|
||||
echo "User added to 'input' group" >> "$LOG"
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') - User added to 'input' group" >> "$LOG"
|
||||
break # Break out of the loop if 'yes' is chosen
|
||||
elif [[ $input_group_choid == "n" || $input_group_choid == "N" ]]; then
|
||||
elif [[ $choice == "n" || $choice == "N" ]]; then
|
||||
echo "${NOTE} No changes made. Exiting the script."
|
||||
break # Break out of the loop if 'no' is chosen
|
||||
else
|
||||
echo "${ERROR} Invalid choice. Please enter 'y' for yes or 'n' for no."
|
||||
fi
|
||||
done
|
||||
|
||||
clear
|
||||
|
|
|
|||
|
|
@ -1,34 +1,60 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Bluetooth Stuff #
|
||||
|
||||
blue=(
|
||||
bluez
|
||||
bluez-utils
|
||||
blueman
|
||||
bluez
|
||||
bluez-utils
|
||||
blueman
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Change the working directory to the parent directory of the script
|
||||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_bluetooth.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_bluetooth.log"
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Bluetooth
|
||||
|
||||
printf "${NOTE} Installing Bluetooth Packages...\n"
|
||||
for BLUE in "${blue[@]}"; do
|
||||
install_package "$BLUE" 2>&1 | tee -a "$LOG"
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $BLUE Package installation failed, Please check the installation logs"; exit 1; }
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $BLUE install had failed, please check the install.log"; exit 1; }
|
||||
done
|
||||
|
||||
printf " Activating Bluetooth Services...\n"
|
||||
sudo systemctl enable --now bluetooth.service 2>&1 | tee -a "$LOG"
|
||||
printf " Activating Bluetooth Services...\n"
|
||||
sudo systemctl enable --now bluetooth.service 2>&1 | tee -a "$LOG"
|
||||
|
||||
clear
|
||||
clear
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Hyprland-Dots to download from main #
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
|
||||
# Check if Hyprland-Dots exists
|
||||
printf "${NOTE} Downloading KooL's Hyprland Dots....\n"
|
||||
|
||||
if [ -d Hyprland-Dots ]; then
|
||||
cd Hyprland-Dots
|
||||
git stash
|
||||
git pull
|
||||
git stash apply
|
||||
chmod +x copy.sh
|
||||
./copy.sh
|
||||
else
|
||||
if git clone --depth 1 https://github.com/JaKooLit/Hyprland-Dots; then
|
||||
cd Hyprland-Dots || exit 1
|
||||
chmod +x copy.sh
|
||||
./copy.sh
|
||||
else
|
||||
echo -e "$ERROR Can't download Hyprland-Dots"
|
||||
fi
|
||||
fi
|
||||
|
||||
clear
|
||||
|
|
@ -1,13 +1,16 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Hyprland-Dots to download from Releases #
|
||||
if [[ $USE_PRESET = [Yy] ]]; then
|
||||
source ./preset.sh
|
||||
fi
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
printf "${NOTE} Downloading / Checking for existing Hyprland-Dots.tar.gz...\n"
|
||||
|
||||
|
|
@ -31,18 +34,16 @@ if [ -f Hyprland-Dots.tar.gz ]; then
|
|||
exit 0
|
||||
else
|
||||
echo -e "${WARN} Hyprland-Dots.tar.gz is outdated (Existing version: $existing_version, Latest version: $latest_version)."
|
||||
if [[ -z $upgrade_choice ]]; then
|
||||
read -p "Do you want to upgrade to the latest version? (y/n): " upgrade_choice
|
||||
fi
|
||||
read -p "Do you want to upgrade to the latest version? (y/n): " upgrade_choice
|
||||
if [ "$upgrade_choice" = "y" ]; then
|
||||
echo -e "${NOTE} Proceeding to download the latest release." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
|
||||
echo -e "${NOTE} Proceeding to download the latest release."
|
||||
|
||||
# Delete existing directories starting with JaKooLit-Hyprland-Dots
|
||||
find . -type d -name 'JaKooLit-Hyprland-Dots*' -exec rm -rf {} +
|
||||
rm -f Hyprland-Dots.tar.gz
|
||||
printf "${WARN} Removed existing Hyprland-Dots.tar.gz.\n"
|
||||
else
|
||||
echo -e "${NOTE} User chose not to upgrade. Exiting..." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
|
||||
echo -e "${NOTE} User chose not to upgrade. Exiting..."
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
|
|
@ -55,7 +56,7 @@ latest_tag=$(curl -s https://api.github.com/repos/JaKooLit/Hyprland-Dots/release
|
|||
|
||||
# Check if the tag is obtained successfully
|
||||
if [ -z "$latest_tag" ]; then
|
||||
echo -e "${ERROR} Unable to fetch the latest tag information." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
|
||||
echo -e "${ERROR} Unable to fetch the latest tag information."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
|
@ -64,7 +65,7 @@ latest_tarball_url=$(curl -s https://api.github.com/repos/JaKooLit/Hyprland-Dots
|
|||
|
||||
# Check if the URL is obtained successfully
|
||||
if [ -z "$latest_tarball_url" ]; then
|
||||
echo -e "${ERROR} Unable to fetch the tarball URL for the latest release." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
|
||||
echo -e "${ERROR} Unable to fetch the tarball URL for the latest release."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
|
@ -89,12 +90,10 @@ if curl -L "$latest_tarball_url" -o "$file_name"; then
|
|||
|
||||
# Set execute permission for copy.sh and execute it
|
||||
chmod +x copy.sh
|
||||
./copy.sh
|
||||
./copy.sh 2>&1 | tee -a "../install-$(date +'%d-%H%M%S')_dots.log"
|
||||
|
||||
echo -e "${OK} Latest Dotfiles release downloaded, extracted, and processed successfully. Check JaKooLit-Hyprland-Dots folder for more detailed install logs" 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
|
||||
echo -e "${OK} Latest source code release downloaded, extracted, and processed successfully."
|
||||
else
|
||||
echo -e "${ERROR} Failed to download the latest Dotfiles release." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
|
||||
echo -e "${ERROR} Failed to download the latest source code release."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
clear
|
||||
|
|
|
|||
|
|
@ -1,46 +0,0 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Fonts #
|
||||
|
||||
# These fonts are minimun required for pre-configured dots to work. You can add here as required
|
||||
# WARNING! If you remove packages here, dotfiles may not work properly.
|
||||
# and also, ensure that packages are present in AUR and official Arch Repo
|
||||
|
||||
fonts=(
|
||||
adobe-source-code-pro-fonts
|
||||
noto-fonts-emoji
|
||||
otf-font-awesome
|
||||
ttf-droid
|
||||
ttf-fira-code
|
||||
ttf-jetbrains-mono
|
||||
ttf-jetbrains-mono-nerd
|
||||
)
|
||||
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
# Change the working directory to the parent directory of the script
|
||||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_fonts.log"
|
||||
|
||||
|
||||
# Installation of main components
|
||||
printf "\n%s - Installing necessary fonts.... \n" "${NOTE}"
|
||||
|
||||
for PKG1 in "${fonts[@]}"; do
|
||||
install_package "$PKG1" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[1A\e[K${ERROR} - $PKG1 Package installation failed, Please check the installation logs"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
clear
|
||||
|
||||
|
|
@ -1,13 +1,11 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# GTK Themes & ICONS and Sourcing from a different Repo #
|
||||
|
||||
engine=(
|
||||
unzip
|
||||
gtk-engine-murrine
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
|
@ -16,36 +14,69 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_themes.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_themes_main.log"
|
||||
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# installing engine needed for gtk themes
|
||||
for PKG1 in "${engine[@]}"; do
|
||||
install_package "$PKG1" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\033[1A\033[K${ERROR} - $PKG1 Package installation failed, Please check the installation logs"
|
||||
echo -e "\033[1A\033[K${ERROR} - $PKG1 install had failed, please check the install.log"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
# Check if the directory exists and delete it if present
|
||||
if [ -d "GTK-themes-icons" ]; then
|
||||
echo "$NOTE GTK themes and Icons folder exist..deleting..." 2>&1 | tee -a "$LOG"
|
||||
echo "$NOTE Tokyo Theme GTK themes and Icons folder exist..deleting..." 2>&1 | tee -a "$LOG"
|
||||
rm -rf "GTK-themes-icons" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
echo "$NOTE Cloning GTK themes and Icons repository..." 2>&1 | tee -a "$LOG"
|
||||
if git clone https://github.com/JaKooLit/GTK-themes-icons.git ; then
|
||||
echo "$NOTE Cloning Tokyo Theme GTK themes and Icons repository..." 2>&1 | tee -a "$LOG"
|
||||
if git clone https://github.com/JaKooLit/GTK-themes-icons.git 2>&1 | tee -a "$LOG"; then
|
||||
cd GTK-themes-icons
|
||||
chmod +x auto-extract.sh
|
||||
./auto-extract.sh
|
||||
./auto-extract.sh 2>&1 | tee -a "$LOG"
|
||||
cd ..
|
||||
echo "$OK Extracted GTK Themes & Icons to ~/.icons & ~/.themes folders" 2>&1 | tee -a "$LOG"
|
||||
else
|
||||
echo "$ERROR Download failed for GTK themes and Icons.." 2>&1 | tee -a "$LOG"
|
||||
echo "$ERROR Download failed for Tokyo Theme GTK themes and Icons.." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
tar -xf "assets/Bibata-Modern-Ice.tar.xz" -C ~/.icons 2>&1 | tee -a "$LOG"
|
||||
|
|
|
|||
|
|
@ -1,30 +1,48 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Main Hyprland Package #
|
||||
|
||||
hypr=(
|
||||
hyprcursor
|
||||
hyprutils
|
||||
aquamarine
|
||||
hypridle
|
||||
hyprlock
|
||||
hyprland
|
||||
pyprland
|
||||
hyprland
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
# Change the working directory to the parent directory of the script
|
||||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_hyprland.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_hyprland.log"
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Removing other Hyprland to avoid conflict
|
||||
printf "${YELLOW} Checking for other hyprland packages and remove if any..${RESET}\n"
|
||||
|
|
@ -39,7 +57,7 @@ fi
|
|||
printf "${NOTE} Installing Hyprland .......\n"
|
||||
for HYPR in "${hypr[@]}"; do
|
||||
install_package "$HYPR" 2>&1 | tee -a "$LOG"
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $HYPR Package installation failed, Please check the installation logs"; exit 1; }
|
||||
done
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $HYPR install had failed, please check the install.log"; exit 1; }
|
||||
done
|
||||
|
||||
clear
|
||||
clear
|
||||
|
|
@ -1,9 +1,4 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Nvidia Stuffs #
|
||||
if [[ $USE_PRESET = [Yy] ]]; then
|
||||
source ./preset.sh
|
||||
fi
|
||||
|
||||
nvidia_pkg=(
|
||||
nvidia-dkms
|
||||
|
|
@ -13,29 +8,66 @@ nvidia_pkg=(
|
|||
libva-nvidia-driver-git
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
hypr=(
|
||||
hyprland
|
||||
)
|
||||
|
||||
# Change the working directory to the parent directory of the script
|
||||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_nvidia.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_nvidia.log"
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry, I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# nvidia stuff
|
||||
printf "${YELLOW} Checking for other hyprland packages and remove if any..${RESET}\n"
|
||||
if pacman -Qs hyprland > /dev/null; then
|
||||
printf "${YELLOW} Hyprland detected. uninstalling to install Hyprland from official repo...${RESET}\n"
|
||||
printf "${YELLOW} Hyprland detected. uninstalling to install Hyprland-git...${RESET}\n"
|
||||
for hyprnvi in hyprland-git hyprland-nvidia hyprland-nvidia-git hyprland-nvidia-hidpi-git; do
|
||||
sudo pacman -R --noconfirm "$hyprnvi" 2>/dev/null | tee -a "$LOG" || true
|
||||
done
|
||||
fi
|
||||
|
||||
# Hyprland
|
||||
printf "${NOTE} Installing Hyprland......\n"
|
||||
for HYPR in "${hypr[@]}"; do
|
||||
install_package "$HYPR" 2>&1 | tee -a "$LOG"
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $HYPR install had failed, please check the install.log"; exit 1; }
|
||||
done
|
||||
|
||||
# Install additional Nvidia packages
|
||||
printf "${YELLOW} Installing addition Nvidia packages...\n"
|
||||
for krnl in $(cat /usr/lib/modules/*/pkgbase); do
|
||||
|
|
@ -63,42 +95,31 @@ if [ -f "$NVEA" ]; then
|
|||
else
|
||||
printf "\n"
|
||||
printf "${YELLOW} Adding options to $NVEA..."
|
||||
sudo echo -e "options nvidia_drm modeset=1 fbdev=1" | sudo tee -a /etc/modprobe.d/nvidia.conf 2>&1 | tee -a "$LOG"
|
||||
sudo echo -e "options nvidia-drm modeset=1" | sudo tee -a /etc/modprobe.d/nvidia.conf 2>&1 | tee -a "$LOG"
|
||||
printf "\n"
|
||||
fi
|
||||
|
||||
# Additional for GRUB users
|
||||
# additional for GRUB users
|
||||
# Check if /etc/default/grub exists
|
||||
if [ -f /etc/default/grub ]; then
|
||||
# Check if nvidia-drm.modeset=1 is present
|
||||
# Check if nvidia_drm.modeset=1 is already present
|
||||
if ! sudo grep -q "nvidia-drm.modeset=1" /etc/default/grub; then
|
||||
# Add nvidia-drm.modeset=1 to GRUB_CMDLINE_LINUX_DEFAULT
|
||||
sudo sed -i -e 's/\(GRUB_CMDLINE_LINUX_DEFAULT=".*\)"/\1 nvidia-drm.modeset=1"/' /etc/default/grub
|
||||
echo "nvidia-drm.modeset=1 added to /etc/default/grub" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
# Check if nvidia_drm.fbdev=1 is present
|
||||
if ! sudo grep -q "nvidia_drm.fbdev=1" /etc/default/grub; then
|
||||
# Add nvidia_drm.fbdev=1 to GRUB_CMDLINE_LINUX_DEFAULT
|
||||
sudo sed -i -e 's/\(GRUB_CMDLINE_LINUX_DEFAULT=".*\)"/\1 nvidia_drm.fbdev=1"/' /etc/default/grub
|
||||
echo "nvidia_drm.fbdev=1 added to /etc/default/grub" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
# Regenerate GRUB configuration if any changes were made
|
||||
if sudo grep -q "nvidia-drm.modeset=1" /etc/default/grub || sudo grep -q "nvidia_drm.fbdev=1" /etc/default/grub; then
|
||||
# Add nvidia_drm.modeset=1 to GRUB_CMDLINE_LINUX_DEFAULT
|
||||
sudo sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT=".*\)"/\1 nvidia-drm.modeset=1"/' /etc/default/grub
|
||||
# Regenerate GRUB configuration
|
||||
sudo grub-mkconfig -o /boot/grub/grub.cfg
|
||||
echo "nvidia-drm.modeset=1 added to /etc/default/grub"
|
||||
else
|
||||
echo "nvidia-drm.modeset=1 is already present in /etc/default/grub"
|
||||
fi
|
||||
|
||||
else
|
||||
echo "/etc/default/grub does not exist"
|
||||
fi
|
||||
|
||||
# Blacklist nouveau
|
||||
if [[ -z $blacklist_nouveau ]]; then
|
||||
read -n1 -rep "${CAT} Would you like to blacklist nouveau? (y/n)" blacklist_nouveau
|
||||
fi
|
||||
read -n1 -rep "${CAT} Would you like to blacklist nouveau? (y/n)" response
|
||||
echo
|
||||
if [[ $blacklist_nouveau =~ ^[Yy]$ ]]; then
|
||||
if [[ $response =~ ^[Yy]$ ]]; then
|
||||
NOUVEAU="/etc/modprobe.d/nouveau.conf"
|
||||
if [ -f "$NOUVEAU" ]; then
|
||||
printf "${OK} Seems like nouveau is already blacklisted..moving on.\n"
|
||||
|
|
@ -116,7 +137,7 @@ if [[ $blacklist_nouveau =~ ^[Yy]$ ]]; then
|
|||
fi
|
||||
fi
|
||||
else
|
||||
printf "${NOTE} Skipping nouveau blacklisting.\n" 2>&1 | tee -a "$LOG"
|
||||
printf "${NOTE} Skipping nouveau blacklisting.\n"
|
||||
fi
|
||||
|
||||
clear
|
||||
|
|
|
|||
|
|
@ -1,45 +0,0 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# pacman adding up extra-spices #
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_pacman.log"
|
||||
|
||||
echo -e "${NOTE} Adding Extra Spice in pacman.conf ... ${RESET}" 2>&1 | tee -a "$LOG"
|
||||
pacman_conf="/etc/pacman.conf"
|
||||
|
||||
# Remove comments '#' from specific lines
|
||||
lines_to_edit=(
|
||||
"Color"
|
||||
"CheckSpace"
|
||||
"VerbosePkgLists"
|
||||
"ParallelDownloads"
|
||||
)
|
||||
|
||||
# Uncomment specified lines if they are commented out
|
||||
for line in "${lines_to_edit[@]}"; do
|
||||
if grep -q "^#$line" "$pacman_conf"; then
|
||||
sudo sed -i "s/^#$line/$line/" "$pacman_conf"
|
||||
echo -e "${CAT} Uncommented: $line ${RESET}" 2>&1 | tee -a "$LOG"
|
||||
else
|
||||
echo -e "${CAT} $line is already uncommented. ${RESET}" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
done
|
||||
|
||||
# Add "ILoveCandy" below ParallelDownloads if it doesn't exist
|
||||
if grep -q "^ParallelDownloads" "$pacman_conf" && ! grep -q "^ILoveCandy" "$pacman_conf"; then
|
||||
sudo sed -i "/^ParallelDownloads/a ILoveCandy" "$pacman_conf"
|
||||
echo -e "${CAT} Added ILoveCandy below ParallelDownloads. ${RESET}" 2>&1 | tee -a "$LOG"
|
||||
else
|
||||
echo -e "${CAT} ILoveCandy already exists ${RESET}" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
echo -e "${CAT} Pacman.conf spicing up completed ${RESET}" 2>&1 | tee -a "$LOG"
|
||||
|
||||
# updating pacman.conf
|
||||
sudo pacman -Sy
|
||||
|
||||
clear
|
||||
|
|
@ -1,49 +1,31 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Paru AUR Helper #
|
||||
# NOTE: If yay is already installed, paru will not be installed #
|
||||
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="install-$(date +%d-%H%M%S)_paru.log"
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
|
||||
# Create Directory for Install Logs
|
||||
if [ ! -d Install-Logs ]; then
|
||||
mkdir Install-Logs
|
||||
fi
|
||||
|
||||
# checking if paru exist and removing if it is
|
||||
if [ -d paru ]; then
|
||||
rm -rf paru 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="install-$(date +%d-%H%M%S)_paru.log"
|
||||
|
||||
# Check for AUR helper and install if not found
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
if [ -n "$ISAUR" ]; then
|
||||
printf "\n%s - AUR helper already installed, moving on..\n" "${OK}"
|
||||
printf "\n%s - AUR helper was located, moving on.\n" "${OK}"
|
||||
else
|
||||
printf "\n%s - AUR helper was NOT located\n" "$WARN"
|
||||
printf "\n%s - Installing paru from AUR\n" "${NOTE}"
|
||||
git clone https://aur.archlinux.org/paru.git || { printf "%s - Failed to clone paru from AUR\n" "${ERROR}"; exit 1; }
|
||||
cd paru || { printf "%s - Failed to enter paru directory\n" "${ERROR}"; exit 1; }
|
||||
git clone https://aur.archlinux.org/paru-bin.git || { printf "%s - Failed to clone paru from AUR\n" "${ERROR}"; exit 1; }
|
||||
cd paru-bin || { printf "%s - Failed to enter paru-bin directory\n" "${ERROR}"; exit 1; }
|
||||
makepkg -si --noconfirm 2>&1 | tee -a "$LOG" || { printf "%s - Failed to install paru from AUR\n" "${ERROR}"; exit 1; }
|
||||
|
||||
# moving install logs in to Install-Logs folder
|
||||
mv install*.log ../Install-Logs/ || true
|
||||
cd ..
|
||||
fi
|
||||
|
||||
# Update system before proceeding
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Pipewire and Pipewire Audio Stuff #
|
||||
|
||||
pipewire=(
|
||||
pipewire
|
||||
|
|
@ -8,38 +6,65 @@ pipewire=(
|
|||
pipewire-audio
|
||||
pipewire-alsa
|
||||
pipewire-pulse
|
||||
sof-firmware
|
||||
)
|
||||
|
||||
############## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##############
|
||||
# Set some colors for output messages
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
# Change the working directory to the parent directory of the script
|
||||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
OK=$(tput setaf 2)[OK]$(tput sgr0)
|
||||
ERROR=$(tput setaf 1)[ERROR]$(tput sgr0)
|
||||
NOTE=$(tput setaf 3)[NOTE]$(tput sgr0)
|
||||
WARN=$(tput setaf 166)[WARN]$(tput sgr0)
|
||||
CAT=$(tput setaf 6)[ACTION]$(tput sgr0)
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_pipewire.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_bluetooth.log"
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if the package is already installed
|
||||
if $ISAUR -Q "$1" &>>/dev/null; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure the package is installed
|
||||
if $ISAUR -Q "$1" &>>/dev/null; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review the log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install. Please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Removal of pulseaudio
|
||||
printf "${YELLOW}Removing pulseaudio stuff...${RESET}\n"
|
||||
for pulseaudio in pulseaudio pulseaudio-alsa pulseaudio-bluetooth; do
|
||||
sudo pacman -R --noconfirm "$pulseaudio" 2>/dev/null | tee -a "$LOG" || true
|
||||
done
|
||||
|
||||
# Disabling pulseaudio to avoid conflicts
|
||||
systemctl --user disable --now pulseaudio.socket pulseaudio.service 2>/dev/null && tee -a "$LOG"
|
||||
systemctl --user disable --now pulseaudio.socket pulseaudio.service 2>&1 | tee -a "$LOG"
|
||||
|
||||
# Pipewire
|
||||
printf "${NOTE} Installing Pipewire Packages...\n"
|
||||
for PIPEWIRE in "${pipewire[@]}"; do
|
||||
install_package "$PIPEWIRE" 2>&1 | tee -a "$LOG"
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $PIPEWIRE Package installation failed, Please check the installation logs"; exit 1; }
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $PIPEWIRE install had failed. Please check the install.log"; exit 1; }
|
||||
done
|
||||
|
||||
printf "Activating Pipewire Services...\n"
|
||||
systemctl --user enable --now pipewire.socket pipewire-pulse.socket wireplumber.service 2>&1 | tee -a "$LOG"
|
||||
systemctl --user enable --now pipewire.service 2>&1 | tee -a "$LOG"
|
||||
|
||||
|
||||
clear
|
||||
clear
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Asus ROG Laptops #
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
|
|
@ -10,27 +10,55 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_rog.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_rog.log"
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
### Install software for Asus ROG laptops ###
|
||||
|
||||
printf " Installing ASUS ROG packages...\n"
|
||||
for ASUS in power-profiles-daemon asusctl supergfxctl rog-control-center; do
|
||||
install_package "$ASUS" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[1A\e[K${ERROR} - $ASUS Package installation failed, Please check the installation logs"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
printf " Activating ROG services...\n"
|
||||
sudo systemctl enable supergfxd 2>&1 | tee -a "$LOG"
|
||||
|
||||
printf " enabling power-profiles-daemon...\n"
|
||||
sudo systemctl enable power-profiles-daemon 2>&1 | tee -a "$LOG"
|
||||
|
||||
clear
|
||||
printf " Installing ASUS ROG packages...\n"
|
||||
for ASUS in asusctl supergfxctl rog-control-center; do
|
||||
install_package "$ASUS" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[1A\e[K${ERROR} - $ASUS install had failed, please check the install.log"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
printf " Activating ROG services...\n"
|
||||
sudo systemctl enable --now supergfxd 2>&1 | tee -a "$LOG"
|
||||
|
||||
clear
|
||||
|
|
@ -1,18 +1,13 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# SDDM Log-in Manager #
|
||||
if [[ $USE_PRESET = [Yy] ]]; then
|
||||
source ./preset.sh
|
||||
fi
|
||||
|
||||
sddm=(
|
||||
qt6-5compat
|
||||
qt6-declarative
|
||||
qt6-svg
|
||||
sddm
|
||||
qt5-graphicaleffects
|
||||
qt5-quickcontrols2
|
||||
qt5-svg
|
||||
sddm-git
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
|
@ -21,17 +16,61 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_sddm.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_sddm.log"
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# SDDM
|
||||
|
||||
# Check if SDDM is already installed
|
||||
if pacman -Qs sddm > /dev/null; then
|
||||
# Prompt user to manually install sddm-git to remove SDDM
|
||||
read -n1 -rep "SDDM is already installed. Would you like to manually install sddm-git to remove it? This requires manual intervention. (y/n)" manual_install_sddm
|
||||
echo
|
||||
if [[ $manual_install_sddm =~ ^[Yy]$ ]]; then
|
||||
$ISAUR -S sddm-git 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Install SDDM and SDDM theme
|
||||
printf "${NOTE} Installing sddm and dependencies........\n"
|
||||
printf "${NOTE} Installing SDDM-git and dependencies........\n"
|
||||
for package in "${sddm[@]}"; do
|
||||
install_package "$package" 2>&1 | tee -a "$LOG"
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $package Package installation failed, Please check the installation logs"; exit 1; }
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $package install has failed, please check the install.log"; exit 1; }
|
||||
done
|
||||
|
||||
# Check if other login managers installed and disabling its service before enabling sddm
|
||||
|
|
@ -52,32 +91,29 @@ sddm_conf_dir=/etc/sddm.conf.d
|
|||
|
||||
wayland_sessions_dir=/usr/share/wayland-sessions
|
||||
[ ! -d "$wayland_sessions_dir" ] && { printf "$CAT - $wayland_sessions_dir not found, creating...\n"; sudo mkdir "$wayland_sessions_dir" 2>&1 | tee -a "$LOG"; }
|
||||
|
||||
printf "\n%.0s" {1..2}
|
||||
sudo cp assets/hyprland.desktop "$wayland_sessions_dir/" 2>&1 | tee -a "$LOG"
|
||||
|
||||
# SDDM-themes
|
||||
valid_input=false
|
||||
while [ "$valid_input" != true ]; do
|
||||
if [[ -z $install_sddm_theme ]]; then
|
||||
read -n 1 -r -p "${CAT} OPTIONAL - Would you like to install SDDM themes? (y/n)" install_sddm_theme
|
||||
fi
|
||||
read -n 1 -r -p "${CAT} OPTIONAL - Would you like to install SDDM themes? (y/n)" install_sddm_theme
|
||||
if [[ $install_sddm_theme =~ ^[Yy]$ ]]; then
|
||||
printf "\n%s - Installing Simple SDDM Theme\n" "${NOTE}"
|
||||
|
||||
# Check if /usr/share/sddm/themes/simple-sddm-2 exists and remove if it does
|
||||
if [ -d "/usr/share/sddm/themes/simple-sddm-2" ]; then
|
||||
sudo rm -rf "/usr/share/sddm/themes/simple-sddm-2"
|
||||
echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm-2' directory." 2>&1 | tee -a "$LOG"
|
||||
# Check if /usr/share/sddm/themes/simple-sddm exists and remove if it does
|
||||
if [ -d "/usr/share/sddm/themes/simple-sddm" ]; then
|
||||
sudo rm -rf "/usr/share/sddm/themes/simple-sddm"
|
||||
echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm' directory." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
# Check if simple-sddm-2 directory exists in the current directory and remove if it does
|
||||
if [ -d "simple-sddm-2" ]; then
|
||||
rm -rf "simple-sddm-2"
|
||||
echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm-2' directory from the current location." 2>&1 | tee -a "$LOG"
|
||||
# Check if simple-sddm directory exists in the current directory and remove if it does
|
||||
if [ -d "simple-sddm" ]; then
|
||||
rm -rf "simple-sddm"
|
||||
echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm' directory from the current location." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
if git clone --depth 1 https://github.com/JaKooLit/simple-sddm-2.git; then
|
||||
while [ ! -d "simple-sddm-2" ]; do
|
||||
if git clone https://github.com/JaKooLit/simple-sddm.git 2>&1 | tee -a "$LOG"; then
|
||||
while [ ! -d "simple-sddm" ]; do
|
||||
sleep 1
|
||||
done
|
||||
|
||||
|
|
@ -86,10 +122,10 @@ while [ "$valid_input" != true ]; do
|
|||
echo -e "\e[1A\e[K${OK} - Directory '/usr/share/sddm/themes' created." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
sudo mv simple-sddm-2 /usr/share/sddm/themes/
|
||||
echo -e "[Theme]\nCurrent=simple-sddm-2" | sudo tee "$sddm_conf_dir/theme.conf.user" &>> "$LOG"
|
||||
sudo mv simple-sddm /usr/share/sddm/themes/
|
||||
echo -e "[Theme]\nCurrent=simple-sddm" | sudo tee "$sddm_conf_dir/10-theme.conf" &>> "$LOG"
|
||||
else
|
||||
echo -e "\e[1A\e[K${ERROR} - Failed to clone the theme repository. Please check your internet connection" | tee -a "$LOG" >&2
|
||||
echo -e "\e[1A\e[K${ERROR} - Failed to clone the theme repository. Please check your internet connection or repository availability." | tee -a "$LOG" >&2
|
||||
fi
|
||||
valid_input=true
|
||||
elif [[ $install_sddm_theme =~ ^[Nn]$ ]]; then
|
||||
|
|
@ -97,8 +133,9 @@ while [ "$valid_input" != true ]; do
|
|||
valid_input=true
|
||||
else
|
||||
printf "\n%s - Invalid input. Please enter 'y' for Yes or 'n' for No.\n" "${ERROR}" 2>&1 | tee -a "$LOG"
|
||||
install_sddm_theme=""
|
||||
fi
|
||||
done
|
||||
|
||||
clear
|
||||
|
||||
|
||||
clear
|
||||
|
|
@ -1,21 +1,14 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Thunar #
|
||||
|
||||
if [[ $USE_PRESET = [Yy] ]]; then
|
||||
source ./preset.sh
|
||||
fi
|
||||
|
||||
thunar=(
|
||||
thunar
|
||||
thunar-volman
|
||||
tumbler
|
||||
ffmpegthumbnailer
|
||||
file-roller
|
||||
thunar-archive-plugin
|
||||
thunar
|
||||
thunar-volman
|
||||
tumbler
|
||||
ffmpegthumbnailer
|
||||
thunar-archive-plugin
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
|
@ -24,45 +17,65 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_thunar.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_thunar.log"
|
||||
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Bluetooth
|
||||
|
||||
# Thunar
|
||||
printf "${NOTE} Installing Thunar Packages...\n"
|
||||
for THUNAR in "${thunar[@]}"; do
|
||||
install_package "$THUNAR" 2>&1 | tee -a "$LOG"
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $THUNAR Package installation failed, Please check the installation logs"; exit 1; }
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $THUNAR install had failed, please check the install.log"; exit 1; }
|
||||
done
|
||||
|
||||
printf "\n%.0s" {1..2}
|
||||
# Check for existing config folders and backup
|
||||
for DIR1 in Thunar xfce4; do
|
||||
DIRPATH=~/.config/$DIR1
|
||||
if [ -d "$DIRPATH" ]; then
|
||||
echo -e "${NOTE} Config for $DIR1 found, backing up."
|
||||
mv $DIRPATH $DIRPATH-back-up 2>&1 | tee -a "$LOG"
|
||||
echo -e "${NOTE} Backed up $DIR1 to $DIRPATH-back-up."
|
||||
fi
|
||||
done
|
||||
|
||||
# Ask the user if they want to use Thunar as the default file manager
|
||||
read -p "${CAT} Do you want to set Thunar as the default file manager? (y/n): " thunar_default
|
||||
|
||||
if [[ "$thunar_default" == [Yy] ]]; then
|
||||
# Setting Thunar as the default file manager
|
||||
xdg-mime default thunar.desktop inode/directory
|
||||
xdg-mime default thunar.desktop application/x-wayland-gnome-saved-search
|
||||
echo "${OK} Thunar has been set as the default file manager." 2>&1 | tee -a "$LOG"
|
||||
else
|
||||
echo "${NOTE} you choose not to set Thunar as default file manager." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
printf "\n"
|
||||
|
||||
# Check for existing configs and copy if does not exist
|
||||
for DIR1 in gtk-3.0 Thunar xfce4; do
|
||||
DIRPATH=~/.config/$DIR1
|
||||
if [ -d "$DIRPATH" ]; then
|
||||
echo -e "${NOTE} Config for $DIR1 found, no need to copy." 2>&1 | tee -a "$LOG"
|
||||
else
|
||||
echo -e "${NOTE} Config for $DIR1 not found, copying from assets." 2>&1 | tee -a "$LOG"
|
||||
cp -r assets/$DIR1 ~/.config/ && echo "Copy $DIR1 completed!" || echo "Error: Failed to copy $DIR1 config files." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
done
|
||||
# copying from assets
|
||||
cp -r assets/xfce4 ~/.config/ && echo "Copy xfce4 completed!" || echo "Error: Failed to copy xfce4 config files." 2>&1 | tee -a "$LOG"
|
||||
cp -r assets/Thunar ~/.config/ && echo "Copy Thunar completed!" || echo "Error: Failed to copy Thunar config files." 2>&1 | tee -a "$LOG"
|
||||
|
||||
clear
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,34 +1,52 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# XDG-Desktop-Portals #
|
||||
if [[ $USE_PRESET = [Yy] ]]; then
|
||||
source ./preset.sh
|
||||
fi
|
||||
|
||||
xdg=(
|
||||
xdg-desktop-portal-hyprland
|
||||
xdg-desktop-portal-gtk
|
||||
)
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
# Change the working directory to the parent directory of the script
|
||||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_xdph.log"
|
||||
LOG="install-$(date +%d-%H%M%S)_xdph.log"
|
||||
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# XDG-DESKTOP-PORTAL-HYPRLAND
|
||||
for xdgs in "${xdg[@]}"; do
|
||||
install_package "$xdgs" 2>&1 | tee -a "$LOG"
|
||||
|
||||
for xdph in xdg-desktop-portal-hyprland; do
|
||||
install_package "$xdph" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[1A\e[K${ERROR} - $xdph Package installation failed, Please check the installation logs"
|
||||
echo -e "\e[1A\e[K${ERROR} - $xdph install had failed, please check the install.log"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
|
@ -36,38 +54,31 @@ done
|
|||
printf "${NOTE} Checking for other XDG-Desktop-Portal-Implementations....\n"
|
||||
sleep 1
|
||||
printf "\n"
|
||||
printf "${NOTE} XDG-desktop-portal-KDE & GNOME (if installed) should be manually disabled or removed! I can't remove it... sorry...\n"
|
||||
while true; do
|
||||
printf "\n%.0s" {1..2}
|
||||
if [[ -z $XDPH1 ]]; then
|
||||
read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1
|
||||
printf "${NOTE} XDG-desktop-portal-KDE (if installed) should be manually disabled or removed! I can't remove it... sorry...\n"
|
||||
read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1
|
||||
echo
|
||||
sleep 1
|
||||
|
||||
if [[ $XDPH1 =~ ^[Yy]$ ]]; then
|
||||
# Clean out other portals
|
||||
printf "${NOTE} Clearing any other xdg-desktop-portal implementations...\n"
|
||||
# Check if packages are installed and uninstall if present
|
||||
if pacman -Qs xdg-desktop-portal-gnome > /dev/null ; then
|
||||
echo "Removing xdg-desktop-portal-gnome..."
|
||||
sudo pacman -R --noconfirm xdg-desktop-portal-gnome 2>&1 | tee -a $LOG
|
||||
fi
|
||||
echo
|
||||
sleep 1
|
||||
if pacman -Qs xdg-desktop-portal-gtk > /dev/null ; then
|
||||
echo "Removing xdg-desktop-portal-gtk..."
|
||||
sudo pacman -R --noconfirm xdg-desktop-portal-gtk 2>&1 | tee -a $LOG
|
||||
fi
|
||||
if pacman -Qs xdg-desktop-portal-wlr > /dev/null ; then
|
||||
echo "Removing xdg-desktop-portal-wlr..."
|
||||
sudo pacman -R --noconfirm xdg-desktop-portal-wlr 2>&1 | tee -a $LOG
|
||||
fi
|
||||
if pacman -Qs xdg-desktop-portal-lxqt > /dev/null ; then
|
||||
echo "Removing xdg-desktop-portal-lxqt..."
|
||||
sudo pacman -R --noconfirm xdg-desktop-portal-lxqt 2>&1 | tee -a $LOG
|
||||
fi
|
||||
fi
|
||||
|
||||
case $XDPH1 in
|
||||
[Yy])
|
||||
# Clean out other portals
|
||||
printf "${NOTE} Clearing any other xdg-desktop-portal implementations...\n"
|
||||
# Check if packages are installed and uninstall if present
|
||||
if pacman -Qs xdg-desktop-portal-wlr > /dev/null ; then
|
||||
echo "Removing xdg-desktop-portal-wlr..."
|
||||
sudo pacman -R --noconfirm xdg-desktop-portal-wlr 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
if pacman -Qs xdg-desktop-portal-lxqt > /dev/null ; then
|
||||
echo "Removing xdg-desktop-portal-lxqt..."
|
||||
sudo pacman -R --noconfirm xdg-desktop-portal-lxqt 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
break
|
||||
;;
|
||||
[Nn])
|
||||
echo "no other XDG-implementations will be removed." >> "$LOG"
|
||||
break
|
||||
;;
|
||||
*)
|
||||
echo "Invalid input. Please enter 'y' for yes or 'n' for no."
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
clear
|
||||
clear
|
||||
|
|
@ -1,47 +1,32 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Yay AUR Helper #
|
||||
# NOTE: If paru is already installed, yay will not be installed #
|
||||
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="install-$(date +%d-%H%M%S)_yay.log"
|
||||
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Create Directory for Install Logs
|
||||
if [ ! -d Install-Logs ]; then
|
||||
mkdir Install-Logs
|
||||
fi
|
||||
|
||||
# Check Existing yay
|
||||
if [ -d yay ]; then
|
||||
rm -rf yay 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="install-$(date +%d-%H%M%S)_yay.log"
|
||||
|
||||
# Check for AUR helper and install if not found
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
if [ -n "$ISAUR" ]; then
|
||||
printf "\n%s - AUR helper already installed, moving on.\n" "${OK}"
|
||||
printf "\n%s - AUR helper yay was located, moving on.\n" "${OK}"
|
||||
else
|
||||
printf "\n%s - AUR helper was NOT located\n" "$WARN"
|
||||
printf "\n%s - Installing yay from AUR\n" "${NOTE}"
|
||||
git clone https://aur.archlinux.org/yay.git || { printf "%s - Failed to clone yay from AUR\n" "${ERROR}"; exit 1; }
|
||||
cd yay || { printf "%s - Failed to enter yay directory\n" "${ERROR}"; exit 1; }
|
||||
git clone https://aur.archlinux.org/yay-bin.git || { printf "%s - Failed to clone yay from AUR\n" "${ERROR}"; exit 1; }
|
||||
cd yay-bin || { printf "%s - Failed to enter yay-bin directory\n" "${ERROR}"; exit 1; }
|
||||
makepkg -si --noconfirm 2>&1 | tee -a "$LOG" || { printf "%s - Failed to install yay from AUR\n" "${ERROR}"; exit 1; }
|
||||
|
||||
# moving install logs in to Install-Logs folder
|
||||
mv install*.log ../Install-Logs/ || true
|
||||
cd ..
|
||||
fi
|
||||
|
||||
# Update system before proceeding
|
||||
|
|
|
|||
|
|
@ -1,19 +1,23 @@
|
|||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# zsh and oh my zsh including pokemon-color-scripts#
|
||||
if [[ $USE_PRESET = [Yy] ]]; then
|
||||
source ./preset.sh
|
||||
fi
|
||||
|
||||
zsh=(
|
||||
eza
|
||||
zsh
|
||||
zsh-completions
|
||||
fzf
|
||||
)
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="install-$(date +%d-%H%M%S)_zsh.log"
|
||||
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
|
||||
|
||||
# Determine the directory where the script is located
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
|
|
@ -21,42 +25,50 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|||
PARENT_DIR="$SCRIPT_DIR/.."
|
||||
cd "$PARENT_DIR" || exit 1
|
||||
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
|
||||
# Set the name of the log file to include the current date and time
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_zsh.log"
|
||||
ISAUR=$(command -v yay || command -v paru)
|
||||
|
||||
## Optional Pokemon color scripts
|
||||
while true; do
|
||||
if [[ -z $pokemon_choice ]]; then
|
||||
read -p "${CAT} OPTIONAL - Do you want to add Pokemon color scripts? (y/n): " pokemon_choice
|
||||
# Set the script to exit on error
|
||||
set -e
|
||||
|
||||
# Function for installing packages
|
||||
install_package() {
|
||||
# Checking if package is already installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "${OK} $1 is already installed. Skipping..."
|
||||
else
|
||||
# Package not installed
|
||||
echo -e "${NOTE} Installing $1 ..."
|
||||
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
|
||||
# Making sure package is installed
|
||||
if $ISAUR -Q "$1" &>> /dev/null ; then
|
||||
echo -e "\e[1A\e[K${OK} $1 was installed."
|
||||
else
|
||||
# Something is missing, exiting to review log
|
||||
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
|
||||
exit 1
|
||||
fi
|
||||
case "$pokemon_choice" in
|
||||
[Yy]*)
|
||||
zsh+=('pokemon-colorscripts-git')
|
||||
sed -i '/#pokemon-colorscripts --no-title -s -r/s/^#//' assets/.zshrc >> "$LOG" 2>&1
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
# Check if the oh-my-zsh directory exists
|
||||
if [ -d "$HOME/.oh-my-zsh" ]; then
|
||||
printf "${NOTE} Oh My Zsh found. Creating a backup before uninstalling...${RESET}\n"
|
||||
# Perform backup using cp -r and create a backup directory with -backup suffix
|
||||
cp -r "$HOME/.oh-my-zsh" "$HOME/.oh-my-zsh-backup" || true
|
||||
mv "$HOME/.zshrc" "$HOME/.zshrc-backup" || true
|
||||
|
||||
printf "${NOTE} Backup created....${RESET}\n"
|
||||
fi
|
||||
|
||||
# commenting out fastfetch since pokemon was chosen to install
|
||||
sed -i '/^fastfetch -c $HOME\/.config\/fastfetch\/config-compact.jsonc/s/^/#/' assets/.zshrc >> "$LOG" 2>&1
|
||||
|
||||
break
|
||||
;;
|
||||
[Nn]*)
|
||||
echo "${NOTE}Skipping Pokemon color scripts installation.${RESET}" 2>&1 | tee -a "$LOG"
|
||||
break
|
||||
;;
|
||||
*)
|
||||
echo "${WARN}Please enter 'y' for yes or 'n' for no.${RESET}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Installing zsh packages
|
||||
printf "${NOTE} Installing core zsh packages...${RESET}\n"
|
||||
for ZSH in "${zsh[@]}"; do
|
||||
for ZSH in zsh zsh-completions pokemon-colorscripts-git; do
|
||||
install_package "$ZSH" 2>&1 | tee -a "$LOG"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[1A\e[K${ERROR} - $ZSH Package installation failed, Please check the installation logs"
|
||||
echo -e "\e[1A\e[K${ERROR} - $ZSH install had failed, please check the install.log"
|
||||
fi
|
||||
done
|
||||
|
||||
|
|
@ -67,42 +79,34 @@ if command -v zsh >/dev/null; then
|
|||
if [ ! -d "$HOME/.oh-my-zsh" ]; then
|
||||
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended || true
|
||||
else
|
||||
echo "Directory .oh-my-zsh already exists. Skipping re-installation." 2>&1 | tee -a "$LOG"
|
||||
echo "Directory .oh-my-zsh already exists. Skipping re-installation."
|
||||
fi
|
||||
# Check if the directories exist before cloning the repositories
|
||||
if [ ! -d "$HOME/.oh-my-zsh/custom/plugins/zsh-autosuggestions" ]; then
|
||||
if [ ! -d "$HOME/.oh-my-zsh/custom}/plugins/zsh-autosuggestions" ]; then
|
||||
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/zsh-autosuggestions || true
|
||||
else
|
||||
echo "Directory zsh-autosuggestions already exists. Skipping cloning." 2>&1 | tee -a "$LOG"
|
||||
echo "Directory zsh-autosuggestions already exists. Skipping cloning."
|
||||
fi
|
||||
|
||||
if [ ! -d "$HOME/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting" ]; then
|
||||
if [ ! -d "$HOME/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting" ]; then
|
||||
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting || true
|
||||
else
|
||||
echo "Directory zsh-syntax-highlighting already exists. Skipping cloning." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
# Check if ~/.zshrc and .zprofile exists, create a backup, and copy the new configuration
|
||||
if [ -f "$HOME/.zshrc" ]; then
|
||||
cp -b "$HOME/.zshrc" "$HOME/.zshrc-backup" || true
|
||||
echo "Directory zsh-syntax-highlighting already exists. Skipping cloning."
|
||||
fi
|
||||
|
||||
if [ -f "$HOME/.zprofile" ]; then
|
||||
cp -b "$HOME/.zprofile" "$HOME/.zprofile-backup" || true
|
||||
fi
|
||||
|
||||
# Copying the preconfigured zsh themes and profile
|
||||
cp -r 'assets/.zshrc' ~/
|
||||
cp -r 'assets/.zprofile' ~/
|
||||
|
||||
printf "${NOTE} Changing default shell to zsh...\n"
|
||||
|
||||
while ! chsh -s $(which zsh); do
|
||||
echo "${ERROR} Authentication failed. Please enter the correct password." 2>&1 | tee -a "$LOG"
|
||||
echo "${ERROR} Authentication failed. Please enter the correct password."
|
||||
sleep 1
|
||||
done
|
||||
printf "${NOTE} Shell changed successfully to zsh.\n" 2>&1 | tee -a "$LOG"
|
||||
|
||||
fi
|
||||
printf "\n\n\n\n"
|
||||
|
||||
|
||||
clear
|
||||
clear
|
||||
|
|
@ -1,48 +1,14 @@
|
|||
#!/bin/bash
|
||||
# https://github.com/JaKooLit
|
||||
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
|
||||
# Check if running as root. If root, script will exit
|
||||
if [[ $EUID -eq 0 ]]; then
|
||||
echo "$ERROR This script should not be executed as root! Exiting......."
|
||||
echo "This script should not be executed as root! Exiting......."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
clear
|
||||
|
||||
# Check if PulseAudio package is installed
|
||||
if pacman -Qq | grep -qw '^pulseaudio$'; then
|
||||
echo "$ERROR PulseAudio is detected as installed. Uninstall it first or edit install.sh on line 211 (execute_script 'pipewire.sh')."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check if base-devel is installed
|
||||
if pacman -Q base-devel &> /dev/null; then
|
||||
echo "base-devel is already installed."
|
||||
else
|
||||
echo "$NOTE Install base-devel.........."
|
||||
|
||||
if sudo pacman -S --noconfirm --needed base-devel; then
|
||||
echo "$OK base-devel has been installed successfully."
|
||||
else
|
||||
echo "$ERROR base-devel not found nor cannot be installed."
|
||||
echo "$ACTION Please install base-devel manually before running this script... Exiting"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
clear
|
||||
|
||||
printf "\n%.0s" {1..3}
|
||||
echo " | _. |/ _ _ | o _|_ "
|
||||
echo " \_| (_| o |\ (_) (_) |_ | |_ "
|
||||
|
|
@ -60,25 +26,22 @@ echo
|
|||
|
||||
read -p "$(tput setaf 6)Would you like to proceed? (y/n): $(tput sgr0)" proceed
|
||||
|
||||
printf "\n%.0s" {1..2}
|
||||
|
||||
if [ "$proceed" != "y" ]; then
|
||||
echo "Installation aborted."
|
||||
printf "\n%.0s" {1..2}
|
||||
exit 1
|
||||
fi
|
||||
|
||||
printf "\n%.0s" {1..2}
|
||||
|
||||
echo "$(tput bold)$(tput setaf 166)ATTENTION: Choosing Y on use preset question will install also nvidia stuff! $(tput sgr0)"
|
||||
echo "$(tput bold)$(tput setaf 3)CTRL C to cancel and edit the file preset.sh $(tput sgr0)"
|
||||
echo "$(tput bold)$(tput setaf 7)If you are not sure what to do, answer N in here $(tput sgr0)"
|
||||
read -p "$(tput setaf 6)Would you like to Use Preset Settings (See note above)? (y/n): $(tput sgr0)" use_preset
|
||||
|
||||
# Use of Preset Settings
|
||||
if [[ $use_preset = [Yy] ]]; then
|
||||
source ./preset.sh
|
||||
fi
|
||||
# Set some colors for output messages
|
||||
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
||||
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
||||
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
||||
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
|
||||
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
||||
ORANGE=$(tput setaf 166)
|
||||
YELLOW=$(tput setaf 3)
|
||||
RESET=$(tput sgr0)
|
||||
|
||||
# Function to colorize prompts
|
||||
colorize_prompt() {
|
||||
|
|
@ -91,37 +54,22 @@ colorize_prompt() {
|
|||
LOG="install-$(date +%d-%H%M%S).log"
|
||||
|
||||
# Initialize variables to store user responses
|
||||
# aur_helper=""
|
||||
# bluetooth=""
|
||||
# dots=""
|
||||
# gtk_themes=""
|
||||
# nvidia=""
|
||||
# rog=""
|
||||
# sddm=""
|
||||
# thunar=""
|
||||
# xdph=""
|
||||
# zsh=""
|
||||
|
||||
# Create Directory for Install Logs
|
||||
if [ ! -d Install-Logs ]; then
|
||||
mkdir Install-Logs
|
||||
fi
|
||||
aur_helper=""
|
||||
bluetooth=""
|
||||
dots=""
|
||||
gtk_themes=""
|
||||
nvidia=""
|
||||
rog=""
|
||||
sddm=""
|
||||
thunar=""
|
||||
xdph=""
|
||||
zsh=""
|
||||
|
||||
# Define the directory where your scripts are located
|
||||
script_directory=install-scripts
|
||||
|
||||
# Function to ask a yes/no question and set the response in a variable
|
||||
ask_yes_no() {
|
||||
if [[ ! -z "${!2}" ]]; then
|
||||
echo "$(colorize_prompt "$CAT" "$1 (Preset): ${!2}")"
|
||||
if [[ "${!2}" = [Yy] ]]; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
else
|
||||
eval "$2=''"
|
||||
fi
|
||||
while true; do
|
||||
read -p "$(colorize_prompt "$CAT" "$1 (y/n): ")" choice
|
||||
case "$choice" in
|
||||
|
|
@ -138,12 +86,6 @@ ask_custom_option() {
|
|||
local valid_options="$2"
|
||||
local response_var="$3"
|
||||
|
||||
if [[ ! -z "${!3}" ]]; then
|
||||
return 0
|
||||
else
|
||||
eval "$3=''"
|
||||
fi
|
||||
|
||||
while true; do
|
||||
read -p "$(colorize_prompt "$CAT" "$prompt ($valid_options): ")" choice
|
||||
if [[ " $valid_options " == *" $choice "* ]]; then
|
||||
|
|
@ -161,7 +103,7 @@ execute_script() {
|
|||
if [ -f "$script_path" ]; then
|
||||
chmod +x "$script_path"
|
||||
if [ -x "$script_path" ]; then
|
||||
env USE_PRESET=$use_preset "$script_path"
|
||||
"$script_path"
|
||||
else
|
||||
echo "Failed to make script '$script' executable."
|
||||
fi
|
||||
|
|
@ -174,7 +116,7 @@ execute_script() {
|
|||
printf "\n"
|
||||
ask_custom_option "-Type AUR helper" "paru or yay" aur_helper
|
||||
printf "\n"
|
||||
ask_yes_no "-Do you have any nvidia gpu in your system?" nvidia
|
||||
ask_yes_no "-Do you have nvidia gpu?" nvidia
|
||||
printf "\n"
|
||||
ask_yes_no "-Install GTK themes (required for Dark/Light function)?" gtk_themes
|
||||
printf "\n"
|
||||
|
|
@ -182,26 +124,22 @@ ask_yes_no "-Do you want to configure Bluetooth?" bluetooth
|
|||
printf "\n"
|
||||
ask_yes_no "-Do you want to install Thunar file manager?" thunar
|
||||
printf "\n"
|
||||
ask_yes_no "-Install & configure SDDM log-in Manager plus (OPTIONAL) SDDM Theme?" sddm
|
||||
ask_yes_no "-Installing in Asus ROG Laptops?" rog
|
||||
printf "\n"
|
||||
ask_yes_no "-Install and configure SDDM log-in Manager?" sddm
|
||||
printf "\n"
|
||||
ask_yes_no "-Install XDG-DESKTOP-PORTAL-HYPRLAND? (For proper Screen Share ie OBS)" xdph
|
||||
printf "\n"
|
||||
ask_yes_no "-Install zsh, oh-my-zsh & (Optional) pokemon-colorscripts?" zsh
|
||||
ask_yes_no "-Install zsh, oh-my-zsh & pokemon-colorscripts?" zsh
|
||||
printf "\n"
|
||||
ask_yes_no "-Installing in a Asus ROG Laptops?" rog
|
||||
ask_yes_no "-Do you want to copy Hyprland dotfiles?" dots
|
||||
printf "\n"
|
||||
ask_yes_no "-Do you want to download pre-configured Hyprland dotfiles?" dots
|
||||
printf "\n"
|
||||
|
||||
# Ensuring all in the scripts folder are made executable
|
||||
chmod +x install-scripts/*
|
||||
sleep 1
|
||||
# Ensuring base-devel is installed
|
||||
execute_script "00-base.sh"
|
||||
sleep 1
|
||||
execute_script "pacman.sh"
|
||||
sleep 1
|
||||
|
||||
# Execute AUR helper script based on user choice
|
||||
execute_script "00-base.sh"
|
||||
|
||||
if [ "$aur_helper" == "paru" ]; then
|
||||
execute_script "paru.sh"
|
||||
elif [ "$aur_helper" == "yay" ]; then
|
||||
|
|
@ -209,21 +147,19 @@ elif [ "$aur_helper" == "yay" ]; then
|
|||
fi
|
||||
|
||||
# Install hyprland packages
|
||||
execute_script "01-hypr-pkgs.sh"
|
||||
execute_script "00-hypr-pkgs.sh"
|
||||
|
||||
# Install pipewire and pipewire-audio
|
||||
execute_script "pipewire.sh"
|
||||
|
||||
# Install necessary fonts
|
||||
execute_script "fonts.sh"
|
||||
|
||||
# Install hyprland
|
||||
execute_script "hyprland.sh"
|
||||
|
||||
if [ "$nvidia" == "Y" ]; then
|
||||
execute_script "nvidia.sh"
|
||||
fi
|
||||
|
||||
if [ "$nvidia" == "N" ]; then
|
||||
execute_script "hyprland.sh"
|
||||
fi
|
||||
|
||||
if [ "$gtk_themes" == "Y" ]; then
|
||||
execute_script "gtk_themes.sh"
|
||||
fi
|
||||
|
|
@ -236,6 +172,10 @@ if [ "$thunar" == "Y" ]; then
|
|||
execute_script "thunar.sh"
|
||||
fi
|
||||
|
||||
if [ "$rog" == "Y" ]; then
|
||||
execute_script "rog.sh"
|
||||
fi
|
||||
|
||||
if [ "$sddm" == "Y" ]; then
|
||||
execute_script "sddm.sh"
|
||||
fi
|
||||
|
|
@ -250,43 +190,28 @@ fi
|
|||
|
||||
execute_script "InputGroup.sh"
|
||||
|
||||
if [ "$rog" == "Y" ]; then
|
||||
execute_script "rog.sh"
|
||||
fi
|
||||
|
||||
if [ "$dots" == "Y" ]; then
|
||||
execute_script "dotfiles-main.sh"
|
||||
execute_script "dotfiles.sh"
|
||||
|
||||
fi
|
||||
|
||||
clear
|
||||
|
||||
# final check essential packages if it is installed
|
||||
execute_script "02-Final-Check.sh"
|
||||
printf "\n${OK} Yey! Installation Completed.\n"
|
||||
printf "\n"
|
||||
sleep 2
|
||||
printf "\n${NOTE} You can start Hyprland by typing Hyprland (IF SDDM is not installed) (note the capital H!).\n"
|
||||
printf "\n"
|
||||
printf "\n${NOTE} It is highly recommended to reboot your system.\n\n"
|
||||
|
||||
printf "\n%.0s" {1..1}
|
||||
read -rp "${CAT} Would you like to reboot now? (y/n): " HYP
|
||||
|
||||
# Check if hyprland or hyprland-git is installed
|
||||
if pacman -Q hyprland &> /dev/null || pacman -Q hyprland-git &> /dev/null; then
|
||||
printf "\n${OK} Hyprland is installed. However, some essential packages may not be installed Please see above!"
|
||||
printf "\n${CAT} Ignore this message if it states 'All essential packages are installed.'\n"
|
||||
sleep 2
|
||||
printf "\n${NOTE} You can start Hyprland by typing 'Hyprland' (IF SDDM is not installed) (note the capital H!).\n"
|
||||
printf "\n${NOTE} However, it is highly recommended to reboot your system.\n\n"
|
||||
|
||||
# Prompt user to reboot
|
||||
read -rp "${CAT} Would you like to reboot now? (y/n): " HYP
|
||||
|
||||
# Check if the user answered 'y' or 'Y'
|
||||
if [[ "$HYP" =~ ^[Yy]$ ]]; then
|
||||
if [[ "$nvidia" == "Y" ]]; then
|
||||
echo "${NOTE} NVIDIA GPU detected. Rebooting the system..."
|
||||
fi
|
||||
if [[ "$HYP" =~ ^[Yy]$ ]]; then
|
||||
if [[ "$nvidia" == "Y" ]]; then
|
||||
echo "${NOTE} NVIDIA GPU detected. Rebooting the system..."
|
||||
systemctl reboot
|
||||
fi
|
||||
else
|
||||
# Print error message if neither package is installed
|
||||
printf "\n${WARN} Hyprland failed to install. Please check 00_CHECK-time_installed.log and other files Install-Logs/ directory...\n\n"
|
||||
exit 1
|
||||
else
|
||||
systemctl reboot
|
||||
fi
|
||||
fi
|
||||
|
||||
|
|
|
|||
49
preset.sh
49
preset.sh
|
|
@ -1,49 +0,0 @@
|
|||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
#
|
||||
# CREDIT to: https://github.com/PostCyberPunk for this Preset function
|
||||
|
||||
## -- Make sure you use the right answer or install script will fail ###
|
||||
# Make sure proper AUR Helper is use NO Upperscript. Either paru or yay only is accepted
|
||||
# The rest Change to Y for Yes and N for No.
|
||||
|
||||
### -Type AUR helper
|
||||
### yay or paru
|
||||
aur_helper="yay"
|
||||
############ use : "Y" or "N"
|
||||
###-Do you have any nvidia gpu in your system?
|
||||
nvidia="Y"
|
||||
###-Install GTK themes (required for Dark/Light function)?
|
||||
gtk_themes="Y"
|
||||
###-Do you want to configure Bluetooth?
|
||||
bluetooth="Y"
|
||||
###-Do you want to install Thunar file manager?
|
||||
thunar="Y"
|
||||
###-Install & configure SDDM log-in Manager plus (OPTIONAL) SDDM Theme?
|
||||
sddm="Y"
|
||||
###-Install XDG-DESKTOP-PORTAL-HYPRLAND? (For proper Screen Share ie OBS)
|
||||
xdph="Y"
|
||||
###-Install zsh, oh-my-zsh & (Optional) pokemon-colorscripts?
|
||||
zsh="Y"
|
||||
###-Installing in a Asus ROG Laptops?
|
||||
rog="N"
|
||||
###-Do you want to download pre-configured Hyprland dotfiles?
|
||||
dots="Y"
|
||||
|
||||
### These are the sub-questions of the above choices
|
||||
### Would you like to blacklist nouveau? (y/n)
|
||||
blacklist_nouveau="Y"
|
||||
# Ask the user if they want to use Thunar as the default file manager
|
||||
# Do you want to set Thunar as the default file manager? (y/n): "
|
||||
thunar_default="Y"
|
||||
### XDG-desktop-portal-KDE & GNOME (if installed) should be manually disabled or removed! Script cant remove nor disable it.
|
||||
### Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n)
|
||||
XDPH1="Y"
|
||||
### OPTIONAL - Would you like to install SDDM themes? (y/n)
|
||||
install_sddm_theme="Y"
|
||||
### " This script will add your user to the 'input' group."
|
||||
### " Please note that adding yourself to the 'input' group might be necessary for waybar keyboard-state functionality."
|
||||
input_group_choid="Y"
|
||||
### OPTIONAL - Do you want to add Pokemon color scripts? (y/n):
|
||||
pokemon_choice="Y"
|
||||
### Do you want to upgrade to the latest version? (y/n) - This is for the dotfiles
|
||||
upgrade_choice="Y"
|
||||
Loading…
Reference in New Issue