LukeShortCloud / winesapOS

winesapOS - Game with Linux anywhere, no installation required!
GNU General Public License v3.0
871 stars 31 forks source link

Added more apps #853

Closed GuestSneezeOSDev closed 3 weeks ago

GuestSneezeOSDev commented 1 month ago

Service files updated

anbox-app-manager.service Android Emulator
anbox-app-manager.service Android Emulator
anbox.service Android app support
cpufecth.service Fetch CPU information
cpufreq.service See CPU frequency
gimp.service Gimp
kdeconnect-indicator.service KDEConnect support
kdeconnectd.service KDEConnect support
waydroid-full-ui.service Android app support
waydroid-session.service Waydroid session

Scripts added

winesapos-snap-installer.desktop Desktop shortcut for snap installer (For users that dont use Flatpak)
winesapos-snap.sh snap  installer (for users that dont use Flatpak)

Fixed Broken link aswell GuestSneezeOS-Official > GuestSneezeOS

GuestSneezeOSDev commented 1 month ago

I will add the winesapDualboot script to WinesapOS

GuestSneezeOSDev commented 1 month ago

i will now change the os-release from Arch Linux to winesapOS this is how the current os-release

NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://bugs.archlinux.org/"
LOGO=archlinux
GuestSneezeOSDev commented 1 month ago

i have decided to remove winesapos-release

LukeShortCloud commented 1 month ago

@GuestSneezeOSDev Is it okay if I merge this? There are a few minor tweaks I need to make in a follow-up PR that I'll submit but overall this looks good!

LukeShortCloud commented 1 month ago

Building waydroid fails. I can fix that.

==> Checking runtime dependencies...
==> Installing missing dependencies...
error: target not found: python-gbinder
==> ERROR: 'pacman' failed to install missing dependencies.
==> Missing dependencies:
  -> lxc
  -> python-gbinder
  -> python-gobject
  -> nftables
  -> dnsmasq
  -> gtk3
  -> dbus-python
==> Checking buildtime dependencies...
==> ERROR: Could not resolve all dependencies.
+ cp './*.pkg.tar.zst' /output
cp: cannot stat './*.pkg.tar.zst': No such file or directory
+ makepkg_build_failure_check waydroid
+ ls -1
+ grep pkg.tar
++ expr 0 + 1
+ failed_builds=1
+ echo 'waydroid build FAILED'
waydroid build FAILED

KDE Connect also does not work. I'm not sure why. I see that xcb-util-cursor is installed, if that matters. Perhaps we need to force the use of a different plugin such as wayland.

$ sudo systemctl start kdeconnect-indicator.service kdeconnectd.service
$ sudo systemctl status kdeconnect-indicator.service
× kdeconnect-indicator.service - KDEConnect Indicator
     Loaded: loaded (/etc/systemd/system/kdeconnect-indicator.service; disabled; preset: disabled)
     Active: failed (Result: core-dump) since Sat 2024-07-20 14:09:10 MDT; 3min 40s ago
   Duration: 127ms
    Process: 11013 ExecStart=/usr/bin/kdeconnect-indicator (code=dumped, signal=ABRT)
   Main PID: 11013 (code=dumped, signal=ABRT)
        CPU: 26ms

Jul 20 14:09:10 winesapos systemd[1]: Started KDEConnect Indicator.
Jul 20 14:09:10 winesapos kdeconnect-indicator[11013]: qt.qpa.xcb: could not connect to display
Jul 20 14:09:10 winesapos kdeconnect-indicator[11013]: qt.qpa.plugin: From 6.5.0, xcb-cursor0 or libxcb-cursor0 is needed to load the Qt xcb platform plugin.
Jul 20 14:09:10 winesapos kdeconnect-indicator[11013]: qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
Jul 20 14:09:10 winesapos kdeconnect-indicator[11013]: This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

                                                       Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vkkhrdisplay, vnc, xcb, wayland-egl, wayland.
