Giter VIP home page Giter VIP logo

heliport's Introduction

HeliPort

CI

Intel WiFi Client for itlwm

Chat

If you have any questions or feedback, feel free to Join the chat at https://gitter.im/OpenIntelWireless/itlwm

Download

Latest Stable Version

Download from https://github.com/OpenIntelWireless/HeliPort/releases/latest

Latest Alpha Version

Download from https://github.com/OpenIntelWireless/HeliPort/releases

Status

The App is currently functional, we're still trying make it even better.

To-Do's

Visit Projects for more information

Issues

Issues for this project are for bug tracking only, please carefully fill in all the blanks in the correct Issue Template.

The following types of "Issues" will be considered as invalid and will be closed and locked immediately:

  • Personal help request
  • Duplicated issues
  • Urging updates
  • Spam
  • Non-English or non-Chinese content
  • Easy "Googleable" questions

    How to build etc.

  • Off-topic discussion

    Including mentioning and distributing closed-source, non-official Intel Wi-Fi Projects.

Contributing

We desperately need contributors to help us improve this project, any help will be highly appreciated.

  • User interface and password management is implemented with Swift 5
  • Communication with itlwm is implemented with C

Credits

heliport's People

Contributors

1revenger1 avatar ab2774 avatar adrianjagielak avatar ailuoku6 avatar aldo97 avatar alessiomatricardi avatar alex-spataru avatar andreygubin avatar calculous avatar e-senturk avatar eetagent avatar errorerrorerror avatar gimdh avatar goshin avatar igorkulman avatar kikimanjaro avatar marcelloinfoweb avatar masnormen avatar pierreplt avatar profdrluigi avatar rgarrido03 avatar skyrilhd avatar snitron avatar tunglamvghy avatar williambj1 avatar wow0000 avatar xtrs84zk avatar zxystd 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  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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

heliport's Issues

[Bug] Showing as connected to previous network when connecting to another network

Describe the bug
If you are connected to network A and choose to connect to network B, the app displays being connected to A for a while, then later (next "scan"?) finally shows as connected to B.

To Reproduce
Steps to reproduce the behavior:

  1. Open the app
  2. Connect to network A
  3. Connect to network B
  4. Observe the list of network, you will see being connected still to A for a while before it shows as connected to B, although you are already connected to B

Expected behavior
The app should show connected to B immediately after successful association.

Screenshots
If applicable, add screenshots to help explain your problem.

Environment (please complete the following information):

  • OS Version: 10.15.6
  • Software Version: 0502682

[Bug] UI issues on macOS Big Sur

Those issues are likely related to Apple's bugs in AppKit, this GitHub Issue is created to avoid duplicate reports, we have no plans to fix them unless they are still present in Apple's GM release.

Describe the bug

  • WifiMenuItem is no longer highlightable after #61 was merged
  • JoinPopWindow is not resizeable when different encryptions are selected and everything overlays each other

Screenshots
If applicable, add screenshots to help explain your problem.

image

Environment (please complete the following information):

  • OS Version: macOS Big Sur 20A4299v
  • Software Version: 87b614c

Additional context
Reproducible in both macOS 10.16 and 10.15's SDK.

提个建议:wifi图标点击之后。

  1. Wi-Fi按钮点击之后,lookingfor network 位置建议显示当前连接的wifi。(时间长了不知道介入的wifi是什么)。建议显示为 WI-FI:Wi-Fi名字 显示字体颜色为黑色。 否则会认为灰色是不可用的
  2. 记住密码功能建议实现
  3. 默认wifi连接后建议图标变成连接状态。(有时自动连接驱动设置的wifi图标是灰色的)

[Feature Request] Add a Prefs Windows to manage stored Wi-Fi networks

Is your feature request related to a problem? Please describe.
Now we can remember Wi-Fi networks and automatically connect them. It would be nice if we could manage them directly in the App instead of messing around with System Keychains.

Describe the solution you'd like
An NSWindow with an NSTable that lists all the known Wi-Fi networks with a delete sign on the bottom right corner, users can delete the highlighted network.

Additional context
We would probably add more features to the prefs window such as controlling auto-updates, showing network username and password, etc.

