Compare commits

..

210 Commits

Author SHA1 Message Date
Hykilpikonna 673d995618 [U] Release 1.4.4 2022-11-15 23:34:50 -05:00
Hykilpikonna 1097435501 [U] Update changelog 2022-11-15 23:30:02 -05:00
Hykilpikonna 78f4f061f4 [PR] dylanaraps/neofetch#2234 from medanisjbara - Add dwl to wayland window managers
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2234
Thanks to @medanisjbara

Co-authored-by: Med Anis Jbara <74317212+medanisjbara@users.noreply.github.com>
2022-11-14 09:31:53 -05:00
Med Anis Jbara f909b3c3b8 Add dwl to wayland window managers 2022-11-14 12:43:44 +01:00
Hykilpikonna b4944599c5 [PR] dylanaraps/neofetch#2232 from tmiland - Fix display of
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2232
Thanks to @tmiland

Co-authored-by: Tommy Miland <kontakt@tmiland.com>
2022-11-13 12:24:14 -05:00
Hykilpikonna 21cffcc4f4 [PR] dylanaraps/neofetch#2233 from JackGannonUK - Add Enso Support
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2233
Thanks to @JackGannonUK

Co-authored-by: Jack Gannon <jack@uquinix.com>
2022-11-13 12:02:37 -05:00
Jack Gannon 8d9d4407a3 syntax 2022-11-13 16:18:30 +00:00
Jack Gannon 0e93f5484f enso distro addition 2022-11-13 16:06:20 +00:00
Tommy Miland f9c7c570a1 Fix display of $XDG_SESSION_TYPE
- Fixed display $XDG_SESSION_TYPE
2022-11-11 12:44:23 +01:00
Hykilpikonna 6f443a23a6 [U] Update readme 2022-11-10 22:25:53 -05:00
Hykilpikonna ed3bb65824 [F] Fix random count being negative when screen is too small 2022-11-10 22:24:38 -05:00
Hykilpikonna 3770e58e66 Merge branch 'master' of github.com:hykilpikonna/hyfetch 2022-11-10 22:21:43 -05:00
Hykilpikonna e0d7c4885a [F] Fix issues cause by terminal size too small 2022-11-10 22:21:40 -05:00
Hykilpikonna e5a7eb2d24 [+] Add install script 2022-11-06 11:46:16 -05:00
Hykilpikonna ece7cb1f8f [+] Add instructions to install nightly version 2022-11-05 00:16:57 -04:00
Azalea (on HyDEV-Daisy) 43aecc70fe [U] Changelog 2022-11-04 03:35:03 -04:00
Hykilpikonna f93315a7ad [PR] #34 from saeziae: fix some problem in detecting cpu such as loongson 2022-11-03 23:45:36 -04:00
Azalea (on HyDEV-Daisy) cde4914c19 [PR] dylanaraps/neofetch#2225 from TriMoon - Enhancing --memory_unit functionality
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2225
Thanks to @TriMoon

Co-authored-by: ©TriMoon™ <TriMoon@users.noreply.github.com>
2022-11-03 23:39:40 -04:00
Azalea (on HyDEV-Daisy) e8c7266671 [F] Fix #35 python 3.11 compatibility 2022-11-03 23:35:21 -04:00
saeziae bce73f6836 fix some problem in detecting cpu such as loongson 2022-11-03 23:50:58 +08:00
Hykilpikonna 5012c996f2 [O] Fix shellcheck warnings 2022-11-01 14:26:01 -04:00
Hykilpikonna c00568d413 [F] Fix memory progress bar only displaying when unit is mib 2022-11-01 14:25:52 -04:00
Hykilpikonna d56f083dbc [PR] dylanaraps/neofetch#2228 from netsecninja - Corrected spacing issue on LMDE logo
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2228
Thanks to @netsecninja

Co-authored-by: netsecninja <netsecninja@users.noreply.github.com>
2022-11-01 12:58:03 -04:00
netsecninja b7f6e4f306 Corrected spacing issue on LMDE logo
The top line of the LMDE logo was missing the correct spacing to properly align with the rest of the logo
2022-11-01 09:19:12 -06:00
©TriMoon™ 619c9d2224 Update neofetch
Making calculations general purpose.
2022-10-31 14:29:18 +03:00
©TriMoon™ d57463b0d3 Update neofetch
Separating calculations as shown in https://github.com/dylanaraps/neofetch/pull/2225#issuecomment-1296882170
2022-10-31 14:15:44 +03:00
©TriMoon™ ca13eb22e7 Update neofetch
Fixing shellcheck warnings mentioned in https://github.com/dylanaraps/neofetch/pull/2225#issuecomment-1296876166
2022-10-31 14:00:55 +03:00
©TriMoon™ a52c49380d Update neofetch
Added `--memory_precision` flag, default=`2`.
2022-10-31 13:52:51 +03:00
©TriMoon™ ba2001cc64 Update neofetch
Added `tib` to usage output of `-memory_unit`.
2022-10-31 13:18:21 +03:00
Hykilpikonna e07895c614 [PR] dylanaraps/neofetch#2225 from TriMoon - Enhancing --memory_unit functionality
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2225
Thanks to @TriMoon

Co-authored-by: ©TriMoon™ <TriMoon@users.noreply.github.com>
2022-10-31 06:15:01 -04:00
Hykilpikonna 3d6427b936 [PR] dylanaraps/neofetch#2225 from TriMoon - Enhancing --memory_unit functionality
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2225
Thanks to @TriMoon

Co-authored-by: ©TriMoon™ <TriMoon@users.noreply.github.com>
2022-10-31 06:14:35 -04:00
©TriMoon™ 943c3025e5 Update neofetch
added `tib` to description of `memory_unit`.
2022-10-31 13:14:29 +03:00
©TriMoon™ 67cf02c964 Enhancing --memory_unit functionality
Improving https://github.com/dylanaraps/neofetch/commit/0435dcd0cd44bb22afa9b986f15742cc05de7b20
- Implementing https://github.com/dylanaraps/neofetch/issues/1170#issuecomment-455576889 to avoid awk usage.
- Adding ability to configure precision of output using `mem_precision` which defaults to `2`.
- Added `tib` to accommodate TiB mentioned in https://github.com/dylanaraps/neofetch/issues/1170#issuecomment-894705941
2022-10-31 13:03:10 +03:00
Hykilpikonna 8616ff0504 [U] Release 1.4.3 2022-10-30 13:24:53 -04:00
Hykilpikonna dde9443ec7 [U] Update changelog 2022-10-30 13:23:16 -04:00
Hykilpikonna b6f0a80bb1 [F] Specify /usr/bin/env bash to prevent ld signature check on iOS 2022-10-30 13:21:21 -04:00
Hykilpikonna a758b4ba04 [U] Update changelog 2022-10-30 13:16:30 -04:00
Hykilpikonna 700f651378 [F] Fix cols coloring reset for bash 3.2
Introduce by #24
2022-10-30 13:11:27 -04:00
Hykilpikonna 77614b635f Merge branch 'master' of github.com:hykilpikonna/hyfetch 2022-10-30 12:35:54 -04:00
Hykilpikonna fdd3ef970d [PR] dylanaraps/neofetch#2222 from AwkwardTeenageBoy - VanillaOS neofetch
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2222
Thanks to @AwkwardTeenageBoy

Co-authored-by: Twinkie <105467171+AwkwardTeenageBoy@users.noreply.github.com>
2022-10-30 12:35:36 -04:00
Hykilpikonna e49ed7d080 [PR] #32 from ngkz: Add gender presentation pride flags 2022-10-30 12:25:47 -04:00
Kazutoshi Noguchi a1149ab68b add GNC, femboy and tomboy flags 2022-10-30 18:50:41 +09:00
Twinkie 6390ed10c4 Update neofetch 2022-10-27 12:20:39 -07:00
Twinkie 810b380e47 Update neofetch 2022-10-27 12:17:20 -07:00
Twinkie 1274e977c3 Update neofetch 2022-10-27 12:07:51 -07:00
Twinkie 38fb44cb8e Added Vanilla Logo and Support for Vanilla 2022-10-27 10:15:52 -07:00
Hykilpikonna 90c94044f4 [PR] #31 from yxnan: Check if the output is a tty 2022-10-27 10:39:22 -04:00
yxnan 5bf7fbf2b4 Add options for --stdout 2022-10-27 22:16:10 +08:00
yxnan 23a1b10467 Check if the output is a tty
The color code should not be emitted if the stdout is not a typical terminal, we add the check so there is no need to explictly specify `--stdout`
2022-10-27 00:27:23 +08:00
Hykilpikonna 0dae7ca3f9 [U] Update todo list 2022-10-25 03:27:23 -04:00
Hykilpikonna e23eb980d3 [U] Update screenshot 2022-10-25 03:19:52 -04:00
Azalea (on HyDEV-Daisy) 7171494e95 [F] Fix OSC timeout too short for ssh 2022-10-23 02:51:34 -04:00
Azalea (on HyDEV-Daisy) c00848fd79 [U] Update readme changelog 2022-10-23 02:26:55 -04:00
Azalea (on HyDEV-Daisy) 717ff369c0 [O] Optimize fore_back distro detection 2022-10-23 02:20:51 -04:00
Azalea (on HyDEV-Daisy) ff44ea6185 [+] Add more ubuntu variants with fore_back layout 2022-10-23 02:16:08 -04:00
Azalea (on HyDEV-Daisy) 969a7c668c [O] Dynamic prompt numbering 2022-10-23 02:12:05 -04:00
Azalea (on HyDEV-Daisy) bd5d76167e [F] Fix incorrect coloring when the first color isn't ${c1} 2022-10-23 02:06:45 -04:00
Azalea (on HyDEV-Daisy) f57ad70a20 [O] Clarify prompt 2022-10-23 01:51:42 -04:00
Azalea (on HyDEV-Daisy) a3da5b6c59 [F] Fix lightness logic 2022-10-23 01:51:12 -04:00
Azalea (on HyDEV-Daisy) 3cbb20c899 [F] Refactor lightness logic 2022-10-23 01:37:48 -04:00
Azalea (on HyDEV-Daisy) 0a9ac6a351 [U] Detect background and color mode in main 2022-10-23 01:37:23 -04:00
Azalea (on HyDEV-Daisy) 75ed187e72 [+] termenv: Detect system when detecting ansi mode 2022-10-23 01:36:09 -04:00
Azalea (on HyDEV-Daisy) cd4849f0b8 [F] Fix unhashable type error for RGB 2022-10-23 01:35:54 -04:00
Azalea (on HyDEV-Daisy) 0960024e71 [+] termenv: Translate golang code into python 2022-10-22 19:52:05 -04:00
Azalea (on HyDEV-Daisy) 7411ec87e7 [F] Fix relative import 2022-10-22 18:46:42 -04:00
Azalea (on HyDEV-Daisy) d8f49a2ea2 [+] Detect if a color is light 2022-10-22 18:42:52 -04:00
Azalea (on HyDEV-Daisy) 101d798c0a [O] Refactor HSL and RGB 2022-10-22 18:42:06 -04:00
Azalea (on HyDEV-Daisy) 330de73df3 [M] Rename osc -> termenv 2022-10-22 18:26:00 -04:00
Azalea (on HyDEV-Daisy) 4e11d21401 [+] osc: parse background color 2022-10-22 18:22:51 -04:00
Azalea (on HyDEV-Daisy) cb5635908f [-] osc: remove commented code 2022-10-22 17:53:00 -04:00
Azalea (on HyDEV-Daisy) fbbe3b1c93 [+] Send/read osc responses 2022-10-22 17:52:36 -04:00
Azalea 774598fcb3 [PR] dylanaraps/neofetch#2215 from VitoFe - Add garuda_small, sort _small variants
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2215
Thanks to @VitoFe

Co-authored-by: VitoFe <vito-7@hotmail.it>
2022-10-21 14:42:22 -04:00
Azalea 8abfb0c876 [PR] dylanaraps/neofetch#2213 from EnterTheVoid-x86 - Add Cobalt Linux logo
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2213
Thanks to @EnterTheVoid-x86

Co-authored-by: etvx86 <64978924+EnterTheVoid-x86@users.noreply.github.com>
2022-10-21 14:25:26 -04:00
Hykilpikonna 7a6628d387 [PR] #28 from alyxferrari: Surround macOS build number in parentheses 2022-10-21 13:02:36 +08:00
Azalea (on HyDEV-Daisy) 09185e5a41 [F] Fix light dark detection 2022-10-19 23:48:41 -04:00
Alyx Ferrari 6efd890526 Surround macOS build number in parentheses 2022-10-19 10:25:08 -04:00
VitoFe 05cf31fc14 Add garuda_small, sort _small variants
Added garuda_small
Sorted the _small variants note distro list alphabetically, just like the normal list (for consistency)
2022-10-15 17:55:11 +00:00
Hykilpikonna 220b528c72 [PR] #27 from alyxferrari: arch-linux-readme-fix
Update Arch Linux installation docs
2022-10-14 13:25:37 -04:00
Alyx Ferrari 038d976b39 Update Arch Linux installation docs 2022-10-14 13:23:16 -04:00
Hykilpikonna 60609dfb7e [PR] #26 from alyxferrari: Fix typo
Change 'look' to 'looks' in main.py
2022-10-14 13:21:46 -04:00
Alyx Ferrari 610e06fcd9 Change 'look' to 'looks' in main.py 2022-10-14 13:11:05 -04:00
etvx86 49003c859f add cobalt in help message 2022-10-11 13:44:16 -04:00
etvx86 10bf2fce08 Add Cobalt Linux logo
Hopefully this gets merged -

Cobalt Linux is a distribution I'm currently working on, which will come with window managers and have the goal of customization. It also has a goal of "Arch Linux made easy".
2022-10-11 13:38:11 -04:00
Hykilpikonna 8a091f4d01 [PR] #25 from ben5vik: add unlabeled flag 2022-10-10 10:06:31 -04:00
Ben 10b331052d Update presets.py 2022-10-10 15:45:20 +02:00
Ben 8751faab2e Adding unlabeled 2022-10-10 15:40:14 +02:00
Azalea (on HyDEV-Daisy) 0a1e97cd92 [U] Release 1.4.2 2022-10-04 13:10:37 -04:00
Azalea (on HyDEV-Daisy) 7e59c362be [F] Fix deploy script 2022-10-04 13:10:00 -04:00
Azalea (on HyDEV-Daisy) 3e8c103479 [U] Update changelog 2022-10-04 13:07:52 -04:00
Azalea (on HyDEV-Daisy) 5be5aa1b51 [O] Show memory percentage, speed shorthand, refresh rate by default 2022-10-04 13:03:32 -04:00
Azalea (on HyDEV-Daisy) 08f75415eb [F] Fix neofetch permissions (+x) 2022-10-04 12:44:02 -04:00
Azalea (on HyDEV-Daisy) 02b6e9d72d [PR] dylanaraps/neofetch#1706 from ravenclaw900 - Add DietPi support
Upstream PR: https://github.com/dylanaraps/neofetch/pull/1706
Thanks to @ravenclaw900

Co-Authored-By: ravenclaw900 <50060110+ravenclaw900@users.noreply.github.com>
2022-10-04 12:42:15 -04:00
Azalea (on HyDEV-Daisy) 59b9dc6e1a [PR] dylanaraps/neofetch#2196 from matt-fidd - Added for OmniOS illumos distribution
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2196
Thanks to @matt-fidd

Co-authored-by: matt <matt@fiddaman.net>
2022-10-04 12:31:15 -04:00
Azalea (on HyDEV-Daisy) 0f302eea60 [PR] dylanaraps/neofetch#2201 from FakeShell - add droidian to neofetch
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2201
Thanks to @FakeShell

Co-authored-by: Bardia Moshiri <fakeshell@bardia.tech>
2022-10-04 12:22:52 -04:00
Azalea (on HyDEV-Daisy) 7c7cba2346 Merge branch 'master' of github.com:hykilpikonna/hyfetch 2022-10-04 12:04:37 -04:00
Azalea (on HyDEV-Daisy) f989ec0d20 [PR] dylanaraps/neofetch#2210 from chaeya - Added ascii logo for hamonikr
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2210
Thanks to @chaeya

Co-authored-by: Kevin Kim <hckim@invesume.com>
2022-10-04 12:04:18 -04:00
Hykilpikonna e72fe4d934 [PR] #24 from OldWorldOrdr: Fix bash 5.2 column cut off issue 2022-10-04 11:57:54 -04:00
Kevin Kim 7f48e4cd43 Added ascii logo for hamonikr 2022-10-01 20:24:04 +09:00
OldWorldOrdr bc89c50427 Update neofetch 2022-09-30 06:34:19 -04:00
Hykilpikonna 7c93a0df1c [+] Progress bar test 2022-09-27 14:40:06 -04:00
Hykilpikonna 8b67e539b5 [U] Update changlog 2022-09-26 16:18:34 -04:00
Hykilpikonna 7c16e15cea [U] Update change log 2022-09-26 16:12:34 -04:00
Azalea (on HyDEV-Daisy) 79e0a8360b Merge branch 'master' of github.com:hykilpikonna/hyfetch 2022-09-26 09:16:30 -04:00
Azalea (on HyDEV-Daisy) d2347cefb1 [+] #22 Add tidal-hifi song detection 2022-09-26 09:16:18 -04:00
Hykilpikonna cda96dda4e [PR] #23 from stock-linux: Added Stock Linux logo 2022-09-26 09:11:32 -04:00
Skythrew 3dde4bcdef feat: added Stock Linux logo 2022-09-26 07:31:09 +02:00
Hykilpikonna 0811acab58 [F] Fix multiple CPU model detection for ARM
https://github.com/dylanaraps/neofetch/pull/2139
2022-09-20 13:20:32 -04:00
Hykilpikonna f14324ffce [U] Display memory in GiB by default 2022-09-20 11:50:07 -04:00
Hykilpikonna 1ba7b339c9 [-] Disable network display when network is not detected 2022-09-20 11:44:17 -04:00
Bardia Moshiri 8987b0b15f change droidian from half green to full green logo 2022-09-18 16:07:32 -04:00
Bardia Moshiri 4f12d97e40 add droidian to neofetch 2022-09-18 15:40:34 -04:00
matt c3beb21966 Add 'pkg list' package source 2022-09-15 17:24:08 +00:00
matt 078af21630 Fix solaris fqdn 2022-09-15 17:24:08 +00:00
matt 4e7724ecf8 Add illumos os support 2022-09-15 17:24:08 +00:00
matt 624bd97045 Fix uptime value in Solaris 2022-09-15 17:24:08 +00:00
matt 45ea478414 Added ascii art for OmniOS illumos distribution 2022-09-15 17:24:08 +00:00
Azalea (on HyDEV-Daisy) 9e001c530f Merge branch 'master' of github.com:hykilpikonna/hyfetch 2022-09-10 15:19:08 -04:00
Azalea (on HyDEV-Daisy) d850e4c91e [PR] dylanaraps/neofetch#2139 from saeziae - Fix support for ARM, RISC-V, LoongArch detection
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2139
Thanks to @saeziae

Co-authored-by: Estela Xu <i@estela.cn>
2022-09-10 15:18:49 -04:00
Hykilpikonna 376268f79e [PR] #21 from TheSudoer: Local install method and contributing note 2022-09-10 02:04:14 -04:00
Hykilpikonna b955a61ac5 [U] Update local install method and contributing note 2022-09-10 01:56:29 -04:00
C0UNTM31N c099c9e5f7 Update README.md 2022-09-10 00:17:54 -05:00
C0UNTM31N 7b62c80881 Fixed formatting 2022-09-10 00:15:33 -05:00
C0UNTM31N d6b33ae3e9 Merge branch 'master' of https://github.com/TheSudoer/hyfetch 2022-09-10 00:09:09 -05:00
C0UNTM31N 9da32dab4b Altered the deploy script and added build instructions 2022-09-10 00:05:08 -05:00
Azalea (on HyDEV-Daisy) cf0202fd7c Merge branch 'master' of github.com:hykilpikonna/hyfetch 2022-09-09 19:53:18 -04:00
Azalea (on HyDEV-Daisy) 8a01ce491b [PR] dylanaraps/neofetch#2192 from Skythrew - Stock Linux distro support
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2192
Thanks to @Skythrew

Co-authored-by: Skythrew <76571984+Skythrew@users.noreply.github.com>
2022-09-09 19:53:08 -04:00
saeziae fd2248daec merge riscv and loongarch to others 2022-09-08 22:55:50 +08:00
Hykilpikonna ab23dc3c2b Merge pull request #20 from TheSudoer/master 2022-09-07 10:52:25 -04:00
C0UNTM31N 58a82c2b5e Fix GhostBSD commit being atributed to the wrong person, was previously attributed to dylanaraps as a commit to neofetch. 2022-09-06 13:18:30 -05:00
Azalea (on HyDEV-Daisy) d0fda1ef0d [U] Deploy tool: Push tag 2022-09-06 12:20:37 -04:00
Azalea (on HyDEV-Daisy) 82c37a28d3 [F] fix deploy script path 2022-09-06 12:18:58 -04:00
Azalea (on HyDEV-Daisy) b7c8937c4e [U] Release 1.4.1 2022-09-06 12:17:46 -04:00
Azalea (on HyDEV-Daisy) 996f894d07 [U] Update changelog 2022-09-06 12:16:13 -04:00
Azalea (on HyDEV-Daisy) d8ce41a212 [U] Deploy tool: Automatically create release and deploy 2022-09-06 12:05:53 -04:00
Azalea (on HyDEV-Daisy) 712cf097f4 [F] CPU: Fallback to cpuinfo method when platform-specific method fails
https://github.com/dylanaraps/neofetch/pull/2139
2022-09-06 12:03:40 -04:00
Azalea (on HyDEV-Daisy) 92ae4b4316 [+] Deploy tool: Automatically update help page and regenerate man 2022-09-06 11:30:51 -04:00
Azalea (on HyDEV-Daisy) 31f50d38ee [+] Deploy tool: Automatically change version string 2022-09-06 11:24:16 -04:00
Azalea (on HyDEV-Daisy) eef75c9b46 [+] Add changelog comment to readme 2022-09-06 09:52:52 -04:00
Azalea (on HyDEV-Daisy) cbbd6cba2b [U] Update changelog 2022-09-05 18:02:34 -04:00
Azalea (on HyDEV-Daisy) 881534987b [F] Fix backslashes escape in HyFetch
https://github.com/hykilpikonna/hyfetch/issues/19
2022-09-05 17:40:13 -04:00
Azalea (on HyDEV-Daisy) f54c45fbd0 [F] Disable SC2162: read without -r will mangle backslashes 2022-09-05 17:33:27 -04:00
Azalea (on HyDEV-Daisy) 239bb8e458 Merge branch 'master' of github.com:hykilpikonna/hyfetch 2022-09-05 17:27:42 -04:00
Azalea (on HyDEV-Daisy) e44040b2aa [F] Fix incorrect ascii length when backslashes are present
https://github.com/dylanaraps/neofetch/pull/1543
https://github.com/hykilpikonna/hyfetch/issues/19
2022-09-05 17:27:40 -04:00
Skythrew 042ec7a33c Added support for Stock Linux distro (squirrel package manager add) 2022-09-03 12:38:12 +02:00
Hykilpikonna 215c7bf361 [PR] #18 from TheSudoer: Add GhostBSD 2022-09-03 10:58:01 +08:00
C0UNTM31N d79432b1f5 Added GhostBSD logo 2022-09-02 08:47:13 -05:00
wuliaozhiji 59fa4e5ecc [F] Fix windows paths 2022-08-30 19:27:41 -04:00
Azalea (on HyDEV-Daisy) 8a4a96634c [F] Fix Windows encoding 2022-08-30 19:11:33 -04:00
Azalea (on HyDEV-Daisy) 170e1148a9 [F] Try to fix windows symbolic link
https://github.com/hykilpikonna/hyfetch/issues/16
2022-08-30 19:04:25 -04:00
Azalea (on HyDEV-Daisy) b4494cab21 [O] Allow github token in accept_upstream.py 2022-08-30 18:34:53 -04:00
Azalea (on HyDEV-Daisy) a8352d1fef [F] Make psutil dependency Windows-only 2022-08-30 18:34:30 -04:00
Azalea (on HyDEV-Daisy) 1456660797 [PR] dylanaraps/neofetch#2191 from pkubaj - Correct architecture detection on *BSD
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2191
Thanks to @pkubaj