Jul 20 14:09:10 winesapos systemd[1]: kdeconnect-indicator.service: Main process exited, code=dumped, status=6/ABRT
Jul 20 14:09:10 winesapos systemd[1]: kdeconnect-indicator.service: Failed with result 'core-dump'.
$ sudo systemctl status kdeconnectd.service
× kdeconnectd.service - KDEConnect Service
     Loaded: loaded (/etc/systemd/system/kdeconnectd.service; disabled; preset: disabled)
     Active: failed (Result: exit-code) since Sat 2024-07-20 14:09:04 MDT; 3min 58s ago
   Duration: 1ms
    Process: 10912 ExecStart=/usr/lib/x86_64-linux-gnu/libexec/kdeconnectd (code=exited, status=203/EXEC)
   Main PID: 10912 (code=exited, status=203/EXEC)
        CPU: 389us

Jul 20 14:09:04 winesapos systemd[1]: Started KDEConnect Service.
Jul 20 14:09:04 winesapos systemd[1]: kdeconnectd.service: Main process exited, code=exited, status=203/EXEC
Jul 20 14:09:04 winesapos systemd[1]: kdeconnectd.service: Failed with result 'exit-code'.
GuestSneezeOSDev commented 1 month ago

Should i remove KDEConnect its not useful or required?

LukeShortCloud commented 1 month ago

I love the idea of having KDE Connect eventually. We can continue work on it in a separate PR.

GuestSneezeOSDev commented 1 month ago

i will fork it again but for the Live Image

GuestSneezeOSDev commented 1 month ago

I Could add the .pkg.tar.zst for waydroid to the repo if asked

LukeShortCloud commented 1 month ago

There's no need to add the *.pkg.tar.zst packages for Waydroid or anything else. By having them in the scripts/repo/winesapos-repo-build.sh script, they will get built and added to the winesapOS repository automatically.

GuestSneezeOSDev commented 1 month ago

i see i will add KDE-CONNECT immediatly

GuestSneezeOSDev commented 1 month ago

xcb-util-cursor is not important i have not added it but if i did sorry for the inconvenience

LukeShortCloud commented 1 month ago

No worries, you didn't add xcb-util-cursor. I just noticed it's already installed on winesapOS and it seemed relevant to the error with KDE Connect:

Jul 20 14:09:10 winesapos kdeconnect-indicator[11013]: qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.

You don't need to add the kdeconnect-git package to the repository unless it's needed for something specifically. We can install kdeconnect instead. That would go in scripts/winesapos-install.sh right before here: https://github.com/LukeShortCloud/winesapOS/blob/4.1.0-beta.2/scripts/winesapos-install.sh#L834

pacman_install_chroot kdeconnect
GuestSneezeOSDev commented 1 month ago

Thanks for the information, I am new to building winesapOS

GuestSneezeOSDev commented 1 month ago

I have added it (I might use winesapOS as a base for my OS GuestSneezeOS 20)

GuestSneezeOSDev commented 1 month ago

Something Like this as the wallpaper might be good Untitled

LukeShortCloud commented 1 month ago

What are you goals for GuestSneezeOS? Even if you don't use winesapOS as a base, how can I help you to achieve those goals?

You're more than welcome to re-use any and all code from winesapOS! Everything you need to know about the architecture, custom files, how to build, how to create releases, etc. is documented in our contributor's guide. I highly recommend giving it a full read. Let me know if you have any questions or need clarification on any of it.

https://github.com/LukeShortCloud/winesapOS/blob/4.1.0-beta.2/CONTRIBUTING.md

Thanks for the suggestion on a theme and helping put a wallpaper together! It's low priority so no rush on it and it's good that we can start to brainstorm and try out ideas for it. My wife is an artist so maybe she can help, too.

GuestSneezeOSDev commented 1 month ago

Yes i will soon for future versions of GuestSneezeOS, The Image i sent is just a Draft also Thanks for the Detailed Reply, The Link you have given me https://github.com/LukeShortCloud/winesapOS/blob/4.1.0-beta.2/CONTRIBUTING.md is helpful Thank you

