子版面

  • This section is specifically useful for new contributors on the project

    7 主題
    1 貼文
    DiogoD
    This Category is for those starting to contribute for the UBports Project and Community. By contributing, we mean doing things like: coding quality assurance (testing, bug reporting and validation, etc...) translations app development and maintenance writing and validating technical documentation and user manuals UBports social media and marqueting etc... If you want to contribute in these ways or others and have questions about it, like how to get started, where can you find information, please leave your questions in this category and we will try to answer them the best we can.
  • Discuss and solve problems with other users

    90 主題
    645 貼文
    developerbaymanD
    @bearbobs sorry for the late reply its been busy with work...did you have to host the emulationstation?....because not sure how to host from within a clickable.....Iv seen the project before but have not really done anything with it....if it runs totally client side its do able....but if it needs hosting I don't think it can be done....the nes I'm working on is a heavily modded JavaScript emulator runs totally client side i added touch support fixed up the audio and added a lot of mapper support.....one big issue is the webview out of the box is....well lacking...if you load mario you will see black squares around the clouds and other sprites...not the emulator but the webview....
  • 133 主題
    934 貼文
    developerbaymanD
    @captainfunk try this #!/bin/bash # # Usage: # To install and set up: ./waydroid_shared_folder.sh --install # To perform mount only: ./waydroid_shared_folder.sh --mount (used by cron) # To perform chown only: ./waydroid_shared_folder.sh --chown (used by cron) # To uninstall: ./waydroid_shared_folder.sh --uninstall # To display help: ./waydroid_shared_folder.sh --help # # --- Configuration --- # Define the paths for the shared folders. # ~/shared is the folder on your Ubuntu Touch host that you will use. SHARED_DIR_HOST="$HOME/shared" # ~/.local/share/waydroid/data/media/0/shared is the corresponding folder inside Waydroid. SHARED_DIR_WAYDROID="$HOME/.local/share/waydroid/data/media/0/shared" # The primary user on Ubuntu Touch. USER_PHABLET="phablet" # The name of this script, used for cron job identification. SCRIPT_NAME=$(basename "$0") # The absolute path to this script, essential for cron to execute it correctly. SCRIPT_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" &> /dev/null && pwd)/$SCRIPT_NAME" # --- Functions --- # Function for logging messages to stdout with a timestamp. log() { echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" } # Function to create the necessary shared directories if they don't exist. create_directories() { log "Creating shared directories..." # Create the host shared directory. mkdir -p "$SHARED_DIR_HOST" # Create the Waydroid internal shared directory path. mkdir -p "$SHARED_DIR_WAYDROID" if [ $? -eq 0 ]; then log "Directories created successfully." else log "Error creating directories. Please check permissions or disk space. Exiting." exit 1 fi } # Function to perform the bind mount operation. perform_bind_mount() { log "Attempting to bind mount '$SHARED_DIR_HOST' to '$SHARED_DIR_WAYDROID'..." # Check if the Waydroid shared folder is already mounted to avoid errors. if mountpoint -q "$SHARED_DIR_WAYDROID"; then log "Folder '$SHARED_DIR_WAYDROID' is already mounted. Skipping bind mount." else # Use sudo to perform the bind mount, linking the host folder to the Waydroid folder. sudo mount --bind "$SHARED_DIR_HOST" "$SHARED_DIR_WAYDROID" if [ $? -eq 0 ]; then log "Bind mount successful." # Immediately set initial permissions after a successful mount. set_folder_permissions else log "Error: Bind mount failed. This could be due to incorrect paths, Waydroid not running, or insufficient sudo permissions." log "Ensure Waydroid is running and '$SHARED_DIR_WAYDROID' exists inside its 'data/media/0' structure." exit 1 fi fi } # Function to unmount the shared folder. unmount_folder() { log "Attempting to unmount '$SHARED_DIR_WAYDROID'..." # Check if the folder is currently mounted before attempting to unmount. if mountpoint -q "$SHARED_DIR_WAYDROID"; then # Use sudo to unmount the folder. sudo umount "$SHARED_DIR_WAYDROID" if [ $? -eq 0 ]; then log "Unmount successful." else log "Error unmounting folder. This may happen if files inside are in use." log "You might need to manually unmount or reboot if it persists." exit 1 fi else log "Folder '$SHARED_DIR_WAYDROID' is not mounted. Skipping unmount." fi } # Function to set the ownership of the shared folder and its contents. set_folder_permissions() { log "Setting permissions for '$SHARED_DIR_WAYDROID' to '$USER_PHABLET:$USER_PHABLET'..." # Use sudo and the -R (recursive) flag to ensure all files and subdirectories # within the mounted shared folder are owned by the 'phablet' user. # This directly addresses the issue of Waydroid changing ownership. sudo chown -R "$USER_PHABLET":"$USER_PHABLET" "$SHARED_DIR_WAYDROID" if [ $? -eq 0 ]; then log "Permissions set successfully." else log "Error setting permissions. Check sudo permissions or ensure the path '$SHARED_DIR_WAYDROID' is valid." exit 1 fi } # Function to add cron jobs for persistence and continuous permission management. add_cron_jobs() { log "Adding cron jobs for persistence and continuous permission management..." # Get current crontab, add new entries, sort, remove duplicates, then set new crontab. # @reboot: Executes the script with '--mount' option every time the device reboots. # * * * * *: Executes the script with '--chown' option every minute to correct permissions. (crontab -l 2>/dev/null; \ echo "@reboot /bin/bash \"$SCRIPT_PATH\" --mount"; \ echo "* * * * * /bin/bash \"$SCRIPT_PATH\" --chown" \ ) | sort | uniq | crontab - if [ $? -eq 0 ]; then log "Cron jobs added successfully." log "They will run from this script's current location: $SCRIPT_PATH" log "IMPORTANT: Do NOT move or rename this script after installation, or the cron jobs will fail." log "You can verify the cron jobs by running: crontab -l" else log "Error adding cron jobs. This could be a cron service issue." exit 1 fi } # Function to remove cron jobs added by this script. remove_cron_jobs() { log "Removing cron jobs related to this script..." # List current cron jobs, filter out lines containing this script's path, and set the new crontab. crontab -l 2>/dev/null | grep -v "$SCRIPT_PATH" | crontab - if [ $? -eq 0 ]; then log "Cron jobs removed successfully. You can verify by running: crontab -l" else log "Error removing cron jobs. You may need to manually edit your crontab (crontab -e)." exit 1 fi } # Function to display the help message. display_help() { echo "Usage: $SCRIPT_NAME [OPTION]" echo "" echo "This script automates setting up and managing a shared folder between Ubuntu Touch and Waydroid." echo "" echo "Options:" echo " --install Performs initial setup: creates directories, mounts the folder," echo " sets initial permissions, and adds cron jobs for persistence and" echo " continuous permission handling. Run this command once to set up." echo "" echo " --mount Performs only the bind mount operation and sets initial permissions." echo " This option is primarily used by the '@reboot' cron job for persistence." echo "" echo " --chown Recursively sets permissions for the shared folder and its contents" echo " to 'phablet:phablet'. This option is used by the periodic cron job" echo " to automatically correct permissions changed by Waydroid." echo "" echo " --uninstall Removes the cron jobs added by this script and unmounts the shared folder." echo " This cleans up the setup." echo "" echo " --help Display this help message." echo "" echo "Important Notes:" echo " - This script assumes you are running it as the 'phablet' user on Ubuntu Touch." echo " - It relies on 'sudo' for mount and chown commands. The 'phablet' user typically has" echo " passwordless sudo access configured by default on Ubuntu Touch." echo " - After running '--install', a reboot is recommended to ensure the @reboot cron job fires." echo " - Do not move or rename this script after installation, as the cron jobs rely on its path." echo " - While '/etc/fstab' is a common Linux method for persistence, it's generally not recommended" echo " for user-level modifications on Ubuntu Touch due to its read-only root filesystem and OTA updates." echo " Using user-specific cron jobs provides a safer and more robust solution here." } # --- Main Logic --- # Check if the script is being run as root. It should be run as the regular user (phablet). if [[ $EUID -eq 0 ]]; then log "Error: This script should NOT be run directly with 'sudo'." log "Please run it as the '$USER_PHABLET' user (e.g., just './$SCRIPT_NAME --install')." log "The script will use 'sudo' internally where necessary." exit 1 fi # Check for essential commands required by the script. if ! command -v crontab &> /dev/null; then log "Error: 'crontab' command not found. Please ensure cron is installed and available." exit 1 fi if ! command -v mountpoint &> /dev/null; then log "Error: 'mountpoint' command not found. Please ensure it's installed (usually part of 'util-linux')." exit 1 fi # Process command-line arguments. case "$1" in --install) log "Initiating installation process..." create_directories # Create the required host and Waydroid directories. perform_bind_mount # Perform the initial bind mount. add_cron_jobs # Set up cron jobs for persistence and auto-chown. log "Installation complete. Please reboot your Ubuntu Touch device for all changes to take full effect." log "The shared folder will now be persistent across reboots, and permissions will be automatically corrected." ;; --mount) log "Executing mount operation (likely from @reboot cron job)..." create_directories # Ensure directories exist (in case they were deleted). perform_bind_mount # Perform the bind mount. ;; --chown) log "Executing chown operation (likely from periodic cron job)..." # Only attempt chown if the target directory exists and is mounted. if [ -d "$SHARED_DIR_WAYDROID" ] && mountpoint -q "$SHARED_DIR_WAYDROID"; then set_folder_permissions # Correct the permissions recursively. else log "Shared Waydroid directory '$SHARED_DIR_WAYDROID' not found or not mounted. Skipping chown for now." log "This might happen if Waydroid is not running or if the mount failed." fi ;; --uninstall) log "Initiating uninstallation process..." remove_cron_jobs # Remove the cron jobs. unmount_folder # Unmount the shared folder. log "Uninstallation complete. You may manually remove the '$SHARED_DIR_HOST' directory if no longer needed." ;; --help) display_help # Show the help message. ;; *) log "Invalid option: '$1'" display_help exit 1 ;; esac log "Script execution finished."
  • choosing a program to open files? ala, right click "open with"??

    Unsolved
    3
    0 評價
    3 貼文
    284 瀏覽
    KenedaK
    @applee said in choosing a program to open files? ala, right click "open with"??: And regarding your additional question: There are a couple of text editors in the open store if my memory serves me well. Yes there is Tedit for simple usage, or Seabass 2 for lot more than just editing text files.
  • Can't repair forgotten bluetooth device

    已移動
    2
    0 評價
    2 貼文
    190 瀏覽
    AppLeeA
    Hi @lundrin You might want to read this thread. https://forums.ubports.com/topic/8304/cannot-forget-bluetooth-device At first glance, I think that it is the same problem
  • Enable keyboard predictions system wide

    已移動
    2
    0 評價
    2 貼文
    138 瀏覽
    KenedaK
    @droidfilesystem said in Enable keyboard predictions system wide: most particularly in the browser Not anymore, sadly. Only in messaging app and similar. That was enabled before on browser too, but was deactivated because, as i understood, there were issues with it. Personnally i never had issues with it when working, and enjoyed it pretty much, i miss this since it's gone I hope some day it will be reactivated... @droidfilesystem said in Enable keyboard predictions system wide: Also is there any way to go back to home page or a back button? No there is not any "home" on Ubuntu Touch, only the wallpaper screen when you close all apps. On certain rare phone, most are like mine "legacy" devices where "home" button is active, it opens app drawer. However, there are tow apps on openstore to implement sort of home page, those are "Home" and "Launcher Modular". Test each to make your own opinion
  • Auto correct

    已移動
    3
    0 評價
    3 貼文
    212 瀏覽
    UltrasonicNoiseU
    @keneda I think I have the hang of it. Thank you very much.
  • font arabic

    已移動
    10
    0 評價
    10 貼文
    586 瀏覽
    lduboeufL
    @lduboeuf but maybe a more deep issue, could also be in UITK code
  • Ubuntu Touch on the Galaxy S5 help

    Unsolved
    16
    0 評價
    16 貼文
    4k 瀏覽
    LakotaubpL
    @mostafa3bdou Please contact the porter directly they are the only ones who know for sure. The deatils will be on the device page of https://devices.ubuntu-touch.io
  • Something like Zoiper (voip softphone)?

    Unsolved
    6
    0 評價
    6 貼文
    468 瀏覽
    7
    @rocket2nfinity Yes I did figure that out here in my dedicated Lin thread. Not necessary in Zoiper but it must be there in Linphone. I got it to work after reading more about the Lin app. The more I use Lin though, the more problems I find: -It only allows 3 contacts as far as I can see. I would hate to have to type out number and voip server every time I make a call. -Incoming does not ring -VoIP configuration in setup cannot be saved or modified. You have to start from scratch if you want to change anything. Not a huge deal but a little annoying. -none of the usual additional settings are there (port etc) The actual Lin softphone has a lot more features that for some reason this leaves out. But... it does call out. That is better than nothing. I think a very good softphone is important to UT since standard voice calls are not possible over LTE in the USA. VoIP seems to be the only option if one actually wants to call with the phone.
  • Web Apps safe? Passwords, etc

    已移動
    4
    0 評價
    4 貼文
    274 瀏覽
    Josele13J
    @777funk I know how to make webapps but I'm not a developer, I don't know how to create code, webapps are very useful, the webapps I make you can trust, Regards...
  • uNav works great but isn't playing Voice commands (no sound from uNav).

    Solved
    9
    0 評價
    9 貼文
    566 瀏覽
    7
    @cliffcoggin said in uNav works great but isn't playing Voice commands (no sound from uNav).: @777funk said in uNav works great but isn't playing Voice commands (no sound from uNav).: PureMaps is great. Thanks for mentioning it. I also installed OSM Scout Server and the online maps for the regions I regularly travel. Just that functionality alone is a Google Maps killer for me! Very nice to have offline maps in detail. Glad to hear it. The offline functionality was essential for me, while being invisible to Google was a bonus. Who doesn't like that idea. Lol. I do wonder though since UT uses android in the background and some aspects of the Morph browser look like Chrome and of course in my case the phone itself is a Google Nexus.
  • Linphone can't connect

    Unsolved
    2
    0 評價
    2 貼文
    420 瀏覽
    7
    @777funk said in Linphone can't connect: It's looking like Linphone may be the only supported softphone. For some reason it seems to not connect both to my Linphone account and my Voip.ms account. I know it's not a setting issue because yesterday it was connected (green light). Also, Zoiper on android shows connected to the account I'm trying to use. I believe there's an issue with the App. Is there anything I can do to bring it back to life? Must have been some sort of intermittent or random bug because it resolved itself. AND I was able to make a call. For those unfamiliar, with Linphone, its required to put @<insertvoip.servername.here> after the full number. Now if I could solve the phone app not ringing
  • Ubuntu touch on vince (Redmi 5 Plus)

    已移動
    8
    0 評價
    8 貼文
    1k 瀏覽
    LakotaubpL
    @AppLee and @messayisto are correct given the status of the port. It is down to the porter (who do this in their own time) to maintain the port and get it ready so that it can go on the UBports installer. If the device is not on the installer then I am afraid only the porter can help you.
  • Can't install in terminal because no free space

    Unsolved
    4
    0 評價
    4 貼文
    235 瀏覽
    AppLeeA
    @millander HI Libertine works for most command line software. GUI software are tricky to make it work, first of all, the GUI is not designed for tablets or phones so it is difficult to use. And sometimes the GUI simply is not working for lack of dependencies or other incompatibilities... Most people try Gimp or LibreOffice and realize it's not usable even on a tablet.
  • Video recording not working on Google Pixel 3a XL

    Unsolved
    9
    0 評價
    9 貼文
    595 瀏覽
    RayCulpR
    @moem Yay! It works! Thanks!
  • How to retrieve my content from a broken phone?

    Solved
    7
    0 評價
    7 貼文
    554 瀏覽
    TheBirdT
    Thank you for the report. Glad it works
  • Download too slow on the UB Installer

    Unsolved
    2
    1
    0 評價
    2 貼文
    188 瀏覽
    MoemM
    Hello! I have removed your other , identical post. Please do not double post, we can move posts for you if it's needed.
  • Browsers?

    Unsolved
    17
    0 評價
    17 貼文
    1k 瀏覽
    E
    @yk102 I use "Browser" the default android browser
  • Dual Boot?

    已移動 dualboot
    3
    0 評價
    3 貼文
    350 瀏覽
    KenedaK
    @moem @777funk However it is supported on volla devices by hallowelt. Also, depending on the device you have, and what you need from android, you can use waydroid on UT.
  • 此主題已被刪除!

    Unsolved
    6
    0 評價
    6 貼文
    102 瀏覽
  • Bluetooth not working on Volla 22

    Unsolved bluetooth volla phone vollaphone volla 22
    7
    0 評價
    7 貼文
    561 瀏覽
    D
    @muskist thank you anyway. Hopefully it'll be working when 20.04 will be relesed.
  • Mobile data not working in Volla 22 phone UT

    Solved
    5
    1
    0 評價
    5 貼文
    454 瀏覽
    A
    @sven Hi, now mobile data and wifi both connecting. Thanks! I turn off the Wifi and remove both sim card, the first I insert mobile data sim card and then I turn on the wifi connection and off it. The mobile data was working immediately after wifi turn off. But now i noticed few more new issue, Wifi is not connecting automatically some times, when i enter wifi coverage. I need to turn off wifi and on again and the need to select the wifi network, then it working. After connected to wifi, I unable to see which wifi it was connected, I mean its not highlighting wifi name. Whenever I trying to take screenshots, Ubuntu Touch boot screen appear and going to home screen (lock). Contacts search was not fast. Bluetooth not working with my car. Bluetooth was paired perfectly, receiving calls in car but after answer no voice (in car and also in mobile) and also i dont know how to disconnect bluetooth and respond the call in phone. I need to restart my phone to make next call or receive calls.