Commit Graph

149 Commits

Author SHA1 Message Date
D7OM
5729252e47
Merge aa11f2756d into ab7a67087d 2024-11-18 00:19:27 +05:30
Jeevitha Kannan K S
ab7a67087d
refact: rust fixes and optimizations (#933)
* 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>
2024-11-17 12:24:54 -06:00
D7OM
17d486818e
Update core/tabs/applications-setup/browsers/zen-browser.sh
Co-authored-by: Jeevitha Kannan K S <ksjeevithakannan123@gmail.com>
2024-11-12 18:22:19 +03:00
d7omdev
462917c5ea Zen Browser installation
- Added Zen Browser to Web Browsers tab.
2024-11-12 15:13:32 +03:00
nyx
7147ed93e9
implement a root check menu (#927)
* 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>
2024-11-11 10:27:30 -06:00
Jeevitha Kannan K S
c4ad5a9471
fix: headers not installing (#915) 2024-11-11 10:22:53 -06:00
Jeevitha Kannan K S
e93eca54a5
add aarch64 (#910) 2024-11-11 10:13:56 -06:00
Jeevitha Kannan K S
d8607487a6
refact: auto-cpufreq (#908)
* rework: auto-cpufreq

* Revert changes to userguide auto-cpufreq
2024-11-11 10:13:19 -06:00
Angaddeep Singh
f400eee4b1
fix(fedora): Recent syntax changes with DNF5 (#907)
* 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>
2024-11-11 10:12:16 -06:00
Lennart Pieperjohanns
2f773e2c7d
fix(create-bootable-usb.sh) confirmation prompt (#902)
* fix create-bootable-usb.sh confirmation prompt

* Update core/tabs/utils/create-bootable-usb.sh

Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>

---------

Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
2024-11-11 10:09:12 -06:00
Infinite State
17ff412595
fix(system-cleanup): failing with no orphan packages on arch (#882)
* Add extra check

* Update core/tabs/system-setup/system-cleanup.sh

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>

---------

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
2024-11-08 09:07:35 -06:00
Infinite State
95cfbe8920
fix: Autocpu-freq script not detecting battery on laptops (#877)
* Add refined check

* remove an unneccessary comment

Co-authored-by: nyx <nnyyxxxx@protonmail.com>

---------

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
Co-authored-by: nyx <nnyyxxxx@protonmail.com>
2024-11-08 09:06:47 -06:00
Angaddeep Singh
0d4688d53e
Update multimedia-codecs.sh (#863) 2024-11-08 09:05:45 -06:00
Angaddeep Singh
2badbe9ead
Delist Firewall setup on systems with Firewalld installed, such as fedora (#862)
* fedora commit

* Update core/tabs/security/tab_data.toml

Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>

---------

Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
2024-11-08 09:05:16 -06:00
Jeevitha Kannan K S
a0630e0a68
fix: Debian && popos gaming deps (#859)
* fix: debian gaming deps

* fix: pop-os gaming dependency issue

* Update gaming-setup.sh

* fix: shellcheck warning , formatting
2024-11-08 09:04:42 -06:00
Jeevitha Kannan K S
da534df296
refactor: system-update.sh (#843) 2024-11-08 09:03:41 -06:00
Phoenix Mark Hale
f5f38243f0
feat: tor browser installation (#842)
* 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>
2024-11-07 13:49:35 -06:00
Harsh Vyapari
51e2cbd607
feat: whatsapp desktop app (#838)
* 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>
2024-11-07 13:26:57 -06:00
Vorthas
b36a7df11c
feat: printer driver installation (#837)
* 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>
2024-11-07 13:23:13 -06:00
Jeevitha Kannan K S
9f0863729f
feat: Add automation based on config file (#836)
* 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>
2024-11-07 13:21:37 -06:00
Sebastian
629b1290be
Added required dependencies for Arch (#824)
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.
2024-11-07 13:07:49 -06:00
solomoncyj
cb6e0f9cb6
Add OpenSUSE to list of linutil added to package managers (#820)
* Add OpenSUSE to list of linutil added to package managers

* Update README.md

* set up install script

* Update linutil-installer.sh

* Update linutil-installer.sh

* fixes

* Update linutil-installer.sh

* Update linutil-installer.sh

* Update linutil-installer.sh

* Update linutil-installer.sh

* Update README.md

* Update linutil-installer.sh

* Update README.md

* Update linutil-installer.sh

* Apply suggestions from code review

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>

* Update core/tabs/applications-setup/linutil-installer.sh

Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>

* Update linutil-installer.sh

* Update linutil-installer.sh

* Update README.md

---------

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
Co-authored-by: Chris Titus <contact@christitus.com>
2024-11-07 13:07:28 -06:00
Jeevitha Kannan K S
159d2cb00f
Update mybash-setup.sh (#819) 2024-11-07 13:05:23 -06:00
Jeevitha Kannan K S
9dbb787ac5
Update ollama.sh (#815)
Co-authored-by: Chris Titus <contact@christitus.com>
2024-11-07 13:04:53 -06:00
Jeevitha Kannan K S
1e39d967c5
feat: Alpine linux support (#814)
* Add basic apk to scripts

* Add common service script

* Fix alpine bugs

* Add flatpak installations

* chore: update scripts, add common-service-script to shellcheckrc
2024-11-07 13:03:21 -06:00
Jeevitha Kannan K S
e31622480b
feat: Add Arch virtualization setup script (#813)
* Add Arch virtualization setup script

* Replace hardcoded pacman

* Update core/tabs/system-setup/arch/virtualization.sh

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>

* Update virtualization.sh

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>

* Update core/tabs/system-setup/arch/virtualization.sh

Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>

* chore: formatting

---------

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
2024-11-07 13:01:50 -06:00
Liam
980365f7c9
refactor: Re-export ego-tree dependency from linutil core (#811)
* refactor: Export ego-tree from linutil core, rather than workspace

* refactor: Improve code formatting

---------

Co-authored-by: Chris Titus <contact@christitus.com>
2024-11-07 13:00:34 -06:00
Jeevitha Kannan K S
98e2f83f43
feat: Add arch nvidia installation script (#797)
* Add arch nvidia script

* Update model fetching

* chore: formatting, git as dep

---------

Co-authored-by: Chris Titus <contact@christitus.com>
2024-11-06 16:28:36 -06:00
Adam Perkowski
9d1dc35f43
📃 feat: Linux Neptune (Valve's kernel for SteamDeck) installation (#683)
* Linux Neptune installation script

* fixed some stuff that's not supposed to be here

Co-authored-by: nnyyxxxx <nnyyxxxx@users.noreply.github.com>

* fix repo check

* added audio patches

https://github.com/ChrisTitusTech/linutil/issues/269#issuecomment-2380379049

* add linux neptune to docs (userguide)

* steamdeck precondition

Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>

* precondition fix

* another precondition fix

---------

Co-authored-by: nnyyxxxx <nnyyxxxx@users.noreply.github.com>
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
Co-authored-by: Chris Titus <contact@christitus.com>
2024-11-06 16:20:16 -06:00
Jeevitha Kannan K S
1234edd466
Change numlock description (#790) 2024-11-06 16:11:31 -06:00
leventbesli
d1a1812709
feat: btrfs assistant & grub-btrfs (#789)
* 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>
2024-11-06 16:05:26 -06:00
Albert de Palo Hardvendel
f2a1766289
Added support for installing podman (#787)
* 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>
2024-11-06 16:03:50 -06:00
Liam
6728e7ee9b
refact: Handle temporary directories entirely within core (#754)
* refactor: Handle temporary directories entirely within core

* fix (xtask): Handle modified tablist struct

* refactor (xtask): Apply Clippy suggested changes

* Fix size_bypass

---------

Co-authored-by: Chris Titus <contact@christitus.com>
2024-11-06 15:28:17 -06:00
nev-al
e463037e69
fix(dwmtitus-setup): dm picking (#823)
Co-authored-by: usr <you@example.com>
2024-11-06 12:04:02 -06:00
nyx
565f507190
implement word wrapping functionality (#755)
* 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>
2024-11-06 09:40:55 -06:00
Jeevitha Kannan K S
88d6fd12a2
fix: flatpak path (#916) 2024-11-05 16:42:40 -06:00
Jeevitha Kannan K S
67b749942c
refact: multi-selection to per cmd (#719)
* Add per cmd multi-selection

* Add colors for nm cmds

* fix: conflicts
2024-11-05 13:59:57 -06:00
Sebastian
48e8bab12c
Add greeter install for lightdm during dwm-titus setup (#831)
* Add greeter install for lightdm

* Update core/tabs/applications-setup/dwmtitus-setup.sh

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>

---------

Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
2024-11-05 13:58:21 -06:00
Jeevitha Kannan K S
c20c6e2f38
Add missing gaming deps (#761) 2024-11-05 13:41:53 -06:00
JEEVITHA KANNAN K S
951cdc2d4c
feat: jetbrains-toolbox (#893)
* feat: jetbrains-toolbox

* fix: formatting and shebang

* Forgot the docs
2024-11-01 14:29:01 -05:00
JEEVITHA KANNAN K S
d4eacaeab3
refact fix: Flatpak (#705)
* Fix flatpak paths

* Refact office suites flatpak

* Merge flatpak_app_exists and command_exists

* Fix binary path bug

* Add apk pgm

---------

Co-authored-by: Chris Titus <contact@christitus.com>
2024-11-01 12:25:11 -05:00
JEEVITHA KANNAN K S
9cc57330dc
fix: remove unnecessary arch update (#897) 2024-11-01 12:12:32 -05:00
JEEVITHA KANNAN K S
7e13faae8a
Use flatpak (#812) 2024-10-31 15:21:01 -05:00
Adam Perkowski
17d62302b3
fix: ILoveCandy in pacman conf (#892) 2024-10-31 15:18:18 -05:00
Adam Perkowski
29f218f57a
feat(arch-setup): enable colors and the easter egg in pacman (#890) 2024-10-31 14:48:51 -05:00
JEEVITHA KANNAN K S
dd10565d8f
Fix btrfs issue (#728) 2024-10-31 14:47:24 -05:00
leventbesli
2837f9291a
fix(browsers): vivaldi setup (#718)
* Fixed Vivaldi Setup

Lynx install script replaced with Vivaldi.

* zypper and pacman added to vivaldi.sh

- zypper and pacman added.
- format fixes.

* Delete Cargo.lock

* Revert "Delete Cargo.lock"

This reverts commit 0b0f173c9e.

* xdg-utils removed from script

* revert cargo.lock

* update cargo.lock

* update cargo.lock

* Update Cargo.lock

Co-authored-by: Nyx <144965845+nnyyxxxx@users.noreply.github.com>

* Update Cargo.lock

Co-authored-by: Nyx <144965845+nnyyxxxx@users.noreply.github.com>

---------

Co-authored-by: Nyx <144965845+nnyyxxxx@users.noreply.github.com>
2024-10-31 14:19:22 -05:00
Angaddeep Singh
4577df4dea
feat(docker-setup): fedora support (#707)
* Docker Setup for Fedora

* Update core/tabs/applications-setup/docker-setup.sh

Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>

---------

Co-authored-by: JEEVITHA KANNAN K S <ksjeevithakannan123@gmail.com>
2024-10-31 14:14:51 -05:00
JEEVITHA KANNAN K S
ad678b2d4b
Fix common script paths (#717) 2024-10-31 14:07:20 -05:00
Angelos Giannourakos
f4c20c80f0
fix(nala): remove autoclean from system-cleanup.sh (#697)
* Removing autoclean for apt | nala

Removing autoclean command for apt | nala because there is no such command on debian especially for nala

* Update system-cleanup.sh

* Update system-cleanup.sh

* Update system-cleanup.sh
2024-10-31 14:02:25 -05:00