Code Monkey home page Code Monkey logo

onboarding's Introduction

Onboarding

Translation status

Screenshot

Building, Testing, and Installation

You'll need the following dependencies:

  • libgtk-4-dev
  • libgranite-7-dev
  • libadwaita-1-dev
  • meson
  • valac

Run meson to configure the build environment and then ninja to build

meson build --prefix=/usr
cd build
ninja

To install, use ninja install

ninja install

Launch Onboarding with:

io.elementary.onboarding

onboarding's People

Contributors

1280px avatar albertong27 avatar bagjunggyu avatar cassidyjames avatar colindemian avatar comradekingu avatar dananay avatar danirabbit avatar davidmhewitt avatar dennis1248 avatar elementarybot avatar fitojb avatar frachmadin avatar hugok79 avatar ihorhordiichuk avatar jaimie85 avatar johndumpling avatar josprachi avatar lenemter avatar marcin-serwin avatar meisenzahl avatar nathanbnm avatar p-bo avatar queeup avatar ryonakano avatar sporiff avatar tomiohl avatar weblate avatar yarons avatar zoli111 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

onboarding's Issues

Install "duplicity" package by default and let user configure backup in onboarding app

Problem

I know too many people who don't make any backups and only then start to worry when it's too late and their data is already lost.
Humanity as a whole could benefit from that because the time needed to get new copies of documents, etc. could be invested in cleaning the environment, working on cures for diseases, etc.

Proposal

Install duplicity by default. Guide the user to configure it.
An encrypted cloud backup to any of the major providers (Onedrive, google, dropbox, nextcloud) etc. should be available by default

Prior Art (Optional)

No response

Add Appdata

So that users get clearer updates and issue URLs are available

Remove location services page

What Happened

After observing users going through onboarding it seems like this page isn't clear enough in what it does, and after some discussion, this isn't actually a terribly useful feature.

It seems that users are under the impression that having location services enabled means all apps will be able to see their location all the time, so they understandably choose to opt out. What this feature actually does is disables the ability for apps to request access to location services. Which means that any apps using location will not function with no real explanation as to why.

By default, apps are already required to ask for permission before they can access location and this behavior cannot be disabled. So turning off location services altogether doesn't have any meaningful impact on privacy. Instead what this does is reduce the number of prompts a user might see, which is far less useful.

Since you get a link to location services in each prompt, it seems like it's already discoverable enough and more contextual to let users make that decision after they've been prompted. So we can remove this screen from Onboarding and make setup a wee bit faster

elementary account

We're going to need an account for saved purchases. We need an onboarding pane that encourages users to either register or log in.

Update Early Access copy for 7.0

Problem

Currently the Early Access warning page that appears on the 7.0 images still references the 6.0 release board and "curated apps are not available in AppCenter"

Proposal

Update this page with relevant information for 7.0

Prior Art (Optional)

No response

Handle guest account warning

Problem

When logging into the guest account we get this rather unpleasant looking dialog

Screenshot from 2023-04-03 12 13 14

Proposal

Handle the guest account warning here so we can style it nicely and have it be part of the regular onboarding process

Prior Art (Optional)

No response

Add an elementary account Oauth view

We want to prompt for payment details in Onboarding, but need to make sure it's clear:

  • Why we're asking (used for payments in AppCenter)
  • How to manage it later
  • That it's stored securely
  • That we'll always prompt for payments

Add additional accent color based on wallpaper

Problem

The settings have a new feature: wallpaper based accent color, this should be also in the onboarding settings (only for consistency reasons).

Proposal

Just add the same feature (the rainbow "button") as in settings -> appearance :)

Onboarding segfaults when user language is set to Polish

What Happened

When onboarding tries to launch when user language is set to Polish is segfaults.

This is a problem since some time after onboarding was introduced in elementary OS 5. I saw onboarding once then after some updates I only saw logs of this crash. This problem persists on fresh install. I'm not sure if other languages are affected.

Expected Behavior

Onboarding launches as for other languages.

Steps to Reproduce

  1. Create new user
  2. Set its language to Polish
  3. Login as this user. Onboarding will not show up and segfault will be recorder in system logs.
  4. Changing lanugage to something else will fix this issue (I tried English, German, French)

Logs

[306864.160243] io.elementary.o[3562054]: segfault at 1e ip 00007f030dbd5675 sp 00007ffcc832eac8 error 4 in libc-2.31.so[7f030da6f000+178000]
[306864.160253] Code: 00 00 0f 1f 00 31 c0 c5 f8 77 c3 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 89 f9 48 89 fa c5 f9 ef c0 83 e1 3f 83 f9 20 77 2b <c5> fd 74 0f c5 fd d7 c1 85 c0 0f 85 eb 00 00 00 48 83 c7 20 83 e1

