Skip to content

Commit 123636d

Browse files
Many minor code cleanup.
1 parent 1edfe3d commit 123636d

19 files changed

Lines changed: 465 additions & 210 deletions

File tree

.github/workflows/build.yml

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,15 @@ jobs:
3535
- name: Stop QEMU and VNC
3636
run: sudo pkill qemu
3737

38-
- name: Upload to file.io
39-
run: |
40-
RESPONSE=$(curl -s -F "file=@./FrostWing.iso" https://file.io)
41-
echo "$RESPONSE" | jq -r '.link'
38+
- name: Create Release and Upload ISO
39+
if: github.ref == 'refs/heads/main'
40+
uses: softprops/action-gh-release@v2
41+
with:
42+
tag_name: v0.1.${{ github.run_number }}
43+
name: FrostWing v0.1.${{ github.run_number }}
44+
body: |
45+
FrostWing OS Automated Build
46+
Commit: ${{ github.sha }}
47+
files: FrostWing.iso
48+
env:
49+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Makefile

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@ iso:
1717
@cp -v \
1818
source/wing_kernel.elf \
1919
source/boot/limine.cfg \
20-
source/boot/libFrostedWM.so \
21-
source/boot/font.sfn \
2220
limine/limine-bios.sys \
2321
limine/limine-bios-pxe.bin \
2422
limine/limine-bios-cd.bin \
Binary file not shown.

disk.img

0 Bytes
Binary file not shown.

mbr_disk.txtimg

-32 MB
Binary file not shown.

philosophy.md

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
```
2+
# FrostWing Philosophy
3+
4+
1. Absolute User Control
5+
FrostWing does not assume what you want.
6+
If /proc, /dev, /sys, or even / is not mounted, that is intentional.
7+
The system starts minimal. You build your environment.
8+
9+
- No automatic mounts
10+
- No hidden abstractions
11+
- No forced structure
12+
13+
You decide:
14+
- What exists
15+
- What runs
16+
- What gets access
17+
18+
This is not inconvenience. This is raw power.
19+
20+
---
21+
22+
2. Minimalism Over Assumptions
23+
Most operating systems try to be helpful by doing things behind your back.
24+
FrostWing does the opposite.
25+
26+
- Nothing is pre-configured unless necessary
27+
- No background processes without your knowledge
28+
- No silent services
29+
30+
If something is running, you allowed it.
31+
32+
---
33+
34+
3. Privacy is Non-Negotiable
35+
FrostWing rejects invasive system design.
36+
37+
Modern systems increasingly allow deep, kernel-level access for third-party software, especially in areas like anti-cheat systems.
38+
39+
While preventing cheating is valid, FrostWing believes that no software should have unrestricted access to your system without your explicit awareness and control.
40+
41+
There is no guarantee what such software may inspect:
42+
- Personal files
43+
- Development work
44+
- Private data
45+
46+
FrostWing takes a clear stance:
47+
48+
- No forced kernel-level modules
49+
- No hidden monitoring systems
50+
- No trust without transparency
51+
52+
---
53+
54+
4. Transparency Over Trust
55+
56+
FrostWing does not ask you to trust it.
57+
58+
Instead, it ensures that you can:
59+
- Inspect everything
60+
- Understand everything
61+
- Control everything
62+
63+
The system should be:
64+
- Predictable
65+
- Inspectable
66+
- Honest
67+
68+
---
69+
70+
5. Power Users First
71+
72+
FrostWing is designed for users who want to:
73+
- Understand their system deeply
74+
- Build their environment from the ground up
75+
- Avoid unnecessary layers
76+
77+
This may feel unfamiliar at first. That is intentional.
78+
79+
---
80+
81+
```

readme.md

Lines changed: 20 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# FrostWing Operating System
22

3-
Welcome to FrostWing, a lightweight and flexible operating system designed for x86_64, ARM64 (aarch64), and RISC-V (riscv64) architectures. This README will guide you through the process of building and running FrostWing, along with an overview of its features and architecture.
3+
Welcome to FrostWing, a lightweight and flexible operating system designed for x86_64 platform. This README will guide you through the process of understanding the overall
4+
concept of the FrostWing Operating System.
45

56
![GitHub all releases](https://img.shields.io/github/downloads/Frost-Wing/osdev/total?style=flat-square&label=Downloads)
67
![GitHub](https://img.shields.io/github/license/Frost-Wing/osdev?style=flat-square&label=License)
@@ -13,34 +14,23 @@ Welcome to FrostWing, a lightweight and flexible operating system designed for x
1314
1415
## Table of Contents
1516

16-
- [Images](#images)
17-
- [Features](#currently-working-features)
18-
- [Getting Started](#getting-started)
19-
- [Hardware/Software (Emulator) Requirements](#hardwaresoftware-emulator-requirements)
20-
- [Booting to real machine](#Booting-to-real-machine)
21-
- [Contributing](#contributing)
22-
- [License](#license)
23-
- [FrostWing Team](#frostwing-team)
24-
25-
## Images
26-
### Running (Early Booting)
27-
[![https://imgur.com/xY5Qzac.png](https://imgur.com/xY5Qzac.png)](https://imgur.com/xY5Qzac.png)
28-
29-
### Running (Graphics Screen)
30-
[![https://imgur.com/22Uwf8a.png](https://imgur.com/22Uwf8a.png)](https://imgur.com/22Uwf8a.png)
31-
32-
### Running (Initial Login Screen)
33-
![Screenshot from 2025-01-15 08-49-29](https://github.com/user-attachments/assets/a6ceca1c-3be5-45d9-8ee1-5856619e1f8a)
34-
35-
### Running (Frosted Shell - fsh)
36-
![image](https://github.com/user-attachments/assets/976facae-3bc6-4033-bead-53800af2be4d)
37-
38-
### Running (Exit and logging in)
39-
![image](https://github.com/user-attachments/assets/0319336b-bee5-43f4-b89b-88a721791468)
40-
41-
42-
### Meltdown (Panic) Screen
43-
[![https://imgur.com/HqYJvMK.png](https://imgur.com/HqYJvMK.png)](https://imgur.com/HqYJvMK.png)
17+
- [FrostWing Operating System](#frostwing-operating-system)
18+
- [Table of Contents](#table-of-contents)
19+
- [Gallery](#gallery)
20+
- [Currently working Features](#currently-working-features)
21+
- [Getting started](#getting-started)
22+
- [Hardware/Software (Emulator) Requirements](#hardwaresoftware-emulator-requirements)
23+
- [Minimum Requirements (BIOS)](#minimum-requirements-bios)
24+
- [Minimum Requirements (UEFI)](#minimum-requirements-uefi)
25+
- [Recommended Requirements (BIOS)](#recommended-requirements-bios)
26+
- [Recommended Requirements (UEFI)](#recommended-requirements-uefi)
27+
- [Booting to real machine](#booting-to-real-machine)
28+
- [Contributing](#contributing)
29+
- [License](#license)
30+
- [FrostWing Team](#frostwing-team)
31+
32+
## Gallery
33+
Refer the wiki for Gallary.*
4434

4535
## Currently working Features
4636
- Interrupts
@@ -136,7 +126,7 @@ FrostWing is open-source software released under the [CC0-1.0 License](https://g
136126

137127
## FrostWing Team
138128
- Owner, founder & "The Dev" - Pradosh ([@PradoshGame](https://twitter.com/@PradoshGame))
139-
- OpenGL & Head Developer - GAMINGNOOB ([@GAMINGNOOBdev](https://github.com/GAMINGNOOBdev))
129+
- OpenGL & Head Developer - GAMINGNOOB ([@GAMINGNOOBdev](https://github.com/GAMINGNOOBdev)) (inactive)
140130
- Sources
141131
- [Flanterm](https://github.com/mintsuki/flanterm/tree/trunk) from Mintsuki
142132
- [ACPI and Shutdown](https://github.com/mintsuki/acpi-shutdown-hack) from Mintsuki

source/boot/limine.cfg

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
# The kernel path on the bootable file.
22
${WING_KERNEL}=boot:///wing_kernel.elf
3-
${FDMold}=boot:///libFrostedWM.so
4-
${font}=boot:///font.sfn
53

64
# Timeout in seconds that Limine will use before automatically booting.
75
TIMEOUT=2
@@ -20,9 +18,6 @@ TERM_FONT=boot:///iso.f16
2018
:FrostWing (KASLR Mode) - Recommened
2119
COMMENT=This mode randomize the memory location where the kernel is loaded. Architecture: ${ARCH}
2220
PROTOCOL=limine
23-
24-
MODULE_PATH=${FDMold}
25-
MODULE_PATH=${font}
2621

2722
# Path to the kernel to boot. boot:/// represents the partition on which limine.cfg is located.
2823
KERNEL_PATH=${WING_KERNEL}
@@ -35,7 +30,4 @@ TERM_FONT=boot:///iso.f16
3530
# Disable KASLR (it is enabled by default for relocatable kernels)
3631
KASLR=no
3732

38-
MODULE_PATH=${FDMold}
39-
MODULE_PATH=${font}
40-
4133
KERNEL_PATH=${WING_KERNEL}

source/compile_commands.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,11 @@
8989
"file": "/home/pradosh/osdev/source/kernel/C/gdt.c",
9090
"command": "clang -std=gnu11 -ffreestanding -w -fno-common -fno-stack-protector -fno-stack-check -fno-lto -fno-builtin -fno-omit-frame-pointer -Og -g -fPIE -I includes -I src -m64 -march=x86-64 -mno-80387 -mno-mmx -mno-red-zone -mno-sse -mno-sse2 -MMD -MP -c /home/pradosh/osdev/source/kernel/C/gdt.c -o /dev/null"
9191
},
92+
{
93+
"directory": "/home/pradosh/osdev/source",
94+
"file": "/home/pradosh/osdev/source/kernel/C/sort.c",
95+
"command": "clang -std=gnu11 -ffreestanding -w -fno-common -fno-stack-protector -fno-stack-check -fno-lto -fno-builtin -fno-omit-frame-pointer -Og -g -fPIE -I includes -I src -m64 -march=x86-64 -mno-80387 -mno-mmx -mno-red-zone -mno-sse -mno-sse2 -MMD -MP -c /home/pradosh/osdev/source/kernel/C/sort.c -o /dev/null"
96+
},
9297
{
9398
"directory": "/home/pradosh/osdev/source",
9499
"file": "/home/pradosh/osdev/source/kernel/C/acpi-shutdown.c",
@@ -169,6 +174,11 @@
169174
"file": "/home/pradosh/osdev/source/kernel/C/filesystems/vfs.c",
170175
"command": "clang -std=gnu11 -ffreestanding -w -fno-common -fno-stack-protector -fno-stack-check -fno-lto -fno-builtin -fno-omit-frame-pointer -Og -g -fPIE -I includes -I src -m64 -march=x86-64 -mno-80387 -mno-mmx -mno-red-zone -mno-sse -mno-sse2 -MMD -MP -c /home/pradosh/osdev/source/kernel/C/filesystems/vfs.c -o /dev/null"
171176
},
177+
{
178+
"directory": "/home/pradosh/osdev/source",
179+
"file": "/home/pradosh/osdev/source/kernel/C/filesystems/layers/dev.c",
180+
"command": "clang -std=gnu11 -ffreestanding -w -fno-common -fno-stack-protector -fno-stack-check -fno-lto -fno-builtin -fno-omit-frame-pointer -Og -g -fPIE -I includes -I src -m64 -march=x86-64 -mno-80387 -mno-mmx -mno-red-zone -mno-sse -mno-sse2 -MMD -MP -c /home/pradosh/osdev/source/kernel/C/filesystems/layers/dev.c -o /dev/null"
181+
},
172182
{
173183
"directory": "/home/pradosh/osdev/source",
174184
"file": "/home/pradosh/osdev/source/kernel/C/filesystems/layers/proc.c",

source/includes/filesystems/fat32.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ typedef struct {
122122

123123
uint32_t total_clusters;
124124
uint32_t root_cluster;
125+
126+
uint32_t last_alloc;
125127
} fat32_fs_t;
126128

127129
/* ============================= */

0 commit comments

Comments
 (0)