EDIT : How do i use the minimal rootfs for my OS?

LukeShortCloud commented 1 month ago

If you want to use a winesapOS minimal rootfs there are two approaches you can take:

  1. Re-use an existing rootfs. This might be easier for you. Starting with the upcoming 4.1.0 release, we will always provide these.
  2. Create your own minimal image. This takes longer and is more complicated but you get the advantage of having more control over the build.
GuestSneezeOSDev commented 1 month ago

@LukeShortCloud yes it is okay if you merge this

GuestSneezeOSDev commented 1 month ago

also i was just asking could you help me rebuild the installer for GuestSneezeOS

LukeShortCloud commented 1 month ago

I need to do a bit more testing with this before merging but I hope to do that sometime this week.

Sure! How can I help with the GuestSneezeOS installer?

GuestSneezeOSDev commented 1 month ago

GuestSneezeOS seems to be not installing in my vmware machine neither my computer so i was wondering if you could help me rebuild the installer

LukeShortCloud commented 1 month ago

I'm very busy with work this week and I'm also taking time off this weekend. I'll be available next week to help re-test this PR and look into the GuestSneezeOS installer.

GuestSneezeOSDev commented 1 month ago

Okay thank you

GuestSneezeOSDev commented 3 weeks ago

I Made a simple winesapOS conversion script

#!/bin/bash

set -e

DISK=/dev/sda
PARTITION=${DISK}1
ARCH_TARBALL_URL="https://mirror.rackspace.com/archlinux/iso/latest/archlinux-bootstrap-x86_64.tar.gz"

parted --script $DISK mklabel gpt
parted --script $DISK mkpart primary ext4 0% 100%
mkfs.ext4 $PARTITION

mount $PARTITION /mnt

wget -O /tmp/archlinux-bootstrap.tar.gz $ARCH_TARBALL_URL
tar -xzf /tmp/archlinux-bootstrap.tar.gz -C /mnt

mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys

arch-chroot /mnt <<EOF
ln -sf /usr/share/zoneinfo/Europe/Zurich /etc/localtime
hwclock --systohc

echo "en_US.UTF-8 UTF-8" > /etc/locale.gen
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf

echo "winesapos" > /etc/hostname
cat <<EOL >> /etc/hosts
127.0.0.1    localhost
::1          localhost
127.0.1.1    winesapos.localdomain winesapos
EOL

echo "root:password" | chpasswd

cat <<EOL >> /etc/pacman.conf

[jupiter-main]
SigLevel = Optional TrustAll
Server = https://steamdeck-packages.steamos.cloud/archlinux-mirror/jupiter-3.5/os/\$arch/

[winesapos]
SigLevel = Never
Server = https://winesapos.lukeshort.cloud/repo/\$repo/\$arch

EOL

pacman -Sy
pacman -S --noconfirm grub
grub-install --target=i386-pc $DISK
grub-mkconfig -o /boot/grub/grub.cfg

EOF

umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount /mnt
reboot

It is more like Arch Linux with winesapOS repositories

GuestSneezeOSDev commented 3 weeks ago

Reuse winesapos-release

GuestSneezeOSDev commented 3 weeks ago

Added Cosmic DE

LukeShortCloud commented 3 weeks ago

We can continue with this large pull request (PR) for now.

In the future, it would be helpful it was one new feature or bug fix per PR. You can create separate git branches for those and submit them. For example, if I were to break this PR into smaller PRs, I'd make one for each of the following:

That would help with reviewing and merging in code that is ready versus other code that may need more work. If even one commit this in this PR doesn't work, I don't necessarily want to merge it in along with other things.

It's okay for now, I can go back and make some edits after merging in this PR.

GuestSneezeOSDev commented 3 weeks ago

I See i will make sure code is seperated in each Branch

GuestSneezeOSDev commented 3 weeks ago

Thanks