Platform Information

  • elementary os 6.0, updated as of 06 sep
  • onboarding: 6.0.0+r507+pkg10~ubuntu6.1

Adding Silesian translation file

Hi, could you add translation files for Silesian?

ISO 639-3: szl
Plurals: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);

Thank you!

"Get Involved...": possibility of being customizable?

On the Welcome screen the Get Involved... link is hardcoded. This is slightly confusing when Pantheon is used on other distros, as the other links are set via various variables from os-release, and in order for Pantheon to be truely distro-agnostic this link should be customizable also.

Unfortunately, the os-release manpage offers no such variable that could be used for "getting involved" (there is HOME_URL, DOCUMENTATION_URL, SUPPORT_URL, BUG_REPORT_URL, and PRIVACY_POLICY_URL), so it'll either need to come from somewhere else or a non-standard variable in os-release will have to be used.

image

Request to have the ability to turn off the welcome screen after seeing once

Problem

The welcome screen is quite handy to have but after seeing this a few times, it would be nice to turn this off or remove it from the start up.
Each time I log in, the welcome screen is shown.
I have this on two installs so I assume this is a beta release behaviour

Proposal

have an option to turn this off

Prior Art

Add a PaymentInfo view

This will require figuring out how and where to store Stripe info, but assuming we do so, this view should:

  • Clearly explain how and when users can pay for things
  • Prompt a user to enter their payment info (using the CardNumberEntry from AppCenter)
  • Reassure they are always prompted for payment
  • Tell them how they can remove or modify payment info (i.e. from System Settings)

I think ideally we would also:

  • Move the payment for the OS from the website to this spot, i.e. prompt for payment for the OS here instead
  • Maybe explain pay-what-you want?

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Update view only ever shows once

Our update logic is busted; we add the update view, and then immediately remove it if it's ever been viewed before. Instead, we should exclude it from being removed.

Reproduce

  1. gesttings reset io.elementary.onboarding viewed to reset to a fresh install
  2. Run Onboarding and step through (or skip)
  3. In dconf-editor, remove one of the feature view names from io.elementary.onboarding viewed to simulate a new view showing up in an update; e.g. location.
  4. Run Onboarding again and see that it shows the update view.
  5. Repeat step 3, removing a feature name again.
  6. Run Onboarding again.

In master, you will not see the update view again because it has been viewed and thus is removed from the stack.

Welcome view references distro name for Pantheon links

What Happened?

On the welcome view, the description text says to follow the links to learn more about [distro name] but those links are about Pantheon and elementary OS, not the distro

Steps to Reproduce

Screenshot from 2023-05-16 11 33 38

Expected Behavior

We should change this copy so that it isn't referencing the distro name since these links aren't to the distro's website

OS Version

7.x (Horus)

Software Version

Latest release (I have run all updates)

Log Output

No response

Hardware Info

No response

Show option to schedule dark mode

Problem

When I set up a new computer, I'm offered the option to choose or dark or light mode, but I have to go into System Settings to choose scheduled dark mode which is what I really want

Proposal

Include an option in Onboarding to choose sunset/sunrise scheduled dark mode

Prior Art (Optional)

No response

Use os-distributor icon

It seems weird that this uses the installer icon, which metaphorically implies the OS still needs to be installed to disk (with its down arrow). Instead we should probably just use the os-distributor icon for the app. Alternatively we could come up with something new, but I think os-distributor makes perfect sense.

Mention Flatpak

We've gotten some pretty consistent feedback that users still feel the way to sideload apps is by using Deb packages, which of course we don't support.

On the apps page, we should probably mention sideloading Flatpak apps in addition to getting apps from AppCenter

Add automatic app updates

Problem

AppCenter now has automatic app updates, but you have to open appcenter and click the settings gear to discover it

Proposal

Expose automatic app updates in onboarding so it's obvious the feature exists and people can use it

Prior Art (Optional)

No response

Introduce multi-touch gestures in onboarding

Problem

elementary's multi-touch gestures are fantastic and essential for everyday use.

However, many users may not be using this functionality because they don't know it exists in elementary, unless they go to system settings.

Proposal

Show in onboarding, a brief instruction on using multi-touch gestures.

Just as an example, I took some Mac images that show how to use the gestures:

photo-output

Prior Art (Optional)

