Skip to content

CodingXiaoheng/homework_hznu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

欢迎来到 Xiaoheng 的作业游乐场 (Homework Playground)!🚀

这份 README 作为您在此 VS Code 环境中打开的第一个文件,旨在帮助您快速了解当前的运行环境、作业目录结构以及如何运行和复现代码。


🛠️ 当前环境概览

为了保证作业的复现和随时随地的便捷访问,当前您正处于一个基于**家里云(Home Lab)**搭建的定制化开发环境中:

  • 底层架构:基于虚拟机 (Virtual Machine) 运行,提供完整且稳定的系统级体验。
  • 操作系统基底:运行 Arch Linux 操作系统,搭配轻量级的 XFCE 桌面环境,并通过 noVNC 将画面无缝串流到您的浏览器中。
  • 作业同步机制:当前环境不会自动同步最新的代码。若需获取最新作业内容,您需要手动使用 Git 同步,或者直接运行 sync.sh 脚本,它会强制拉取并覆盖当前的作业仓库 (https://github.com/CodingXiaoheng/homework_hznu)。

您可以像使用本地电脑一样,在这个网页端的完整 Linux 桌面中编写、调试和运行代码。

⚠️ 重要提示:持久化存储与环境纯净性

请注意,当前您所在的虚拟机环境支持持久化存储,您的文件和修改都会被保留。但是,为了维护开发环境的稳定性:

  • 请勿随意安装软件! 为了保证作业环境的绝对纯净和高可复现性,请避免随意使用系统包管理器(如 pacman)安装全局软件。
  • 环境依赖问题已通过局部的包管理器(如下文提到的 Nix)解决,请尽量依赖这些工具进行隔离开发。
  • 尽管存储是持久化的,仍建议将重要修改使用 Git 提交并推送到远程仓库,以免被其他用户同步代码时覆盖 (git commit & git push)。

📂 目录结构说明

按照 学科名 / 日期 的格式进行分类整理,方便您快速定位到特定的作业:

homework_hznu/
├── data_structure(数据结构)/
│   ├── 20260311/
│   │   └── ... (代码)
│   └── ...
├── sync.sh (环境代码同步脚本)
└── README.md


🚀 如何运行与复现代码

1. 常规代码

对于一般的作业代码,您只需在 VS Code 中打开对应的文件,使用终端(Ctrl + ~Terminal -> New Terminal)进入相应目录,使用对应的编译器或解释器运行即可(如 python main.pygcc main.c -o main && ./main)。

2. ❄️ 使用 Nix 的高可复现环境

为了彻底解决“在我的电脑上能跑”的环境依赖问题,部分作业使用了 Nix 包管理器。这也是为什么我们要求您不要在宿主机随意安装软件的原因。

  • 如何识别:如果某个作业的目录下包含 shell.nix 文件,说明该作业依赖 Nix 构建隔离环境。
  • 如何运行(全自动)您不需要手动配置任何东西! 相关的运行脚本(如 .sh.py)开头已经内置了检测逻辑。当您直接运行脚本时,它会检查当前是否处于 nix-shell 环境中;如果不在,脚本会自动在 nix-shell 中重启自身并下载所需的依赖。

🔗 相关链接

祝您批阅/浏览愉快!

About

My daily homework repo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors