Categories

  • The Meta category: Organizational or general discussion.

    1k Topics
    10k Posts
    fredldotmeF
    @Thomas I presume your choice between a de-Googled Android and Ubuntu Touch should revolve around whether you want Ubuntu as your Operating System on the phone or not. We take security seriously and we're slowly catching up, see encryption of your data being a thing on 24.04.
  • Discuss news updates from Ubuntu Touch and its related projects

    1k Topics
    5k Posts
    UBportsNewsU
    Ubuntu Touch Q&A 178 is live this Saturday 15th Nov so if you can please join us at the usual time of 19:00 UTC. Before then, if you have any questions on or about Ubuntu Touch and UBports please post them below and we will do our best to answer them in the Q&A. Remember that questions on porting to device **** or its status, and questions on bugs, will not be answered.
  • Discuss and solve problems with other users

    4k Topics
    28k Posts
    Vlad NirkyV
    @gpatel-fr Not so hard and usefull you must know which yaml file is used for the wifi in /etc/netplan as root cd /etc/netplan and cat yaml files. nano 90-NM-5f1fe55a-2996-4485-b6b3-a75fe76edc62.yaml (ie) Then in the wifi one replace dhcp4: true with dhcp4: false addresses: - [your wanted IP]/24 (or less) routes: - to: default via: [your router IP] nameservers: addresses: [your DNS1, your DNS2] save it and validate it by netplan apply
  • 2k Topics
    19k Posts
    G
    @Vlad-Nirky said in How to use volte: ofonod -d thanks again, it was dumb of me not thinking to try this flag. It's much more informative, lots of things to process now.
  • Discussions on development of Ubuntu Touch

    520 Topics
    6k Posts
    V
    Sorry ...not about 24.04-1.1 A follow up of my second daily test , thumb down ,receiving messages last an update , well ,it worked after first reboot upon new daily revision , but stop after second reboot !!? encounter boot freezing in bootloader unlock warning stage ,same happend one month ago before daily stopped receiving messages. Strange , plugged the phone to pc , to reinstall stable , forgot usb setting was in usb Tethering(here french=Partage de connection usb) , suddenly it picked up all those ''not received'' messages !!?!! Tried to reproduce it , could not . Back to stable , receiving messages. Note ; daily here = 24.04-1-x , stable=24.04-1.0 one+ n10 Looked at logs a little , honestly not knowing where to look exactly , wont share any , but you can suggest or ask for some !
  • Discuss the user experience or design of Ubuntu Touch or its apps

    164 Topics
    2k Posts
    t12392nT
    woah, great work!
  • Creating Ubuntu Touch apps

    761 Topics
    7k Posts
    pparentP
    Here would be my current starting script for wayland is there a way to do better to solve some of the problems? @fredldotme @klh #!/bin/sh # Input method (probably does nothing as it is for X11 normaly) export GTK_IM_MODULE=Maliit export GTK_IM_MODULE_FILE=lib/aarch64-linux-gnu/gtk-3.0/3.0.0/immodules/immodules.cache # Prefer Wayland export GDK_BACKEND=wayland export DISABLE_WAYLAND=0 export OZONE_PLATFORM=wayland export QT_QPA_PLATFORM=wayland export XDG_SESSION_TYPE=wayland export WAYLAND_DISPLAY=${WAYLAND_DISPLAY:-wayland-0} export GTK_USE_PORTAL=1 export DCONF_PROFILE=/nonexistent export XDG_CONFIG_HOME=/home/phablet/.config/signalut.pparent/ export PATH=$PWD/bin:$PATH dpioptions="--high-dpi-support=1 --force-device-scale-factor=2.75" gpuoptions="--use-gl=egl --enable-gpu-rasterization --enable-zero-copy --ignore-gpu-blocklist --enable-features=UseSkiaRenderer,VaapiVideoDecoder,ThreadedAnimation --disable-frame-rate-limit --disable-gpu-vsync --enable-oop-rasterization --enable-threaded-compositing" sandboxoptions="--no-sandbox --disable-features=WaylandWindowDecorations " waylandoptions="--ozone-platform=wayland --enable-features=UseOzonePlatform" exec ./opt/Signal/Signal $dpioptions $gpuoptions $sandboxoptions $waylandoptions The to main things to start having something that we could consider somewhat usable, would be to be able to scale the app x2.75 while keeping the window size adapted to screen size, and to enable keyboard (the latter worries me more while remaining in Mir1.2)
  • Porting Ubuntu Touch to new devices

    485 Topics
    4k Posts
    neonmodder123N
    @k.nacke Ok will be waiting Edit: Also there is no directory called binderfs in /dev which is needed for waydroid to work
  • Lomiri, the operating environment for everywhere

    72 Topics
    616 Posts
    F
    but sharing about overall experience, I'm really happy with FP5. It works flawlessly with my 4k monitor and docking station. I can just plug it and use from mouse/keyboard/monitor. That's just awesome. FP4 was probably working similarly with FHD but I don't have any low resolution screen anymore, so I never tested it (I just can confirm that it couldn't drive 4k resolution). I just hope FP7 will have fully fictional USB-C again (as FP6 allows only charging, no docking capabilities!!!)
  • Discussion on translating Ubuntu Touch and its core apps

    59 Topics
    329 Posts
    B
    @Vlad-Nirky Thank you. Done.
  • A place to discuss ideas for promoting Ubuntu Touch

    56 Topics
    716 Posts
    LakotaubpL
    @Jules We are aware of this and we are having a good look at it.
  • Other Projects

    Projects which are started by a group within the UBports community

    70 Topics
    401 Posts
    D
    could compile it installed it but when run direct on the smartphone it hang if login ssh -CY phablet@10.42.0.1 and run then, gut the GUI Dockerfile FROM ubuntu:24.04 ENV DEBIAN_FRONTEND=noninteractive # First, update and install basic tools RUN apt-get update && apt-get install -y \ curl \ ca-certificates \ && rm -rf /var/lib/apt/lists/* # Configure repositories properly RUN rm /etc/apt/sources.list.d/ubuntu.sources && \ echo "deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse" > /etc/apt/sources.list && \ echo "deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse" >> /etc/apt/sources.list && \ echo "deb [arch=amd64] http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse" >> /etc/apt/sources.list && \ echo "" >> /etc/apt/sources.list && \ echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ noble main restricted universe multiverse" >> /etc/apt/sources.list && \ echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ noble-updates main restricted universe multiverse" >> /etc/apt/sources.list && \ echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ noble-security main restricted universe multiverse" >> /etc/apt/sources.list # Enable arm64 architecture RUN dpkg --add-architecture arm64 # Update and install dependencies RUN apt-get update && apt-get install -y \ build-essential \ crossbuild-essential-arm64 \ git \ meson \ ninja-build \ pkg-config \ blueprint-compiler \ desktop-file-utils \ gobject-introspection \ libgirepository1.0-dev \ gir1.2-gtk-4.0 \ gir1.2-adw-1 \ gir1.2-gtksource-5 \ libglib2.0-bin \ libglib2.0-dev \ protobuf-compiler \ libglib2.0-dev:arm64 \ libgtk-4-dev:arm64 \ libadwaita-1-dev:arm64 \ libpango1.0-dev:arm64 \ libgdk-pixbuf-2.0-dev:arm64 \ libcairo2-dev:arm64 \ libgtksourceview-5-dev:arm64 \ gettext \ python3-pip \ && rm -rf /var/lib/apt/lists/* # Fix: Replace ARM64 glib-compile-schemas with wrapper to native version RUN if [ -f /usr/lib/aarch64-linux-gnu/glib-2.0/glib-compile-schemas ]; then \ mv /usr/lib/aarch64-linux-gnu/glib-2.0/glib-compile-schemas \ /usr/lib/aarch64-linux-gnu/glib-2.0/glib-compile-schemas.arm64 && \ echo '#!/bin/bash\nexec /usr/lib/x86_64-linux-gnu/glib-2.0/glib-compile-schemas "$@"' \ > /usr/lib/aarch64-linux-gnu/glib-2.0/glib-compile-schemas && \ chmod +x /usr/lib/aarch64-linux-gnu/glib-2.0/glib-compile-schemas; \ fi # Add this near the end of your Dockerfile, before WORKDIR RUN pip3 install --break-system-packages clickable-ut # Install Rust RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y ENV PATH="/root/.cargo/bin:${PATH}" # Add aarch64 Rust target RUN rustup target add aarch64-unknown-linux-gnu # Configure Cargo RUN mkdir -p /root/.cargo && \ echo '[target.aarch64-unknown-linux-gnu]' >> /root/.cargo/config.toml && \ echo 'linker = "aarch64-linux-gnu-gcc"' >> /root/.cargo/config.toml # Set pkg-config paths for Cargo ENV PKG_CONFIG_SYSROOT_DIR=/ ENV PKG_CONFIG_PATH= ENV PKG_CONFIG_LIBDIR=/usr/lib/aarch64-linux-gnu/pkgconfig:/usr/share/pkgconfig ENV PKG_CONFIG_ALLOW_CROSS=1 # CRITICAL: Force Cargo to build for aarch64 ENV CARGO_BUILD_TARGET=aarch64-unknown-linux-gnu # Create simpler cargo wrapper RUN mv /root/.cargo/bin/cargo /root/.cargo/bin/cargo-real && \ cat > /root/.cargo/bin/cargo << 'EOFWRAPPER' #!/bin/bash case "$1" in build) if [[ "$*" != *"--target"* ]]; then /root/.cargo/bin/cargo-real "$@" --target aarch64-unknown-linux-gnu result=$? if [ $result -eq 0 ] && [ -n "$CARGO_TARGET_DIR" ] && [ -f "$CARGO_TARGET_DIR/aarch64-unknown-linux-gnu/release/flare" ]; then mkdir -p "$CARGO_TARGET_DIR/release" cp "$CARGO_TARGET_DIR/aarch64-unknown-linux-gnu/release/flare" "$CARGO_TARGET_DIR/release/flare" fi exit $result fi ;; esac exec /root/.cargo/bin/cargo-real "$@" EOFWRAPPER RUN chmod +x /root/.cargo/bin/cargo # Create pkg-config wrapper RUN echo '#!/bin/bash\n\ export PKG_CONFIG_PATH=\n\ export PKG_CONFIG_LIBDIR=/usr/lib/aarch64-linux-gnu/pkgconfig:/usr/share/pkgconfig\n\ export PKG_CONFIG_SYSROOT_DIR=/\n\ exec pkg-config "$@"' > /usr/local/bin/aarch64-linux-gnu-pkg-config && \ chmod +x /usr/local/bin/aarch64-linux-gnu-pkg-config WORKDIR /build aarch64-cross.txt [binaries] c = 'aarch64-linux-gnu-gcc' cpp = 'aarch64-linux-gnu-g++' ar = 'aarch64-linux-gnu-ar' strip = 'aarch64-linux-gnu-strip' pkg-config = 'aarch64-linux-gnu-pkg-config' rust = ['rustc', '--target', 'aarch64-unknown-linux-gnu'] [properties] sys_root = '/usr/aarch64-linux-gnu' [built-in options] pkg_config_path = '/usr/lib/aarch64-linux-gnu/pkgconfig:/usr/share/pkgconfig' [host_machine] system = 'linux' cpu_family = 'aarch64' cpu = 'aarch64' endian = 'little' [build_machine] system = 'linux' cpu_family = 'x86_64' cpu = 'x86_64' endian = 'little' docker build -t flare-builder . [docker run --rm -v $(pwd):/build flare-builder bash -c " # Install clickable in the container pip3 install clickable-ut # Build the click package cd /build clickable build --arch arm64 clickable click-build --arch arm64 " docker run --rm -v $(pwd):/build flare-builder bash -c " cd /build apt-get update && apt-get install -y click patchelf rm -rf click-package mkdir -p click-package/usr/bin mkdir -p click-package/lib/aarch64-linux-gnu # Copy binary cp builddir/src/flare click-package/usr/bin/flare-bin chmod +x click-package/usr/bin/flare-bin # Explicitly copy ALL required GTK4/Libadwaita libraries echo 'Copying libraries explicitly...' # Copy each library with all its versions cp -v /usr/lib/aarch64-linux-gnu/libgtksourceview-5.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || echo 'libgtksourceview-5 not found' cp -v /usr/lib/aarch64-linux-gnu/libgtk-4.so.1* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || echo 'libgtk-4 not found' cp -v /usr/lib/aarch64-linux-gnu/libadwaita-1.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || echo 'libadwaita-1 not found' cp -v /usr/lib/aarch64-linux-gnu/libgraphene-1.0.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || echo 'libgraphene not found' cp -v /usr/lib/aarch64-linux-gnu/libpangocairo-1.0.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libpango-1.0.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libharfbuzz.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libgdk_pixbuf-2.0.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libcairo-gobject.so.2* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libcairo.so.2* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libvulkan.so.1* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libgio-2.0.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libgobject-2.0.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libfribidi.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libfontconfig.so.1* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libfreetype.so.6* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libpixman-1.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libpng16.so.16* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libxcb.so.1* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libxcb-render.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libxcb-shm.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libX11.so.6* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libXrender.so.1* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libXext.so.6* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libwayland-client.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libwayland-cursor.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libwayland-egl.so.1* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true cp -v /usr/lib/aarch64-linux-gnu/libepoxy.so.0* click-package/lib/aarch64-linux-gnu/ 2>/dev/null || true # Set RPATH patchelf --set-rpath '\$ORIGIN/../../lib/aarch64-linux-gnu' click-package/usr/bin/flare-bin # Create wrapper cat > click-package/usr/bin/flare << 'WRAPPER' #!/bin/bash SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" APP_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" export LD_LIBRARY_PATH="$APP_ROOT/lib/aarch64-linux-gnu:$LD_LIBRARY_PATH" export QT_QPA_PLATFORM=ubuntumirclient export MIR_SOCKET="${MIR_SOCKET:-/run/user/$(id -u)/mir_socket}" if [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then export $(dbus-launch) fi exec "$SCRIPT_DIR/flare-bin" "$@" WRAPPER chmod +x click-package/usr/bin/flare # Copy icon find data -name '*Flare*.svg' -exec cp {} click-package/flare.svg \; -quit # Create desktop file cat > click-package/flare.desktop << 'DESKTOP' [Desktop Entry] Name=Flare Comment=Signal messaging client Exec=usr/bin/flare Icon=flare.svg Terminal=false Type=Application Categories=Network;InstantMessaging; X-Ubuntu-Touch=true DESKTOP # Create manifest cat > click-package/manifest.json << 'MANIFEST' { "name": "flare.dennisschweiger", "title": "Flare", "version": "0.18.6", "maintainer": "Dennis Schweiger dennis@example.com", "architecture": "arm64", "description": "Signal messaging client", "framework": "ubuntu-sdk-20.04", "hooks": { "flare": { "apparmor": "flare.apparmor", "desktop": "flare.desktop" } } } MANIFEST # Create apparmor cat > click-package/flare.apparmor << 'APPARMOR' { "template": "unconfined", "policy_groups": [ "networking", "audio" ] } APPARMOR](link url) cd click-package ``` echo '' echo '=== Bundled libraries (first 30) ===' ls -lah lib/aarch64-linux-gnu/ | head -30 echo '' echo 'Total library files:' ls -1 lib/aarch64-linux-gnu/ | wc -l echo '' echo 'Verifying libgtksourceview-5:' ls -la lib/aarch64-linux-gnu/libgtksourceview* || echo 'NOT FOUND!' # Build click build . --no-validate mv *.click ../ cd .. echo '' echo '=== Package created ===' ls -lh *.click " sudo click unregister --user=phablet flare.dennisschweiger 2>/dev/null || true sudo click install --user=phablet --allow-unauthenticated /home/phablet/flare.dennisschweiger_0.18.6_arm64
  • For things that just don't fit in the other categories.

    845 Topics
    5k Posts
    A
    from what im reading its asking me to build package sources like indicator-network and i think that is needed because i ran lomiri once i got the setup no apps worked and when i restarted it failed to run so what do i need to b