This feature will be present in v1.0.1

[Feature Request] Add a "Quit" menu entry at the bottom or allow Cmd+Q when HeliPort is open

Is your feature request related to a problem? Please describe.
Yes: I cannot quit the application without force-killing it.

Describe the solution you'd like
In the drop-down menu of HeliPort right at the very bottom, kindly add a "Quit HeliPort" under a menu separator, so we can quit the application (and updated it with some later version). At the very least, allow the keyboard shortcut Cmd+Q to quit the application when the drop-down menu is visible.

Describe alternatives you've considered
Currently there is no official way to quit HeliPort. Even when I select "About" and the window is visible, the Cmd+Q shortcut is not working (system beeps instead).

Additional context
Some applications may not have a "Quit" menu entry but allow Cmd+Q to quit the application completely. Adding a Quit menu entry (with the respective Cmd+Q icon like macOS standards) would be very welcome.

Thank you.

Multi Language support

  • Change base development language from Chinese to English
  • Add localization for Chinese

[Bug] Language Portuguese Brazilian PT-BR

HI! I am Brazilian and my language is Brazilian Portuguese. I would like to suggest the following HeliPort translation fixes

Line 16
"HeliPort running at an unexpected path" = "HeliPort running at an unexpected path"; // FIXME

Replace for
"HeliPort running at an unexpected path" = "HeliPort está sendo executado em um caminho não esperado";

line 72
"itlwm Version Mismatch" = "Versão Imcompatível do itlwm";

Replace for
"itlwm Version Mismatch" = "Versão Incompatível do itlwm";

line 73
"itlwm is not running" = "itlwm is not running"; // FIXME

Replace for
"itlwm is not running" = "itlwm não está sendo executado";

[Bug] Connected WLAN's "Router" unknown in debug menu of HeliPort (but shown in SysPrefs)

Although this could be is an itlwm.kext issue, I am reporting it here as it involves UI as well. Please assign this accordingly. Thanks.

Describe the bug
On HeliPort.app and with the debug menu shown (via Option key on keyboard and clicking on the menubar icon) I can see the connected WLAN network and IP address obtained and other kext information, but "Router" remains "Unknown".

To Reproduce
Steps to reproduce the behavior:

  1. With Option key on keyboard, click on HeliPort icon on menubar;
  2. Verify the SSID is connected and data is displayed;
  3. Check "Router" information displayed;
  4. On both 2.4GHz and 5GHz Wi-Fi networks of the same router, it's shown as "Unknown";
  5. Go to System Preferences and Network section;
  6. Click on the Intel WLAN device: Router information is there.

Expected behavior
Not sure what's supposed to be shown in "Router" so I can guess the Gateway information that's 192.168.1.1 i.e. my Asus router's IP. This information is displayed just fine in System Preferences -> Network -> ITLWM device tab.

Screenshots
Please see below both HeliPort and System Preferences:

Router

Network

Environment (please complete the following information):

  • OS Version: Mojave 10.14.6
  • Software Version: Commits up to 2020-07-17

Additional context
I tested on both 2.4GHz and 5GHz of my Asus RT-AC58U router, same result. Thanks.

[Bug]Wi-Fi Network seen randomly with and without security

Describe the bug
One or more network that requires a password is shown randomly as open(I think it happens 1/2 of the times) when connected on another network.
Turning off and on the Wi-Fi solves this problem.

To Reproduce
Steps to reproduce the behavior:

  1. Open HeliPort
  2. Let the wifi connect to the saved network automatically
  3. Check the wifi networks available

Expected behavior
It needs to be consistent showing the real security protocol of the networks

Screenshots
IMG_20200717_234341~3.jpg
IMG_20200717_234502~3.jpg

Sorry for the poor quality of the second photo.

Environment (please complete the following information):

  • OS Version: Catalina (10.15.6)
  • Software Version: both HeliPort (3a9c92b) and itlwm synced with the last commit of the master branch

[Bug] Network list not updated at startup casuing menu to shown empty networks list, no placeholder

Describe the bug
When you run the app the network scan is not done immediately so if you immediately open the menu you will get an empty list of networks and no placeholder saying "scanning" or something like that.

