Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MVP Nixos patches #1152

Merged
merged 5 commits into from
Mar 23, 2024
Merged

MVP Nixos patches #1152

merged 5 commits into from
Mar 23, 2024

Conversation

kik4444
Copy link
Contributor

@kik4444 kik4444 commented Mar 22, 2024

Pull Request

Description

I think I will take a break here. With these changes I think I've achieved at least an MVP if you will. I manually deployed Hyprdots as best as I knew. I placed the repo in my home dir, copied all the relevant dirs from Configs/.config/ to ~/.config, fixed all the symlinks to point to /home/my-user/... instead of the default /home/tittu/..., edited the CloneDir in Configs/.config/hyprdots/scripts/globalcontrol.sh. Basically I tried to manually do the jobs of restore_fnt.sh, restore_cfg.sh, restore_lnk.sh.

When I rebooted into Hyprland it kinda worked. I had the Catpuccin theme, waybar on the bottom (though the icons and text were too small!), an indicator for the currently active window, working icons for wlogout (though its colors and icons were missing), cliphist, the buttons for changing themes and wallpapers. On the right I had the applets for bluetooth, network manager, any other background apps I had running.

Media keys worked, dunst seemed like it worked (it didn't have any animations when multiple stacked notifications disappeared, though there were animations when only one notification disappeared, and the blue background color seemed a bit ugly so idk if it was intended). The wallpaper and theme changer maybe worked, though I had to click them multiple times, then kvantum manager appeared and when I closed it only then did the wallpaper and theme change with the proper animation.
The keybindings hint menu and rofi also worked.

I'm not sure how close I got to the proper Hyprdots experience, but my completely subjective assessment is that I got 80% of the way there.

From here on I will likely make my own setup based on Hyprdots and maybe rewrite some of the scripts to nushell to get better performance and eliminate the abundance of awk and jq calls. That is, assuming I don't lose interest in Hyprland by then. After all, it takes a lot of effort and will to setup everything myself as someone who hails from KDE Plasma 6.

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 document.
  • My code follows the code style of this project.
  • My commit message follows the commit guidelines.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added a changelog entry.
  • I have added necessary comments/documentation to my code.
  • 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.

@@ -18,6 +18,11 @@ do
tgt=`echo $lst | awk -F '|' '{print $2}'`
tgt=`eval "echo $tgt"`

if [[ "${tgt}" =~ /usr/share/ && -d /run/current-system/sw/share/ ]]; then
Copy link

@bphd bphd Mar 22, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kik4444 Why do you search for that directory precisely instead of just searching anything Nixy, like /nix/store, or even just a uname? Is that directory precisely of any use in that evaluation?

I say that because if it's as relevant to put /nix/store, then I would like to put /gnu/store detection aswell so the script skips multiple stateless OSes when detecting those

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Honestly I just wasn't aware of any others besides NixOS.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Honestly I just wasn't aware of any others besides NixOS.

Nevermind actually you use that share directory as a substitute in the script, hence why you search for it precisely instead of only looking for NixOS in itself

RofiSel=$( for qapp in "$@"
do
Lkp=`grep "$qapp" /usr/share/applications/* | grep 'Exec=' | awk -F ':' '{print $1}' | head -1`
Lkp=`grep "$qapp" $appDir/applications/* | grep 'Exec=' | awk -F ':' '{print $1}' | head -1`
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

here the $appDir already points to /usr/share/applications, so please remove applications from this line

Lkp=`grep "$qapp" $appDir/* | grep 'Exec=' | awk -F ':' '{print $1}' | head -1`

Copy link
Owner

@prasanthrangan prasanthrangan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, thank you!

@prasanthrangan prasanthrangan merged commit 12c52d7 into prasanthrangan:main Mar 23, 2024
remann2 pushed a commit to remann2/hyprdots that referenced this pull request Mar 29, 2024
* Skip extracting things to /usr/share on NixOS

* Use /usr/bin/env for spotify

* Patch quickapps.sh

* Patch themeswitch.sh

* Fix app dir in quickapps.sh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants