Bu GitHub asosiy sahifasi uchun O‘zbekcha versiya. Agar boshqa til kerak bo‘lsa, quyidagi fayllardan foydalanishingiz mumkin:
Tashqi Dastur Boshqaruvchisi Debian/Ubuntu asosidagi Linux tizimlarida o'rnatilgan dasturlarni bitta joydan ko'rish, ishga tushirish, yangilash, o'chirish, AppImage fayllarni import qilish va avtoishga tushish yozuvlarini boshqarish uchun yaratilgan PySide6 grafik dastur.
Ilova APT, Snap, Flatpak, AppImage va qo'lda o'rnatilgan dasturlarni alohida manbalar sifatida taniydi. Interfeys Linux desktop muhitlariga mos, yorug' va qorong'u mavzuni avtomatik qo'llaydi hamda High-DPI ekranlarda tiniq ko'rinish uchun sozlangan.
- O'rnatilgan dasturlarni APT, Snap, Flatpak, AppImage va qo'lda o'rnatilgan manbalar bo'yicha ko'rish
- Dasturlarni nomi bo'yicha qidirish va manba bo'yicha filtrlash
- Dastur haqida versiya, hajm, manba va o'rnatilgan sana kabi ma'lumotlarni ko'rsatish
- Dasturlarni xavfsiz tarzda ishga tushirish, yangilash va o'chirish
.AppImagefayllarni import qilish, executable qilish va desktop launcher yaratish- Kompyuter yoqilganda avtomatik ishga tushadigan dasturlarni boshqarish
- Tizim yuklanish vaqti hamda ko'p vaqt olgan xizmatlar haqida qisqa ma'lumot chiqarish
- APT keshi, keraksiz bog'liqliklar, Flatpak runtime qoldiqlari va loglarni tanlab tozalash
- Xatolik va ogohlantirishlarni alohida tabda ko'rsatish
- Skanerlash, yangilash va tozalash jarayonlari uchun fon worker'lari va UI animatsiyalari
- High-DPI ekranlar uchun tiniq matn, ikon va scaling sozlamalari
Bu bo'lim tizimdagi dasturlarni umumiy ro'yxatda ko'rsatadi. Qidiruv maydoni, manba filtri va dastur soni ko'rsatkichi mavjud. Har bir dastur satrida nom, manba badge'i va bajariladigan amal tugmalari chiqadi.
Bu bo'lim kompyuter ishga tushganda avtomatik ochiladigan dasturlarni boshqaradi. Foydalanuvchi va tizim darajasidagi autostart yozuvlari o'qiladi. Tizim yozuvlari bevosita o'zgartirilmaydi, kerak bo'lsa foydalanuvchi override fayli orqali boshqariladi.
Bu bo'lim tizimda vaqt o'tishi bilan yig'iladigan kesh va qoldiq fayllarni tanlab tozalashga yordam beradi. Tozalash jarayoni terminal ko'rinishidagi panelda chiqariladi.
Skanerlash, yangilash, o'chirish yoki tozalash paytida yuz bergan muammolar shu bo'limda jamlanadi. Bu foydalanuvchiga qaysi manba yoki buyruqda muammo bo'lganini tez tushunishga yordam beradi.
- Debian 12+ yoki Ubuntu 22.04+ asosidagi desktop Linux
- Python 3.10 yoki undan yangi versiya
pkexecva polkit- PySide6
- Ixtiyoriy:
snapd - Ixtiyoriy:
flatpak - Ixtiyoriy:
systemd-analyze
GitHub'dan klon qilish:
git clone https://github.com/drowgone/debian-app-manager.git
cd debian-app-managerVirtual muhit yaratish:
python3 -m venv venv
source venv/bin/activateBog'liqliklarni o'rnatish:
pip install -r requirements.txtpython main.pyDesktop menyuga qo'shish uchun:
./install.shinstall.sh foydalanuvchi uchun .desktop fayl yaratadi va ilovani desktop
menyudan ishga tushirish imkonini beradi.
Development bog'liqliklarini o'rnatish:
pip install -r requirements-dev.txtTestlarni bajarish:
pytest tests/ -vQisqa ko'rinish:
pytest tests/ -qHozirgi holatda testlar:
87 passed
Loyiha GitHub uchun tayyorlangan: .gitignore, LICENSE, README va testlar
mavjud. Yangi GitHub repository ochilgandan keyin quyidagilarni bajarish
kifoya:
git remote add origin https://github.com/<username>/debian-app-manager.git
git push -u origin mainAgar remote avval qo'shilgan bo'lsa:
git remote set-url origin https://github.com/<username>/debian-app-manager.git
git push -u origin maindebian-app-manager/
├── main.py
├── install.sh
├── requirements.txt
├── requirements-dev.txt
├── README.md
├── LICENSE
├── core/
│ ├── appimage_manager.py
│ ├── autostart.py
│ ├── cleaner.py
│ ├── desktop_parser.py
│ ├── installer.py
│ ├── launcher.py
│ ├── remover.py
│ ├── scanner.py
│ └── updater.py
├── gui/
│ ├── animations.py
│ ├── app_detail_dialog.py
│ ├── clean_worker.py
│ ├── layout_helpers.py
│ ├── main_window.py
│ ├── scan_worker.py
│ ├── theme.py
│ └── widgets.py
└── tests/
├── test_appimage.py
├── test_autostart.py
├── test_installer.py
├── test_remover.py
├── test_scanner.py
└── test_updater.py
core/scanner.pytizimdagi dasturlarni turli manbalardan yig'adicore/remover.pydasturlarni manbasiga qarab xavfsiz o'chiradicore/updater.pyAPT, Snap va Flatpak yangilash amallarini boshqaradicore/autostart.pyavtoishga tushish yozuvlarini o'qiydi va o'zgartiradicore/appimage_manager.pyAppImage import va o'chirish amallarini bajaradicore/cleaner.pytizim tozalash buyruqlarini tayyorlaydigui/main_window.pyasosiy PySide6 oynasi va tablarni quradigui/theme.pyranglar, shriftlar, High-DPI va stylesheet sozlamalarini beradigui/layout_helpers.pyqayta ishlatiladigan UI layout komponentlarini saqlaydi
Ilova tizimga ta'sir qiladigan amallarni ehtiyotkorlik bilan bajarishga mo'ljallangan.
- Subprocess chaqiruvlari
shell=Falsebilan bajariladi - Root huquqi kerak bo'lgan amallar
pkexecorqali bajariladi sudoto'g'ridan-to'g'ri ishlatilmaydi- Tizim autostart fayllari bevosita o'zgartirilmaydi
- Tizim kataloglaridagi fayllarni avtomatik o'chirish cheklanadi
- Symlink va real path tekshiruvlari qo'llanadi
- O'chirish yoki tozalash kabi xavfli amallardan oldin tasdiqlash oynasi ko'rsatiladi
Virtual muhit yoqilganini tekshiring:
source venv/bin/activate
pip install -r requirements.txtPolkit o'rnatilganini tekshiring:
pkexec --versionDesktop sessiyada polkit authentication agent ishlayotgan bo'lishi kerak.
Mos servis yoki CLI o'rnatilganini tekshiring:
snap version
flatpak --versionBu vositalar o'rnatilmagan bo'lsa, ilova qolgan manbalar bilan ishlashda davom etadi.
install.shni qayta ishga tushiring:
./install.shKeyin desktop muhitini qayta yuklash yoki logout/login qilish kerak bo'lishi mumkin.
Kod o'zgarishidan oldin virtual muhitni yoqing:
source venv/bin/activateTez sintaksis tekshiruvi:
python -m py_compile main.py gui/main_window.py gui/theme.pyTo'liq test:
pytest tests/ -q- UI uchun screenshotlar qo'shish
.debpaket tayyorlash- AppImage import jarayonini yanada boyitish
- Yangilanish tekshiruvini ko'proq manbalar bilan kengaytirish
- Lokalizatsiya fayllarini alohida formatga chiqarish
Pull requestlar va takliflar qabul qilinadi. O'zgarish yuborishdan oldin testlarni ishga tushiring va xavfli tizim amallariga tegadigan kodni alohida ehtiyotkorlik bilan tekshiring.
Ushbu loyiha MIT litsenziyasi ostida tarqatiladi. Batafsil ma'lumot LICENSE faylida.