Co-authored-by: pkubaj <pkubaj@FreeBSD.org>
2022-08-30 18:29:25 -04:00
Azalea (on HyDEV-Daisy) 872cccb6f4 [PR] dylanaraps/neofetch#2190 from taylor85345 - Added Hyprland to list of Wayland wms
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2190
Thanks to @taylor85345

Co-authored-by: taylor85345 <36456160+taylor85345@users.noreply.github.com>
2022-08-30 18:25:19 -04:00
Azalea (on HyDEV-Daisy) 67915c332e [PR] dylanaraps/neofetch#2186 from NekoMimiOfficial - added NekOS Distribution support
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2186
Thanks to @NekoMimiOfficial

Co-authored-by: NekoMimi <watashi.wa.nekomimi.desu@gmail.com>
2022-08-30 18:02:25 -04:00
Azalea (on HyDEV-Daisy) 935c45495d [PR] dylanaraps/neofetch#2185 from Elecleus - Added astOS
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2185
Thanks to @Elecleus

Co-authored-by: Elecleus <elecleus@foxmail.com>
2022-08-30 17:56:21 -04:00
pkubaj b883f5b83b Correct architecture detection on *BSD
FreeBSD uses uname -p, NetBSD also according to https://www.pkgsrc.org/
2022-08-30 00:16:06 +00:00
Azalea (on HyDEV-Daisy) 7a1b4b76d4 [+] Add java, python, node version identification 2022-08-29 20:01:29 -04:00
taylor85345 affd1a2d63 Corrected spacing 2022-08-29 13:51:43 -07:00
taylor85345 1798734f17 Added Hyprland to list of Wayland wms 2022-08-29 13:01:47 -07:00
NekoMimi 7aa6f33f34 added NekOS Distribution support 2022-08-26 21:14:07 +03:00
子禾 92d8c50268 Fixed something. 2022-08-26 19:58:39 +08:00
Elecleus d338e82ca5 Added astOS 2022-08-26 19:42:30 +08:00
Azalea (on HyDEV-Daisy) bed98253b4 [U] Update changelog 2022-08-25 11:02:42 -04:00
Azalea (on HyDEV-Daisy) 6e64957f7f [PR] dylanaraps/neofetch#2180 from SpiderDerp - Added ChonkySealOS
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2180
Thanks to @SpiderDerp

Co-authored-by: SpiderDerp <sfsreeramrave@gmail.com>
2022-08-23 14:53:43 -04:00
Azalea (on HyDEV-Daisy) 80b79d7dbb [O] Trim trailing space in script 2022-08-23 11:41:16 -04:00
Azalea (on HyDEV-Daisy) f7aa3ea8ed [F] Fix char escape bug in strip_escape_codes()
https://github.com/dylanaraps/neofetch/pull/1543
2022-08-23 11:33:17 -04:00
Azalea (on HyDEV-Daisy) 25ca95df8a Merge branch 'master' of https://github.com/hykilpikonna/hyfetch 2022-08-23 11:01:05 -04:00
Azalea (on HyDEV-Daisy) fa52cd42c2 [PR] dylanaraps/neofetch#2182 from mszoek - Add ravynOS platform
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2182
Thanks to @mszoek