To Reproduce
Steps to reproduce the behavior:

  1. Run the app
  2. Immediately open the menu
  3. Observe no networks in the list

Expected behavior
The app should start network scan immediately after startup, or at least show some placeholder

Screenshots
Screenshot 2020-07-03 at 14 02 12

Environment (please complete the following information):

  • OS Version: 10.15.5
  • Software Version: 19c0386

Additional context
Looking at code updateNetworkList() is called in StatusMenu.init but the network card state is not yet set to available (called with a delay) so scan is not done.

[Bug] Network strength image always shows full strength

Describe the bug
If you open the menu and look at the list of networks, all of them have an icon representing full signal strength.

To Reproduce
Steps to reproduce the behavior:

  1. Open the menu
  2. Look at the strength icons of the networks

Expected behavior
Strength icons should represent the actual signal strength

Screenshots
Screenshot 2020-07-03 at 14 27 33

Environment (please complete the following information):

  • OS Version: 10.15.5
  • Software Version: 19c0386

Additional context
Doing some quick debugging I think the problem is in https://github.com/zxystd/HeliPort/blob/master/HeliPort/Appearance/WiFiMenuItemView.swift#L179-L192. It expects negative values but it is always called with positive values.

User Data Management

  • Implement a plist manager that stores Wi-Fi data used for remembered SSIDs
  • Implement a keychain manager that stores and reads from the system keychain
  • Search passwords in keychain based on SSIDs
  • Automatically connect known SSIDs when the App & kext launches
  • Don't ask for password for a Stored Wi-Fi
  • Ask the user to reenter authentication info when stored data is outdated (e.g. Router reconfiguration)

[UI Improvement] Two quick improvements: Kext not running dialog / Reference to BSD in About

Is your feature request related to a problem? Please describe.
Not really.

Describe the solution you'd like
a) A little user-friendlier message that itlmw.kext is not running.
b) Improvement to BDS Clause 3 by including a URL reference.

Describe alternatives you've considered
Can't think of any alternatives except ignore them.

Additional context
a) Please expand the text when the driver is not running to something more friendlier, for example:
"The necessary WLAN driver is not found active on your system. Please verify that itlmw.kext is correctly installed and running."

b) Please fix, for the sake of being covered by BSD License, the About window RTF file with a URL reference, too (either a single mention or copy-paste the actual license):

License

This software is distributed through the 3-Clause BSD License, otherwise known as New BSD License. Read more at https://opensource.org/licenses/BSD-3-Clause

or the other, fuller approach:

License

Copyright (c)2020. All rights reserved.

This software is distributed through the 3-Clause BSD License, otherwise known as New BSD License. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Kext Not Found
BDS-3-Clause
Thank you!

[Bug] WiFiMenuItemView changes its width mysteriously and RANDOMLY when a random key is pressed

Describe the bug

WiFiMenuItemView changes its width RANDOMLY when a random key is pressed on the keyboard, icons are shifted to the left and the highlightable width is reduced. Both the normal and the advanced menu are affected.

To Reproduce

Steps to reproduce the behavior:

  1. Open the menu
  2. Press any key
  3. BOOOM

NOTE:

This bug is only reproducible when:

  • You first built the app and didn't touch any part of the code
  • Or: You changed some code and left the app running in the background for some time

This bug mysteriously disappears when:

  • You added a print in WiFiMenuItemView.swift and immediately launched the app
  • You cleared the logs in Xcode's console
  • (under both conditions, leaving the app in the background will make this bug appear again)

Expected behavior

No mystery width changes

Video:

Watch this

Environment (please complete the following information):

  • OS Version: macOS 10.15.4 (19E287)
  • Software Version: commit d9edce3

Additional context

draw() gets called randomly when any key is pressed, sometimes it will, sometimes it won't, once the key triggers draw(), the menu size gets reduced.
WTF APPLE???

[Feature Request] Show scan results immediately when Wi-Fi is turned back on

Is your feature request related to a problem? Please describe.
If we turn OFF Wi-Fi via HeliPort and back ON, there's no indicator that a scan is being done; the drop-down list is empty. It takes 5 seconds or more to show nearby SSIDs. Could be expected behaviour, but the macOS rotating icon would be welcome so users aren't puzzled (or anxious)