No response

Skip onboarding with the "Esc" key. Better keyboard navigation.

I think that it should be easier to skip Onboarding with the keyboard. "Esc" key?
Tab works, but some buttons, like the position indicator or the next button, are not highlighted when selected, which makes it impossible to know what is currently selected.

Blurry icon in dock

Looks like because we're installing the .desktop just to autostart, but not to /usr/share/applications. We should also install it to the latter (setting NoDisplay=true so it doesn't show up in the menu) to get proper matching of the icon in the dock.

Pre-release warning

Problem

We keep getting issues and Slack messages about known issues in the daily builds. Plus, there are already some video walkthroughs popping up on the Internet.

Proposal

Add a pre-release warning page to Onboarding. It can be added now and removed once we're ready for a stable release—or only shown when we know we're on an early build (i.e. if the codename is next, maybe?).

⚠️
Pre-release Version
You're running an early daily build of elementary OS. Things will be broken.

• Curated apps are not available in AppCenter
• The visual style is unfinished
More…

Prior Art

Way back in the day we used to set a whole pre-release warning wallpaper. More recently we've set a purpleprint wallpaper, but that does less to communicate known issues.

Add mouse and touchpad settings

Problem

One of the first things I do when I install any operating system is tune mouse speed and acceleration. It would be nice if it was a part of onboarding process.

Proposal

Add a new view with mouse and touchpad settings.

Prior Art (Optional)

There are a lot of stuff that can go in it, like primary mouse button, speed and acceleration. Maybe even pointer size? However I'm not sure what can be added from touchpad settings as touchpad works fine for me out of the box.

Ask about HiDPI when it is unclear

GNOME Settings Daemon automatically selects the correct scale when it is clear, but sometimes it isn't clear. In those cases we should ask users what makes sense for their display and if they prefer 1x or 2x scaling

Desktop file validation on autostart.desktop is failing.

What Happened?

Issue with packaging the following application to Fedora due to invalid value on autostart.desktop entry:

NotShowIn=Installer;

Steps to Reproduce

  1. Execute following in root of project:
desktop-file-validate  ./data/autostart.desktop
  1. Output:
./data/autostart.desktop: error: value "Installer;" for key "NotShowIn" in group "Desktop Entry" contains an unregistered value "Installer"; values extending the format should start with "X-"

Expected Behavior

Desktop file validation should pass validation. I tested the changes on latest live ISO of elementary OS 6.1.

OS Version

Other Linux

Software Version

Latest release (I have run all updates)

Log Output

No response

Hardware Info

No response

Adding an option to enable Flathub with a toggle during Onboarding

Problem

As elementaryOS is moving to Flatpak for its apps, people might expect the Flathub repository to be enabled by default to get access to more apps. I and many others get that the elementary team does not include Flathub by default for security reasons, but it makes the AppCenter feel empty, and for users new to elementaryOS or Linux on the desktop in general might get an impression that there are simply no apps other than the ones available in the AppCenter by default which can be a bad first impression.

Proposal

The idea is to add a toggle during the Welcome and Onboarding prompt on the first login to enable 3rd party Flatpak sources like Flathub, similar to how it is in the Fedora 35 Workstation post-install setup to enable RPM Fusion and other repositories. That way, users can have a larger library of apps to access and making things easier, while also placing the AppCenter apps as the curated for elementaryOS. If the user enables the toggle, Flathub will be automatically added, and if not, Flathub apps can still be accessible from the official flathub.org website.

Prior Art (Optional)

No response

Set Up Online Accounts

Apps will be more useful out of the box if they are connected to online accounts. Help the user set up online accounts for things like mail, contacts, and calendars

This step should be skip-able


There is a $50 open bounty on this issue. Add to the bounty at Bountysource.

Not clear if deleting temporary files is safe

Onboarding asks users whether they want to automatically delete temporary files every 30 days.
If this is a safe operation, I think it should be turned on by default (similar to how old kernels are now automatically pruned). If it isn't safe, then why are new users offered the option? If anyone should know which non-user files can be deleted, then it is the operating system.

If we want to offer this option, then I think it should be specific enough that the target audience understands what's going on: "We can automatically empty the /tmp directory if you are sure none of your apps uses it for important data". But that's super deep into techie land :)

1*Rncwyen7EHPQDWv4oWOkIA@2x

This is not actually a new issue, the same wording is used in the switchboard plug.

1*qWZHCeDnBkbDKvg7E0RZUw

Add Linter to CI

Update CI process for onboarding to include a vala-lint step.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.