Co-authored-by: Zoe Knox <zoe@pixin.net>
2022-08-23 11:00:51 -04:00
Hykilpikonna 7001d873b9 [+] Run MinTTY from cmd.exe 2022-08-20 20:52:21 -04:00
Hykilpikonna b100e35bc7 [+] Enable running through python -m hyfetch 2022-08-20 20:48:02 -04:00
Hykilpikonna 3124ec0b3e [+] Ensure git bash is installed on Windows 2022-08-20 20:47:45 -04:00
Hykilpikonna 6911087eab [+] Add --ask-exit option 2022-08-20 20:46:56 -04:00
Hykilpikonna 45f224d9dd Merge branch 'master' of https://github.com/hykilpikonna/hyfetch 2022-08-20 20:10:56 -04:00
Hykilpikonna 206fa8d726 [F] Fix chromeOS (again!)
https://github.com/dylanaraps/neofetch/issues/1949
https://github.com/dylanaraps/neofetch/issues/1653
https://github.com/dylanaraps/neofetch/issues/1384
2022-08-20 20:10:53 -04:00
Azalea (on HyDEV-Daisy) 1e1cddc58f [F] Fix distro name escape 2022-08-20 09:43:52 -04:00
Azalea (on HyDEV-Daisy) b9773b989d [+] Export distros 2022-08-20 09:30:23 -04:00
Hykilpikonna 8f8ecb7b94 [O] Make readline optional 2022-08-19 12:58:34 -04:00
Azalea (on HyDEV-Daisy) e96ff8e8aa [O] Optimize terminal size warning 2022-08-18 01:05:15 -04:00
Azalea (on Windows VM) 10a2367077 [F] Fix windows support 2022-08-18 00:53:52 -04:00
Zoe Knox 5966bd0c22 Improve ascii logo 2022-08-17 15:34:32 -04:00
Zoe Knox 64b7e11392 Update DE name to Magma 2022-08-17 14:38:08 -04:00
Zoe Knox ec172fb47a Add ravynOS platform 2022-08-17 14:16:33 -04:00
SpiderDerp 95f8168a0c ChonkySealOS added 2022-08-16 19:01:30 -04:00
SpiderDerp dbea0c04e2 ChonkySealOS added 2022-08-16 18:09:40 -04:00
Hykilpikonna fd2dfb80ce [F] Fix secret name cannot start with GITHUB 2022-08-15 11:28:38 -04:00
Hykilpikonna 821b3069be [PR] #15 from Aleksanaa: Add release workflow 2022-08-15 11:17:35 -04:00
Aleksana d3377f5cf3 add --all
add --all so final commit to release branch will also update
2022-08-15 13:14:06 +08:00
Aleksana dd944cb5a5 add some magic to merge to parent branch
This commit make it merge to parent branch instead of `master` branch, i.e. you are working on a branch called `refactor` and making a branch `release/2.0`, changes will be applied to `refactor` instead of `master`.
2022-08-15 13:11:10 +08:00
Aleksana 8500873387 add release workflow 2022-08-15 11:14:41 +08:00
Azalea (on HyDEV-Daisy) e0d05b4643 [U] Update readme 2022-08-14 13:00:57 -04:00
Azalea (on HyDEV-Daisy) 80c15d9d51 [O] Optimize color arrangement selection on smaller screens 2022-08-14 12:59:36 -04:00
Azalea (on HyDEV-Daisy) bc7339969f [+] Terminal size warning 2022-08-14 12:58:27 -04:00
Azalea (on HyDEV-Daisy) d9a31fd78e [F] Fix version import 2022-08-14 12:27:03 -04:00
Azalea (on HyDEV-Daisy) d31c87796f [U] Update changelog 2022-08-14 12:26:36 -04:00
Azalea (on HyDEV-Daisy) c52d9dca66 [F] Fix empty bracket displayed when no theme is present
https://github.com/dylanaraps/neofetch/pull/1713
2022-08-14 12:23:28 -04:00
Azalea (on HyDEV-Daisy) 48dc7eee76 [F] Fix workflow typo
https://github.com/hykilpikonna/hyfetch/pull/13
2022-08-14 00:01:15 -04:00
Azalea (on HyDEV-Daisy) edf62e98e3 [+] Import readline for interactive config menu 2022-08-13 15:29:47 -04:00
Azalea (on HyDEV-Daisy) 0837ac87cf [O] Optimize, fix python 3 conventions 2022-08-13 15:24:00 -04:00
Hykilpikonna 71dd40ecb9 [PR] #14 from larobitrumpet: Paginate flags 2022-08-13 15:18:02 -04:00
Lucy Robillard 69738f06e8 Paginate flags 2022-08-13 11:26:58 -07:00
Azalea (on HyDEV-Daisy) 05801ca9d2 Revert "Add another user"
This reverts commit c431695eee.
2022-08-13 11:42:58 -04:00
Azalea (on HyDEV-Daisy) 42a6a55c9e [U] Update readme 2022-08-13 11:28:45 -04:00
Azalea (on HyDEV-Daisy) d1b69b7852 Merge branch 'master' of github.com:hykilpikonna/hyfetch 2022-08-13 11:24:41 -04:00
Azalea (on HyDEV-Daisy) ccecf6424d [F] Fix hostname compatibility
https://github.com/dylanaraps/neofetch/pull/2095
https://github.com/dylanaraps/neofetch/issues/2094
2022-08-13 11:24:37 -04:00
Hykilpikonna af1a3857eb [PR] #13 from Aleksanaa: Auto deploy to AUR
Add a new workflow
2022-08-13 10:39:44 -04:00
Aleksana c431695eee Add another user
Add another user to avoid ssh keys being stolen by malicious code
2022-08-13 22:35:02 +08:00
Aleksana 3cc8a6cf01 Change my name 2022-08-13 21:20:37 +08:00
Aleksana a732d37157 Add a new workflow 2022-08-13 19:33:15 +08:00
Azalea (on HyDEV-Daisy) dce75a7d6d [+] Create deploy checklist 2022-08-12 20:39:06 -04:00
saeziae 3253d4cbcc add loongarch 2022-07-31 18:55:05 +08:00
333 changed files with 8923 additions and 409 deletions
+68
View File
@@ -0,0 +1,68 @@
name: arch_package
on:
release:
types: [created]
jobs:
build:
runs-on: ubuntu-latest
container:
image: archlinux
options: --privileged
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup
steps:
- name: Prepare environment
run: |
pacman -Syu --needed --noconfirm base-devel git openssh
sed -i '/E_ROOT/d' /usr/bin/makepkg
- name: Import AUR key
run: |
mkdir ~/.ssh && chmod 700 ~/.ssh
echo '${{secrets.AUR_SSH_PRIVATE_KEY}}' >> ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan -H aur.archlinux.org >> /etc/ssh/ssh_known_hosts
- name: Clone from AUR
run: |
export GIT_SSH_COMMAND='ssh -i ~/.ssh/id_rsa'
git clone ssh://aur@aur.archlinux.org/hyfetch.git
- name: Upgrade PKGBUILD
run: |
cd hyfetch
sed -i "/^pkgver=/cpkgver=${{github.ref_name}}" PKGBUILD
sed -i "/^pkgrel=/cpkgrel=1" PKGBUILD
- name: Makepkg
run: |
cd hyfetch
yes | makepkg -si
- name: Test hyfetch
run: |
hyfetch --test-print
- name: Upload binaries to release
uses: shogo82148/actions-upload-release-asset@v1
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: hyfetch/hyfetch*.pkg.tar.*
- name: set git info
run: |
git config --global user.name "Aleksana BOT"
git config --global user.email "me@aleksana.moe"
- name: Update PKGBUILD to AUR
run: |
cd hyfetch
rm -r .SRCINFO && makepkg --printsrcinfo >.SRCINFO
git stage . && git commit -m "BOT: upgrade to ${{github.ref_name}}"
export GIT_SSH_COMMAND='ssh -i ~/.ssh/id_rsa'
git push
+115
View File
@@ -0,0 +1,115 @@
name: release
on:
push:
branches:
- "release/*"
jobs:
testing:
name: testing release
runs-on: ubuntu-latest
if: ${{ !startsWith(github.event.head_commit.message,'release') }}
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Get tags
run: git fetch --all --tags
- name: Get version
run: |
BRANCH=$(git symbolic-ref --short HEAD)
VER=${BRANCH#*release/}
if [[ $(git tag | grep ${VER}rc) ]];then
TAGS=$(git tag | grep ${VER}rc | awk 'END {print}')
REL=${TAGS##*rc}
let REL++
else
REL=1
fi
echo "BUILDVER=${VER}rc${REL}" >> $GITHUB_ENV
- name: Update versions
run: |
sed -i "/^ *VERSION = /cVERSION = '${{ env.BUILDVER }}'" hyfetch/constants.py
- name: Making tags
run: |
git config user.name github-actions
git config user.email github-actions@github.com
git stage .
git commit -m "tagged unstable ${{ env.BUILDVER }}"
git tag --force ${{ env.BUILDVER }}
- name: Upload changes
run: |
git pull && git push && git push --tags
- name: Deploy to PYPI
uses: casperdcl/deploy-pypi@v2
with:
password: ${{ secrets.PYPI_API_TOKEN }}
pip: wheel -w dist/ --no-deps .
release:
name: formal release
runs-on: ubuntu-latest
if: ${{ startsWith(github.event.head_commit.message,'release') }}
steps:
- name: Checkout repo
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Get version
run: |
BRANCH=$(git symbolic-ref --short HEAD)
echo "BUILDVER=${BRANCH#*release/}" >> $GITHUB_ENV
- name: Update package.json
uses: jossef/action-set-json-field@v2
with:
file: package.json
field: version
value: ${{ env.BUILDVER }}
- name: Update neofetch version
run: |
REVISION=$(expr $(git rev-list --count HEAD neofetch) - 2902)
sed -i "/^ *version=/cversion=7.4.0r${REVISION}" neofetch
- name: Update other versions
run: |
sed -i "/^ *VERSION = /cVERSION = '${{ env.BUILDVER }}'" hyfetch/constants.py
sed -i "/^ *### Unpublished/c### ${{ env.BUILDVER }}" README.md
- name: Make final tags
run: |
git config user.name github-actions
git config user.email github-actions@github.com
git stage . && git commit -m "tagged stable ${{ env.BUILDVER }}"
git tag --force ${{ env.BUILDVER }}
- name: Merge branch and push
run: |
parent=$(git show-branch \
| grep -F '*' \
| grep -v "$(git rev-parse --abbrev-ref HEAD)" \
| head -n1 \
| sed 's/.*\[\(.*\)\].*/\1/' \
| sed 's/[\^~].*//')
git checkout ${parent}
git merge release/${{ env.BUILDVER }} --allow-unrelated-histories
git pull --all && git push --all && git push --tags
- name: Generate changelog from README
run: (sed '0,/^ *### ${{ env.BUILDVER }}/d;/^ *#/,$d' <README.md)>temp_CHANGELOG.md
- name: Publish release
uses: ncipollo/release-action@v1
with:
bodyFile: "temp_CHANGELOG.md"
tag: ${{ env.BUILDVER }}
token: ${{ secrets.GH_TOKEN }}
+105 -8
View File
@@ -2,7 +2,7 @@
neofetch with pride flags <3
<img src="https://user-images.githubusercontent.com/22280294/162614541-af2b4660-f1f7-4287-b978-1aa2266ac70f.png" width="60%">
<img alt="screenshot" src="https://user-images.githubusercontent.com/22280294/197708447-ddee6db2-1017-48f2-b507-8ddf85acef0d.png">
### Running Updated Original Neofetch
@@ -10,7 +10,9 @@ This repo also serves as an updated version of the original `neofetch` since the
* Method 1: `pip install hyfetch` then run `neowofetch`
* Method 2: `npx neowofetch`
* Method 3: `bash <(curl -sL neowofetch.hydev.org)`
* Method 3: `P="$HOME/.local/bin/neowofetch" curl -L nf.hydev.org -o $P && chmod +x $P`
* Method 4: Run without install `bash <(curl -sL nf.hydev.org)`
## Installation
@@ -26,9 +28,20 @@ pip install hyfetch
Currently, these distributions have existing packages for HyFetch:
* ArchLinux: `yay -S hyfetch` (Thanks to @ Aleksana)
* Nix: `nix-env -i hyfetch` (Thanks to @ YisuiDenghua)
* Guix: `guix install hyfetch` (Thanks to @ WammKD)
* Arch Linux: `paru -S hyfetch` or `yay -S hyfetch` (Thanks to [@Aleksana](https://github.com/Aleksanaa))
* Nix: `nix-env -i hyfetch` (Thanks to [@YisuiDenghua](https://github.com/YisuiDenghua))
* Guix: `guix install hyfetch` (Thanks to [@WammKD](https://github.com/WammKD))
### Method 3: Install the latest developmental version using git
Install Python >= 3.7 first. Then run the following commands:
```sh
git clone https://github.com/hykilpikonna/hyfetch.git
cd hyfetch
pip install .
```
## Usage
@@ -36,6 +49,9 @@ When you run `hyfetch` for the first time, it will prompt you to choose a color
If you want to use the updated `neofetch` without LGBTQ flags, check out [this section](https://github.com/hykilpikonna/hyfetch#running-updated-original-neofetch)
## Questions and answers
#### Q: How do I change my config?
A: Use `hyfetch -c`
@@ -48,6 +64,18 @@ Feel free to experiment with it!
![image](https://user-images.githubusercontent.com/22280294/162614553-eb758e4e-1936-472c-8ca7-b601c696c6eb.png)
## Contributing
To make changes to our codebase, you first need to create a fork by clicking the "Fork" button on the top right. Then, you can clone your fork of the source code using `git clone https://github.com/{your username}/hyfetch.git`.
After making changes to the source code, you can run `python -m hyfetch` in the root directory of your repo to test out your changes.
If they work correctly, you can commit and push these changes using git command or Github Desktop. Then, you can create a pull request on Github so that it can go into our next release!
You can also install your version locally by running `pip install .` in the repo root.
## Change Log
### About Notation
@@ -57,10 +85,79 @@ Updates to `neowofetch` begins with the emoji 🖼️
### TODO
* [ ] Paginate flags
* [ ] Implement light/dark background detection based on https://github.com/muesli/termenv
* [ ] (Important!) Refactor flag storage & coloring to support non-stride patterns
* [ ] Config menu: Allow left-right arrow keys for pagination
### Unpublished 1.4.0
<!-- CHANGELOG STARTS HERE --->
### 1.4.4
Note: You can install the latest nightly version by using:
```sh
pip install git+https://github.com/hykilpikonna/hyfetch.git@master
```
* 🌈 Fix Python 3.11 compatibility (#35)
* 🌈 Fix many overflow problems when screen is too small
* 🖼️ Distro - Add Enso ([dylanaraps#2233](https://github.com/dylanaraps/neofetch/pull/2233))
* 🖼️ Memory - Optimize and fix memory unit conversion ([dylanaraps#2225](https://github.com/dylanaraps/neofetch/pull/2225))
* 🖼️ DE - Add dwl window manager ([dylanaraps#2234](https://github.com/dylanaraps/neofetch/pull/2234))
* 🖼️ DE - Fix XDG session detection for X11 ([dylanaraps#2232](https://github.com/dylanaraps/neofetch/pull/2232))
* 🖼️ CPU - Fix model detection for loongson (#34)
### 1.4.3
* 🌈 **Auto detect terminal background color & rgb support**
* 🌈 **Optimize experience on light-themed terminals**
* 🌈 Fix bugs with lightness and light-mode config not applying
* 🌈 Fix color alignment for distros with first color ≠ `${c1}` (e.g. Ubuntu Budgie)
* 🌈 Add unlabeled flags (#25)
* 🌈 Add gender nonconforming & femboy & tomboy flags (#32)
* 🌈 Fix jailbreak iOS shell `killed: 9` issue caused by ld signature check.
* 🖼️ Distro - Add garuda_small ([dylanaraps#2215](https://github.com/dylanaraps/neofetch/pull/2215))
* 🖼️ Distro - Add Cobalt Linux ([dylanaraps#2213](https://github.com/dylanaraps/neofetch/pull/2213))
* 🖼️ Distro - Add VanillaOS ([dylanaraps#2222](https://github.com/dylanaraps/neofetch/pull/2222))
* 🖼️ Distro - Surround macOS build number in parentheses (#28)
* 🖼️ Misc - Auto select stdout mode based on tty detection (#31)
* 🖼️ Bug Fix - Fix cols coloring reset for bash 3.2 (#24)
### 1.4.2
* 🌈 Detailed runnning/contributing instructions in README.md (#21)
* 🖼️ Distro - Add Stock Linux (#23)
* 🖼️ Distro - Add DietPi ([dylanaraps#1706](https://github.com/dylanaraps/neofetch/pull/1706))
* 🖼️ Distro - Add OmniOS illumos ([dylanaraps#2196](https://github.com/dylanaraps/neofetch/pull/2196))
* 🖼️ Distro - Add Droidian ([dylanaraps#2201](https://github.com/dylanaraps/neofetch/pull/2201))
* 🖼️ Distro - Add HamoniKR ([dylanaraps#2210](https://github.com/dylanaraps/neofetch/pull/2210))
* 🖼️ Song - Add support for TIDAL HiFi (#22)
* 🖼️ CPU - Detect multiple CPU models for ARM
* 🖼️ Misc - Better defaults: Show RAM in GiB, RAM percentage, CPU speed rounding, refresh rate
* 🖼️ Bug Fix - Fix bash 5.2 column cut off issue (#24)
### 1.4.1
* 🌈 Paginate flags (#14)
* 🌈 Add release workflow (#15)
* 🌈 Create automatic release script
* 🌈 Config page - Give warning when terminal size is too small
* 🌈 Config page - Optimize color arrangement selection on small screens
* 🌈 Add experimental Windows support (very unstable at the moment)
* 🖼️ Distro - Add ravynOS ([dylanaraps#2182](https://github.com/dylanaraps/neofetch/pull/2182))
* 🖼️ Distro - Add ChonkySealOS ([dylanaraps#2180](https://github.com/dylanaraps/neofetch/pull/2180))
* 🖼️ Distro - Add GhostBSD ([TheSudoer#18](https://github.com/hykilpikonna/hyfetch/pull/18))
* 🖼️ Distro - Add NekOS ([dylanaraps#2186](https://github.com/dylanaraps/neofetch/pull/2186))
* 🖼️ Distro - Add astOS ([dylanaraps#2185](https://github.com/dylanaraps/neofetch/pull/2185))
* 🖼️ Distro - Fix ChromeOS identification ([dylanaraps#1949](https://github.com/dylanaraps/neofetch/pull/1949))
* 🖼️ WM - Add Hyprland to the list of wayland wms ([dylanaraps#2190](https://github.com/dylanaraps/neofetch/pull/2190))
* 🖼️ Env - Add Java, Python, Node version detection (can be enabled in config)
* 🖼️ Bug Fix - Fix hostname detection when `inetutils` is not installed
* 🖼️ Bug Fix - Fix empty brackets displayed when no theme is found ([dylanaraps#1713](https://github.com/dylanaraps/neofetch/pull/1713))
* 🖼️ Bug Fix - Fix `$` escape bug in `strip_escape_codes()` ([dylanaraps#1543](https://github.com/dylanaraps/neofetch/pull/1543))
* 🖼️ Bug Fix - Fix backslash escape bug in `strip_escape_codes()` ([dylanaraps#1543](https://github.com/dylanaraps/neofetch/pull/1543))
* 🖼️ Bug Fix - Fix CPU detection on ARM QEMU
### 1.4.0
* 🌈 Add finsexual flag (#12)
* 🚀 Addressed a total of 128 currently open pull requests from neofetch
+2 -2
View File
@@ -1,8 +1,8 @@
from __future__ import annotations
from . import main
from . import main, constants
__version__ = main.VERSION
__version__ = constants.VERSION
if __name__ == '__main__':
+4
View File
@@ -0,0 +1,4 @@
from hyfetch import main
if __name__ == '__main__':
main.run()
+32 -11
View File
@@ -1,8 +1,7 @@
from __future__ import annotations
import colorsys
from typing import NamedTuple, Callable, Optional
from dataclasses import dataclass, astuple
from typing_extensions import Literal
from .constants import GLOBAL_CFG
@@ -84,11 +83,28 @@ def redistribute_rgb(r: int, g: int, b: int) -> tuple[int, int, int]:
return int(gray + x * r), int(gray + x * g), int(gray + x * b)
class RGB(NamedTuple):
@dataclass(unsafe_hash=True)
class HSL:
h: float
s: float
l: float
def __iter__(self):
return iter(astuple(self))
def rgb(self) -> RGB:
return RGB(*[round(v * 255.0) for v in colorsys.hls_to_rgb(self.h, self.l, self.s)])
@dataclass(unsafe_hash=True)
class RGB:
r: int
g: int
b: int
def __iter__(self):
return iter(astuple(self))
@classmethod
def from_hex(cls, hex: str) -> "RGB":
"""
@@ -100,9 +116,7 @@ class RGB(NamedTuple):
:param hex: Hex color code
:return: RGB object
"""
while hex.startswith('#'):
hex = hex[1:]
hex = hex.lstrip("#")
r = int(hex[0:2], 16)
g = int(hex[2:4], 16)
b = int(hex[4:6], 16)
@@ -177,6 +191,10 @@ class RGB(NamedTuple):
"""
return RGB(*redistribute_rgb(*[v * multiplier for v in self]))
def hsl(self) -> HSL:
h, l, s = colorsys.rgb_to_hls(*[v / 255.0 for v in self])
return HSL(h, s, l)
def set_light(self, light: float, at_least: bool | None = None, at_most: bool | None = None) -> 'RGB':
"""
Set HSL lightness value
@@ -187,16 +205,19 @@ class RGB(NamedTuple):
:return: New color (original isn't modified)
"""
# Convert to HSL
h, l, s = colorsys.rgb_to_hls(*[v / 255.0 for v in self])
hsl = self.hsl()
# Modify light value
if at_least is None and at_most is None:
l = light
hsl.l = light
else:
if at_most:
l = min(l, light)
hsl.l = min(hsl.l, light)
if at_least:
l = max(l, light)
hsl.l = max(hsl.l, light)
# Convert back to RGB
return RGB(*[round(v * 255.0) for v in colorsys.hls_to_rgb(h, l, s)])
return hsl.rgb()
def is_light(self):
return self.hsl().l > 0.5
+4 -6
View File
@@ -7,13 +7,8 @@ from pathlib import Path
from typing_extensions import Literal
CONFIG_PATH = Path.home() / '.config/hyfetch.json'
VERSION = '1.4.0'
VERSION = '1.4.4'
# Obtain terminal size
try:
TERM_LEN = os.get_terminal_size().columns
except Exception:
TERM_LEN = 40
TEST_ASCII = r"""
### |\___/| ###
@@ -32,6 +27,7 @@ _/\_\_ _/_/\_
TEST_ASCII_WIDTH = max(len(line) for line in TEST_ASCII.split('\n'))
DEFAULT_DARK_L = 0.
@dataclass
class GlobalConfig:
# Global color mode default to 8-bit for compatibility
@@ -50,3 +46,5 @@ class GlobalConfig:
GLOBAL_CFG = GlobalConfig(color_mode='8bit', override_distro=None, debug=False, is_light=False)
MINGIT_URL = 'https://github.com/git-for-windows/git/releases/download/v2.37.2.windows.2/MinGit-2.37.2.2-busybox-32-bit.zip'
+25
View File
@@ -0,0 +1,25 @@
from __future__ import annotations
import string
asciis: list['AsciiArt'] = []
class AsciiArt:
name: str
match: str
color: str
ascii: str
def __init__(self, match: str, color: str, ascii: str, name: str | None = None):
self.match = match
self.color = color
self.ascii = ascii
self.name = name or self.get_friendly_name()
asciis.append(self)
def get_friendly_name(self) -> str:
return self.match.split("|")[0].strip(string.punctuation + '* ') \
.replace('"', '').replace('*', '')
+192 -97
View File
@@ -4,14 +4,17 @@ from __future__ import annotations
import argparse
import json
import random
import re
import traceback
from itertools import permutations
from math import ceil
from typing import Iterable
from .color_util import printc, color, clear_screen
from .constants import CONFIG_PATH, VERSION, TERM_LEN, TEST_ASCII_WIDTH, TEST_ASCII, GLOBAL_CFG
from . import termenv
from .color_scale import Scale
from .color_util import printc, color, clear_screen, AnsiMode
from .constants import *
from .models import Config
from .neofetch_util import run_neofetch, get_distro_ascii, ColorAlignment, ascii_size, get_fore_back
from .neofetch_util import *
from .presets import PRESETS
@@ -83,53 +86,86 @@ def create_config() -> Config:
:return: Config object (automatically stored)
"""
title = 'Welcome to &b&lhy&f&lfetch&r! Let\'s set up some colors first.'
# Detect terminal environment
det_bg = termenv.get_background_color()
det_ansi = termenv.detect_ansi_mode()
asc = get_distro_ascii()
asc_width, asc_lines = ascii_size(asc)
logo = color("&b&lhyfetch&r" if det_bg is None or det_bg.is_light() else "&b&lhy&f&lfetch&r")
title = f'Welcome to {logo} Let\'s set up some colors first.'
clear_screen(title)
option_counter = 1
def update_title(k: str, v: str):
nonlocal title, option_counter
if not k.endswith(":"):
k += ':'
title += f"\n&e{option_counter}. {k.ljust(30)} &r{v}"
option_counter += 1
def print_title_prompt(prompt: str):
printc(f'&a{option_counter}. {prompt}')
##############################
# 0. Check term size
try:
term_len, term_lines = os.get_terminal_size().columns, os.get_terminal_size().lines
if term_len < 2 * asc_width + 4 or term_lines < 30:
printc(f'&cWarning: Your terminal is too small ({term_len} * {term_lines}). \n'
f'Please resize it for better experience.')
input('Press any key to ignore...')
except:
# print('Warning: We cannot detect your terminal size.')
pass
##############################
# 1. Select color system
try:
# Demonstrate RGB with a gradient. This requires numpy
from .color_scale import Scale
def select_color_system():
if det_ansi == 'rgb':
return 'rgb', 'Detected color mode'
clear_screen(title)
term_len, term_lines = term_size()
scale2 = Scale(['#12c2e9', '#c471ed', '#f7797d'])
_8bit = [scale2(i / TERM_LEN).to_ansi_8bit(False) for i in range(TERM_LEN)]
_rgb = [scale2(i / TERM_LEN).to_ansi_rgb(False) for i in range(TERM_LEN)]
_8bit = [scale2(i / term_len).to_ansi_8bit(False) for i in range(term_len)]
_rgb = [scale2(i / term_len).to_ansi_rgb(False) for i in range(term_len)]
printc('&f' + ''.join(c + t for c, t in zip(_8bit, '8bit Color Testing'.center(TERM_LEN))))
printc('&f' + ''.join(c + t for c, t in zip(_rgb, 'RGB Color Testing'.center(TERM_LEN))))
printc('&f' + ''.join(c + t for c, t in zip(_8bit, '8bit Color Testing'.center(term_len))))
printc('&f' + ''.join(c + t for c, t in zip(_rgb, 'RGB Color Testing'.center(term_len))))
print()
printc(f'&a1. Which &bcolor system &ado you want to use?')
print_title_prompt('Which &bcolor system &ado you want to use?')
printc(f'(If you can\'t see colors under "RGB Color Testing", please choose 8bit)')
print()
color_system = literal_input('Your choice?', ['8bit', 'rgb'], 'rgb')
except ModuleNotFoundError:
# Numpy not found, skip gradient test, use fallback
color_system = literal_input('Which &acolor &bsystem &rdo you want to use?',
['8bit', 'rgb'], 'rgb')
return literal_input('Your choice?', ['8bit', 'rgb'], 'rgb'), 'Selected color mode'
# Override global color mode
color_system, ttl = select_color_system()
GLOBAL_CFG.color_mode = color_system
title += f'\n&e1. Selected color mode: &r{color_system}'
update_title(ttl, color_system)
##############################
# 2. Select light/dark mode
clear_screen(title)
light_dark = literal_input(f'2. Is your terminal in &gf(#85e7e9)light mode&r or &gf(#c471ed)dark mode&r?',
['light', 'dark'], 'dark')
is_light = light_dark == 'light'
def select_light_dark():
if det_bg is not None:
return det_bg.is_light(), 'Detected background color'
clear_screen(title)
inp = literal_input(f'2. Is your terminal in &blight mode&r or &4dark mode&r?',
['light', 'dark'], 'dark')
return inp == 'light', 'Selected background color'
is_light, ttl = select_light_dark()
light_dark = 'light' if is_light else 'dark'
GLOBAL_CFG.is_light = is_light
title += f'\n&e2. Light/Dark: &r{light_dark}'
update_title(ttl, light_dark)
##############################
# 3. Choose preset
clear_screen(title)
printc('&a3. Let\'s choose a flag!')
printc('Available flag presets:')
print()
# Create flags = [[lines]]
flags = []
spacing = max(max(len(k) for k in PRESETS.keys()), 20)
@@ -138,85 +174,129 @@ def create_config() -> Config:
flags.append([name.center(spacing), flag, flag, flag])
# Calculate flags per row
flags_per_row = TERM_LEN // (spacing + 2)
while flags:
current = flags[:flags_per_row]
flags = flags[flags_per_row:]
flags_per_row = term_size()[0] // (spacing + 2)
row_per_page = max(1, (term_size()[1] - 13) // 5)
num_pages = ceil(len(flags) / (flags_per_row * row_per_page))
# Print by row
# Create pages
pages = []
for i in range(num_pages):
page = []
for j in range(row_per_page):
page.append(flags[:flags_per_row])
flags = flags[flags_per_row:]
if not flags:
break
pages.append(page)
def print_flag_page(page: list[list[list[str]]], page_num: int):
clear_screen(title)
print_title_prompt("Let's choose a flag!")
printc('Available flag presets:')
print(f'Page: {page_num + 1} of {num_pages}')
print()
for i in page:
print_flag_row(i)
print()
def print_flag_row(current: list[list[str]]):
[printc(' '.join(line)) for line in zip(*current)]
print()
print()
tmp = PRESETS['rainbow'].set_light_dl_def(light_dark).color_text('preset')
preset = literal_input(f'Which {tmp} do you want to use?', PRESETS.keys(), 'rainbow', show_ops=False)
_prs = PRESETS[preset]
title += f'\n&e3. Selected flag: &r{_prs.color_text(preset)}'
page = 0
while True:
print_flag_page(pages[page], page)
tmp = PRESETS['rainbow'].set_light_dl_def(light_dark).color_text('preset')
opts = list(PRESETS.keys())
if page < num_pages - 1:
opts.append('next')
if page > 0:
opts.append('prev')
print("Enter 'next' to go to the next page and 'prev' to go to the previous page.")
preset = literal_input(f'Which {tmp} do you want to use? ', opts, 'rainbow', show_ops=False)
if preset == 'next':
page += 1
elif preset == 'prev':
page -= 1
else:
_prs = PRESETS[preset]
update_title('Selected flag', _prs.set_light_dl_def(light_dark).color_text(preset))
break
#############################
# 4. Dim/lighten colors
clear_screen(title)
printc(f'&a4. Let\'s adjust the color brightness!')
printc(f'The colors might be a little bit too {"bright" if is_light else "dark"} for {light_dark} mode.')
print()
# Print cats
num_cols = TERM_LEN // (TEST_ASCII_WIDTH + 2)
ratios = [col / (num_cols - 1) for col in range(num_cols)]
ratios = [(r * 0.4 + 0.1) if is_light else (r * 0.4 + 0.5) for r in ratios]
lines = [ColorAlignment('horizontal').recolor_ascii(TEST_ASCII.replace(
'{txt}', f'{r * 100:.0f}%'.center(5)), _prs.set_light_dl(r, light_dark)).split('\n') for r in ratios]
[printc(' '.join(line)) for line in zip(*lines)]
while True:
def select_lightness():
clear_screen(title)
print_title_prompt("Let's adjust the color brightness!")
printc(f'The colors might be a little bit too {"bright" if is_light else "dark"} for {light_dark} mode.')
print()
printc(f'Which brightness level look the best? (Default: left blank = {GLOBAL_CFG.default_lightness(light_dark):.2f} for {light_dark} mode)')
lightness = input('> ').strip().lower() or None
# Parse lightness
if not lightness or lightness in ['unset', 'none']:
lightness = None
break
# Print cats
num_cols = (term_size()[0] // (TEST_ASCII_WIDTH + 2)) or 1
mn, mx = 0.15, 0.85
ratios = [col / num_cols for col in range(num_cols)]
ratios = [(r * (mx - mn) / 2 + mn) if is_light else ((r * (mx - mn) + (mx + mn)) / 2) for r in ratios]
lines = [ColorAlignment('horizontal').recolor_ascii(TEST_ASCII.replace(
'{txt}', f'{r * 100:.0f}%'.center(5)), _prs.set_light_dl(r, light_dark)).split('\n') for r in ratios]
[printc(' '.join(line)) for line in zip(*lines)]
try:
lightness = int(lightness[:-1]) / 100 if lightness.endswith('%') else float(lightness)
assert 0 <= lightness <= 1
break
def_lightness = GLOBAL_CFG.default_lightness(light_dark)
except Exception:
printc('&cUnable to parse lightness value, please input it as a decimal or percentage (e.g. 0.5 or 50%)')
while True:
print()
printc(f'Which brightness level looks the best? (Default: {def_lightness * 100:.0f}% for {light_dark} mode)')
lightness = input('> ').strip().lower() or None
if lightness:
_prs = _prs.set_light_dl(lightness, light_dark)
title += f'\n&e4. Brightness: &r{f"{lightness:.2f}" if lightness else "unset"}'
# Parse lightness
if not lightness or lightness in ['unset', 'none']:
return def_lightness
try:
lightness = int(lightness[:-1]) / 100 if lightness.endswith('%') else float(lightness)
assert 0 <= lightness <= 1
return lightness
except Exception:
printc('&cUnable to parse lightness value, please input it as a decimal or percentage (e.g. 0.5 or 50%)')
lightness = select_lightness()
_prs = _prs.set_light_dl(lightness, light_dark)
update_title('Selected Brightness', f"{lightness:.2f}")
#############################
# 5. Color arrangement
color_alignment = None
fore_back = get_fore_back()
# Calculate amount of row/column that can be displayed on screen
ascii_per_row = max(1, term_size()[0] // (asc_width + 2))
ascii_rows = max(1, (term_size()[1] - 8) // asc_lines)
# Displays horizontal and vertical arrangements in the first iteration, but hide them in
# later iterations
hv_arrangements = [
('Horizontal', ColorAlignment('horizontal', fore_back=fore_back)),
('Vertical', ColorAlignment('vertical'))
]
arrangements = hv_arrangements.copy()
# Loop for random rolling
while True:
clear_screen(title)
asc = get_distro_ascii()
asc_width = ascii_size(asc)[0]
fore_back = get_fore_back()
arrangements = [
('Horizontal', ColorAlignment('horizontal', fore_back=fore_back)),
('Vertical', ColorAlignment('vertical'))
]
ascii_per_row = TERM_LEN // (asc_width + 2)
# Random color schemes
pis = list(range(len(_prs.unique_colors().colors)))
slots = len(set(re.findall('(?<=\\${c)[0-9](?=})', asc)))
while len(pis) < slots:
slots = list(set(re.findall('(?<=\\${c)[0-9](?=})', asc)))
while len(pis) < len(slots):
pis += pis
perm = {p[:slots] for p in permutations(pis)}
random_count = ascii_per_row * 2 - 2
perm = {p[:len(slots)] for p in permutations(pis)}
random_count = max(0, ascii_per_row * ascii_rows - len(arrangements))
if random_count > len(perm):
choices = perm
else:
choices = random.sample(perm, random_count)
choices = [{i + 1: n for i, n in enumerate(c)} for c in choices]
choices = random.sample(sorted(perm), random_count)
choices = [{slots[i]: n for i, n in enumerate(c)} for c in choices]
arrangements += [(f'random{i}', ColorAlignment('custom', r)) for i, r in enumerate(choices)]
asciis = [[*ca.recolor_ascii(asc, _prs).split('\n'), k.center(asc_width)] for k, ca in arrangements]
@@ -228,17 +308,18 @@ def create_config() -> Config:
[printc(' '.join(line)) for line in zip(*current)]
print()
printc(f'&a5. Let\'s choose a color arrangement!')
print_title_prompt("Let's choose a color arrangement!")
printc(f'You can choose standard horizontal or vertical alignment, or use one of the random color schemes.')
print('You can type "roll" to randomize again.')
print()
choice = literal_input(f'Your choice?', ['horizontal', 'vertical', 'roll'] + [f'random{i}' for i in range(random_count)], 'horizontal')
if choice == 'roll':
arrangements = []
continue
# Save choice
arrangement_index = {k.lower(): ca for k, ca in arrangements}
arrangement_index = {k.lower(): ca for k, ca in hv_arrangements + arrangements}
if choice in arrangement_index:
color_alignment = arrangement_index[choice]
else:
@@ -247,7 +328,7 @@ def create_config() -> Config:
break
title += f'\n&e5. Color Alignment: &r{color_alignment}'
update_title('Color alignment', color_alignment)
# Create config
clear_screen(title)
@@ -263,6 +344,12 @@ def create_config() -> Config:
def run():
# Optional: Import readline
try:
import readline
except ModuleNotFoundError:
pass
# Create CLI
hyfetch = color('&b&lhyfetch&r')
parser = argparse.ArgumentParser(description=color(f'{hyfetch} - neofetch with flags <3'))
@@ -276,6 +363,7 @@ def run():
parser.add_argument('--debug', action='store_true', help=f'Debug mode')
parser.add_argument('--test-distro', help=f'Test for a specific distro')
parser.add_argument('--test-print', action='store_true', help=f'Test print distro ascii art only')
parser.add_argument('--ask-exit', action='store_true', help=f'Ask before exitting')
args = parser.parse_args()
@@ -283,6 +371,10 @@ def run():
print(f'Version is {VERSION}')
return
# Ensure git bash for windows
ensure_git_bash()
check_windows_cmd()
# Test distro ascii art
if args.test_distro:
print(f'Setting distro to {args.test_distro}')
@@ -295,12 +387,8 @@ def run():
print(get_distro_ascii())
return
# Load config
config = check_config()
# Reset config
if args.config:
config = create_config()
# Load config or create config
config = create_config() if args.config else check_config()
# Param overwrite config
if args.preset:
@@ -315,13 +403,20 @@ def run():
# Get preset
preset = PRESETS.get(config.preset)
# Lighten
# Lighten (args > config)
if args.scale:
preset = preset.lighten(args.scale)
if args.light:
elif args.light:
preset = preset.set_light_raw(args.light)
if config.lightness:
preset = preset.set_light_dl(config.lightness)
else:
preset = preset.set_light_dl(config.lightness or GLOBAL_CFG.default_lightness())
# Run
run_neofetch(preset, config.color_align)
try:
run_neofetch(preset, config.color_align)
except Exception as e:
print(f'Error: {e}')
traceback.print_exc()
if args.ask_exit:
input('Press any key to exit...')
+2 -4
View File
@@ -1,8 +1,6 @@
from __future__ import annotations
from dataclasses import dataclass
from typing_extensions import Literal
from dataclasses import dataclass, field
from .color_util import AnsiMode, LightDark
from .constants import CONFIG_PATH
@@ -16,7 +14,7 @@ class Config:
mode: AnsiMode
light_dark: LightDark = 'dark'
lightness: float | None = None
color_align: ColorAlignment = ColorAlignment('horizontal')
color_align: ColorAlignment = field(default_factory=lambda: ColorAlignment('horizontal'))
@classmethod
def from_dict(cls, d: dict):
+114 -17
View File
@@ -4,23 +4,38 @@ import inspect
import os
import platform
import re
import shlex
import subprocess
import sys
import zipfile
from dataclasses import dataclass
from pathlib import Path
from subprocess import check_output
from tempfile import TemporaryDirectory
from urllib.request import urlretrieve
import pkg_resources
from typing_extensions import Literal
from hyfetch.color_util import color
from .constants import GLOBAL_CFG
from .constants import GLOBAL_CFG, MINGIT_URL
from .presets import ColorProfile
from .serializer import from_dict
RE_NEOFETCH_COLOR = re.compile('\\${c[0-9]}')
def term_size() -> tuple[int, int]:
"""
Get terminal size
:return:
"""
try:
return os.get_terminal_size().columns, os.get_terminal_size().lines
except Exception:
return 100, 20
def ascii_size(asc: str) -> tuple[int, int]:
"""
Get distro ascii width, height ignoring color code
@@ -127,7 +142,83 @@ def get_command_path() -> str:
:return: Command path
"""
return pkg_resources.resource_filename(__name__, 'scripts/neowofetch')
cmd_path = pkg_resources.resource_filename(__name__, 'scripts/neowofetch')
# Windows doesn't support symbolic links, but also I can't detect symbolic links... hard-code it here for now.
if platform.system() == 'Windows':
return str(Path(cmd_path).parent.parent.parent / 'neofetch')
return cmd_path
def ensure_git_bash() -> Path:
"""
Ensure git bash installation for windows
:returns git bash path
"""
if platform.system() == 'Windows':
# Find installation in default path
def_path = Path(r'C:\Program Files\Git\bin\bash.exe')
if def_path.is_file():
return def_path
# Find installation in PATH (C:\Program Files\Git\cmd should be in path)
pth = (os.environ.get('PATH') or '').lower().split(';')
pth = [p for p in pth if p.endswith(r'\git\cmd')]
if pth:
return Path(pth[0]).parent / r'bin\bash.exe'
# Previously downloaded portable installation
path = Path(__file__).parent / 'min_git'
pkg_path = path / 'package.zip'
if path.is_dir():
return path / r'bin\bash.exe'
# No installation found, download a portable installation
print('Git installation not found. Git is required to use HyFetch/neofetch on Windows')
print('Downloading a minimal portable package for Git...')
urlretrieve(MINGIT_URL, pkg_path)
print('Download finished! Extracting...')
with zipfile.ZipFile(pkg_path, 'r') as zip_ref:
zip_ref.extractall(path)
print('Done!')
return path / r'bin\bash.exe'
def check_windows_cmd():
"""
Check if this script is running under cmd.exe. If so, launch an external window with git bash
since cmd doesn't support RGB colors.
"""
if platform.system() == 'Windows':
import psutil
# TODO: This line does not correctly identify cmd prompts...
if psutil.Process(os.getppid()).name().lower().strip() == 'cmd.exe':
print("cmd.exe doesn't support RGB colors, restarting in MinTTY...")
cmd = f'"{ensure_git_bash().parent.parent / "usr/bin/mintty.exe"}" -s 110,40 -e python -m hyfetch --ask-exit'
os.system(cmd)
sys.exit(0)
def run_command(args: str, pipe: bool = False) -> str | None:
"""
Run neofetch command
"""
if platform.system() != 'Windows':
full_cmd = shlex.split(f'/usr/bin/env bash {get_command_path()} {args}')
else:
cmd = get_command_path().replace("\\", "/").replace("C:/", "/c/")
args = args.replace('\\', '/').replace('C:/', '/c/')
full_cmd = [ensure_git_bash(), '-c', f'{cmd} {args}']
# print(full_cmd)
if pipe:
return check_output(full_cmd).decode().strip()
else:
subprocess.run(full_cmd)
def get_distro_ascii(distro: str | None = None) -> str:
@@ -147,11 +238,16 @@ def get_distro_ascii(distro: str | None = None) -> str:
os.environ['CUSTOM_DISTRO'] = distro
cmd = 'print_custom_ascii'
return normalize_ascii(check_output([get_command_path(), cmd]).decode().strip())
asc = run_command(cmd, True)
# Unescape backslashes here because backslashes are escaped in neofetch for printf
asc = asc.replace('\\\\', '\\')
return normalize_ascii(asc)
def get_distro_name():
return check_output([get_command_path(), 'ascii_distro_name']).decode().strip()
return run_command('ascii_distro_name', True)
def run_neofetch(preset: ColorProfile, alignment: ColorAlignment):
@@ -165,6 +261,9 @@ def run_neofetch(preset: ColorProfile, alignment: ColorAlignment):
w, h = ascii_size(asc)
asc = alignment.recolor_ascii(asc, preset)
# Escape backslashes here because backslashes are escaped in neofetch for printf
asc = asc.replace('\\', '\\\\')
# Write temp file
with TemporaryDirectory() as tmp_dir:
tmp_dir = Path(tmp_dir)
@@ -175,18 +274,7 @@ def run_neofetch(preset: ColorProfile, alignment: ColorAlignment):
os.environ['ascii_len'] = str(w)
os.environ['ascii_lines'] = str(h)
if platform.system() != 'Windows':
os.system(f'{get_command_path()} --ascii --source {path.absolute()} --ascii-colors')
else:
cmd = get_command_path().replace("\\", "/").replace("C:/", "/c/")
path_str = str(path.absolute()).replace('\\', '/').replace('C:/', '/c/')
cmd = f'ascii_len={w} ascii_lines={h} {cmd} --ascii --source {path_str} --ascii-colors'
full_cmd = ['C:\\Program Files\\Git\\bin\\bash.exe', '-c', cmd]
# print(full_cmd)
subprocess.run(full_cmd)
run_command(f'--ascii --source {path.absolute()} --ascii-colors')
def get_fore_back(distro: str | None = None) -> tuple[int, int] | None:
@@ -200,8 +288,9 @@ def get_fore_back(distro: str | None = None) -> tuple[int, int] | None:
distro = GLOBAL_CFG.override_distro
if not distro:
distro = get_distro_name().lower()
distro = distro.lower().replace(' ', '-')
for k, v in fore_back.items():
if distro.startswith(k.lower()):
if distro == k.lower():
return v
return None
@@ -210,5 +299,13 @@ def get_fore_back(distro: str | None = None) -> tuple[int, int] | None:
fore_back = {
'fedora': (2, 1),
'ubuntu': (2, 1),
'kubuntu': (2, 1),
'lubuntu': (2, 1),
'xubuntu': (2, 1),
'ubuntu-cinnamon': (2, 1),
'ubuntu-kylin': (2, 1),
'ubuntu-mate': (2, 1),
'ubuntu-studio': (2, 1),
'ubuntu-sway': (2, 1),
}
+62 -1
View File
@@ -112,7 +112,7 @@ class ColorProfile:
"""
return ColorProfile([c.set_light(light, at_least, at_most) for c in self.colors])
def set_light_dl(self, light: float, term: LightDark = GLOBAL_CFG.light_dark()):
def set_light_dl(self, light: float, term: LightDark | None = None):
"""
Set HSL lightness value with respect to dark/light terminals
@@ -120,6 +120,7 @@ class ColorProfile:
:param term: Terminal color (can be "dark" or "light")
:return: New color profile (original isn't modified)
"""
term = term or GLOBAL_CFG.light_dark()
assert term.lower() in ['light', 'dark']
at_least, at_most = (True, None) if term.lower() == 'dark' else (None, True)
return self.set_light_raw(light, at_least, at_most)
@@ -532,4 +533,64 @@ PRESETS: dict[str, ColorProfile] = {
"#F39FCE",
"#EA7BB3",
]),
'unlabeled1': ColorProfile([
'#EAF8E4',
'#FDFDFB',
'#E1EFF7',
'#F4E2C4'
]),
'unlabeled2': ColorProfile([
'#250548',
'#FFFFFF',
'#F7DCDA',
'#EC9BEE',
'#9541FA',
'#7D2557'
]),
'gendernonconforming1': ColorProfile(
ColorProfile([
'#50284d',
'#96467b',
'#5c96f7',
'#ffe6f7',
'#5c96f7',
'#96467b',
'#50284d'
]).with_weights([
4,1,1,1,1,1,4
])
),
'gendernonconforming2': ColorProfile([
'#50284d',
'#96467b',
'#5c96f7',
'#ffe6f7',
'#5c96f7',
'#96467b',
'#50284d'
]),
'femboy': ColorProfile([
"#d260a5",
"#e4afcd",
"#fefefe",
"#57cef8",
"#fefefe",
"#e4afcd",
"#d260a5"
]),
'tomboy': ColorProfile([
"#2f3fb9",
"#613a03",
"#fefefe",
"#f1a9b7",
"#fefefe",
"#613a03",
"#2f3fb9"
]),
}
+162
View File
@@ -0,0 +1,162 @@
from __future__ import annotations
import os
import platform
import signal
import sys
import termios
import tty
from select import select
from .color_util import RGB, AnsiMode
class OSCException(Exception):
pass
def unix_detect_ansi_mode() -> AnsiMode | None:
"""
Translated from Termenv's ColorProfile():
https://github.com/muesli/termenv/blob/42ca574de3e99a262e1724d2fb8daa1aea68a5b9/termenv_unix.go#L23
:return: Ansi mode
"""
if not sys.stdout.isatty():
return 'ansi'
term = os.environ.get('TERM')
color_term = os.environ.get('COLORTERM')
if color_term == 'truecolor' or color_term == '24bit':
if term.startswith('screen') and os.environ.get('TERM_PROGRAM') != 'tmux':
return '8bit'
return 'rgb'
elif color_term == 'true' or color_term == 'yes':
return '8bit'
if term == 'xterm-kitty':
return 'rgb'
elif term == 'linux':
return 'ansi'
if '256color' in term:
return 'rgb'
if 'color' in term:
return '8bit'
if 'ansi' in term:
return 'ansi'
return None
def windows_detect_ansi_mode() -> AnsiMode | None:
"""
Translated from Termenv's ColorProfile():
https://github.com/muesli/termenv/blob/42ca574de3e99a262e1724d2fb8daa1aea68a5b9/termenv_windows.go#L13
:return: Ansi mode
"""
if not sys.stdout.isatty():
return 'ansi'
if os.environ.get("ConEmuANSI") == "ON":
return 'rgb'
release, _, build = map(int, platform.version().split('.'))
if build < 10586 or release < 10:
# No ANSI support before Windows 10 build 10586.
if os.environ.get('ANSICON'):
conv = os.environ.get('ANSICON_VER')
if int(conv) < 181:
return 'ansi'
return '8bit'
return 'ansi'
if build < 14931:
# No true color support before build 14931.
return '8bit'
return 'rgb'
def detect_ansi_mode() -> AnsiMode | None:
system = platform.system().lower()
if system.startswith("linux") or system.startswith("darwin"):
return unix_detect_ansi_mode()
if system.startswith("windows"):
return windows_detect_ansi_mode()
return None
def unix_read_osc(seq: int) -> str:
# screen/tmux can't support OSC, because they can be connected to multiple
# terminals concurrently.
term = os.environ.get('TERM')
if term.startswith("screen") or term.startswith("tmux"):
raise OSCException("Screen/tmux not supported")
t = sys.stdout
if not t.isatty():
raise OSCException("Not a tty")
fd = sys.stdin.fileno()
# Set raw mode
settings = termios.tcgetattr(fd)
tty.setraw(sys.stdin.fileno())
# first, send OSC query, which is ignored by terminal which do not support it
t.write(f"\x1b]{seq};?\x1b\\")
t.flush()
# stdin response timeout should be higher for ssh sessions
timeout = 0.05 if (os.environ.get('SSH_TTY') or os.environ.get('SSH_SESSION')) is None else 0.5
# Wait for input to appear
if not select([sys.stdin], [], [], timeout)[0]:
raise OSCException("No response received")
# Read until termination, or if it doesn't terminate, read until 1 second passes
def handler(signum, frame):
raise IOError()
signal.signal(signal.SIGALRM, handler)
signal.setitimer(signal.ITIMER_REAL, timeout, 1)
code = ""
try:
for _ in range(28):
code += sys.stdin.read(1)
# Terminate with sequence terminator [\ or bell ^G
if code.endswith('\x1b\\') or code.endswith('\a'):
break
signal.alarm(0)
except IOError:
pass
# Reset terminal back to normal mode (previously set to raw mode)
termios.tcsetattr(fd, termios.TCSADRAIN, settings)
# Validate output
if not code:
raise OSCException("No response received")
start = f"\x1b]{seq};"
if not code.startswith(start):
raise OSCException("Received response is not an OSC response")
# Strip starting code and termination code
code = code.lstrip(start).rstrip("\x1b\\").rstrip('\a')
return code
def get_background_color() -> RGB | None:
try:
osc = unix_read_osc(11).lstrip("rgb:")
return RGB.from_hex(''.join([v[:2] for v in osc.split('/')]))
except Exception:
return None
+684 -204
View File
File diff suppressed because it is too large Load Diff
+50 -35
View File
@@ -1,7 +1,7 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.2.
.TH NEOFETCH "1" "August 2022" "Neofetch 7.3.0" "User Commands"
.TH NEOFETCH "1" "November 2022" "Neofetch 7.3.4" "User Commands"
.SH NAME
Neofetch \- manual page for Neofetch 7.3.0
Neofetch \- manual page for Neofetch 7.3.4
.SH SYNOPSIS
.B neofetch
\fI\,func_name --option "value" --option "value"\/\fR
@@ -164,9 +164,12 @@ Print the Artist/Album/Title on separate lines.
\fB\-\-memory_percent\fR on/off
Display memory percentage.
.TP
\fB\-\-memory_unit\fR kib/mib/gib
\fB\-\-memory_unit\fR (k/m/g/t)ib
Memory output unit.
.TP
\fB\-\-memory_precision\fR integer
Change memory output precision. (???0, default=2)
.TP
\fB\-\-music_player\fR player\-name
Manually specify a player to use.
Available values are listed in the config file
@@ -303,49 +306,52 @@ Which Distro's ascii art to print
.TP
NOTE: AIX, AlmaLinux, Alpine, Alter, Amazon, AmogOS, Anarchy,
Android, Antergos, antiX, AOSC OS, AOSC OS/Retro, Aperio GNU/Linux,
Apricity, Arch, ArchBox, Archcraft, ARCHlabs, ArchMerge, ArchStrike,
ArcoLinux, Artix, Arya, Asahi, AsteroidOS, Bedrock, BigLinux,
Bitrig, BlackArch, blackPanther, BLAG, BlankOn, BlueLight, Bodhi,
bonsai, BSD, BunsenLabs, Cachy OS, Calculate, CalinixOS, Carbs, CBLMariner, CelOS, Center, CentOS, Chakra, ChaletOS, Chapeau, Chrom,
Cleanjaro, Clear Linux OS, ClearOS, Clover, Condres, Container Linux
by CoreOS, CRUX, Crystal Linux, Cucumber, CutefishOS, CyberOS,
dahlia, DarkOs, Darwin, Debian, Deepin, DesaOS, Devuan, DracOS,
DragonFly, Drauger, Elementary, Elive, EncryptOS, EndeavourOS,
Endless, EuroLinux, Exherbo, Exodia Predator OS, Fedora, Feren,
Finnix, FreeBSD, FreeMiNT, Frugalware, Funtoo, GalliumOS, Garuda,
Gentoo, glaucus, gNewSense, GNOME, GNU, GoboLinux, GrapheneOS,
Grombyang, Guix, Haiku, HarDClanZ, Hash, Huayra, HydroOS, Hyperbola,
Apricity, Arch, ArchBox, Archcraft, ARCHlabs, ArchStrike, ArcoLinux,
Artix, Arya, Asahi, AsteroidOS, astOS, Bedrock, BigLinux, Bitrig,
BlackArch, blackPanther, BLAG, BlankOn, BlueLight, Bodhi, bonsai,
BSD, BunsenLabs, Cachy OS, Calculate, CalinixOS, Carbs, CBL\-Mariner,
CelOS, Center, CentOS, Chakra, ChaletOS, Chapeau, ChonkySealOS,
Chrom, Cleanjaro, Clear Linux OS, ClearOS, Clover, Cobalt, Condres,
Container Linux by CoreOS, CRUX, Crystal Linux, Cucumber,
CutefishOS, CyberOS, dahlia, DarkOs, Darwin, Debian, Deepin, DesaOS,
Devuan, DietPi, DracOS, DragonFly, Drauger, Droidian, Elementary,
Elive, EncryptOS, EndeavourOS, Endless, Enso, EuroLinux, Exherbo,
Exodia Predator OS, Fedora, Feren, Finnix, FreeBSD, FreeMiNT,
Frugalware, Funtoo, GalliumOS, Garuda, Gentoo, GhostBSD, glaucus,
gNewSense, GNOME, GNU, GoboLinux, GrapheneOS, Grombyang, Guix,
Haiku, HamoniKR, HarDClanZ, Hash, Huayra, HydroOS, Hyperbola,
iglunix, instantOS, IRIX, Itc, januslinux, Kaisen, Kali, KaOS, KDE,
Kibojoe, Kogaion, Korora, KrassOS, KSLinux, Kubuntu, LangitKetujuh,
LaxerOS, LEDE, LibreELEC, Linspire, Linux, Linux Lite, Linux Mint,
Linux Mint Old, Live Raizo, LMDE, Lubuntu, Lunar, mac, Mageia,
MagpieOS, Mandriva, Manjaro, MassOS, MatuusOS, Maui, Mer, Minix,
MIRACLE LINUX, MX, Namib, Neptune, NetBSD, Netrunner, Nitrux, NixOS,
NomadBSD, Nurunner, NuTyX, Obarun, OBRevenge, Open Source Media
Center, OpenBSD, openEuler, OpenIndiana, openmamba, OpenMandriva,
OpenStage, openSUSE, openSUSE Leap, openSUSE Tumbleweed, OpenWrt,
OPNsense, Oracle, orchid, OS Elbrus, PacBSD, Parabola, parch,
Pardus, Parrot, Parsix, PCBSD, PCLinuxOS, pearOS, Pengwin, Pentoo,
Peppermint, Pisi, PNM Linux, Pop!_OS, Porteus, PostMarketOS,
Profelis SambaBOX, Proxmox, PuffOS, Puppy, PureOS, Q4OS, Qubes,
Qubyt, Quibian, Radix, Raspbian, Reborn OS, Red Star, Redcore,
Redhat, Refracted Devuan, Regata, Regolith, rocky, Rosa, Sabayon,
sabotage, Sailfish, SalentOS, Scientific, semc, Septor, Serene,
SharkLinux, ShastraOS, Siduction, SkiffOS, Slackware, SliTaz,
SmartOS, Soda, Solus, Source Mage, Sparky, Star, SteamOS, Sulin,
SunOS, SwagArch, t2, Tails, TeArch, TorizonCore, Trisquel, Twister,
Ubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE,
Ubuntu Studio, Ubuntu Sway, Ubuntu Touch, Ubuntu\-GNOME,
ubuntu_old02, Ultramarine Linux, Univalent, Univention, Uos, uwuntu,
Venom, VNux, Void, VzLinux, wii\-linux\-ngx, Windows, Windows 10,
Windows 11, XFerience, Xubuntu, yiffOS, Zorin have ascii logos.
NomadBSD, Nurunner, NuTyX, Obarun, OBRevenge, OmniOS, Open Source
Media Center, OpenBSD, openEuler, OpenIndiana, openmamba,
OpenMandriva, OpenStage, openSUSE, openSUSE Leap, openSUSE
Tumbleweed, OpenWrt, OPNsense, Oracle, orchid, OS Elbrus, PacBSD,
Parabola, parch, Pardus, Parrot, Parsix, PCBSD, PCLinuxOS, pearOS,
Pengwin, Pentoo, Peppermint, Pisi, PNM Linux, Pop!_OS, Porteus,
PostMarketOS, Profelis SambaBOX, Proxmox, PuffOS, Puppy, PureOS,
Q4OS, Qubes, Qubyt, Quibian, Radix, Raspbian, ravynOS, Reborn OS,
Red Star, Redcore, Redhat, Refracted Devuan, Regata, Regolith,
rocky, Rosa, Sabayon, sabotage, Sailfish, SalentOS, Scientific,
semc, Septor, Serene, SharkLinux, ShastraOS, Siduction, SkiffOS,
Slackware, SliTaz, SmartOS, Soda, Solus, Source Mage, Sparky, Star,
SteamOS, Stock Linux, Sulin, SunOS, SwagArch, t2, Tails, TeArch,
TorizonCore, Trisquel, Twister, Ubuntu, Ubuntu Budgie, Ubuntu
Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Sway,
Ubuntu Touch, Ubuntu\-GNOME, ubuntu_old02, Ultramarine Linux,
Univalent, Univention, Uos, uwuntu, Vanilla, Venom, VNux, Void,
VzLinux, wii\-linux\-ngx, Windows, Windows 10, Windows 11, XFerience,
Xubuntu, yiffOS, Zorin have ascii logos.
.TP
NOTE: arch, dragonfly, Fedora, LangitKetujuh, nixos, redhat, Ubuntu
have 'old' logo variants, use {distro}_old to use them.
.TP
NOTE: alpine, android, aoscosretro, arch, arcolinux, artix,
CalinixOS, centos, cleanjaro, crux, debian, dragonfly, elementary,
fedora, freebsd, gentoo, guix, haiku, hyperbola, linuxlite,
fedora, freebsd, garuda, gentoo, guix, haiku, hyperbola, linuxlite,
linuxmint, mac, mageia, manjaro, mx, netbsd, nixos, openbsd,
opensuse, orchid, parabola, popos, postmarketos, pureos, Raspbian,
rocky, slackware, sunos, ubuntu, void have 'small' logo variants,
@@ -412,9 +418,18 @@ Don't create the user config file.
\fB\-\-print_config\fR
Print the default config file to stdout.
.TP
\fB\-\-stdout\fR
\fB\-\-stdout\fR=\fI\,on\/\fR
Turn off all colors and disables any ASCII/image backend.
.TP
\fB\-\-stdout\fR=\fI\,off\/\fR
Enable the colored output and ASCII/image backend
.TP
\fB\-\-stdout\fR=\fI\,auto\/\fR
Let the program decide basing on the output type (default behavior)
.TP
\fB\-\-stdout\fR
Equivalent to '\-\-stdout=on', for backward compatibility
.TP
\fB\-\-help\fR
Print this text and exit
.TP
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "neowofetch",
"version": "1.4.0",
"version": "1.4.4",
"description": "Updated neofetch",
"repository": {
"type": "git",
@@ -22,4 +22,4 @@
"url": "https://github.com/hykilpikonna/neofetch/issues"
},
"homepage": "https://github.com/hykilpikonna/neofetch#readme"
}
}
+10 -4
View File
@@ -3,18 +3,18 @@ import pathlib
from setuptools import setup
import hyfetch
import hyfetch.constants
# The directory containing this file
HERE = pathlib.Path(__file__).parent
# The text of the README file
README = (HERE / "README.md").read_text()
README = (HERE / "README.md").read_text('utf-8')
# This call to setup() does all the work
setup(
name="HyFetch",
version=hyfetch.__version__,
version=hyfetch.constants.VERSION,
description="neofetch with flags <3",
long_description=README,
long_description_content_type="text/markdown",
@@ -33,7 +33,13 @@ setup(
packages=['hyfetch'],
package_data={'hyfetch': ['hyfetch/*']},
include_package_data=True,
install_requires=['setuptools', 'typing_extensions'],
install_requires=[
# Universal dependencies
'setuptools', 'typing_extensions',
# Windows dependencies
'psutil ; platform_system=="Windows"',
],
entry_points={
"console_scripts": [
"hyfetch=hyfetch.main:run",
+68
View File
@@ -0,0 +1,68 @@
from __future__ import annotations
import sys
import time
from dataclasses import dataclass
from pathlib import Path
from urllib.request import urlretrieve
from hyfetch.color_util import printc, color
from hyfetch.neofetch_util import term_size
@dataclass
class Theme:
done_char: str
todo_char: str
prefix: str = ''
suffix: str = ''
done_len: int = 1
todo_len: int = 1
CLASSIC_THEME = Theme('', '.', '[', ']')
NEW_THEME = Theme('&a━', '&c━')
EMOJI_THEME = Theme('', '🕑', done_len=2, todo_len=2)
EGG_THEME = Theme('🐣', '🥚', done_len=2, todo_len=2)
FLOWER_THEME = Theme('🌸', '🥀', done_len=2, todo_len=2)
def print_progressbar(total: int, i: int, length: int | None = None, theme: Theme = EMOJI_THEME, unit=''):
if not length:
length = term_size()[0]
i += 1
completed = f'{i * 100 / total:.0f}%'
placeholder = 'PLACEHOLDER_BAR'
template = f'{theme.prefix}{placeholder}{theme.suffix}&r {completed} {i}/{total}{unit}'
length -= len(template) - len(placeholder) + 2
progress = int(i / total * length)
bar = f'{theme.done_char * (progress // theme.todo_len)}{theme.todo_char * ((length - progress) // theme.done_len)}'
print(color(template.replace(placeholder, bar)), end='\r', flush=True)
def download_pbar(url: str, path: Path):
def hook(b: int, bsize: int, tsize: int):
print_progressbar(tsize // 1024 // 1024, b * bsize // 1024 // 1024, unit=' MB')
if path.is_dir():
filename = url.split('/')[-1]
path = path / filename
path.parent.mkdir(exist_ok=True, parents=True)
urlretrieve(url, filename=path, reporthook=hook)
print()
if __name__ == '__main__':
# theme = {'emoji': EMOJI_THEME, 'flower': FLOWER_THEME, 'egg': EGG_THEME, 'classic': CLASSIC_THEME, 'new': NEW_THEME}
#
# for name, t in theme.items():
# print(f'\n{name} theme:')
# for i in range(100):
# print_progressbar(100, i, theme=t)
# time.sleep(0.015)
# print()
download_pbar('https://github.com/git-for-windows/git/releases/download/v2.37.2.windows.2/MinGit-2.37.2.2-busybox-64-bit.zip', Path('Downloads'))
+7 -2
View File
@@ -12,6 +12,11 @@ upstream = 'dylanaraps/neofetch'
my_fork = 'hykilpikonna/hyfetch'
my_base = 'master'
http = requests.Session()
if 'GH_TOKEN' in os.environ:
print('Token loaded')
http.headers['Authorization'] = f'token {os.environ["GH_TOKEN"]}'
def copy_comment():
# Get commit SHA
@@ -42,11 +47,11 @@ if __name__ == '__main__':
print(f'Accepting pull request {pr}...')
# Fetch original pr's information
info = requests.get(f'https://api.github.com/repos/{upstream}/pulls/{pr}').json()
info = http.get(f'https://api.github.com/repos/{upstream}/pulls/{pr}').json()
user = info['user']['login']
# Fetch commit information
commits = requests.get(f'https://api.github.com/repos/{upstream}/pulls/{pr}/commits').json()
commits = http.get(f'https://api.github.com/repos/{upstream}/pulls/{pr}/commits').json()
author = commits[0]['commit']['author']
# Create commit message
+156
View File
@@ -0,0 +1,156 @@
#!/usr/bin/env python3
import argparse
import json
import os
import re
import shlex
import stat
import subprocess
import sys
from pathlib import Path
from packaging import version as pv
sys.path.append(str(Path(__file__).parent.parent))
from tools.list_distros import generate_help
from tools.reformat_readme import reformat_readme
def pre_check():
"""
Check source code status before releasing.
"""
assert os.path.isfile('./neofetch'), './neofetch doesn\'t exist, you are running this script in the wrong directory'
assert os.stat('./neofetch').st_mode & stat.S_IEXEC, 'neofetch is not executable'
assert os.path.islink('./hyfetch/scripts/neowofetch'), 'neowofetch is not a symbolic link'
# subprocess.check_call(shlex.split('git diff-index --quiet HEAD --')) # 'Please commit all changes before release'
subprocess.check_call(shlex.split('shellcheck neofetch'))
def edit_versions(version: str):
"""
Edit version numbers in hyfetch/constants.py, package.json, and README.md
Also edits version number of neofetch, but the neofetch version number is separate.
:param version: Version to release
"""
# 1. package.json
print('Editing package.json...')
path = Path('package.json')
content = json.loads(path.read_text())
cur = pv.parse(content['version'])
assert cur < pv.parse(version), 'Version did not increase'
content['version'] = version
path.write_text(json.dumps(content, ensure_ascii=False, indent=2))
# 2. hyfetch/constants.py
print('Editing hyfetch/constants.py...')
path = Path('hyfetch/constants.py')
content = [f"VERSION = '{version}'" if l.startswith('VERSION = ') else l for l in path.read_text().split('\n')]
path.write_text('\n'.join(content))
# 3. README.md
print('Editing README.md...')
path = Path('README.md')
content = path.read_text()
changelog_i = content.index('<!-- CHANGELOG STARTS HERE --->')
version_i = content.index('###', changelog_i)
version_end = content.index('\n', version_i)
content = content[:version_i] + f'### {version}' + content[version_end:]
path.write_text(content)
# 4. neofetch script
print('Editing neofetch...')
path = Path('neofetch')
lines = path.read_text().split('\n')
version_i = next(i for i, l in enumerate(lines) if l.startswith('version='))
nf = pv.parse(lines[version_i].replace('version=', ''))
new = pv.parse(version)
nf = f'{nf.major + new.major - cur.major}.{nf.minor + new.minor - cur.minor}.{nf.micro + new.micro - cur.micro}'
lines[version_i] = f"version={nf}"
path.write_text('\n'.join(lines))
def finalize_neofetch():
"""
Finalize current version
"""
# 1. Update distro list
print('Updating distro list in neofetch...')
path = Path('neofetch')
content = path.read_text()
content = re.compile(r'(?<=# Flag: --ascii_distro\n#\n).*?(?=ascii_distro=)', re.DOTALL)\
.sub(generate_help(100, '# ') + '\n', content)
content = re.compile(r"""(?<=Which Distro's ascii art to print\n\n).*?{distro}_small to use them\.""", re.DOTALL)\
.sub(generate_help(100, ' ' * 32), content)
path.write_text(content)
# 2. Regenerate man page
print('Regenerating neofetch man page...')
Path('neofetch.1').write_text(subprocess.check_output(['help2man', './neofetch']).decode())
# 3. Reformat readme links
print('Reformatting readme links...')
reformat_readme()
def post_check():
"""
Check after changes are made
"""
subprocess.check_call(shlex.split('shellcheck neofetch'))
def create_release(v: str):
"""
Create release commit and tag
"""
print('Committing changes...')
# 1. Add files
subprocess.check_call(['git', 'add', 'hyfetch/constants.py', 'neofetch', 'neofetch.1', 'package.json', 'README.md'])
# 2. Commit
subprocess.check_call(['git', 'commit', '-m', f'[U] Release {v}'])
# 3. Create tag
subprocess.check_call(['git', 'tag', v])
i = input('Please check the commit is correct. Press y to continue or any other key to cancel.')
assert i == 'y'
# 4. Push
print('Pushing commits...')
subprocess.check_call(['git', 'push'])
subprocess.check_call(['git', 'push', 'origin', v])
def deploy():
"""
Deploy release to pip and npm
"""
print('Deploying to pypi...')
subprocess.check_call(['bash', 'tools/deploy.sh'])
print('Done!')
print('Deploying to npm...')
otp = input('Please provide 2FA OTP for NPM: ')
subprocess.check_call(['npm', 'publish', '--otp', otp])
print('Done!')
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='HyFetch Release Utility')
parser.add_argument('version', help='Version to release')
args = parser.parse_args()
pre_check()
edit_versions(args.version)
finalize_neofetch()
post_check()
create_release(args.version)
deploy()
+11
View File
@@ -0,0 +1,11 @@
### Things to do before deploying...
* [x] Check file permissions (+x)
* [x] Check Shellcheck (should be automatic)
* [x] Update version numbers (`README.md`, `package.json`, `hyfetch/constants.py`, `neofetch`)
* [x] Update distro list in neofetch help (`tools/list_distros.py`)
* [x] Regenerate man page (`help2man ./neofetch > neofetch.1`)
* [ ] Create an RC release and deploy to pypi, try installing and testing on many distros.
* [ ] Change back to stable release, create tag, create GitHub release
* [x] Formally deploy to pypi and npm (`tools/deploy.sh`, `npm publish`)
* [ ] Update ArchLinux AUR and NixOS packaging
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
aix = AsciiArt(match=r'''"AIX"*''', color='2 7', ascii=r"""
${c1} `:+ssssossossss+-`
.oys///oyhddddhyo///sy+.
/yo:+hNNNNNNNNNNNNNNNNh+:oy/
:h/:yNNNNNNNNNNNNNNNNNNNNNNy-+h:
`ys.yNNNNNNNNNNNNNNNNNNNNNNNNNNy.ys
`h+-mNNNNNNNNNNNNNNNNNNNNNNNNNNNNm-oh
h+-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN.oy
/d`mNNNNNNN/::mNNNd::m+:/dNNNo::dNNNd`m:
h//NNNNNNN: . .NNNh mNo od. -dNNNNN:+y
N.sNNNNNN+ -N/ -NNh mNNd. sNNNNNNNo-m
N.sNNNNNs +oo /Nh mNNs` ` /mNNNNNNo-m
h//NNNNh ossss` +h md- .hm/ `sNNNNN:+y
:d`mNNN+/yNNNNNd//y//h//oNNNNy//sNNNd`m-
yo-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNm.ss
`h+-mNNNNNNNNNNNNNNNNNNNNNNNNNNNNm-oy
sy.yNNNNNNNNNNNNNNNNNNNNNNNNNNs.yo
:h+-yNNNNNNNNNNNNNNNNNNNNNNs-oh-
:ys:/yNNNNNNNNNNNNNNNmy/:sy:
.+ys///osyhhhhys+///sy+.
-/osssossossso/-
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
almalinux = AsciiArt(match=r'''"AlmaLinux"*''', color='1 3 4 2 6', ascii=r"""
${c1} 'c:.
${c1} lkkkx, .. ${c2}.. ,cc,
${c1} okkkk:ckkx' ${c2}.lxkkx.okkkkd
${c1} .:llcokkx' ${c2}:kkkxkko:xkkd,
${c1} .xkkkkdood: ${c2};kx, .lkxlll;
${c1} xkkx. ${c2}xk' xkkkkk:
${c1} 'xkx. ${c2}xd .....,.
${c3} .. ${c1}:xkl' ${c2}:c ..''..
${c3} .dkx' ${c1}.:ldl:'. ${c2}' ${c4}':lollldkkxo;
${c3} .''lkkko' ${c4}ckkkx.
${c3}'xkkkd:kkd. .. ${c5};' ${c4}:kkxo.
${c3},xkkkd;kk' ,d; ${c5}ld. ${c4}':dkd::cc,
${c3} .,,.;xkko'.';lxo. ${c5}dx, ${c4}:kkk'xkkkkc
${c3} 'dkkkkkxo:. ${c5};kx ${c4}.kkk:;xkkd.
${c3} ..... ${c5}.;dk:. ${c5}lkk. ${c4}:;,
${c5}:kkkkkkkdoxkkx
,c,,;;;:xkkd.
;kkkkl...
;kkkkl
,od;
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
alpine = AsciiArt(match=r'''"Alpine"*''', color='4 5 7 6', ascii=r"""
${c1} .hddddddddddddddddddddddh.
:dddddddddddddddddddddddddd:
/dddddddddddddddddddddddddddd/
+dddddddddddddddddddddddddddddd+
`sdddddddddddddddddddddddddddddddds`
`ydddddddddddd++hdddddddddddddddddddy`
.hddddddddddd+` `+ddddh:-sdddddddddddh.
hdddddddddd+` `+y: .sddddddddddh
ddddddddh+` `//` `.` -sddddddddd
ddddddh+` `/hddh/` `:s- -sddddddd
ddddh+` `/+/dddddh/` `+s- -sddddd
ddd+` `/o` :dddddddh/` `oy- .yddd
hdddyo+ohddyosdddddddddho+oydddy++ohdddh
.hddddddddddddddddddddddddddddddddddddh.
`yddddddddddddddddddddddddddddddddddy`
`sdddddddddddddddddddddddddddddddds`
+dddddddddddddddddddddddddddddd+
/dddddddddddddddddddddddddddd/
:dddddddddddddddddddddddddd:
.hddddddddddddddddddddddh.
""")
+12
View File
@@ -0,0 +1,12 @@
from hyfetch.distro import AsciiArt
alpine_small = AsciiArt(match=r'''"alpine_small"''', color='4 7', ascii=r"""
${c1} /\\ /\\
/${c2}/ ${c1}\\ \\
/${c2}/ ${c1}\\ \\
/${c2}// ${c1}\\ \\
${c2}// ${c1}\\ \\
\\
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
alter = AsciiArt(match=r'''"Alter"*''', color='6 6', ascii=r"""
${c1} %,
^WWWw
'wwwwww
!wwwwwwww
#`wwwwwwwww
@wwwwwwwwwwww
wwwwwwwwwwwwwww
wwwwwwwwwwwwwwwww
wwwwwwwwwwwwwwwwwww
wwwwwwwwwwwwwwwwwwww,
w~1i.wwwwwwwwwwwwwwwww,
3~:~1lli.wwwwwwwwwwwwwwww.
:~~:~?ttttzwwwwwwwwwwwwwwww
#<~:~~~~?llllltO-.wwwwwwwwwww
#~:~~:~:~~?ltlltlttO-.wwwwwwwww
@~:~~:~:~:~~(zttlltltlOda.wwwwwww
@~:~~: ~:~~:~:(zltlltlO a,wwwwww
8~~:~~:~~~~:~~~~_1ltltu ,www
5~~:~~:~~:~~:~~:~~~_1ltq N,,
g~:~~:~~~:~~:~~:~:~~~~1q N,
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
amazon = AsciiArt(match=r'''"Amazon"*''', color='3 7', ascii=r"""
${c1} `-/oydNNdyo:.`
`.:+shmMMMMMMMMMMMMMMmhs+:.`
-+hNNMMMMMMMMMMMMMMMMMMMMMMNNho-
.`` -/+shmNNMMMMMMNNmhs+/- ``.
dNmhs+:. `.:/oo/:.` .:+shmNd
dMMMMMMMNdhs+:.. ..:+shdNMMMMMMMd
dMMMMMMMMMMMMMMNds odNMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd
.:+ydNMMMMMMMMMMMh yMMMMMMMMMMMNdy+:.
`.:+shNMMMMMh yMMMMMNhs+:``
`-+shy shs+:`
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
amogos = AsciiArt(match=r'''"AmogOS"*''', color='15 6', ascii=r"""
${c1} ___________
/ \
/ ${c2}______${c1} \
/ ${c2}/ \${c1} \
| ${c2}( )${c1} \
/ ${c2}\______/${c1} |
| |
/ \
| |
| |
/ |
| |
| _______ |
____/ / \ |
/ | | |
| / ____/ |
\_________/ / |
\ __/
\_______/
""")
+34
View File
@@ -0,0 +1,34 @@
from hyfetch.distro import AsciiArt
anarchy = AsciiArt(match=r'''"Anarchy"*''', color='7 4', ascii=r"""
${c2}..${c1}
${c2}..${c1}
${c2}:..${c1}
${c2}:+++.${c1}
.:::++${c2}++++${c1}+::.
.:+######${c2}++++${c1}######+:.
.+#########${c2}+++++${c1}##########:.
.+##########${c2}+++++++${c1}##${c2}+${c1}#########+.
+###########${c2}+++++++++${c1}############:
+##########${c2}++++++${c1}#${c2}++++${c1}#${c2}+${c1}###########+
+###########${c2}+++++${c1}###${c2}++++${c1}#${c2}+${c1}###########+
:##########${c2}+${c1}#${c2}++++${c1}####${c2}++++${c1}#${c2}+${c1}############:
###########${c2}+++++${c1}#####${c2}+++++${c1}#${c2}+${c1}###${c2}++${c1}######+
.##########${c2}++++++${c1}#####${c2}++++++++++++${c1}#######.
.##########${c2}+++++++++++++++++++${c1}###########.
#####${c2}++++++++++++++${c1}###${c2}++++++++${c1}#########+
:###${c2}++++++++++${c1}#########${c2}+++++++${c1}#########:
+######${c2}+++++${c1}##########${c2}++++++++${c1}#######+
+####${c2}+++++${c1}###########${c2}+++++++++${c1}#####+
:##${c2}++++++${c1}############${c2}++++++++++${c1}##:
.${c2}++++++${c1}#############${c2}++++++++++${c1}+.
:${c2}++++${c1}###############${c2}+++++++${c1}::
.${c2}++. .:+${c1}##############${c2}+++++++${c1}..
${c2}.:.${c1} ..::++++++::..:${c2}++++${c1}+.
${c2}.${c1} ${c2}.:+++${c1}.
${c2}.:${c1}:
${c2}..${c1}
${c2}..${c1}
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
android = AsciiArt(match=r'''"Android"*''', color='2 7', ascii=r"""
${c1} -o o-
+hydNNNNdyh+
+mMMMMMMMMMMMMm+
`dMM${c2}m:${c1}NMMMMMMN${c2}:m${c1}MMd`
hMMMMMMMMMMMMMMMMMMh
.. yyyyyyyyyyyyyyyyyyyy ..
.mMMm`MMMMMMMMMMMMMMMMMMMM`mMMm.
:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM:
:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM:
:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM:
:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM:
-MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM-
+yy+ MMMMMMMMMMMMMMMMMMMM +yy+
mMMMMMMMMMMMMMMMMMMm
`/++MMMMh++hMMMM++/`
MMMMo oMMMM
MMMMo oMMMM
oNMm- -mMNs
""")
+12
View File
@@ -0,0 +1,12 @@
from hyfetch.distro import AsciiArt
android_small = AsciiArt(match=r'''"android_small"*''', color='2 7', ascii=r"""
${c1} ;, ,;
';,.-----.,;'
,' ',
/ O O \\
| |
'-----------------'
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
antergos = AsciiArt(match=r'''"Antergos"*''', color='4 6', ascii=r"""
${c2} `.-/::/-``
.-/osssssssso/.
:osyysssssssyyys+-
`.+yyyysssssssssyyyyy+.
`/syyyyyssssssssssyyyyys-`
`/yhyyyyysss${c1}++${c2}ssosyyyyhhy/`
.ohhhyyyys${c1}o++/+o${c2}so${c1}+${c2}syy${c1}+${c2}shhhho.
.shhhhys${c1}oo++//+${c2}sss${c1}+++${c2}yyy${c1}+s${c2}hhhhs.
-yhhhhs${c1}+++++++o${c2}ssso${c1}+++${c2}yyy${c1}s+o${c2}hhddy:
-yddhhy${c1}o+++++o${c2}syyss${c1}++++${c2}yyy${c1}yooy${c2}hdddy-
.yddddhs${c1}o++o${c2}syyyyys${c1}+++++${c2}yyhh${c1}sos${c2}hddddy`
`odddddhyosyhyyyyyy${c1}++++++${c2}yhhhyosddddddo
.dmdddddhhhhhhhyyyo${c1}+++++${c2}shhhhhohddddmmh.
ddmmdddddhhhhhhhso${c1}++++++${c2}yhhhhhhdddddmmdy
dmmmdddddddhhhyso${c1}++++++${c2}shhhhhddddddmmmmh
-dmmmdddddddhhys${c1}o++++o${c2}shhhhdddddddmmmmd-
.smmmmddddddddhhhhhhhhhdddddddddmmmms.
`+ydmmmdddddddddddddddddddmmmmdy/.
`.:+ooyyddddddddddddyyso+:.`
""")
+19
View File
@@ -0,0 +1,19 @@
from hyfetch.distro import AsciiArt
antix = AsciiArt(match=r'''"antiX"*''', color='1 7 3', ascii=r"""
${c1}
\
, - ~ ^ ~ - \ /
, ' \ ' , /
, \ '/
, \ / ,
,___, \/ ,
/ | _ _ _|_ o /\ ,
|, | / |/ | | | / \ ,
\,_/\_/ | |_/|_/|_/_/ \,
, / ,\
, / , ' \
' - , _ _ _ , '
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
aosc_os = AsciiArt(match=r'''"AOSC OS"*''', color='4 7 1', ascii=r"""
${c2} .:+syhhhhys+:.
.ohNMMMMMMMMMMMMMMNho.
`+mMMMMMMMMMMmdmNMMMMMMMMm+`
+NMMMMMMMMMMMM/ `./smMMMMMN+
.mMMMMMMMMMMMMMMo -yMMMMMm.
:NMMMMMMMMMMMMMMMs .hMMMMN:
.NMMMMhmMMMMMMMMMMm+/- oMMMMN.
dMMMMs ./ymMMMMMMMMMMNy. sMMMMd
-MMMMN` oMMMMMMMMMMMN: `NMMMM-
/MMMMh NMMMMMMMMMMMMm hMMMM/
/MMMMh NMMMMMMMMMMMMm hMMMM/
-MMMMN` :MMMMMMMMMMMMy. `NMMMM-
dMMMMs .yNMMMMMMMMMMMNy/. sMMMMd
.NMMMMo -/+sMMMMMMMMMMMmMMMMN.
:NMMMMh. .MMMMMMMMMMMMMMMN:
.mMMMMMy- NMMMMMMMMMMMMMm.
+NMMMMMms/.` mMMMMMMMMMMMN+
`+mMMMMMMMMNmddMMMMMMMMMMm+`
.ohNMMMMMMMMMMMMMMNho.
.:+syhhhhys+:.
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
aosc_os_retro = AsciiArt(match=r'''"AOSC OS/Retro"*''', color='4 7 1 3', ascii=r"""
${c2} .........
...................
.....................${c1}################${c2}
.............. ....${c1}################${c2}
.............. ...${c1}################${c2}
............. ..${c1}****************${c2}
............ . .${c1}****************${c2}
........... ... ${c1}................${c2}
.......... ..... ${c1}...............${c2}
......... ....... ...
.${c3}...... ${c2}.
${c3}..... .....${c2}.... ${c4}...........
${c3}.... ......${c2}. ${c4}...........
${c3}... ....... ${c4}...........
${c3}................ ${c4}***********
${c3}................ ${c4}###########
${c3}****************
${c3}################
""")
+15
View File
@@ -0,0 +1,15 @@
from hyfetch.distro import AsciiArt
aoscosretro_small = AsciiArt(match=r'''"aoscosretro_small"''', color='4 7 1 3', ascii=r"""
${c2} _____ ${c1}_____${c2}
-' '-${c1}| |${c2}
/ ___ ${c1}| |${c2}
| / _ \\${c1}|_____|${c2}
' / /_\\ \\
\\ / _____ \\${c4}___
${c3}|${c2}/_/ ${c3}| ${c4}| |
${c3}| | ${c4}|___|
${c3}|_____|
""")
+10
View File
@@ -0,0 +1,10 @@
from hyfetch.distro import AsciiArt
aperio_gnu_linux = AsciiArt(match=r'''"Aperio GNU/Linux"*''', color='255', ascii=r"""
${c2}
_.._ _ ._.. _
(_][_)(/,[ |(_)
| GNU/Linux
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
apricity = AsciiArt(match=r'''"Apricity"*''', color='4 7 1', ascii=r"""
${c2} ./o-
``...`` `:. -/:
`-+ymNMMMMMNmho-` :sdNNm/
`+dMMMMMMMMMMMMMMMmo` sh:.:::-
/mMMMMMMMMMMMMMMMMMMMm/`sNd/
oMMMMMMMMMMMMMMMMMMMMMMMs -`
:MMMMMMMMMMMMMMMMMMMMMMMMM/
NMMMMMMMMMMMMMMMMMMMMMMMMMd
MMMMMMMmdmMMMMMMMMMMMMMMMMd
MMMMMMy` .mMMMMMMMMMMMmho:`
MMMMMMNo/sMMMMMMMNdy+-.`-/
MMMMMMMMMMMMNdy+:.`.:ohmm:
MMMMMMMmhs+-.`.:+ymNMMMy.
MMMMMM/`.-/ohmNMMMMMMy-
MMMMMMNmNNMMMMMMMMmo.
MMMMMMMMMMMMMMMms:`
MMMMMMMMMMNds/.
dhhyys+/-`
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
arch = AsciiArt(match=r'''"Arch"*''', color='6 6 7 1', ascii=r"""
${c1} -`
.o+`
`ooo/
`+oooo:
`+oooooo:
-+oooooo+:
`/:-:++oooo+:
`/++++/+++++++:
`/++++++++++++++:
`/+++o${c2}oooooooo${c1}oooo/`
${c2} ${c1}./${c2}ooosssso++osssssso${c1}+`
${c2} .oossssso-````/ossssss+`
-osssssso. :ssssssso.
:osssssss/ osssso+++.
/ossssssss/ +ssssooo/-
`/ossssso+/:- -:/+osssso+-
`+sso+:-` `.-/+oso:
`++:. `-/+/
.` `/
""")
+22
View File
@@ -0,0 +1,22 @@
from hyfetch.distro import AsciiArt
arch_old = AsciiArt(match=r'''"arch_old"''', color='6 7 1', ascii=r"""
${c1} __
_=(SDGJT=_
_GTDJHGGFCVS)
,GTDJGGDTDFBGX0
${c1} JDJDIJHRORVFSBSVL${c2}-=+=,_
${c1} IJFDUFHJNXIXCDXDSV,${c2} "DEBL
${c1} [LKDSDJTDU=OUSCSBFLD.${c2} '?ZWX,
${c1} ,LMDSDSWH' `DCBOSI${c2} DRDS],
${c1} SDDFDFH' !YEWD,${c2} )HDROD
${c1} !KMDOCG &GSU|${c2}\_GFHRGO\'
${c1} HKLSGP'${c2} __${c1}\TKM0${c2}\GHRBV)'
${c1}JSNRVW'${c2} __+MNAEC${c1}\IOI,${c2}\BN'
${c1}HELK['${c2} __,=OFFXCBGHC${c1}\FD)
${c1}?KGHE ${c2}\_-#DASDFLSV='${c1} 'EF
'EHTI !H
`0F' '!
""")
+13
View File
@@ -0,0 +1,13 @@
from hyfetch.distro import AsciiArt
arch_small = AsciiArt(match=r'''"arch_small"''', color='6 7 1', ascii=r"""
${c1} /\\
/ \\
/\\ \\
${c2} / \\
/ ,, \\
/ | | -\\
/_-'' ''-_\\
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
archbox = AsciiArt(match=r'''"ArchBox"*''', color='2 7 1', ascii=r"""
${c1} ...:+oh/:::..
..-/oshhhhhh` `::::-.
.:/ohhhhhhhhhhhh` `-::::.
.+shhhhhhhhhhhhhhhhh` `.::-.
/`-:+shhhhhhhhhhhhhh` .-/+shh
/ .:/ohhhhhhhhh` .:/ohhhhhhhh
/ `-:+shhh` ..:+shhhhhhhhhhhh
/ .:ohhhhhhhhhhhhhhhhhhh
/ `hhhhhhhhhhhhhhhhhhhh
/ `hhhhhhhhhhhhhhhhhhhh
/ `hhhhhhhhhhhhhhhhhhhh
/ `hhhhhhhhhhhhhhhhhhhh
/ .+o+ `hhhhhhhhhhhhhhhhhhhh
/ -hhhhh `hhhhhhhhhhhhhhhhhhhh
/ ohhhhho `hhhhhhhhhhhhhhhhhhhh
/:::+`hhhhoos` `hhhhhhhhhhhhhhhhhs+`
`--/:` /: `hhhhhhhhhhhho/-
-/:. `hhhhhhs+:-`
::::/ho/-`
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
archcraft = AsciiArt(match=r'''"Archcraft"*''', color='6 1 2 3 4 5', ascii=r"""
${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢰⡆${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢠⣿⣿⡄${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c3}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢀⣾⣿⣿⣿⡀${c3}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c4}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣷⡀${c4}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣿⣿⣷${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c6}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢼⣿⣿⣿⣿⣿⣿⣿⣿⣧${c6}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣰⣤⣈⠻⢿⣿⣿⣿⣿⣿⣿⣧${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣰⣿⣿⣿⣿⣮⣿⣿⣿⣿⣿⣿⣿⣧${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c3}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧${c3}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c4}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧${c4}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c6}⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣿⡿⣿⣿⡟${c6}⠄⠄${c1}⠸⣿⣿⡿⣿⣿⣿⣿⣿⣷⡀${c6}⠄⠄⠄⠄⠄⠄⠄⠄
${c1}⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣿⡏${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⠈⣿⣿⣿⣿⣿⣷⡀${c1}⠄⠄⠄⠄⠄⠄⠄
${c2}⠄⠄⠄⠄⠄⠄${c1}⢀⣼⣿⣿⣿⣿⣿⣿⡗${c2}⠄⠄⠄${c1}⢀⣠⣤⣀⠄⠄⠄${c1}⠸⣿⣿⣿⣿⣿⣿⣷⡀${c2}⠄⠄⠄⠄⠄⠄
${c3}⠄⠄⠄⠄⠄${c1}⢀⣾⣿⣿⣿⣿⣿⡏⠁${c3}⠄⠄⠄${c1}⢠⣿⣿⣿⣿⡇${c3}⠄⠄⠄⠄${c1}⢙⣿⣿⣻⠿⣿⣷⡀${c3}⠄⠄⠄⠄⠄
${c4}⠄⠄⠄⠄${c1}⢀⣾⣿⣿⣿⣿⣿⣿⣷⣤⡀${c4}⠄⠄⠄${c1}⠻⣿⣿⡿⠃${c4}⠄⠄⠄${c1}⢀⣼⣿⣿⣿⣿⣦⣌⠙⠄${c4}⠄⠄⠄⠄
${c5}⠄⠄⠄${c1}⢠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⠏${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢿⣿⣿⣿⣿⣿⣿⣿⣿⣦⡀${c5}⠄⠄⠄
${c6}⠄⠄${c1}⢠⣿⣿⣿⣿⣿⣿⣿⡿⠟⠋⠁${c6}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⠙⠻⣿⣿⣿⣿⣿⣿⣿⣿⡄${c6}⠄⠄
${c1}⠄${c1}⣠⣿⣿⣿⣿⠿⠛⠋⠁${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⠉⠙⠻⢿⣿⣿⣿⣿⣆${c1}
${c1}⡰⠟⠛⠉⠁${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⠉⠙⠛⠿⢆
""")
+27
View File
@@ -0,0 +1,27 @@
from hyfetch.distro import AsciiArt
archlabs = AsciiArt(match=r'''"ARCHlabs"*''', color='6 6 7 1', ascii=r"""
${c1} 'c'
'kKk,
.dKKKx.
.oKXKXKd.
.l0XXXXKKo.
c0KXXXXKX0l.
:0XKKOxxOKX0l.
:OXKOc. .c0XX0l.
:OK0o. ${c4}...${c1}'dKKX0l.
:OX0c ${c4};xOx'${c1}'dKXX0l.
:0KKo.${c4}.o0XXKd'.${c1}lKXX0l.
c0XKd.${c4}.oKXXXXKd..${c1}oKKX0l.
.c0XKk;${c4}.l0K0OO0XKd..${c1}oKXXKo.
.l0XXXk:${c4},dKx,.'l0XKo.${c1}.kXXXKo.
.o0XXXX0d,${c4}:x; .oKKx'${c1}.dXKXXKd.
.oKXXXXKK0c.${c4};. :00c'${c1}cOXXXXXKd.
.dKXXXXXXXXk,${c4}. cKx'${c1}'xKXXXXXXKx'
'xKXXXXK0kdl:. ${c4}.ok; ${c1}.cdk0KKXXXKx'
'xKK0koc,.. ${c4}'c, ${c1} ..,cok0KKk,
,xko:'. ${c4}.. ${c1} .':okx;
.,'. .',.
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
archmerge = AsciiArt(match=r'''"ArchMerge"*''', color='6 6 7 1', ascii=r"""
${c1} y:
sMN-
+MMMm`
/MMMMMd`
:NMMMMMMy
-NMMMMMMMMs
.NMMMMMMMMMM+
.mMMMMMMMMMMMM+
oNMMMMMMMMMMMMM+
`+:-+NMMMMMMMMMMMM+
.sNMNhNMMMMMMMMMMMM/
`hho/sNMMMMMMMMMMMMMMM/
`.`omMMmMMMMMMMMMMMMMMMM+
.mMNdshMMMMd+::oNMMMMMMMMMo
.mMMMMMMMMM+ `yMMMMMMMMMs
.NMMMMMMMMM/ yMMMMMMMMMy
-NMMMMMMMMMh `mNMMMMMMMMd`
/NMMMNds+:.` `-/oymMMMm.
+Mmy/. `:smN:
/+. -o.
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
archstrike = AsciiArt(match=r'''"ArchStrike"*''', color='8 6', ascii=r"""
${c1} *
**.
****
******
*******
** *******
**** *******
${c1}****${c2}_____${c1}***${c2}/${c1}*
***${c2}/${c1}*******${c2}//${c1}***
**${c2}/${c1}********${c2}///${c1}*${c2}/${c1}**
**${c2}/${c1}*******${c2}////${c1}***${c2}/${c1}**
**${c2}/${c1}****${c2}//////.,${c1}****${c2}/${c1}**
***${c2}/${c1}*****${c2}/////////${c1}**${c2}/${c1}***
****${c2}/${c1}**** ${c2}/////${c1}***${c2}/${c1}****
******${c2}/${c1}*** ${c2}//// ${c1}**${c2}/${c1}******
********${c2}/${c1}* ${c2}/// ${c1}*${c2}/${c1}********
,****** ${c2}// ______ / ${c1}******,
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
arcolinux = AsciiArt(match=r'''"ArcoLinux"*''', color='7 4', ascii=r"""
${c2} /-
ooo:
yoooo/
yooooooo
yooooooooo
yooooooooooo
.yooooooooooooo
.oooooooooooooooo
.oooooooarcoooooooo
.ooooooooo-oooooooooo
.ooooooooo- oooooooooo
:ooooooooo. :ooooooooo
:ooooooooo. :ooooooooo
:oooarcooo .oooarcooo
:ooooooooy .ooooooooo
:ooooooooo ${c1}/ooooooooooooooooooo${c2}
:ooooooooo ${c1}.-ooooooooooooooooo.${c2}
ooooooooo- ${c1}-ooooooooooooo.${c2}
ooooooooo- ${c1}.-oooooooooo.${c2}
ooooooooo. ${c1}-ooooooooo${c2}
""")
+17
View File
@@ -0,0 +1,17 @@
from hyfetch.distro import AsciiArt
arcolinux_small = AsciiArt(match=r'''"arcolinux_small"*''', color='7 4', ascii=r"""
${c2} A
ooo
ooooo
ooooooo
ooooooooo
ooooo ooooo
ooooo ooooo
ooooo ooooo
ooooo ${c1}<oooooooo>${c2}
ooooo ${c1}<oooooo>${c2}
ooooo ${c1}<oooo>${c2}
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
artix = AsciiArt(match=r'''"Artix"*''', color='6 6 7 1', ascii=r"""
${c1} '
'o'
'ooo'
'ooxoo'
'ooxxxoo'
'oookkxxoo'
'oiioxkkxxoo'
':;:iiiioxxxoo'
`'.;::ioxxoo'
'-. `':;jiooo'
'oooio-.. `'i:io'
'ooooxxxxoio:,. `'-;'
'ooooxxxxxkkxoooIi:-. `'
'ooooxxxxxkkkkxoiiiiiji'
'ooooxxxxxkxxoiiii:'` .i'
'ooooxxxxxoi:::'` .;ioxo'
'ooooxooi::'` .:iiixkxxo'
'ooooi:'` `'';ioxxo'
'i:'` '':io'
'` `'
""")
+19
View File
@@ -0,0 +1,19 @@
from hyfetch.distro import AsciiArt
artix_small = AsciiArt(match=r'''"artix_small"*''', color='6 6 7 1', ascii=r"""
${c1} '
'A'
'ooo'
'ookxo'
`ookxxo'
'. `ooko'
'ooo`. `oo'
'ooxxxoo`. `'
'ookxxxkooo.` .
'ookxxkoo'` .'oo'
'ooxoo'` .:ooxxo'
'io'` `'oo'
'` `'
""")
+21
View File
@@ -0,0 +1,21 @@
from hyfetch.distro import AsciiArt
arya = AsciiArt(match=r'''"Arya"*''', color='2 1', ascii=r"""
${c1} `oyyy/${c2}-yyyyyy+
${c1} -syyyy/${c2}-yyyyyy+
${c1} .syyyyy/${c2}-yyyyyy+
${c1} :yyyyyy/${c2}-yyyyyy+
${c1} `/ :yyyyyy/${c2}-yyyyyy+
${c1} .+s :yyyyyy/${c2}-yyyyyy+
${c1} .oys :yyyyyy/${c2}-yyyyyy+
${c1} -oyys :yyyyyy/${c2}-yyyyyy+
${c1} :syyys :yyyyyy/${c2}-yyyyyy+
${c1} /syyyys :yyyyyy/${c2}-yyyyyy+
${c1} +yyyyyys :yyyyyy/${c2}-yyyyyy+
${c1} .oyyyyyyo. :yyyyyy/${c2}-yyyyyy+ ---------
${c1} .syyyyyy+` :yyyyyy/${c2}-yyyyy+-+syyyyyyyy
${c1} -syyyyyy/ :yyyyyy/${c2}-yyys:.syyyyyyyyyy
${c1}:syyyyyy/ :yyyyyy/${c2}-yyo.:syyyyyyyyyyy
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
asahi = AsciiArt(match=r'''"Asahi"*''', color='3 2 1 8 7 6 4', ascii=r"""
${c1} ## ${c2}**
${c1}*####${c2}****.
${c1}###${c2},
${c3}...,${c1}/#${c3},,,..
${c3}/*,,,,,,,,${c1}*${c3},........${c4},,
${c3},((((((//*,,,,,,,,${c4},......
${c3}((((((((((((((${c5}%..${c4}..........
${c3},(((((((((((((((${c5}@@(${c4}............
${c3}(((((((((((((((((${c5}@@@@/${c4}............
${c3},((((((((((((((((((${c5}@@@@@&*${c4}...........
${c3}((((((((((((((((((((${c5}@@@@@@@&${c4},...........
${c3}(((((((((((((((((((((${c5}@@@${c6}&%&${c5}@@@%${c4},..........
${c3}/(((((((((((((((((((${c5}@@@${c6}&%%&${c5}@@@@(${c4}........
${c3},((((((((((((((((${c5}@@@${c6}&&${c5}@@&/&@@@/${c4}..
${c3}/((((((((((((${c5}@@@@@@/${c4}.../&&
${c3}.(((((((((${c5}@@@@(${c4}....
${c3}/(((((${c5}@@#${c4}...
${c3}.((${c4}&,
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
asteroidos = AsciiArt(match=r'''"AsteroidOS"*''', color='160 208 202 214', ascii=r"""
${c1} ***
${c1} *****
${c1} **********
${c1} ***************
${c1} *///****////****////.
${c2} (/////// /////// ///////(
${c2} /(((((//* //, //((((((.
${c2} ((((((((((( ((( ((((((((
${c2} *((((((((((((((((((((((( ((((((((
${c3} (((((#(((((((#((((( ((#(((((
${c3} (#(#(#####(#(#, ####(#(#
${c3} ######### ########
${c3} /######## ########
${c4} #######%#######
${c4} (#%%%%%%%#
${c4} %%%%%
${c4} %%%
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
bedrock = AsciiArt(match=r'''"Bedrock"*''', color='8 7', ascii=r"""
${c1}--------------------------------------
--------------------------------------
--------------------------------------
---${c2}\\\\\\\\\\\\\\\\\\\\\\\\${c1}-----------------------
----${c2}\\\\\\ \\\\\\${c1}----------------------
-----${c2}\\\\\\ \\\\\\${c1}---------------------
------${c2}\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\${c1}------
-------${c2}\\\\\\ \\\\\\${c1}-----
--------${c2}\\\\\\ \\\\\\${c1}----
---------${c2}\\\\\\ ______ \\\\\\${c1}---
----------${c2}\\\\\\ ///${c1}---
-----------${c2}\\\\\\ ///${c1}----
------------${c2}\\\\\\ ///${c1}-----
-------------${c2}\\\\\\////////////////${c1}------
--------------------------------------
--------------------------------------
--------------------------------------
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
biglinux = AsciiArt(match=r'''"BigLinux"*''', color='6 11 4', ascii=r"""
${c1} ...
:OWMMMNd.
:NMMMMMMMMWc
okkl. kMMMMMW0xdOWMl
: xMMMMMW. kMMMMNc lW.
:x NMMMMMO ,MMMM0. 'l
Xx "lkk" kMMMX .okx,
${c2}.MX .cc;. .xXKx. KMMM: .OMMMMMl
:MM' 'KMMMMWK: 0MMMMk xMMM. lWMMMMMMM'
cMMN:;xMMMMk::MMO oMMMMX .XMM. .KMMMWOOMMMd
'MMMMMMMMN, NMMx OMMMMl .kM0OMMMMk. ;MMd
xMMMMMMd .MMMW :NMMMd .ckKKx' KMc
dWMNd. oMMMN lkNMX, oM.
;. ;MMMMx "MM:. cO
${c3} .X. oMMMMW. l.
dMk:..;xWMMMMW,
kMMMMMMMMMMX.
:XMMMMMMK:
':MM:" Made in Brazil
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
bitrig = AsciiArt(match=r'''"Bitrig"*''', color='2 7', ascii=r"""
${c1} `hMMMMN+
-MMo-dMd`
oMN- oMN`
yMd /NM:
.mMmyyhMMs
:NMMMhsmMh
+MNhNNoyMm-
hMd.-hMNMN:
mMmsssmMMMo
.MMdyyhNMMMd
oMN.`/dMddMN`
yMm/hNm+./MM/
.dMMMmo.``.NMo
:NMMMNmmmmmMMh
/MN/-------oNN:
hMd. .dMh
sm/ /ms
""")
+27
View File
@@ -0,0 +1,27 @@
from hyfetch.distro import AsciiArt
blackarch = AsciiArt(match=r'''"BlackArch"*''', color='1 1 0 1', ascii=r"""
${c3} 00
11
====${c1}
.${c3}//${c1}
`o${c3}//${c1}:
`+o${c3}//${c1}o:
`+oo${c3}//${c1}oo:
-+oo${c3}//${c1}oo+:
`/:-:+${c3}//${c1}ooo+:
`/+++++${c3}//${c1}+++++:
`/++++++${c3}//${c1}++++++:
`/+++o${c2}ooo${c3}//${c2}ooo${c1}oooo/`
${c2} ${c1}./${c2}ooosssso${c3}//${c2}osssssso${c1}+`
${c2} .oossssso-`${c3}//${c1}`/ossssss+`
-osssssso. ${c3}//${c1} :ssssssso.
:osssssss/ ${c3}//${c1} osssso+++.
/ossssssss/ ${c3}//${c1} +ssssooo/-
`/ossssso+/:- ${c3}//${c1} -:/+osssso+-
`+sso+:-` ${c3}//${c1} `.-/+oso:
`++:. ${c3}//${c1} `-/+/
.` ${c3}/${c1} `/
""")
+29
View File
@@ -0,0 +1,29 @@
from hyfetch.distro import AsciiArt
blackpanther = AsciiArt(match=r'''"blackPanther"* | 'blackpanther'*''', color='1 11 12', ascii=r"""
${c3} ........
.,»╔╗╗╬▄▄╫█▀▓▄▄╬╗╗g≈,.
,j╗╬╣▓▓███████▌;»╙▀▀▀▀█▄▄╗j,
.≈╗╬▓██▀▀▀▀▀╠╙░░»»;:`${c2}``>${c1}▄ ${c3}▐ ▓╫╗⌂,
.j╬▓█▀▒░░░░░░░░░»»»;:```` ╙▀█▌╬░,
;╗▓█▄▄███████▀░░»»»»;```` ╓▄▄█▄▄φ ██▌Ñ>.
.j╣█████▀▀░░░░░░░░»»╓▄▄¿``▄███████/▄████▓╬U.
.j╣▓██▀ÜÑ╦╦░░░░░░▐█@▄████⌐▐███████████████▓╬H.
«╫▓█▀░ÑÑ╩╦░░░░░░░░▀██████M"▀███████████████▓╫░
:]╣█▌ÑÑÑÑ▄▄██▀░░░░»»██████████████████████████Ñ~
»╫▓█╫ÑÑ▄███▀░░░░░»»▐██████████████████████████▌░
`j╣█▌Ñ╬████░░░░░░░»»▐████████████████████████▌▐█U`
`/╫█▌▄███▌░░░░░░░»»»;▀██████████████▀████████w▐█░`
;╟█▌███▌░░░░░░░▄▄»»;:`▀▀████████▀Ü▄████████▌ ▐▌>`
`]▓████░░░░░░░░██⌂;:````╓▄▄µp╓▄▄██████████▀ ,█M`
"╠╣██▌░░░░░░░»██▌;```` ╙▀██████████████M █▀"
"╟╣█░░░░░░░░»███⌂``` ▐▀████████▀░ █▌░`
"╩█▄░░░░░░»»▀███ `` └└` ,█▀"`
`░▀█▄░░░»»»»████@ .▄█Ü`
`╙▀█▄@»»»;`▀███▌¿ ,▄▀Ñ"`
`"╨▀█▄▄▄░`▐█████▄, ,▄▄▀▀░`
`"╙╩▀▀▀▀████████▓▌▌▌▀▀▀╨"``
``""░╚╨╝╝╝╝╨╨░""``
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
blag = AsciiArt(match=r'''"BLAG"*''', color='5 7', ascii=r"""
${c1} d
,MK:
xMMMX:
.NMMMMMX;
lMMMMMMMM0clodkO0KXWW:
KMMMMMMMMMMMMMMMMMMX'
.;d0NMMMMMMMMMMMMMMMMMMK.
.;dONMMMMMMMMMMMMMMMMMMMMMMx
'dKMMMMMMMMMMMMMMMMMMMMMMMMl
.:xKWMMMMMMMMMMMMMMMMMMM0.
.:xNMMMMMMMMMMMMMMMMMK.
lMMMMMMMMMMMMMMMMMMK.
,MMMMMMMMWkOXWMMMMMM0
.NMMMMMNd. `':ldko
OMMMK:
oWk,
;:
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
blankon = AsciiArt(match=r'''"BlankOn"*''', color='1 7 3', ascii=r"""
${c2} `./ohdNMMMMNmho+.` ${c1} .+oo:`
${c2} -smMMMMMMMMMMMMMMMMmy-` ${c1}`yyyyy+
${c2} `:dMMMMMMMMMMMMMMMMMMMMMMd/` ${c1}`yyyyys
${c2} .hMMMMMMMNmhso/++symNMMMMMMMh- ${c1}`yyyyys
${c2} -mMMMMMMms-` -omMMMMMMN-${c1}.yyyyys
${c2}.mMMMMMMy. .yMMMMMMm:${c1}yyyyys
${c2}sMMMMMMy `sMMMMMMh${c1}yyyyys
${c2}NMMMMMN: .NMMMMMN${c1}yyyyys
${c2}MMMMMMm. NMMMMMN${c1}yyyyys
${c2}hMMMMMM+ /MMMMMMN${c1}yyyyys
${c2}:NMMMMMN: :mMMMMMM+${c1}yyyyys
${c2} oMMMMMMNs- .sNMMMMMMs.${c1}yyyyys
${c2} +MMMMMMMNho:.` `.:ohNMMMMMMNo ${c1}`yyyyys
${c2} -hMMMMMMMMNNNmmNNNMMMMMMMMh- ${c1}`yyyyys
${c2} :yNMMMMMMMMMMMMMMMMMMNy:` ${c1}`yyyyys
${c2} .:sdNMMMMMMMMMMNds/. ${c1}`yyyyyo
${c2} `.:/++++/:.` ${c1}:oys+.
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
bluelight = AsciiArt(match=r'''"BlueLight"*''', color='7 4', ascii=r"""
${c1} oMMNMMMMMMMMMMMMMMMMMMMMMM
oMMMMMMMMMMMMMMMMMMMMMMMMM
oMMMMMMMMMMMMMMMMMMMMMMMMM
oMMMMMMMMMMMMMMMMMMMMMMMMM
-+++++++++++++++++++++++mM${c2}
```````````````````````..${c1}dM${c2}
```````````````````````....${c1}dM${c2}
```````````````````````......${c1}dM${c2}
```````````````````````........${c1}dM${c2}
```````````````````````..........${c1}dM${c2}
```````````````````````............${c1}dM${c2}
.::::::::::::::::::::::-..............${c1}dM${c2}
`-+yyyyyyyyyyyyyyyyyyyo............${c1}+mMM${c2}
-+yyyyyyyyyyyyyyyyo..........${c1}+mMMMM${c2}
./syyyyyyyyyyyyo........${c1}+mMMMMMM${c2}
./oyyyyyyyyyo......${c1}+mMMMMMMMM${c2}
omdyyyyyyo....${c1}+mMMMMMMMMMM${c2}
${c1}oMMM${c2}mdhyyo..${c1}+mMMMMMMMMMMMM
oNNNNNNm${c2}dso${c1}mMMMMMMMMMMMMMM
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
bodhi = AsciiArt(match=r'''"Bodhi"*''', color='7 11 2', ascii=r"""
${c1}| ${c2},,mmKKKKKKKKWm,,
${c1}' ${c2},aKKP${c1}LL**********|L*${c2}TKp,
${c1}t ${c2}aKP${c1}L**``` ```**L${c2}*Kp
IX${c1}EL${c3}L,wwww, ${c1}``*||${c2}Kp
,#P${c1}L|${c3}KKKpPP@IPPTKmw, ${c1}`*||${c2}K
,K${c1}LL*${c3}{KKKKKKPPb$KPhpKKPKp ${c1}`||${c2}K
#${c1}PL ${c3}!KKKKKKPhKPPP$KKEhKKKKp ${c1}`||${c2}K
!H${c1}L* ${c3}1KKKKKKKphKbPKKKKKK$KKp ${c1}`|I${c2}W
$${c1}bL ${c3}KKKKKKKKBQKhKbKKKKKKKK ${c1}|I${c2}N
$${c1}bL ${c3}!KKKKKKKKKKNKKKKKKKPP` ${c1}|I${c2}b
TH${c1}L* ${c3}TKKKKKK##KKKN@KKKK^ ${c1}|I${c2}M
K@${c1}L ${c3}*KKKKKKKKKKKEKE5 ${c1}||${c2}K
`NL${c1}L ${c3}`KKKKKKKKKK"```|L ${c1}||${c2}#P
`K@${c1}LL ${c3}`"**"` ${c1}'. :||${c2}#P
Yp${c1}LL ${c1}' |L${c2}$M`
`Tp${c1}pLL, ,|||${c2}p'L
"Kpp${c1}LL++,., ,,|||$${c2}#K* ${c1}'.
${c2}`"MKWpppppppp#KM"` ${c1}`h,
""")
+22
View File
@@ -0,0 +1,22 @@
from hyfetch.distro import AsciiArt
bonsai = AsciiArt(match=r'''"bonsai"*''', color='6 2 3', ascii=r"""
${c2} ,####,
${c2}#######, ${c2},#####,
${c2}#####',# ${c2}'######
${c2}''###'${c3}';,,,'${c2}###'
${c3} ,; ''''
${c3} ;;; ${c2},#####,
${c3} ;;;' ,,;${c2};;###
${c3} ';;;;''${c2}'####'
${c3} ;;;
${c3} ,.;;';'',,,
${c3} ' '
${c1} #
# O
##, ,##,',##, ,## ,#, ,
# # # # #''# #,, # # #
'#' '##' # # ,,# '##;, #
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
bsd = AsciiArt(match=r'''*"BSD"''', color='1 7 4 3 6', ascii=r"""
${c1} , ,
/( )`
\ \___ / |
/- _ `-/ '
(${c2}/\/ \ ${c1}\ /\
${c2}/ / | ` ${c1}\
${c3}O O ${c2}) ${c1}/ |
${c2}`-^--'${c1}`< '
(_.) _ ) /
`.___/` /
`-----' /
${c4}<----. __ / __ \
${c4}<----|====${c1}O)))${c4}==${c1}) \) /${c4}====|
<----' ${c1}`--' `.__,' \
| |
\ / /\
${c5}______${c1}( (_ / \______/
${c5},' ,-----' |
`--{__________)
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
bunsenlabs = AsciiArt(match=r'''"BunsenLabs"*''', color='fg 7', ascii=r"""
${c1} `++
-yMMs
`yMMMMN`
-NMMMMMMm.
:MMMMMMMMMN-
.NMMMMMMMMMMM/
yMMMMMMMMMMMMM/
`MMMMMMNMMMMMMMN.
-MMMMN+ /mMMMMMMy
-MMMm` `dMMMMMM
`MMN. .NMMMMM.
hMy yMMMMM`
-Mo +MMMMN
/o +MMMMs
+MMMN`
hMMM:
`NMM/
+MN:
mh.
-/
""")
+28
View File
@@ -0,0 +1,28 @@
from hyfetch.distro import AsciiArt
cachy_os = AsciiArt(match=r'''"Cachy OS"*''', color='2 8 6', ascii=r"""
${c3} ${c2}.${c3}-------------------------:
${c3} .${c1}+=${c3}========================.
${c3} :${c1}++${c3}===${c1}++===${c3}===============- :${c1}++${c3}-
${c3} :${c1}*++${c3}====${c1}+++++==${c3}===========- .==:
${c3} -${c1}*+++${c3}=====${c1}+***++=${c3}=========:
${c3} =${c1}*++++=${c3}=======------------:
${c3} =${c1}*+++++=${c3}====- ${c2}...${c3}
${c3} .${c1}+*+++++${c3}=-===: .${c1}=+++=${c3}:
${c3} :${c1}++++${c3}=====-==: -***${c1}**${c3}+
${c3} :${c1}++=${c3}=======-=. .=+**+${c2}.${c3}
${c3}.${c1}+${c3}==========-. ${c2}.${c3}
${c3} :${c1}+++++++${c3}====- ${c2}.${c3}--==-${c2}.${c3}
${c3} :${c1}++${c3}==========. ${c2}:${c1}+++++++${c3}${c2}:
${c3} .-===========. =*****+*+
${c3} .-===========: .+*****+:
${c3} -=======${c1}++++${c3}:::::::::::::::::::::::::-: ${c2}.${c3}---:
${c3} :======${c1}++++${c3}====${c1}+++******************=.
${c3} :=====${c1}+++${c3}==========${c1}++++++++++++++*-
${c3} .====${c1}++${c3}==============${c1}++++++++++*-
${c3} .===${c1}+${c3}==================${c1}+++++++:
${c3} .-=======================${c1}+++:
${c3} ${c2}..........................
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
calculate = AsciiArt(match=r'''"Calculate"*''', color='7 3', ascii=r"""
${c1} ......
,,+++++++,.
.,,,....,,,${c2}+**+,,.${c1}
............,${c2}++++,,,${c1}
...............
......,,,........
.....+*#####+,,,*+.
.....,*###############,..,,,,,,..
......,*#################*..,,,,,..,,,..
.,,....*####################+***+,,,,...,++,
.,,..,..*#####################*,
,+,.+*..*#######################.
,+,,+*+..,########################*
.,++++++. ..+##**###################+
..... ..+##***#################*.
.,.*#*****##############*.
..,,*********#####****+.
${c2}.,++*****+++${c1}*****************${c2}+++++,.${c1}
${c2},++++++**+++++${c1}***********${c2}+++++++++,${c1}
${c2}.,,,,++++,.. .,,,,,.....,+++,.,,${c1}
""")
+32
View File
@@ -0,0 +1,32 @@
from hyfetch.distro import AsciiArt
calinixos = AsciiArt(match=r'''"CalinixOS"''', color='4 5 4 4 4 4', ascii=r"""
${c2}
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⠤⠔⠒⠒⠋⠉⠉⠉⠉⠓⠒⠒⠦⠤⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⠤⠒⠉⣁⣠⣤⣶⣶⣿⣿⣿⣿⣿⣿⣿⣿⣶⣶⣤⣄⣈⠙⠲⢤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⠴⠋⢁⣤⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣤⡈⠑⢦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⣠⠞⢁⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡄⠈⠢⡀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⢀⠞⠁⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠛⠋⠉⠁⠀⠀⠀⠀⠈⠉⠙⠛⠿⣿⣿⣿⣿⣿⣿⠏⠀⠀⠀⠈⢢⡀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⡰⠃⣠⣾⣿⣿⣿⣿⣿⣿⡿⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠻⢿⡿⠁⠀⠀⠀⠀⠀⠀⠙⣄⠀⠀⠀⠀
⠀⠀⠀⡼⠁⣴⣿⣿⣿⣿⣿⣿⡿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢆⠀⠀⠀
⠀⠀⡼⠀⣼⣿⣿⣿⣿⣿⣿⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣆⠀⠀
⠀⣰⠁⣸⣿⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠉⠻⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⡄⠀
⢀⡇⢠⣿⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠛⢿⣿⣿⣿⣿⣿⣷⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢳⠀
⢸⠀⣸⣿⣿⣿⣿⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢿⣿⣿⣿⣿⣿⣿⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⡄
⣼⠀⣿⣿⣿⣿⣿⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⣿⣿⣿⣿⣿⣿⣷⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇
⡇⠀⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢛⣿⣿⣿⣿⣿⣿⣿⡦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇
⢻⠀⣿⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣶⣿⣿⣿⣿⣿⣿⡿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇
⢸⡀⢹⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣾⣿⣿⣿⣿⣿⣿⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⠃
⠀⣇⠘⣿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⣿⣿⣿⣿⣿⡿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡼⠀
⠀⠸⡄⢹⣿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⠀⣠⣶⣿⣿⣿⣿⣿⣿⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⠃⠀
⠀⠀⢳⡀⢻⣿⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⠀⠈⠉⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⠏⠀⠀
⠀⠀⠀⠳⡀⠻⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⣷⣄⡀⠀⠀⠀⠀⢠⠏⠀⠀⠀
⠀⠀⠀⠀⠙⣄⠙⢿⣿⣿⣿⣿⣿⣿⣷⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⣾⣿⣿⣿⣿⣿⣦⡀⠀⡰⠃⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠈⠢⡈⠻⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣤⣄⣀⡀⠀⠀⠀⠀⢀⣀⣠⣤⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⣠⠞⠁⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠈⠢⡈⠙⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠋⣡⠞⠁⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠓⢤⡈⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠛⣁⠴⠊⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠑⠢⢄⣉⠙⠛⠿⠿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠿⠛⠋⣉⡤⠖⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠓⠒⠢⠤⠤⠤⠤⠤⠤⠤⠤⠖⠒⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
""")
+22
View File
@@ -0,0 +1,22 @@
from hyfetch.distro import AsciiArt
calinixos_small = AsciiArt(match=r'''"CalinixOS_small"*''', color='4 5 4 4 4 4', ascii=r"""
${c2}
⠀⠀⠀⠀⠀⠀⠀⠀⣀⠤⠐⣂⣈⣩⣭⣭⣍⣀⣐⠀⠄⡀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⡀⠔⣨⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣅⠢⡀⠀⠀⠀⠀⠀
⠀⠀⠀⠠⢊⣴⣾⣿⣿⣿⣿⠿⠟⠛⠛⠛⠛⠻⠿⣿⣿⣿⣿⠃⠀⠠⡀⠀⠀⠀
⠀⠀⡐⢡⣾⣿⣿⣿⠟⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠁⠀⠀⠀⠈⢆⠀⠀
⠀⡘⢰⣿⣿⣿⡟⠁⠀⠀⢀⣀⣀⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢂⠀
⢠⢠⣿⣿⣿⡟⠀⠀⠀⠀⠀⠙⠿⣿⣿⣷⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⡀
⡄⢸⣿⣿⣿⠁⠀⠀⠀⠀⠀⠀⠀⠈⠻⣿⣿⣿⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁
⡇⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣹⣿⣿⣿⣷⠄⠀⠀⠀⠀⠀⠀⠀⠀
⠃⢸⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⣿⣿⡿⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⡀
⠘⡘⣿⣿⣿⣧⠀⠀⠀⠀⠀⢀⣴⣿⣿⣿⠿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠁
⠀⠡⠸⣿⣿⣿⣧⡀⠀⠀⠀⠉⠉⠉⠉⠁⠀⠀⠀⠀⠀⠀⢀⠀⠀⠀⠀⢀⠆⠀
⠀⠀⠡⡘⢿⣿⣿⣿⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⣿⣷⣦⡀⢀⠊⠀⠀
⠀⠀⠀⠈⠊⡻⢿⣿⣿⣿⣿⣶⣤⣤⣤⣤⣤⣤⣶⣿⣿⣿⣿⡿⢟⠕⠁⠀⠀⠀
⠀⠀⠀⠀⠀⠈⠢⢙⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⡩⠐⠁⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠈⠐⠂⠭⠉⠙⣛⣛⠋⠉⠭⠐⠂⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
carbs = AsciiArt(match=r'''"Carbs"*''', color='4 5 4 4 4 4', ascii=r"""
${c2} ..........
..,;:ccccccc:;'..
..,clllc:;;;;;:cllc,.
.,cllc,... ..';;'.
.;lol;.. ..
.,lol;.
.coo:.
.'lol,.
.,lol,.
.,lol,.
'col;.
.:ooc'.
.'col:.
.'cllc'.. .''.
..:lolc,'.......',cll,.
..;cllllccccclllc;'.
...',;;;;;;,,...
.....
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
cbl_mariner = AsciiArt(match=r'''"CBL-Mariner"*''', color='6', ascii=r"""
${c1} .
:- .
:==. .=:
:===: -==:
:-===: .====:
:-====- -=====:
-====== :=======:
-======. .=========:
-======: -==========.
-======- -===========.
:======- :===========.
:=======. .-==========.
:=======: -==========.
:=======- :==========.
:=======- .-========-
:--------. :========-
..:::--=========-
..::---================-=-
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
celos = AsciiArt(match=r'''"CelOS"*''', color='4 6 0 5', ascii=r"""
${c4} .,cmmmmmmmmmmmc,.
.,cmMMMMMMMMMMMMMMMMMMMMmc.
.cMMMMMMMMMMMMMMMMMMMMMMMMMMMmc.
.cMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMc.
,:MMM ${c3}####################################${c4}
cMMMMMMmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmc.
.MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM.
.MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMc
"******************************MMMMMMMMMMMMMc:
${c3}#################################### ${c4}MMMMMMMMMMMMMc
"MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM:
"MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM"
'MMMMMMMMM*******************************:
\"MMMMMM ${c3}#####################################
${c4}`:MMMMMMmmmmmmmmmmmmmmmmmmmmmmmmmmmmm;
`"MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM"
`":MMMMMMMMMMMMMMMMMMMMMMMMM;'
`":MMMMMMMMMMMMMMMMMMM:"
"************"
""")
+19
View File
@@ -0,0 +1,19 @@
from hyfetch.distro import AsciiArt
center = AsciiArt(match=r'''"Center"*''', color='7 7', ascii=r"""
${c2} .
o,
. d, .
';' ..d;.. .cl'
.:; 'oldO,.oo.
..,:,xKXxoo;'.
,;;;;;ldxkONMMMXxkxc;;;;;.
.....':oddXWMNOxlcl:......
.:dlxk0c;:. .
:d:.,xcld,.,:.
;l, .l; ';'
.o;
l,
""")
+25
View File
@@ -0,0 +1,25 @@
from hyfetch.distro import AsciiArt
centos = AsciiArt(match=r'''"CentOS"*''', color='3 2 4 5 7', ascii=r"""
${c1} ..
.PLTJ.
<><><><>
${c2}KKSSV' 4KKK ${c1}LJ${c4} KKKL.'VSSKK
${c2}KKV' 4KKKKK ${c1}LJ${c4} KKKKAL 'VKK
${c2}V' ' 'VKKKK ${c1}LJ${c4} KKKKV' ' 'V
${c2}.4MA.' 'VKK ${c1}LJ${c4} KKV' '.4Mb.
${c4} . ${c2}KKKKKA.' 'V ${c1}LJ${c4} V' '.4KKKKK ${c3}.
${c4} .4D ${c2}KKKKKKKA.'' ${c1}LJ${c4} ''.4KKKKKKK ${c3}FA.
${c4}<QDD ++++++++++++ ${c3}++++++++++++ GFD>
${c4} 'VD ${c3}KKKKKKKK'.. ${c2}LJ ${c1}..'KKKKKKKK ${c3}FV
${c4} ' ${c3}VKKKKK'. .4 ${c2}LJ ${c1}K. .'KKKKKV ${c3}'
${c3} 'VK'. .4KK ${c2}LJ ${c1}KKA. .'KV'
${c3}A. . .4KKKK ${c2}LJ ${c1}KKKKA. . .4
${c3}KKA. 'KKKKK ${c2}LJ ${c1}KKKKK' .4KK
${c3}KKSSA. VKKK ${c2}LJ ${c1}KKKV .4SSKK
${c2} <><><><>
'MKKM'
''
""")
+13
View File
@@ -0,0 +1,13 @@
from hyfetch.distro import AsciiArt
centos_small = AsciiArt(match=r'''"centos_small"*''', color='3 2 4 5 7', ascii=r"""
${c2} ____${c1}^${c4}____
${c2} |\\ ${c1}|${c4} /|
${c2} | \\ ${c1}|${c4} / |
${c4}<---- ${c3}---->
${c3} | / ${c2}|${c1} \\ |
${c3} |/__${c2}|${c1}__\\|
${c2} v
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
chakra = AsciiArt(match=r'''"Chakra"*''', color='4 5 7 6', ascii=r"""
${c1} _ _ _ "kkkkkkkk.
,kkkkkkkk., 'kkkkkkkkk,
,kkkkkkkkkkkk., 'kkkkkkkkk.
,kkkkkkkkkkkkkkkk,'kkkkkkkk,
,kkkkkkkkkkkkkkkkkkk'kkkkkkk.
"''"''',;::,,"''kkk''kkkkk; __
,kkkkkkkkkk, "k''kkkkk' ,kkkk
,kkkkkkk' ., ' .: 'kkkk',kkkkkk
,kkkkkkkk'.k' , ,kkkk;kkkkkkkkk
,kkkkkkkk';kk 'k "'k',kkkkkkkkkkkk
.kkkkkkkkk.kkkk.'kkkkkkkkkkkkkkkkkk'
;kkkkkkkk''kkkkkk;'kkkkkkkkkkkkk''
'kkkkkkk; 'kkkkkkkk.,""''"''""
''kkkk; 'kkkkkkkkkk.,
';' 'kkkkkkkkkkkk.,
';kkkkkkkkkk'
';kkkkkk'
"''"
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
chaletos = AsciiArt(match=r'''"ChaletOS"*''', color='4 7 1', ascii=r"""
${c1} `.//+osso+/:``
`/sdNNmhyssssydmNNdo:`
:hNmy+-` .-+hNNs-
/mMh/` `+:` `+dMd:
.hMd- -sNNMNo. /yyy /mMs`
-NM+ `/dMd/--omNh::dMM `yMd`
.NN+ .sNNs:/dMNy:/hNmo/s yMd`
hMs `/hNd+-smMMMMMMd+:omNy- `dMo
:NM. .omMy:/hNMMMMMMMMMMNy:/hMd+` :Md`
/Md` `sm+.omMMMMMMMMMMMMMMMMd/-sm+ .MN:
/Md` MMMMMMMMMMMMMMMMMMMN .MN:
:NN. MMMMMMm....--NMMMMMN -Mm.
`dMo MMMMMMd mMMMMMN hMs
-MN: MMMMMMd mMMMMMN oMm`
:NM: MMMMMMd mMMMMMN +Mm-
-mMy. mmmmmmh dmmmmmh -hMh.
oNNs- :yMm/
.+mMdo:` `:smMd/`
-ohNNmhsoo++osshmNNh+.
`./+syyhhyys+:``
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
chapeau = AsciiArt(match=r'''"Chapeau"*''', color='2 7', ascii=r"""
${c1} .-/-.
////////.
////////${c2}y+${c1}//.
////////${c2}mMN${c1}/////.
////////${c2}mMN+${c1}////////.
////////////////////////.
/////////+${c2}shhddhyo${c1}+////////.
////////${c2}ymMNmdhhdmNNdo${c1}///////.
///////+${c2}mMms${c1}////////${c2}hNMh${c1}///////.
///////${c2}NMm+${c1}//////////${c2}sMMh${c1}///////
//////${c2}oMMNmmmmmmmmmmmmMMm${c1}///////
//////${c2}+MMmssssssssssssss+${c1}///////
`//////${c2}yMMy${c1}////////////////////
`//////${c2}smMNhso++oydNm${c1}////////
`///////${c2}ohmNMMMNNdy+${c1}///////
`//////////${c2}++${c1}//////////
`////////////////.
-////////-
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
chrom = AsciiArt(match=r'''"Chrom"*''', color='2 1 3 4 7', ascii=r"""
${c2} .,:loool:,.
.,coooooooooooooc,.
.,lllllllllllllllllllll,.
;ccccccccccccccccccccccccc;
${c1} '${c2}ccccccccccccccccccccccccccccc.
${c1} ,oo${c2}c::::::::okO${c5}000${c3}0OOkkkkkkkkkkk:
${c1}.ooool${c2};;;;:x${c5}K0${c4}kxxxxxk${c5}0X${c3}K0000000000.
${c1}:oooool${c2};,;O${c5}K${c4}ddddddddddd${c5}KX${c3}000000000d
${c1}lllllool${c2};l${c5}N${c4}dllllllllllld${c5}N${c3}K000000000
${c1}lllllllll${c2}o${c5}M${c4}dccccccccccco${c5}W${c3}K000000000
${c1};cllllllllX${c5}X${c4}c:::::::::c${c5}0X${c3}000000000d
${c1}.ccccllllllO${c5}Nk${c4}c;,,,;cx${c5}KK${c3}0000000000.
${c1} .cccccclllllxOO${c5}OOO${c1}Okx${c3}O0000000000;
${c1} .:ccccccccllllllllo${c3}O0000000OOO,
${c1} ,:ccccccccclllcd${c3}0000OOOOOOl.
${c1} '::ccccccccc${c3}dOOOOOOOkx:.
${c1} ..,::cccc${c3}xOOOkkko;.
${c1} ..,:${c3}dOkxl:.
""")
+18
View File
@@ -0,0 +1,18 @@
from hyfetch.distro import AsciiArt
cleanjaro = AsciiArt(match=r'''"Cleanjaro"*''', color='7 7', ascii=r"""
${c1}███████▌ ████████████████
███████▌ ████████████████
███████▌ ████████████████
███████▌
███████▌
███████▌
███████▌
███████▌
█████████████████████████
█████████████████████████
█████████████████████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
""")
+13
View File
@@ -0,0 +1,13 @@
from hyfetch.distro import AsciiArt
cleanjaro_small = AsciiArt(match=r'''"cleanjaro_small"*''', color='7 7', ascii=r"""
${c1}█████ ██████████
█████ ██████████
█████
█████
█████
████████████████
████████████████
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
clear_linux_os = AsciiArt(match=r'''"Clear Linux OS"* | "Clear_Linux"*''', color='4 3 7 6', ascii=r"""
${c1} BBB
BBBBBBBBB
BBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBB BBB
BBBBBBBB${c2}YYYYY
${c1} BBBBBBBB${c2}YYYYYY
${c1} BBBBBBBB${c2}YYYYYYY
${c1} BBBBBBBBB${c2}YYYYY${c3}W
${c4} GG${c1}BBBBBBBY${c2}YYYY${c3}WWW
${c4} GGG${c1}BBBBBBB${c2}YY${c3}WWWWWWWW
${c4} GGGGGG${c1}BBBBBB${c3}WWWWWWWW
${c4} GGGGGGGG${c1}BBBB${c3}WWWWWWWW
${c4}GGGGGGGGGGG${c1}BBB${c3}WWWWWWW
${c4}GGGGGGGGGGGGG${c1}B${c3}WWWWWW
${c4}GGGGGGGG${c3}WWWWWWWWWWW
${c4}GG${c3}WWWWWWWWWWWWWWWW
WWWWWWWWWWWWWWWW
WWWWWWWWWW
WWW
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
clearos = AsciiArt(match=r'''"ClearOS"*''', color='2', ascii=r"""
${c1} `.--::::::--.`
.-:////////////////:-.
`-////////////////////////-`
-////////////////////////////-
`//////////////-..-//////////////`
./////////////: ://///////////.
`//////:..-////: :////-..-//////`
://////` -///:.``.:///-` ://///:
`///////:. -////////-` `:///////`
.//:--////:. -////-` `:////--://.
./: .////:. --` `:////- :/.
`//-` .////:. `:////- `-//`
:///-` .////:. `:////- `-///:
`/////-` -///: :///- `-/////`
`//////- `///: :///` .//////`
`:////: `///: :///` -////:`
.://: `///: :///` -//:.
.:: `///: :///` -:.
`///: :///`
`... ...`
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
clover = AsciiArt(match=r'''"Clover"*''', color='2 6', ascii=r"""
${c1} `omo``omo`
`oNMMMNNMMMNo`
`oNMMMMMMMMMMMMNo`
oNMMMMMMMMMMMMMMMMNo
`sNMMMMMMMMMMMMMMNs`
`omo` `sNMMMMMMMMMMNs` `omo`
`oNMMMNo` `sNMMMMMMNs` `oNMMMNo`
`oNMMMMMMMNo` `oNMMNs` `oNMMMMMMMNo`
oNMMMMMMMMMMMNo` `sy` `oNMMMMMMMMMMMNo
`sNMMMMMMMMMMMMNo.${c2}oNNs${c1}.oNMMMMMMMMMMMMNs`
`oNMMMMMMMMMMMMNs.${c2}oNNs${c1}.oNMMMMMMMMMMMMNo`
oNMMMMMMMMMMMNs` `sy` `oNMMMMMMMMMMMNo
`oNMMMMMMMNs` `oNMMNo` `oNMMMMMMMNs`
`oNMMMNs` `sNMMMMMMNs` `oNMMMNs`
`oNs` `sNMMMMMMMMMMNs` `oNs`
`sNMMMMMMMMMMMMMMNs`
+NMMMMMMMMMMMMMMMMNo
`oNMMMMMMMMMMMMNo`
`oNMMMNNMMMNs`
`omo``oNs`
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
condres = AsciiArt(match=r'''"Condres"*''', color='2 3 6', ascii=r"""
${c1}syyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+${c3}.+.
${c1}`oyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+${c3}:++.
${c2}/o${c1}+oyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/${c3}oo++.
${c2}/y+${c1}syyyyyyyyyyyyyyyyyyyyyyyyyyyyy${c3}+ooo++.
${c2}/hy+${c1}oyyyhhhhhhhhhhhhhhyyyyyyyyy${c3}+oo+++++.
${c2}/hhh+${c1}shhhhhdddddhhhhhhhyyyyyyy${c3}+oo++++++.
${c2}/hhdd+${c1}oddddddddddddhhhhhyyyys${c3}+oo+++++++.
${c2}/hhddd+${c1}odmmmdddddddhhhhyyyy${c3}+ooo++++++++.
${c2}/hhdddmo${c1}odmmmdddddhhhhhyyy${c3}+oooo++++++++.
${c2}/hdddmmms${c1}/dmdddddhhhhyyys${c3}+oooo+++++++++.
${c2}/hddddmmmy${c1}/hdddhhhhyyyyo${c3}+oooo++++++++++:
${c2}/hhdddmmmmy${c1}:yhhhhyyyyy+${c3}+oooo+++++++++++:
${c2}/hhddddddddy${c1}-syyyyyys+${c3}ooooo++++++++++++:
${c2}/hhhddddddddy${c1}-+yyyy+${c3}/ooooo+++++++++++++:
${c2}/hhhhhdddddhhy${c1}./yo:${c3}+oooooo+++++++++++++/
${c2}/hhhhhhhhhhhhhy${c1}:-.${c3}+sooooo+++++++++++///:
${c2}:sssssssssssso++${c1}${c3}`:/:--------.````````
""")
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
container_linux_by_coreos = AsciiArt(match=r'''"Container Linux by CoreOS"* | "Container_Linux"*''', color='4 7 1', ascii=r"""
${c1} .....
.';:cccccccc:;'.
':ccccclc${c3}lllllllll${c1}cc:.
.;cccccccc${c3}lllllllllllllll${c1}c,
;clllccccc${c3}llllllllllllllllll${c1}c,
.cllclccccc${c3}lllll${c2}lll${c3}llllllllllll${c1}c:
ccclclcccc${c3}cllll${c2}kWMMNKk${c3}llllllllll${c1}c:
:ccclclcccc${c3}llll${c2}oWMMMMMMWO${c3}lllllllll${c1}c,
.ccllllllccc${c3}clll${c2}OMMMMMMMMM0${c3}lllllllll${c1}c
.lllllclcccc${c3}llll${c2}KMMMMMMMMMMo${c3}llllllll${c1}c.
.lllllllcccc${c3}clll${c2}KMMMMMMMMN0${c3}lllllllll${c1}c.
.cclllllcccc${c3}lllld${c2}xkkxxdo${c3}llllllllllc${c1}lc
:cccllllllcccc${c3}lllccllllcclccc${c1}cccccc;
.ccclllllllcccccccc${c3}lll${c1}ccccclccccccc
.cllllllllllclcccclccclccllllcllc
:cllllllllccclcllllllllllllcc;
.cccccccccccccclcccccccccc:.
.;cccclccccccllllllccc,.
.';ccccclllccc:;..
.....
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
crux = AsciiArt(match=r'''"CRUX"*''', color='4 5 7 6', ascii=r"""
${c1} odddd
oddxkkkxxdoo
ddcoddxxxdoool
xdclodod olol
xoc xdd olol
xdc ${c2}k00${c1}Okdlol
xxd${c2}kOKKKOkd${c1}ldd
xdco${c2}xOkdlo${c1}dldd
ddc:cl${c2}lll${c1}oooodo
odxxdd${c3}xkO000kx${c1}ooxdo
oxdd${c3}x0NMMMMMMWW0od${c1}kkxo
oooxd${c3}0WMMMMMMMMMW0o${c1}dxkx
docldkXW${c3}MMMMMMMWWN${c1}Odolco
xx${c2}dx${c1}kxxOKN${c3}WMMWN${c1}0xdoxo::c
${c2}xOkkO${c1}0oo${c3}odOW${c2}WW${c1}XkdodOxc:l
${c2}dkkkxkkk${c3}OKX${c2}NNNX0Oxx${c1}xc:cd
${c2} odxxdx${c3}xllod${c2}ddooxx${c1}dc:ldo
${c2} lodd${c1}dolccc${c2}ccox${c1}xoloo
""")
+13
View File
@@ -0,0 +1,13 @@
from hyfetch.distro import AsciiArt
crux_small = AsciiArt(match=r'''"crux_small" | KISS*''', color='4 5 7 6', ascii=r"""
${c1} ___
(${c3}.· ${c1}|
(${c2}<> ${c1}|
/ ${c3}__ ${c1}\\
( ${c3}/ \\ ${c1}/|
${c2}_${c1}/\\ ${c3}__)${c1}/${c2}_${c1})
${c2}\/${c1}-____${c2}\/
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
crystal_linux = AsciiArt(match=r'''*"Crystal Linux"*''', color='13 5', ascii=r"""
${c1} mysssym
${c1} mysssym
${c1} mysssym
${c1} mysssym
${c1} mysssyd
${c1} mysssyd N
${c1} mysssyd mysym
${c1} mysssyd dysssym
${c1} mysssyd dysssym
${c1} mysssyd dysssym
${c1} mysssyd dysssym
${c1} mysssyd dysssym
${c1} mysssyd dysssym
${c1} mysym dysssym
${c1} N dysssym
${c1} dysssym
${c1} dysssym
${c1} dysssym
${c1} dysssym
${c1} dysssym
""")
+26
View File
@@ -0,0 +1,26 @@
from hyfetch.distro import AsciiArt
cucumber = AsciiArt(match=r'''*"Cucumber"*''', color='2 3', ascii=r"""
${c1} `.-://++++++//:-.`
`:/+//${c2}::--------${c1}:://+/:`
-++/:${c2}----..........----${c1}:/++-
.++:${c2}---...........-......---${c1}:++.
/+:${c2}---....-::/:/--//:::-....---${c1}:+/
`++:${c2}--.....:---::/--/::---:.....--${c1}:++`
/+:${c2}--.....--.--::::-/::--.--.....--${c1}:+/
-o:${c2}--.......-:::://--/:::::-.......--${c1}:o-
/+:${c2}--...-:-::---:::..:::---:--:-...--${c1}:+/
o/:${c2}-...-:.:.-/:::......::/:.--.:-...-${c1}:/o
o/${c2}--...::-:/::/:-......-::::::-/-...-${c1}:/o
/+:${c2}--..-/:/:::--:::..:::--::////-..--${c1}:+/
-o:${c2}--...----::/:::/--/:::::-----...--${c1}:o-
/+:${c2}--....://:::.:/--/:.::://:....--${c1}:+/
`++:${c2}--...-:::.--.:..:.--.:/:-...--${c1}:++`
/+:${c2}---....----:-..-:----....---${c1}:+/
.++:${c2}---..................---${c1}:++.
-/+/:${c2}----..........----${c1}:/+/-
`:/+//${c2}::--------:::${c1}/+/:`
`.-://++++++//:-.`
""")
+15
View File
@@ -0,0 +1,15 @@
from hyfetch.distro import AsciiArt
cutefishos = AsciiArt(match=r'''"CutefishOS"*''', color='6 7 4', ascii=r"""
${c1} ___ww___
_ _wwMMM@M^^^^MMMMww_
M0w_ _wMMM~~ ~~MMm_
~MMy _ww0M~ ~MMy
~MMMM~ o "MM
${c3} jw0M~~MMMw_ _wMM'
wMM~ ~~MMmw__ __w0M~
~ ~~MM0MmwwwwwwwwwMMM~
~~~~^^~~~
""")
+21
View File
@@ -0,0 +1,21 @@
from hyfetch.distro import AsciiArt
cyberos = AsciiArt(match=r'''"CyberOS"*''', color='50 32 57', ascii=r"""
${c3} !M$EEEEEEEEEEEP
.MMMMM000000Nr.
${c3}&MMMMMM${c2}MMMMMMMMMMMMM9
${c3}~MMM${c1}MMMM${c2}MMMMMMMMMMMMC
${c1}" ${c3}M${c1}MMMMMMM${c2}MMMMMMMMMMs
${c1}iM${c2}MMM&&${c1}MMMMMMMM${c2}MMMMMMMM\\
${c1}BMMM${c2}MMMMM${c1}MMMMMMM${c2}MMMMMM${c3}"
${c1}9MMMMM${c2}MMMMMMM${c1}MMMM${c2}MMMM${c3}MMMf-
${c2}sMMMMMMMM${c1}MM${c2}M${c3}MMMMMMMMM3_
${c2}+ffffffff${c1}P${c3}MMMMMMMMMMMM0
${c2}CMMMMMMMMMMM
}MMMMMMMMM
~MMMMMMM
"RMMMM
.PMB
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
dahlia = AsciiArt(match=r'''"dahlia"*''', color='1 7 3', ascii=r"""
${c1}
.#.
*%@@@%*
.,,,,,(&@@@@@@@&/,,,,,.
,#@@@@@@@@@@@@@@@@@@@@@#.
,#@@@@@@@&#///#&@@@@@@@#.
,/%&@@@@@%/, .,(%@@@@@&#/.
*#&@@@@@@#,. .*#@@@@@@&#,
.&@@@@@@@@@( .(@@@@@@@@@&&.
#@@@@@@@@@@( )@@@@@@@@@@@#
°@@@@@@@@@@( .(@@@@@@@@@@@°
*%@@@@@@@(. ,#@@@@@@@%*
,(&@@@@@@%*. ./%@@@@@@%(,
,#@@@@@@@&(***(&@@@@@@@#.
,#@@@@@@@@@@@@@@@@@@@@@#.
,*****#&@@@@@@@&(*****,
,/%@@@%/.
,#,
""")
+27
View File
@@ -0,0 +1,27 @@
from hyfetch.distro import AsciiArt
darkos = AsciiArt(match=r'''"DarkOs"''', color='1 6 5 3 2', ascii=r"""
${c3} ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⠢⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c1}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣶⠋⡆⢹⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c5}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡆⢀⣤⢛⠛⣠⣿⠀⡏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c6}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣶⣿⠟⣡⠊⣠⣾⣿⠃⣠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c2}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⣯⣿⠀⠊⣤⣿⣿⣿⠃⣴⣧⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c1}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣿⣿⡟⣠⣶⣿⣿⣿⢋⣤⠿⠛⠉⢁⣭⣽⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c4} ⠀⠀⠀⠀⠀⠀ ⠀⣠⠖⡭⢉⣿⣯⣿⣯⣿⣿⣿⣟⣧⠛⢉⣤⣶⣾⣿⣿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c5}⠀⠀⠀⠀⠀⠀⠀⠀⣴⣫⠓⢱⣯⣿⢿⠋⠛⢛⠟⠯⠶⢟⣿⣯⣿⣿⣿⣿⣿⣿⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c2}⠀⠀⠀⠀⠀⠀⢀⡮⢁⣴⣿⣿⣿⠖⣠⠐⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠉⠛⠛⠛⢿⣶⣄⠀⠀⠀⠀⠀⠀⠀
${c3}⠀⠀⠀⠀⢀⣤⣷⣿⣿⠿⢛⣭⠒⠉⠀⠀⠀⣀⣀⣄⣤⣤⣴⣶⣶⣶⣿⣿⣿⣿⣿⠿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀
${c1}⠀⢀⣶⠏⠟⠝⠉⢀⣤⣿⣿⣶⣾⣿⣿⣿⣿⣿⣿⣟⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c6}⢴⣯⣤⣶⣿⣿⣿⣿⣿⡿⣿⣯⠉⠉⠉⠉⠀⠀⠀⠈⣿⡀⣟⣿⣿⢿⣿⣿⣿⣿⣿⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c5}⠀⠀⠀⠉⠛⣿⣧⠀⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠃⣿⣿⣯⣿⣦⡀⠀⠉⠻⣿⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c3}⠀⠀⠀⠀⠀⠀⠉⢿⣮⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⠀⣯⠉⠉⠛⢿⣿⣷⣄⠀⠈⢻⣆⠀⠀⠀⠀⠀⠀⠀⠀
${c2}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠢⠀⠀⠀⠀⠀⠀⠀⢀⢡⠃⣾⣿⣿⣦⠀⠀⠀⠙⢿⣿⣤⠀⠙⣄⠀⠀⠀⠀⠀⠀⠀
${c6}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⢋⡟⢠⣿⣿⣿⠋⢿⣄⠀⠀⠀⠈⡄⠙⣶⣈⡄⠀⠀⠀⠀⠀⠀
${c1}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⠚⢲⣿⠀⣾⣿⣿⠁⠀⠀⠉⢷⡀⠀⠀⣇⠀⠀⠈⠻⡀⠀⠀⠀⠀⠀
${c4}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢢⣀⣿⡏⠀⣿⡿⠀⠀⠀⠀⠀⠀⠙⣦⠀⢧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c3}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⠿⣧⣾⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣮⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c5}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠙⠛⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
darwin = AsciiArt(match=r'''"Darwin"''', color='2 3 1 1 5 4', ascii=r"""
${c1} c.'
,xNMM.
.OMMMMo
lMMM"
.;loddo:. .olloddol;.
cKMMMMMMMMMMNWMMMMMMMMMM0:
${c2} .KMMMMMMMMMMMMMMMMMMMMMMMWd.
XMMMMMMMMMMMMMMMMMMMMMMMX.
${c3};MMMMMMMMMMMMMMMMMMMMMMMM:
:MMMMMMMMMMMMMMMMMMMMMMMM:
${c4}.MMMMMMMMMMMMMMMMMMMMMMMMX.
kMMMMMMMMMMMMMMMMMMMMMMMMWd.
${c5}'XMMMMMMMMMMMMMMMMMMMMMMMMMMk
'XMMMMMMMMMMMMMMMMMMMMMMMMK.
${c6}kMMMMMMMMMMMMMMMMMMMMMMd
;KMMMMMMMWXXWMMMMMMMk.
"cooc*" "*coo'"
""")
+23
View File
@@ -0,0 +1,23 @@
from hyfetch.distro import AsciiArt
debian = AsciiArt(match=r'''"Debian"*''', color='1 7 3', ascii=r"""
${c2} _,met$$$$$gg.
,g$$$$$$$$$$$$$$$P.
,g$$P" \"""Y$$.".
,$$P' `$$$.
',$$P ,ggs. `$$b:
`d$$' ,$P"' ${c1}.${c2} $$$
$$P d$' ${c1},${c2} $$P
$$: $$. ${c1}-${c2} ,d$$'
$$; Y$b._ _,d$P'
Y$$. ${c1}`.${c2}`"Y$$$$P"'
${c2} `$$b ${c1}"-.__
${c2} `Y$$
`Y$$.
`$$b.
`Y$$b.
`"Y$b._
`\"""
""")
+12
View File
@@ -0,0 +1,12 @@
from hyfetch.distro import AsciiArt
debian_small = AsciiArt(match=r'''"debian_small"''', color='1 7 3', ascii=r"""
${c1} _____
/ __ \\
| / |
| \\___-
-_
--_
""")
+24
View File
@@ -0,0 +1,24 @@
from hyfetch.distro import AsciiArt
deepin = AsciiArt(match=r'''"Deepin"*''', color='2 7', ascii=r"""
${c1} ............
.';;;;;. .,;,.
.,;;;;;;;. ';;;;;;;.
.;::::::::' .,::;;,''''',.
,'.:::::::: .;;'. ';
;' 'cccccc, ,' :: '.. .:
,, :ccccc. ;: .c, '' :. ,;
.l. cllll' ., .lc :; .l' l.
.c :lllc ;cl: .l' .ll. :'
.l 'looc. . ,o: 'oo' c,
.o. .:ool::coc' .ooo' o.
:: ..... .;dddo ;c
l:... .';lddddo. ,o
lxxxxxdoolllodxxxxxxxxxc :l
,dxxxxxxxxxxxxxxxxxxl. 'o,
,dkkkkkkkkkkkkko;. .;o;
.;okkkkkdl;. .,cl:.
.,:cccccccc:,.
""")
+22
View File
@@ -0,0 +1,22 @@
from hyfetch.distro import AsciiArt
desaos = AsciiArt(match=r'''"DesaOS"''', color='2 7', ascii=r"""
${c1}███████████████████████
███████████████████████
███████████████████████
███████████████████████
████████ ███████
████████ ███████
████████ ███████
████████ ███████
████████ ███████
████████ ███████
████████ ███████
██████████████████████████████
██████████████████████████████
████████████████████████
████████████████████████
████████████████████████
""")
+21
View File
@@ -0,0 +1,21 @@
from hyfetch.distro import AsciiArt
devuan = AsciiArt(match=r'''"Devuan"*''', color='5 7', ascii=r"""
${c1} ..,,;;;::;,..
`':ddd;:,.
`'dPPd:,.
`:b$$b`.
'P$$$d`
.$$$$$`
;$$$$$P
.:P$$$$$$`
.,:b$$$$$$$;'
.,:dP$$$$$$$$b:'
.,:;db$$$$$$$$$$Pd'`
,db$$$$$$$$$$$$$$b:'`
:$$$$$$$$$$$$b:'`
`$$$$$bd:''`
`'''`
""")

Some files were not shown because too many files have changed in this diff Show More