Describe the solution you'd like
Add the macOS standard animation icon (rotating) that would indicate an SSID scan is taking place.
From a UI perspective, add this next to the text label Turn WiFi Off would make sense and would be more visible.
Turn animation off, when SSID scan is reported as complete.

Activity
(above sample is from another window, I just wanted to find out the reference animation, obviously one rotating icon!)

Describe alternatives you've considered
While scanning SSIDs a grey menu item in the drop-down menu could also state "Scanning Networks..." instead. But that's also needed to be coded.
Connected
Add "Scanning Networks..." label as a disabled, greyed-out element UNDER "Turn WiFi Off" and ABOVE "Join Other Network..." with separator lines like "WiFi: Connected" on top. The space occupied by grey "Scanning Networks..." would then be replaced by the list of scanned SSIDs.

Additional context
Just helpful to those who click on the icon and may be wondering whatever happened to the SSIDs.

Is it possible to support lower versions of Swift 4.1?

macOS 10.13, Xcode 9.4.1 Compilation failure.
The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported value for targets which use Swift. This setting can be set in the build settings editor.

[Bug] Not showing any networks

Describe the bug
Running the latest version of itlwm.kext (or at least the latest that builds 13ef970) when I run HeliPort on Intel 7260AC it does not shown any networks, connecting to a network manually does not work either. But the itlwm.kext works fine, editing its Info.plist it connects to my networks just fine

To Reproduce
Steps to reproduce the behavior:

  1. Run HeliPort
  2. Open the menu
  3. Observe no networks being shown

Expected behavior
Showing a list of networks from the scan

Environment (please complete the following information):

  • OS Version: 10.15.5
  • Software Version: sha d9edce3

Additional context
I am a iOS / Swift developer currently using itlwm.kext on my secondary machine (Thinkpad T440s) and I want to help with the development. I can clean up the Swift code, probably help with auto layout, etc. But my problem is I cannot get it to work, not even show a list of networks. The scan always returns an empty list.

Implement Bug Reporter and SysPrefs Reseter for itlwm

Since we're using the Ethernet interface instead of IO80211, the builtin WI-FI diagnostics can't provide a single piece of useful information, we should use our own bug reporter.

The bug reporter should be able to:

  • Get logs for itlwm

    let itlwmLogger = Process()
    let logPipe = Pipe()
    itlwmLogger.standardOutput = logPipe
    itlwmLogger.launchPath = "/usr/bin/log"
    itlwmLogger.arguments = ["show", "--predicate", "(eventMessage CONTAINS[c] \"itlwm\")", "--last", "boot"]
    itlwmLogger.launch()
    itlwmLogger.waitUntilExit()
    var logData:Data
    logData = logPipe.fileHandleForReading.readDataToEndOfFile()
    let itlwmLog = String(data: logData, encoding: String.Encoding.utf8)!
  • Reset System Network preferences Written in Docs

    The issue caused by this has been discussed multiple times in itlwm's GH issue, polluted enXs might likely cause errors

    Remove certain files under /library/Preferences/SystemConfiguration could achieve this.

Prioritize/Forget WiFi Networks

Since the WiFi is currently running as Ethernet, there's no native way to Prioritize or Forget networks. It would be helpful to have a workaround option for this on the app.

Or if someone knows how to completely prioritize or remove older WiFi networks, please do comment. My hack always connects to an old WiFi network every cold start.

[Feature Request] Allow only single instance.

Is your feature request related to a problem? Please describe.
You may open multiple HeliPorts, yet there is no straightforward way to close it.

Describe the solution you'd like
Allow only single instance to be run. Executing new instance should replace existing one.

Describe alternatives you've considered
Add quit HeliPort button. You may open multiple HeliPorts, but at least it can be closed with GUI.

Additional context
As long as HeliPort is distributed as an indepedent executable, there is always a chance to open multiple instances.

