{"id":35670268,"url":"https://github.com/itsolutionsfactory/dotfiles","last_synced_at":"2026-01-05T19:01:16.352Z","repository":{"id":322769884,"uuid":"1058838757","full_name":"itsolutionsfactory/dotfiles","owner":"itsolutionsfactory","description":null,"archived":false,"fork":false,"pushed_at":"2025-12-05T07:14:04.000Z","size":211,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"seb","last_synced_at":"2025-12-08T15:15:24.145Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/itsolutionsfactory.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-17T16:06:05.000Z","updated_at":"2025-12-05T07:14:08.000Z","dependencies_parsed_at":null,"dependency_job_id":"a26839ec-dc97-4bd4-b47f-77bee87020af","html_url":"https://github.com/itsolutionsfactory/dotfiles","commit_stats":null,"previous_names":["itsolutionsfactory/dotfiles"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/itsolutionsfactory/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsolutionsfactory%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsolutionsfactory%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsolutionsfactory%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsolutionsfactory%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/itsolutionsfactory","download_url":"https://codeload.github.com/itsolutionsfactory/dotfiles/tar.gz/refs/heads/seb","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsolutionsfactory%2Fdotfiles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28218047,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2026-01-05T02:00:06.358Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-05T19:00:33.187Z","updated_at":"2026-01-05T19:01:16.346Z","avatar_url":"https://github.com/itsolutionsfactory.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ubuntu 24 LTS Dotfiles\n\nThis repository contains configuration files and setup scripts for Ubuntu 24 LTS. It uses GNU Stow for managing dotfiles and provides a streamlined way to set up a development environment.\n\n## Overview\n\nThis project aims to provide a consistent and reproducible setup for Ubuntu 24 LTS systems, focusing on development tools and system configurations. The setup is managed through GNU Stow, which creates symbolic links to the appropriate locations in the home directory.\n\n## Manual Setup Steps\n\nBefore running the dotfiles installation, you need to complete these manual steps:\n\n### User Creation and Administration\n\n1. **Create a new user:**\n   ```bash\n   sudo adduser [username]\n   ```\n\n2. **Give the user admin rights:**\n   ```bash\n   sudo usermod -aG sudo [username]\n   ```\n\n3. **Switch to the new user:**\n   ```bash\n   su - [username]\n   ```\n\n### Framework Laptop Firmware Update\n\nFor Framework Laptop 13 (AMD Ryzen™ AI 300 Series), update the firmware using Linux/LVFS:\n\n1. **Ensure charger is attached:**\n   - Connect your Framework Laptop to the charger before starting the update process\n   - Do not disconnect the charger during the update\n\n2. **Update firmware using fwupdmgr:**\n   ```bash\n   # Refresh the firmware database\n   fwupdmgr refresh --force\n   \n   # Check for available updates\n   fwupdmgr get-updates\n   \n   # Install all available firmware updates\n   fwupdmgr update\n   ```\n\n3. **Important Notes:**\n   - Ensure your laptop is connected to power during firmware updates\n   - Do not interrupt the update process\n   - The system may restart multiple times during the update\n   - Keep the laptop plugged in throughout the entire process\n   - Do not close the lid during the update process\n\n### System Preparation\n\nAfter completing the manual steps above:\n\n1. **Update the system:**\n   ```bash\n   sudo apt update \u0026\u0026 sudo apt upgrade -y\n   ```\n\n2. **Install essential tools:**\n   ```bash\n   sudo apt install -y git stow curl wget\n   ```\n\n3. **Clone this repository:**\n   ```bash\n   git clone \u003crepository-url\u003e\n   cd dotfiles\n   ```\n\n## Prerequisites\n\n- Ubuntu 24 LTS\n- GNU Stow\n- Basic development tools\n- Framework Laptop firmware updated (if applicable)\n\n## Project Structure\n\nEach directory in this repository represents a specific tool or configuration set. The structure is organized as follows:\n\n```\n.\n├── README.md           # This file\n├── CHANGELOG.md        # Project evolution and changes\n├── install.sh          # Main installation script\n├── test-all.sh         # Test script for all configurations\n├── test-docker.sh      # Script to test in Docker environment\n├── Dockerfile          # Docker configuration for testing\n├── docker-compose.yml  # Docker Compose configuration\n├── entrypoint.sh       # Docker entrypoint script\n├── backup/            # Directory for storing configuration backups\n│   └── .gitignore    # Ensures backup files are not tracked by git\n└── [tool_name]/        # Individual tool configurations\n    └── [config_files]  # Tool-specific configuration files\n```\n\n## Installation\n\n### Interactive Installation\n\nTo install configurations interactively:\n\n```bash\n./install.sh\n```\n\nThe installation process includes:\n1. Checking and installing required dependencies\n2. Managing existing `.config` directory:\n   - If `.config` exists, you'll be prompted to:\n     - Create a backup (recommended) - backups are stored in the `backup` directory\n     - Overwrite existing configuration\n     - Exit installation\n   - If `.config` doesn't exist, it will be created\n3. Installing selected configurations with proper backups\n\n### Update System Packages\n\nTo update all apt and snap packages:\n\n```bash\n./install.sh --update\n```\n\nThis will:\n- Update all APT package lists\n- Upgrade all installed APT packages\n- Perform a full system upgrade\n- Clean up unused packages\n- Refresh all snap packages\n\n### Automatic Installation\n\nTo install all configurations automatically in a specific order:\n\n```bash\n./install.sh --all\n```\n\nThis will install all modules in the following predefined order:\n1. **apt-packages** - System packages and WireGuard VPN\n2. **certs** - SSL/TLS certificates\n3. **zsh** - Enhanced shell configuration\n4. **neofetch** - System information display\n5. **snap-config** - Snap package management\n6. **vim** - Neovim text editor\n7. **kitty** - Terminal emulator\n8. **kubectl** - Kubernetes CLI tools\n9. **github-cli** - GitHub command-line interface\n10. **slack** - Slack desktop application\n11. **docker** - Docker configuration\n12. **nvm** - Node Version Manager\n13. **gitlab-cli** - GitLab command-line interface\n\n### Individual Module Installation\n\nTo install specific tool configurations:\n\n```bash\nstow [tool_name]\n```\n\nNote: Each module's installation script will:\n1. Check for existing configuration\n2. Create a backup if needed\n3. Install any missing dependencies\n4. Apply the configuration using stow\n\n## Testing\n\n### Local Testing\nTo test all configurations locally:\n\n```bash\n./test-all.sh\n```\n\n### Docker Testing\nTo test the configuration in a Docker environment:\n\n```bash\n./test-docker.sh\n```\n\nThis will:\n1. Build and start a Docker container\n2. Run the installation script\n3. Run all tests\n4. Provide an interactive ZSH shell for manual testing\n\n## Available Configurations\n\nThis project includes the following configuration modules:\n\n- **Kubectl** - Kubernetes command-line tool configuration\n- **ZSH** - Enhanced shell with plugins and themes\n- **Kitty** - Modern terminal emulator configuration\n- **Certificates** - SSL/TLS certificate management\n- **Neofetch** - System information display\n- **Snap** - Snap package configuration and management\n- **APT Packages** - System package management with WireGuard VPN\n- **Slack** - Slack desktop application\n- **Docker** - Docker Engine and Docker Compose installation\n- **NVM** - Node Version Manager for Node.js\n- **GitLab CLI** - GitLab command-line interface\n- **GitHub CLI** - GitHub command-line interface\n- **Vim/Neovim** - Text editor configuration\n\n### Kubectl Configuration\n\nThe kubectl configuration provides a powerful and user-friendly Kubernetes command-line experience with the following features:\n\n#### Core Features\n- kubectl installation and configuration\n- kubelogin for OIDC authentication\n- Automatic backup of existing configurations\n- Support for multiple clusters and contexts\n\n#### Components\n- **kubectl**: Kubernetes command-line tool\n- **kubelogin**: OIDC authentication plugin\n- **Configuration Management**:\n  - Multiple cluster support\n  - Context switching\n  - Namespace management\n  - OIDC authentication setup\n\n#### Key Features\n- **Cluster Management**:\n  - Easy context switching\n  - Namespace management\n  - Cluster information access\n  - Resource management\n\n- **Authentication**:\n  - OIDC integration\n  - Automatic token refresh\n  - Secure credential management\n\n- **Useful Aliases**:\n  - Short commands for common operations\n  - Context switching shortcuts\n  - Namespace management commands\n\n#### Installation\nTo install the kubectl configuration:\n\n```bash\ncd kubectl\n./install.sh\n```\n\nAfter installation:\n1. Verify the installation with `./test.sh`\n2. Configure your OIDC credentials if needed\n3. Test cluster access with `kubectl cluster-info`\n\n### ZSH Configuration\n\nThe ZSH configuration provides a powerful and user-friendly shell environment with the following features:\n\n#### Core Features\n- Oh My Zsh with Catppuccin Mocha theme\n- Hack Nerd Font for better icon support\n- Enhanced history management\n- Smart directory navigation\n- Advanced tab completion\n- FZF integration with preview support\n\n#### Plugins\n- **zsh-autosuggestions**: Suggests commands as you type based on history\n- **zsh-syntax-highlighting**: Highlights commands as you type\n- **zsh-z**: Smarter directory jumping (like `cd` but remembers your most used directories)\n- **zsh-history-substring-search**: Better history search with up/down arrows\n- **zsh-dirhistory**: Directory history navigation\n- **fzf**: Fuzzy finder for files, history, and more with preview support\n\n#### Key Features\n- **Directory Navigation**:\n  - Use `z` instead of `cd` for smarter directory jumping\n  - Use `d` and `f` to navigate directory history\n  - Use Ctrl+Left/Right to move word by word\n  - Enhanced directory history management\n\n- **Fuzzy Finding**:\n  - `Ctrl+T`: Fuzzy find files with preview\n  - `Ctrl+R`: Fuzzy find in history\n  - `Alt+C`: Fuzzy find directories\n  - Preview support for files and directories\n\n- **History Search**:\n  - Use up/down arrows to search through history\n  - Matches are highlighted as you type\n  - Enhanced history management with deduplication\n  - Extended history with timestamps\n\n- **Useful Aliases**:\n  - Common system commands (`ll`, `la`, `l`, etc.)\n  - Git shortcuts (`gs`, `ga`, `gc`, etc.)\n  - Directory navigation (`..`, `...`)\n  - FZF aliases with preview support\n  - System information commands\n\n- **Completion System**:\n  - Enhanced tab completion\n  - Menu selection for completions\n  - Case-insensitive matching\n  - Colored output for better visibility\n  - Grouped completions\n\n- **Development Tools**:\n  - SDKMAN integration for Java development\n  - Git integration with useful aliases\n  - Editor configuration\n  - Path management\n\n#### Installation\nTo install the ZSH configuration:\n\n```bash\ncd zsh\n./install.sh\n```\n\nAfter installation:\n1. Set your terminal emulator to use \"Hack Nerd Font\"\n2. Restart your terminal or run `source ~/.zshrc`\n\n### Kitty Terminal Configuration\n\nThe Kitty terminal configuration provides a modern and feature-rich terminal experience with:\n\n#### Features\n- **Catppuccin Integration**:\n  - Beautiful and consistent color scheme\n  - Optimized for readability\n  - Support for both light and dark modes\n\n#### Core Features\n- **Custom Key Bindings**:\n  - Efficient window and tab management\n  - Smart copy/paste operations\n  - Quick navigation shortcuts\n\n#### Advanced Features\n- **Window Management**:\n  - Multiple windows and tabs\n  - Split window layouts\n  - Window resizing and moving\n\n- **Performance**:\n  - GPU-accelerated rendering\n  - Efficient memory usage\n  - Fast startup time\n\n- **Additional Features**:\n  - Scrollback buffer with search\n  - Clipboard integration\n  - URL detection and handling\n  - Image display support\n  - Unicode and emoji support\n\n#### Installation\nTo install the Kitty configuration:\n\n```bash\ncd kitty\n./install.sh\n```\n\nAfter installation:\n1. Set Kitty as your default terminal emulator\n2. Configure your system to use Hack Nerd Font\n3. Restart Kitty to apply all changes\n\n### Certificate Configuration\n\nThe certificate configuration provides secure management of system and user certificates with the following features:\n\n#### Core Features\n- Root CA certificate installation\n- Certificate directory setup\n- Automatic certificate updates\n- Certificate verification\n- System trust store integration\n\n#### Components\n- **Certificate Management**:\n  - Root CA certificate installation\n  - Certificate directory structure\n  - Certificate verification setup\n  - Trust store configuration\n\n#### Key Features\n- **Certificate Installation**:\n  - Automatic installation in system trust store\n  - Proper permission management\n  - Secure certificate storage\n  - Backup of existing certificates\n\n- **System Integration**:\n  - Integration with system trust store\n  - Automatic certificate updates\n  - Proper file permissions\n  - Secure storage location\n\n#### Installation\nTo install the certificate configuration:\n\n```bash\ncd certs\n./install.sh\n```\n\nAfter installation:\n1. Verify the installation with `./test.sh`\n2. Check that the certificate is properly installed in the system trust store\n3. Verify that the certificate is valid and trusted\n\n### Neofetch Configuration\n\nThe Neofetch configuration provides a beautiful system information display with the following features:\n\n#### Core Features\n- Neofetch installation and configuration\n- Acenoster theme integration with custom icons\n- Hack Nerd Font support for enhanced visualization\n- System information display with ASCII art logo\n- Custom system specs display with improved layout\n\n#### Components\n- **Neofetch**: System information display tool\n- **Acenoster Theme**: Beautiful and informative display theme\n- **Hack Nerd Font**: Icon support for better visualization\n- **Custom Layout**: Enhanced system information organization\n\n#### Key Features\n- **System Information Display**:\n  - ASCII art logo of your distribution\n  - Detailed system specifications with custom icons\n  - Uptime information\n  - Battery status (for laptops)\n  - Memory and disk usage\n  - CPU and GPU information\n  - Package management information\n  - Desktop environment details\n\n- **Theme Integration**:\n  - Beautiful Acenoster theme\n  - Proper icon support with Nerd Fonts\n  - Clean and organized layout\n  - Consistent color scheme\n  - Custom information grouping\n\n#### Installation\nTo install the Neofetch configuration:\n\n```bash\ncd neofetch\n./install.sh\n```\n\nAfter installation:\n1. Verify the installation with `./test.sh`\n2. Open a new terminal to see the system information display\n3. Make sure your terminal is using Hack Nerd Font for proper icon display\n\n### Snap Configuration\n\nThe Snap configuration provides a streamlined package management solution with the following features:\n\n#### Core Features\n- Automatic snapd installation and configuration\n- Installation of essential applications\n- Installation of productivity tools\n- Installation of development tools\n- Installation of system utilities\n- GLPI agent configuration\n- Brave browser profile setup\n\n#### Components\n- **Communication Tools**:\n  - Signal\n  - Zoom\n  - Microsoft Teams\n\n- **Productivity**:\n  - OnlyOffice Desktop Editors\n  - ImageMagick\n  - XMind (Mind Mapping Tool)\n\n- **Development Tools**:\n  - Freelens (Kubernetes IDE)\n  - IntelliJ IDEA Ultimate\n  - DataGrip\n  - Bruno (API Testing Tool)\n  - Postman (API Development Platform)\n\n- **Entertainment**:\n  - Spotify\n\n- **System Utilities**:\n  - htop\n\n- **IT Management**:\n  - GLPI\n\n#### Key Features\n- **Package Management**:\n  - Automatic installation of snapd\n  - Bulk package installation\n  - Classic confinement support for development tools\n  - Update management\n\n- **System Integration**:\n  - GLPI agent configuration with server URL\n  - Brave browser profile management\n  - Automatic updates\n  - Security updates\n\n#### Installation\nTo install the Snap configuration:\n\n```bash\ncd snap-config\nsudo ./install.sh\n```\n\nAfter installation:\n1. Verify installed packages with `snap list`\n2. Check GLPI agent configuration\n3. Configure Brave profiles as needed\n4. Set up development tools\n\nNote: This module requires root privileges to run and is not supported in Docker environments.\n\n### APT Packages Configuration\n\nThe APT packages configuration provides essential system packages and network tools with the following features:\n\n#### Core Features\n- WireGuard VPN installation and configuration\n- Network utilities (net-tools) installation\n- ITSF-specific WireGuard server configuration\n- Interactive IP address assignment\n- NetworkManager integration\n\n#### Components\n- **WireGuard VPN**:\n  - Modern VPN protocol for secure connections\n  - ITSF server configuration (vpn-user.itsf.io:5544)\n  - Interactive IP address assignment (192.168.66.X/32)\n  - NetworkManager integration for easy management\n\n- **Network Tools**:\n  - netstat for network connections\n  - ifconfig for interface configuration\n  - route for routing table management\n  - arp for ARP table management\n\n#### Key Features\n- **VPN Configuration**:\n  - Automatic key generation and storage\n  - ITSF server pre-configuration\n  - Interactive IP assignment\n  - NetworkManager integration\n\n- **Network Management**:\n  - Essential network utilities\n  - System administration tools\n  - Network troubleshooting capabilities\n\n#### Installation\nTo install the APT packages configuration:\n\n```bash\ncd apt-packages\nsudo ./install.sh\n```\n\nAfter installation:\n1. Configure your WireGuard IP address when prompted\n2. Connect to VPN using NetworkManager or `nmcli connection up itsf`\n3. Test network tools with `netstat -tuln`, `ifconfig`, etc.\n\nNote: This module requires root privileges to run.\n\n### Docker Configuration\n\nThe Docker configuration provides complete Docker Engine installation and setup with the following features:\n\n#### Core Features\n- Docker Engine installation from official Docker repository\n- Docker CLI, containerd, and Docker Compose installation\n- Automatic repository setup with GPG key verification\n- Docker daemon management and auto-start configuration\n- Comprehensive installation verification\n\n#### Components\n- **Docker Engine**: Container runtime and management\n- **Docker CLI**: Command-line interface\n- **containerd**: Container runtime\n- **Docker Compose**: Multi-container application management\n- **Docker Buildx**: Extended build capabilities\n\n#### Key Features\n- **Installation Process**:\n  - Official Docker repository setup\n  - GPG key verification\n  - Automatic dependency resolution\n  - Service configuration\n\n- **System Integration**:\n  - Docker daemon auto-start\n  - User group configuration\n  - Service management\n  - Network configuration\n\n#### Installation\nTo install Docker:\n\n```bash\ncd docker\nsudo ./install.sh\n```\n\nAfter installation:\n1. Add your user to the docker group: `sudo usermod -aG docker $USER`\n2. Log out and log back in\n3. Verify with `docker run hello-world`\n\nNote: This module requires root privileges to run.\n\n### NVM Configuration\n\nThe NVM configuration provides Node Version Manager installation and Node.js setup with the following features:\n\n#### Core Features\n- NVM installation from official repository\n- Automatic shell configuration (zsh/bash)\n- Node.js LTS version installation\n- Automatic default version setup\n- JFrog Artifactory npm registry configuration\n\n#### Components\n- **NVM**: Node Version Manager (v0.40.3)\n- **Node.js**: Latest LTS version\n- **npm**: Node Package Manager\n- **.npmrc**: npm configuration for JFrog Artifactory\n\n#### Key Features\n- **Version Management**:\n  - Multiple Node.js version support\n  - Easy version switching\n  - Default version configuration\n  - LTS version installation\n\n- **Configuration**:\n  - Automatic shell integration\n  - JFrog Artifactory registry setup\n  - XDG_CONFIG_HOME support\n  - Environment variable management\n\n#### Installation\nTo install NVM and Node.js:\n\n```bash\ncd nvm\n./install.sh\n```\n\nAfter installation:\n1. Reload your shell: `source ~/.zshrc` or `source ~/.bashrc`\n2. Verify with `nvm --version` and `node --version`\n3. Check npm registry with `npm config get registry`\n\n### Slack Configuration\n\nThe Slack configuration provides direct installation of the Slack desktop application with the following features:\n\n#### Core Features\n- Direct .deb package download and installation\n- Automatic dependency resolution\n- Desktop integration\n- Version verification and testing\n\n#### Components\n- **Slack Desktop Application**:\n  - Latest version (4.36.130) installation\n  - Desktop file creation for application menu\n  - System integration\n  - Automatic updates support\n\n#### Key Features\n- **Installation Process**:\n  - Direct .deb package download\n  - Automatic dependency resolution\n  - Desktop integration\n  - Version verification\n\n- **System Integration**:\n  - Application menu integration\n  - Desktop file creation\n  - Proper permissions setup\n  - Update management\n\n#### Installation\nTo install the Slack configuration:\n\n```bash\ncd slack\nsudo ./install.sh\n```\n\nAfter installation:\n1. Launch Slack with `slack` command\n2. Sign in to your workspace\n3. Configure notifications and preferences\n\nNote: This module requires root privileges to run.\n\n### GitLab CLI Configuration\n\nThe GitLab CLI configuration provides command-line access to GitLab with the following features:\n\n#### Core Features\n- GitLab CLI (glab) installation\n- SteelHome GitLab instance pre-configuration\n- Authentication setup guidance\n- Command-line GitLab integration\n\n#### Components\n- **GitLab CLI (glab)**:\n  - Command-line GitLab access\n  - Issue and merge request management\n  - CI/CD pipeline management\n  - Repository operations\n\n#### Key Features\n- **Pre-configured Instance**:\n  - SteelHome GitLab instance (https://gitlab.steelhome.internal/)\n  - Ready-to-use configuration\n  - Authentication guidance\n\n- **GitLab Operations**:\n  - Issue management\n  - Merge request operations\n  - Pipeline monitoring\n  - Repository management\n\n#### Installation\nTo install the GitLab CLI configuration:\n\n```bash\ncd gitlab-cli\n./install.sh\n```\n\nAfter installation:\n1. Run `glab auth login` to authenticate\n2. Test with `glab issue list` or `glab mr list`\n3. Configure additional settings as needed\n\n### GitHub CLI Configuration\n\nThe GitHub CLI configuration provides command-line access to GitHub with the following features:\n\n#### Core Features\n- GitHub CLI (gh) installation and configuration\n- General configuration setup\n- Authentication guidance\n- Command-line GitHub integration\n\n#### Components\n- **GitHub CLI (gh)**:\n  - Command-line GitHub access\n  - Repository management\n  - Issue and pull request operations\n  - GitHub Actions integration\n\n#### Key Features\n- **Configuration Management**:\n  - General GitHub CLI settings\n  - User-specific configuration\n  - Authentication setup\n\n- **GitHub Operations**:\n  - Repository cloning and management\n  - Issue and PR operations\n  - GitHub Actions workflow management\n  - Code review tools\n\n#### Installation\nTo install the GitHub CLI configuration:\n\n```bash\ncd github-cli\n./install.sh\n```\n\nAfter installation:\n1. Run `gh auth login` to authenticate\n2. Create your own `hosts.yml` file for personal settings\n3. Test with `gh repo list` or `gh issue list`\n\n### Vim/Neovim Configuration\n\nThe Vim/Neovim configuration provides a modern and feature-rich editing experience with the following features:\n\n#### Core Features\n- Modern Neovim configuration using Lua\n- Plugin management with lazy.nvim\n- Beautiful Catppuccin theme integration\n- Smart code completion\n- Snippet support\n- File navigation and fuzzy finding\n- Git integration\n- Status line and tab visualization\n\n#### Components\n- **Plugin Management**:\n  - lazy.nvim for efficient plugin loading\n  - Automatic plugin installation\n  - Dependency management\n  - Version control\n\n- **Completion System**:\n  - Smart code completion\n  - Snippet support with luasnip\n  - Buffer and path completion\n  - Beautiful completion menu with icons\n\n- **File Management**:\n  - nvim-tree for file browsing\n  - Telescope for fuzzy finding\n  - Buffer management with bufferline\n  - Tab visualization\n\n#### Key Features\n- **Editor Experience**:\n  - Modern Lua configuration\n  - Beautiful Catppuccin theme\n  - Smart indentation\n  - Line numbers and relative numbers\n  - Mouse support\n  - Clipboard integration\n\n- **Navigation**:\n  - File explorer with nvim-tree\n  - Fuzzy finding with Telescope\n  - Buffer navigation\n  - Tab management\n  - Smart completion\n\n- **Visual Enhancements**:\n  - Status line with lualine\n  - Tab visualization with bufferline\n  - Syntax highlighting with treesitter\n  - Git integration with gitsigns\n\n#### Installation\nTo install the Vim/Neovim configuration:\n\n```bash\ncd vim\n./install.sh\n```\n\nAfter installation:\n1. Open Neovim with `nvim`\n2. Wait for plugins to install\n3. Restart Neovim to apply all changes\n\nNote: This configuration requires Neovim 0.9.5 or higher.\n\n## Contributing\n\nFeel free to submit issues and enhancement requests.\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details. ","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitsolutionsfactory%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fitsolutionsfactory%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitsolutionsfactory%2Fdotfiles/lists"}