* fix: getting locked out when running script
* Use success and fail colors and reorder imports
Use theme color instead of using ratatui::Color for running_command success and fail + search preview text color + min tui warning color, add colors for confirmation prompt, fix inverted success and fail colors
* Remove redundant code in themes
Removed redundant match statement with a function
* Fix scroll beyond list, color bleeding and refact in confirmation.rs
Remove unnecessary usage of pub in ConfirmPropmt struct fields, simplify numbering, prevent scrolling beyond list, fix color bleeding
* Implement case insensitive, fix word disappearing bug
Use regex for case insesitive finding, implement String instead of char<Vec>, fix word disappearing by recalculating the render x for preview text
* Revert "Remove redundant code in themes"
This reverts commit 3b7e859af8.
* Reference instead of passing the vector
* Revert regex and String implementation
Use Vec<char> for search_input to prevent panics when using multi-byte characters, use lowercase conversion instead of regex, Added comments for clarity
* Replace ansi and text wrapping code with ratatui
Replaced ansi related code for tree sitter highlight with direct ratatui::text. Cache the processed text in appstate to remove processing of text for every frame render.Create paragraph instead of list so that scroll and wrapping can be done without external crates. Add caps keys for handle_key_event.
* Fix conflicts
* Reference instead of borrowing commands, refact mut variables
Reference instead of borrowing commands from state, Refactor draw function variables to immutable, calculate innersize from block instead of manual definition
* Update tui/src/filter.rs
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
* Rendering optimizations and function refactors
Handle `find_command` inside state itself -> `get_command_by_name`. Move tips to a seperate file for modularity. Pass the whole args to state instead of seperate args. Use const for float and confirmation prompt float sizes. Add the `longest_tab_length` to appstate struct so that it will not be calculated for each frame render use static str instead String for tips. Use function for spawning confirmprompt. Merge command list and task items list rendering a single widget instead of two. Remove redundant keys in handle_key. Optimize scrolling logic. Rename `toggle_task_list_guide` -> `enable_task_list_guide`
* Cleanup
Use prelude for ratatui imports. Use const for theme functions, add
missing hints
* Update deps, remove unused temp-dir
* Add accidentally deleted preview.tape
Add labels + Wait 2sec after program ends
* Add fields to config files
Skip Confirmation, Bypass Size
* Remove accidentally commited config file
---------
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
* implement a root check menu
* code needs to be readable
* rephrase it a lil bit
* disregard escalation tool variable if found as root
* refactor: Call root check from within AppState constructor (#7)
* remove duplicate check
* add comment back
---------
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
* Dnf5 fixes
* again fix :)
* final fix
* added version check
* Apply suggestions from code review
Co-authored-by: Jeevitha Kannan K S <ksjeevithakannan123@gmail.com>
* Update core/tabs/applications-setup/Developer-tools/sublime-setup.sh
Co-authored-by: Jeevitha Kannan K S <ksjeevithakannan123@gmail.com>
---------
Co-authored-by: Jeevitha Kannan K S <ksjeevithakannan123@gmail.com>
* Added Tor Browser to Web Browsers tab.
* Ran cargo xtask docgen
* removed unnecessary double quotes in tor-browser.sh
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
---------
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* feat(communication/whatsapp): add whatsapp desktop client
* Update core/tabs/applications-setup/communication-apps/whatsapp-setup.sh
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
* refactor: changing name to zapzap
As per @Ilj3954 and @adamperkowski request, I'm changing both option and
script name to zapzap (which was the original name of the app)
* Update core/tabs/applications-setup/tab_data.toml
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update core/tabs/applications-setup/communication-apps/zapzap-setup.sh
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update core/tabs/applications-setup/communication-apps/zapzap-setup.sh
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update core/tabs/applications-setup/communication-apps/zapzap-setup.sh
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update core/tabs/applications-setup/communication-apps/zapzap-setup.sh
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* chore: adjusting indentation
* Update core/tabs/applications-setup/communication-apps/zapzap-setup.sh
Co-authored-by: Jeevitha Kannan K S <ksjeevithakannan123@gmail.com>
* Update core/tabs/applications-setup/tab_data.toml
Co-authored-by: Jeevitha Kannan K S <ksjeevithakannan123@gmail.com>
---------
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* Add basic script to install Epson printer drivers in Arch, Debian, and Fedora.
* Add I to the task_list for this script.
* Update core/tabs/utils/printers/install-epson-printer-drivers.sh
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
* Update userguide.md based on adam's documentation update.
* Add description to tab_data.toml for the printer addition.
* Fix typo, oops.
* Actually generate the updated userguide.
* Add installation of CUPS as a pre-requisite for Epson printer drivers as well as standalone script for other printer drivers to be added in the future.
* Update core/tabs/utils/printers/install-cups.sh
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update core/tabs/utils/printers/install-epson-printer-drivers.sh
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update core/tabs/utils/tab_data.toml
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update core/tabs/utils/tab_data.toml
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update docs after changes.
---------
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* feat: Add automation based on config file
* docs: add configuration to the manpage & README
* update roadmap
---------
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
When installing dwm-titus with slstatus from a fresh Arch-Server install, several required dependencies are missing and need to be included. These are:
- meson
- libev
- uthash
- libconfig
Tested only on another fresh Arch-Server install and script completed successfully.
* refactor: Export ego-tree from linutil core, rather than workspace
* refactor: Improve code formatting
---------
Co-authored-by: Chris Titus <contact@christitus.com>
* Btrfs Assistant(+snapper), grub-btrfs Setup added
Adds fedora-btrfs-assistant.sh, updates tab_data and documentation.
* updated doc, ta_data and sh
* enable grub-btrfsd service added
* updated some wording in notices.
* updated wording and add prompts for actions
* added fix for a possible grub error
also some more enhancements and wording improvements.
* user action removed
reinstall snapper action removed because removing and reinstalling snapper is a very unlikely action. and also snapper can't handle ./snapsots folder in the disk after reinstalling: "creating btrfs subvolume .snapshots failed since it already exists".
* firs snapshot order changed
home snapshot taken first because it's config can be saved to first root snapshot.
* better explanations in user prompts
* improved y/n loop
* formatting improvements
* formatting improvement
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* formatting improvement
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* Update task list
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* removed a inline comment
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* removed an unnececary inline comment
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* removed an unnececary inline comment
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* improved sed -i
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* improved sed -i
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* improved sed -i
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* newlines removed from tab_data.toml
Co-authored-by: Nyx <nnyyxxxx@protonmail.com>
* btrfs detection moved to toml
Co-authored-by: Nyx <nnyyxxxx@protonmail.com>
* data.preconditions added - escalation tool used
* $PACKAGER replaced with dnf
* re-added packager
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* re-added packager
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
* usergide updated with docgen
* typo fix
---------
Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
Co-authored-by: Nyx <nnyyxxxx@protonmail.com>
* Added support for installing podman
* removed llm comment
* Added podman to userguide
* Added support for install pythona and pip in case of missing. changed pip install to rootless install
* changed installing podman-compose with pip to packagemanager
* Update core/tabs/applications-setup/podman-setup.sh
Only install Podman if it is not installed already.
Co-authored-by: nyx <nnyyxxxx@protonmail.com>
* Update core/tabs/applications-setup/podman-setup.sh
Only install podman-compose if it is not installed already.
Co-authored-by: nyx <nnyyxxxx@protonmail.com>
* added podman-compose install option
* split podman install into podman and podman-compose
* Update core/tabs/applications-setup/podman-setup.sh
Co-authored-by: nyx <nnyyxxxx@protonmail.com>
* Update core/tabs/applications-setup/podman-setup.sh
Co-authored-by: nyx <nnyyxxxx@protonmail.com>
* Update core/tabs/applications-setup/podman-compose-setup.sh
Co-authored-by: nyx <nnyyxxxx@protonmail.com>
* Update core/tabs/applications-setup/podman-compose-setup.sh
Co-authored-by: nyx <nnyyxxxx@protonmail.com>
* Update core/tabs/applications-setup/podman-compose-setup.sh
Removed redundant quotes
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
* Update core/tabs/applications-setup/podman-setup.sh
Removed redundant quotes
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
---------
Co-authored-by: nyx <nnyyxxxx@protonmail.com>
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
* implement dynamic auto updating word wrapping functionality
* run fmt
* remove dupe space
* run fmt
* add remove comments back
* fix compilation errors
* run fmt
* run docgen
* run docgen
* fix conflicts
* run cargo xtask docgen
* use boolean rather than enum
---------
Co-authored-by: nyx <nnyyxxxx@users.noreply.github.com>