Improvements for StatusMenu

  • Show a tick on the left of the connected Wi-Fi
  • Set currently connected Wi-Fi as the first Wi-Fi menu item
  • Show "Wi-Fi: Looking for Networks..." when itlwm is scanning
  • Add a menu item for disconnecting from currently connected Wi-Fi
  • Show detailed info of currently connected Wi-Fi
    • IP Address
    • Router
    • Internet
    • Security
    • BSSID
    • Channel
    • Country Code
    • RSSI
    • Noise
    • Tx Rate
    • PHY Mode
    • MCS Index
  • NOTE: Personal Hotspot's section will never be added since itlwm can't determine whether a Wi-Fi is an iPhone hotspot, not to mention cellular signal strength and battery info.

[Feature Request] Launch at login

Is your feature request related to a problem? Please describe.
After login the user has to start the app manually. The ability for the app to be automatically launched at login would be more comfortable.

Describe the solution you'd like
A menu item saying Launch at login than can be enabled or disabled.

Describe alternatives you've considered
Adding the app to login items manually, but that is not exactly user friendly.

Additional context
Basic implementation tutorial: https://theswiftdev.com/how-to-launch-a-macos-app-at-login/

[Bug] Problem with WIFI auto connect and keychain access.

Heliport doesn't automatically connect to last remembered/connected network and needs to be done manually on every boot.
And also i think there is a bug with the keychain implementation as it sometimes ask keychain access password even before it asks wifi network password. And whenever it does ask keychain access password before wifi access password ,i cant type anything in the keychain access password box and thus i have to click deny to make it disappear and only after that the wifi network password box pops up.

AX200
10.15.6

Regards !

Half of the networks disappear from the wifi list on connect.

This issue i have been observing for quite a while . Whenever i connect to my wifi network, i see that the rest half of the networks disappear from the wifi list everytime.

Steps to reproduce the behavior

  1. Observe the no. of available networks in the wifi list.
  2. Connect to any network
  3. Observe the no. of available networks again in the wifi list.

Expected behavior
It should show the same amount of networks even when connected.

Screeshots
Screen Shot 2020-07-19 at 11 34 43 PM
Screen Shot 2020-07-19 at 11 35 19 PM

AX200
10.15.6
52c5b9a

ERROR: No such module 'KeychainAccess' ?

Describe the bug
After sudo gem install cocoapods --preandpod install steps, there is still an error said "No such module 'KeychainAccess'"
I do not know what caused that. Prehaps my environment?

To Reproduce
Steps to reproduce the behavior:

  1. Download the code and Install pods.
  2. Then build the project
  3. There is an error said "No such module 'KeychainAccess'"

Expected behavior
Build with no errors.

Screenshots
截屏2020-07-19 上午11 44 16

Environment (please complete the following information):

  • OS Version: macOS 10.15.6

[Bug] More StatusMenu glitches

Describe the bug

  1. WiFiMenuItemView shows duplicated items with different fonts
  2. Long SSIDs (e.g. From wireless projectors/printers) will be wrapped

To Reproduce
Steps to reproduce the behavior:

  1. Scan SSIDs for a while
  2. Connect to your Wi-Fi
  3. Open the menu again
  4. Wait for a while

Expected behavior
A clear and concise description of what you expected to happen.
No duplications, no line wraps

Screenshots
If applicable, add screenshots to help explain your problem.

image

  • Duplication: ssdt
  • Line wrap: DIRECT-

Environment (please complete the following information):

  • OS Version: 10.15.4 (19E287)
  • Software Version: 562089e

Additional context
This issue existed for quite a long time.

[Feature Request] Connect to Open WIFI (no password needed) networks

Hello and thank you for this incredible work!

I have a guest wifi network on my university and since WPA/WPA2 Enterprise is not implemented, i would like to be able to connect to the open wifi. I can click on the network but is not letting me press OK if i don't fill in a password.

This is just a suggestion, since i included my network on the info.plist and i can connect, but it will be nice to make it work on open wifi also through the Heliport :)

Thank you again!

Last connected network do not show up again in wifi list

Whenever i disconnect from the last connected network, it doesn't show up in the wifi list again and then have to restart to fix it.

