|
1 | 1 | ## SoulmateOS Roadmap |
2 | 2 |
|
3 | | -A structured, modular approach to building a lightweight, secure, and cohesive Linux-based environment using AlmaLinux Minimal and AwesomeWM. |
| 3 | +A structured, modular approach to building a lightweight, secure, and cohesive Linux-based environment using AlmaLinux Minimal and Qtile. |
4 | 4 |
|
5 | | -* * * |
| 5 | +--- |
6 | 6 |
|
7 | 7 | ### Phase 0 — Github repo creation |
8 | 8 |
|
9 | | -**Goal:** Create the github repo with the basic structure, and the initial documentation. |
| 9 | +**Goal:** Create the github repo with the basic structure, and the initial documentation. |
10 | 10 |
|
11 | | -- Add every relevant folder the project will have |
| 11 | +* Add every relevant folder the project will have |
| 12 | +* Add architecture.md, changelog.md, and roadmap.md to /docs |
| 13 | +* Write initial `README.md` |
| 14 | +* Choose a license. |
| 15 | +* **Version Tag:** `0.1.0` |
12 | 16 |
|
13 | | -- Add architecture.md, changelog.md, and roadmap.md to /docs |
14 | | - |
15 | | -- Write initial `README.md` |
| 17 | +--- |
16 | 18 |
|
17 | | -- Choose a license. |
18 | | - |
19 | | -- **Version Tag:** `0.1.0` |
20 | | - |
| 19 | +### Phase 1 — AlmaLinux installation and Qtile installation |
21 | 20 |
|
22 | | -* * * |
| 21 | +**Goal:** Set the barebones of the project in place. |
23 | 22 |
|
24 | | -### Phase 1 — AlmaLinux installation, git setup, AwesomeWM installation |
| 23 | +* Install Alma Linux |
| 24 | +* Install Qtile and X11 |
| 25 | +* Install a lightweight login manager |
| 26 | +* Boot into graphical environment |
| 27 | +* Install minimal terminal and file manager |
| 28 | +* **Version Tag:** `0.2.0` |
25 | 29 |
|
26 | | -**Goal:** Set the barebones of the project in place. |
| 30 | +--- |
27 | 31 |
|
28 | | -- Install Alma Linux |
| 32 | +### Phase 2 — System Utilities Layer + Git Setup |
29 | 33 |
|
30 | | -- Setup the local repo, and configure it so when its necessary the commits to the actual github page are easy to handle. |
| 34 | +**Goal:** Add foundational system tools to ensure a robust and manageable base. Add git to host a local repo, to keep track of any config changes. |
31 | 35 |
|
32 | | -- Install AwesomeWM and X11 |
33 | | - |
34 | | -- Install a login manager, a lightweight one |
35 | | - |
36 | | -- Boot into graphical environment |
37 | | - |
38 | | -- Install minimal terminal and file manager |
39 | | - |
40 | | -- **Version Tag:** `0.1.0` |
41 | | - |
| 36 | +* Git setup |
| 37 | +* Terminal emulator |
| 38 | +* File manager |
| 39 | +* Text editor |
| 40 | +* Network manager |
| 41 | +* System monitor |
| 42 | +* Disk utility |
| 43 | +* Time synchronization daemon (e.g., chrony or ntp) |
| 44 | +* Package manager plugins (preinstalled, verify only) |
| 45 | +* Print service support (CUPS) |
| 46 | +* Log management tools (journalctl, logrotate) |
| 47 | +* Man page viewer (man-db) |
| 48 | +* **Optional:** Basic development tools (gcc, make, etc.) and package manager frontend |
| 49 | +* **Version Tag:** `0.3.0` |
42 | 50 |
|
43 | | -* * * |
| 51 | +--- |
44 | 52 |
|
45 | | -### Phase 2 — Core System Configuration |
| 53 | +### Phase 3 — User Applications Layer |
46 | 54 |
|
47 | | -**Goal:** Make the system daily-driver capable. |
| 55 | +**Goal:** Add commonly expected user-facing applications. |
48 | 56 |
|
49 | | -- Configure locale, keyboard, time, power |
50 | | - |
51 | | -- Install and configure shell (e.g., bash or zsh) |
52 | | - |
53 | | -- Create keybindings and autostart scripts |
54 | | - |
55 | | -- **Version Tag:** `0.2.0` |
56 | | - |
| 57 | +* Web browser |
| 58 | +* Media player |
| 59 | +* Office/markdown tool |
| 60 | +* Image viewer |
| 61 | +* Archiver |
| 62 | +* Password manager |
| 63 | +* PDF viewer |
| 64 | +* Calendar or task manager (optional) |
| 65 | +* GUI settings interface for Qtile (optional) |
| 66 | +* **Version Tag:** `0.4.0` |
57 | 67 |
|
58 | | -* * * |
| 68 | +--- |
59 | 69 |
|
60 | | -### Phase 3 — Security Hardening |
| 70 | +### Phase 4 — UX Enhancers & Session Polish |
61 | 71 |
|
62 | | -**Goal:** Lightweight but strong security baseline. |
| 72 | +**Goal:** Complete the user experience with session utilities. |
63 | 73 |
|
64 | | -- Configure `firewalld` or `nftables` |
65 | | - |
66 | | -- Harden SSH (disable root, change port) |
67 | | - |
68 | | -- Enable SELinux |
69 | | - |
70 | | -- Disable unnecessary services |
71 | | - |
72 | | -- Document security in `docs/security.md` |
73 | | - |
74 | | -- **Version Tag:** `0.3.0` |
75 | | - |
76 | | - |
77 | | -* * * |
78 | | - |
79 | | -### Phase 4 — System Utilities Layer |
80 | | - |
81 | | -**Goal:** Add foundational system tools. |
82 | | - |
83 | | -- Terminal emulator |
84 | | - |
85 | | -- File manager |
86 | | - |
87 | | -- Text editor |
88 | | - |
89 | | -- Network manager |
90 | | - |
91 | | -- System monitor |
92 | | - |
93 | | -- Disk utility |
94 | | - |
95 | | -- Optional: package manager frontend |
96 | | - |
97 | | -- **Version Tag:** `0.4.0` |
98 | | - |
99 | | - |
100 | | -* * * |
101 | | - |
102 | | -### Phase 5 — User Applications Layer |
| 74 | +* Notification daemon |
| 75 | +* Screenshot tool |
| 76 | +* Clipboard manager |
| 77 | +* Brightness/volume tools |
| 78 | +* Power menu |
| 79 | +* Autostart configuration |
| 80 | +* Idle monitor/screen locker (e.g., xss-lock + i3lock or alternatives) |
| 81 | +* Audio control GUI (e.g., pavucontrol) |
| 82 | +* Battery/charging indicator (for laptops) |
| 83 | +* Input method framework support (e.g., IBus or Fcitx, optional) |
| 84 | +* **Version Tag:** `0.5.0` |
103 | 85 |
|
104 | | -**Goal:** Add commonly expected user-facing applications. |
| 86 | +--- |
105 | 87 |
|
106 | | -- Web browser |
107 | | - |
108 | | -- Media player |
109 | | - |
110 | | -- Office/markdown tool |
111 | | - |
112 | | -- Image viewer |
113 | | - |
114 | | -- Archiver |
115 | | - |
116 | | -- **Version Tag:** `0.5.0` |
117 | | - |
| 88 | +### Phase 5 — Theming and Visual Cohesion |
118 | 89 |
|
119 | | -* * * |
| 90 | +**Goal:** Build a unified aesthetic. |
120 | 91 |
|
121 | | -### Phase 6 — UX Enhancers & Session Polish |
| 92 | +* GTK/QT theme |
| 93 | +* Fonts and icons |
| 94 | +* Wallpaper, cursor |
| 95 | +* Align visuals across all apps |
| 96 | +* Lightweight compositor (e.g., picom) for transparency, shadows, and effects |
| 97 | +* Save themes in `themes/` |
| 98 | +* **Version Tag:** `0.6.0` |
122 | 99 |
|
123 | | -**Goal:** Complete the user experience with session utilities. |
| 100 | +--- |
124 | 101 |
|
125 | | -- Notification daemon |
126 | | - |
127 | | -- Screenshot tool |
128 | | - |
129 | | -- Clipboard manager |
130 | | - |
131 | | -- Brightness/volume tools |
132 | | - |
133 | | -- Power menu |
134 | | - |
135 | | -- Autostart configuration |
136 | | - |
137 | | -- **Version Tag:** `0.6.0` |
138 | | - |
139 | | - |
140 | | -* * * |
141 | | - |
142 | | -### Phase 7 — Theming and Visual Cohesion |
| 102 | +### Phase 6 — Security Hardening |
143 | 103 |
|
144 | | -**Goal:** Build a unified aesthetic. |
| 104 | +**Goal:** Lightweight but strong security baseline. |
145 | 105 |
|
146 | | -- GTK/QT theme |
147 | | - |
148 | | -- Fonts and icons |
149 | | - |
150 | | -- Wallpaper, cursor |
151 | | - |
152 | | -- Align visuals across all apps |
153 | | - |
154 | | -- Save themes in `themes/` |
155 | | - |
156 | | -- **Version Tag:** `0.7.0` |
157 | | - |
| 106 | +* Configure `firewalld` or `nftables` |
| 107 | +* Harden SSH (disable root, change port) |
| 108 | +* Enable SELinux |
| 109 | +* Disable unnecessary services |
| 110 | +* Document security in `docs/security.md` |
| 111 | +* **Version Tag:** `0.7.0` |
158 | 112 |
|
159 | | -* * * |
| 113 | +--- |
160 | 114 |
|
161 | | -### Phase 8 — Automation and Reproducibility |
| 115 | +### Phase 7 — Automation and Reproducibility |
162 | 116 |
|
163 | 117 | **Goal:** Automate deployment of the entire environment. |
164 | 118 |
|
165 | | -- Bash or Ansible-based installer |
166 | | - |
167 | | -- Dotfile deployment |
168 | | - |
169 | | -- Scripted security and config setup |
170 | | - |
171 | | -- Test in VM for reproducibility |
172 | | - |
173 | | -- **Version Tag:** `0.9.0` |
174 | | - |
| 119 | +* Bash or Ansible-based installer |
| 120 | +* Dotfile deployment |
| 121 | +* Scripted security and config setup |
| 122 | +* Test in VM for reproducibility |
| 123 | +* **Version Tag:** `0.9.0` |
175 | 124 |
|
176 | | -* * * |
| 125 | +--- |
177 | 126 |
|
178 | | -### Phase 9 — Finalization and 1.0 Release |
| 127 | +### Phase 8 — Finalization and 1.0 Release |
179 | 128 |
|
180 | 129 | **Goal:** Final testing, cleanup, and release. |
181 | 130 |
|
182 | | -- Final QA and stress test |
183 | | - |
184 | | -- Polish all documentation |
185 | | - |
186 | | -- Tag release as `1.0.0` |
187 | | - |
188 | | -- Optional: Build ISO |
189 | | - |
190 | | -- **Version Tag:** `1.0.0` |
191 | | - |
| 131 | +* Final QA and stress test |
| 132 | +* Polish all documentation |
| 133 | +* Tag release as `1.0.0` |
| 134 | +* Optional: Build ISO |
| 135 | +* **Version Tag:** `1.0.0` |
192 | 136 |
|
193 | | -* * * |
| 137 | +--- |
194 | 138 |
|
195 | 139 | ### Summary Table |
196 | 140 |
|
197 | | -| Phase | Focus Area | Tag | |
198 | | -| --- | --- | --- | |
199 | | -| 0 | Bootstrap + Git + Docs | `0.1.0` | |
200 | | -| 1 | AwesomeWM Base Setup | `0.2.0` | |
201 | | -| 2 | Core System Configuration | `0.3.0` | |
202 | | -| 3 | Security Hardening | `0.4.0` | |
203 | | -| 4 | System Utilities Layer | `0.5.0` | |
204 | | -| 5 | User Applications Layer | `0.6.0` | |
205 | | -| 6 | UX Enhancers & Session Polish | `0.7.0` | |
206 | | -| 7 | Theming & Visual Integration | `0.8.0` | |
207 | | -| 8 | Installation Automation | `0.9.0` | |
208 | | -| 9 | QA + Docs + Final Release | `1.0.0` | |
| 141 | +| Phase | Focus Area | Tag | |
| 142 | +| ----- | ----------------------------- | ------- | |
| 143 | +| 0 | Bootstrap + Git + Docs | `0.1.0` | |
| 144 | +| 1 | Qtile Base Setup | `0.2.0` | |
| 145 | +| 2 | System Utilities Layer | `0.3.0` | |
| 146 | +| 3 | User Applications Layer | `0.4.0` | |
| 147 | +| 4 | UX Enhancers & Session Polish | `0.5.0` | |
| 148 | +| 5 | Theming & Visual Integration | `0.6.0` | |
| 149 | +| 6 | Security Hardening | `0.7.0` | |
| 150 | +| 7 | Installation Automation | `0.8.0` | |
| 151 | +| 8 | QA + Docs + Final Release | `1.0.0` | |
0 commit comments