Steps to reproduce the behavior

  1. Connect to a wifi network.
  2. Disconnect from it
  3. Look for the same network name in the wifi list that you disconnected from just now.

Expected behavior
Should show up again even after disconnecting from it.

Screenshots
Screen Shot 2020-07-19 at 11 35 19 PM
Screen Shot 2020-07-19 at 11 37 06 PM

AX200
10.15.6
52c5b9a

Regards !

[Feature Request] suggestions: Forget Network...

Is your feature request related to a problem? Please describe.
1.Forget Netwok: When the user check remember network but input the wrong password unexpectedly, the function forget network will be used. Otherwise, the user can only to delete it in the keychain access.
2.Menu: I think you could add a menu. When the pointer is on the WLAN’s name, the menu list some commonly used functions such as disconnect, forget network and other possible choices.
3.Disconnect automatically: Errr, when HeliPort quit, the network is disconnected automatically, although I know HeliPort is just a GUI for itlwm.

Additional context
I photoshop some images that meet my requirement.
Forget network could be like this:
1
menu is like this:
2

Forgot saved wifi

hi, i have a question. Is there anyway that can forgot the saved wifi? I tried to uninstall HeliPort but seems not worked

HeliPort Running At An Unexpected Path

After compiling and starting I get this error. Also in "Programs"-Folder it doesn´t start
grafik

Other Users get the same error. It´s no "local" problem here.

[Bug] Minor UI issues: Text color in About Heliport is abnormal in macOS Mojave Dark Mode

Describe the bug
a) In About window, the text is not visible in Dark Theme.
b) When checking for updates, we get an error (wrong URL?)

Steps to reproduce the behaviour:

  1. Set dark system theme (I am in Mojave)
  2. Select About from menu
  3. The About window displays but text is black (see image)
    and
  4. Keep pressing Option key to show special menu
  5. Select to Check for Updates
  6. An error is produced

Expected behavior
a) I would expect to see the text in About window under dark system theme;
b) I would expect some kind of update information (if the system is in place)

Screenshots
Screenshot 2020-07-15 at 00 46 01

Screenshot 2020-07-15 at 00 46 49

Environment (please complete the following information):

  • OS Version: Mojave 10.14.6
  • Software Version: HeliPort Build 13 July 2020 (via automatic builds, see below)

Additional context

  • Not sure if the text can change based on system theme?
  • Not sure if the update URLs are ready? According to Little Snitch it's calling heliport.bat-bat.workers.dev
  • Please know that I am getting my compiled HeliPort builds from https://github.com/1hbb/OpenIntelWireless-Factory/releases as I cannot build the application (not Xcode specialist nor on Catalina) so perhaps the script builds it with wrong parameters -- I am only speculating. Thank you!

Updater improvements

Currently, the updater framework works fine but we should make it even better.

  • Force users to install the app into the Applications folder

    According to Sparke's docs:

    If you distribute your app as a ZIP or a tar archive:

    • Encourage users to move the app to /Applications (e.g. use LetsMove). Due to
    • quarantine/translocation the system will not allow the app to update itself until it’s moved.

    I personally think LetsMove is not a great idea since it shows a "suspicious" window and an optional moving button. Instead, it's better to pack the app into a dmg and encourage users to move it into the Applications folder. We could then force quit the app when the app's location is incorrect.

    So far, I've found those useful tools for creating dmgs

    1. https://github.com/sindresorhus/create-dmg
    2. https://github.com/create-dmg/create-dmg

    I've already tested the first one and it works beautifully, however, it lacks the ability of customization and I'd like to use a more intuitive image for the background of the dmg. It also requires a ton of dependencies to generate the dmg icon which I think might be better to just generate it locally and commit it into this repo (maybe under the .github folder). My plan is to use some resources generated from the first tool and pack them into a dmg generated by the second tool.
    Update: Ended up using the first tool since it's much simpler

  • Support dark mode in Sparkle's release notes

    • After using Github's CSS, the window always shows a white background
  • Check itlwm API version and force the users to update the app or force quit the app when there's a version mismatch
    https://github.com/zxystd/HeliPort/blob/5cdf86d9447d96b2efb62023e57b3b16f6a44250/Common/Common.h#L24

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.