69
I Use This!
High Activity

News

Analyzed 1 day ago. based on code collected 1 day ago.
Posted almost 3 years ago by jt15s
HaikuPorts functionality restored Due to the [important change to repository identifiers announced earlier](https://www.haiku-os.org/news/2021-06-22_important_change_required_for_haiku_nightly_and_r1beta2_users/), the HaikuPorts repository was ... [More] presenting users with an error reading `unarchiving the repo`. This issue has now been fixed and users may need to re-add the HaikuPorts repository again. Nightly and Beta2 users will need to “re-add” their release repositories to update to newer versions of Haiku and beyond. This change is part of a long-term improvement of our Haiku/HaikuPorts repository identifiers. These commands need to be run in the terminal. Check your current repositories: pkgman list-repo Nightly Users Nightly users will need to “re-add” both their Haiku and HaikuPorts release repositories to be able to update to hrev55184 and beyond. Re-add HaikuPorts repository pkgman drop-repo HaikuPorts pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/master/$(getarch)/current Re-add Haiku repository pkgman drop-repo Haiku pkgman add-repo https://eu.hpkg.haiku-os.org/haiku/master/$(getarch)/current R1/Beta2 users Beta2 users will need to “re-add” their HaikuPorts release repository to be able to continue installing and updating apps from HaikuPorts. Re-add HaikuPorts repository pkgman drop-repo HaikuPorts pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/master/$(getarch)/current R1/Beta3 users This change will not be required for r1/Beta3 users as the changes will be built into the Beta3 release. Summary The “identifier” will change from https://hpkg.... to tag:haiku.... for both Haiku, and HaikuPorts on nightly installs (this identifier will only change for HaikuPorts on R1/Beta2 installs) Once you see the new identifiers, you have been successfully changed over to the new repository ID. [Less]
Posted almost 3 years ago by jt15s
Nightly and Beta2 users will need to “re-add” their release repositories to update to newer versions of Haiku and beyond. This change is part of a long-term improvement of our Haiku/HaikuPorts repository identifiers. These commands need to be run in ... [More] the terminal. Check your current repositories: pkgman list-repo Nightly Users Nightly users will need to “re-add” both their Haiku and HaikuPorts release repositories to be able to update to hrev55184 and beyond. Re-add HaikuPorts repository pkgman drop-repo HaikuPorts pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/master/$(getarch)/current Re-add Haiku repository pkgman drop-repo Haiku pkgman add-repo https://eu.hpkg.haiku-os.org/haiku/master/$(getarch)/current R1/Beta2 users Beta2 users will need to “re-add” their HaikuPorts release repository to be able to continue installing and updating apps from HaikuPorts. Re-add HaikuPorts repository pkgman drop-repo HaikuPorts pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/master/$(getarch)/current R1/Beta3 users This change will not be required for r1/Beta3 users as the changes will be built into the Beta3 release. Summary The “identifier” will change from https://hpkg.... to tag:haiku.... for both Haiku, and HaikuPorts on nightly installs (this identifier will only change for HaikuPorts on R1/Beta2 installs) Once you see the new identifiers, you have been successfully changed over to the new repository ID. [Less]
Posted almost 3 years ago by jt15s
HaikuPorts functionality restored Due to the important change to repository identifiers announced earlier, the HaikuPorts repository was presenting users with an error reading unarchiving the repo. This issue has now been fixed and users may need ... [More] to re-add the HaikuPorts repository again. Nightly and Beta2 users will need to “re-add” their release repositories to update to newer versions of Haiku and beyond. This change is part of a long-term improvement of our Haiku/HaikuPorts repository identifiers. These commands need to be run in the terminal. Check your current repositories: pkgman list-repo Nightly Users Nightly users will need to “re-add” both their Haiku and HaikuPorts release repositories to be able to update to hrev55184 and beyond. Re-add HaikuPorts repository pkgman drop-repo HaikuPorts pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/master/$(getarch)/current Re-add Haiku repository pkgman drop-repo Haiku pkgman add-repo https://eu.hpkg.haiku-os.org/haiku/master/$(getarch)/current R1/Beta2 users Beta2 users will need to “re-add” their HaikuPorts release repository to be able to continue installing and updating apps from HaikuPorts. Re-add HaikuPorts repository pkgman drop-repo HaikuPorts pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/master/$(getarch)/current R1/Beta3 users This change will not be required for r1/Beta3 users as the changes will be built into the Beta3 release. Summary The “identifier” will change from https://hpkg.... to tag:haiku.... for both Haiku, and HaikuPorts on nightly installs (this identifier will only change for HaikuPorts on R1/Beta2 installs). Once you see the new identifiers, you have been successfully changed over to the new repository ID. [Less]
Posted almost 3 years ago by jt15s
The release timeline for Haiku R1/Beta 3 has been approved after a 7 day RFC (Request for Comment) period on the mailing list. Access the release timeline on the Trac wiki. Note that minor changes to the dates may occur. If all goes to plan, Beta ... [More] 3 will be released sometime after the 24th of July. Note that the release will only happen when everything is ready, so there are no final dates and the timeline may change to account for delays. The Promotion Team is currently investigating Beta3 DVDs and USB sticks to order: the Inc. has been notified and quotes have been requested from two possible services. Additional updates will be issued through the “News” and “Blog Posts” sections of the website as the release date nears. [Less]
Posted almost 3 years ago by jt15s
As we get closer to the release of Beta 3, it is important we ensure our translations are updated. Current State of Translation Work As of now, no new language has currently reached over 60% since Beta 2 was released last year. Croatian translations ... [More] are at 58%. If no progress is made, this translation risks being removed from Beta 3! Korean, Hindi, Bulgarian, Czech and Norwegian were already under 60% in beta2 and are still under 60%, somewhere between 45% and 60% complete. It would be really appreciated if these translations were made more complete so they can be included with the Beta 3 release. Languages that are already available on Pootle, but need a lot more work: Punjabi Slovenian Arabic (unfortunately this translation can’t be displayed due to lack of right-to-left text support in Haiku) Serbian (both Latin and Cyrillic versions) Macedonian Maori Low German Persian Na’vi Pootle Translation Cut-off for Haiku's User Interface The cut-off for interface translations on Pootle remains at 60%. All translators are encouraged to make an extra release-effort to bring their language as close as they can to 100%. All language managers are urged to check and approve waiting submissions. Haiku User Guide Translations Translation Cut-off for the Haiku User Guide The cut-off for User Guide translations on Pootle is higher at 80%. Since Beta 2, there have been a few changes here and there to the User Guide, so languages that were about 100% translated back then will need a few updates to ensure they are fully translated for Beta 3. How can I get started with translation? If you are fluent in another language, don’t hesitate to join in and help translate Haiku! By translating, you help us reach more people all over the world. To get started, read the following guides and follow the instructions provided: User Interface Translation Haiku User Guide Translation Thanks to all those who have been working hard to ensure Haiku and its user guide are available for people all around the world! [Less]
Posted almost 3 years ago by jadedctrl
It’s the end of the first GSoC period, so it’s about time I clutter the blog again! A good few changes have been made to Caya― most obviously support for multi-user rooms and some UI changes. Multi-protocol add-ons are now supported, the program is ... [More] oriented around “Conversations” rather than “Contacts,” basic moderation (kicking, banning, muting) works, etc. The protocol API‘s expanded because of these general changes, and I don’t think it could be called “stable” for another couple weeks at least― I still need to document it, and some of the new additions might still be consolidated into others. Anyway, it’s sometimes better to show than tell. Here’s before and after: … could you tell I’m going for “Vision-esque?” :P I’m no UI designer, so any input’s greatly appreciated, really. Right now I’m thinking on moving the “send” textbox to between the user-list and chat-list, and giving each user a specific in-chat color. There should be a way of visually marking a user as an arbitrary rank (moderator, admin, etc) in the user-list, but I’m not sure that might be best done. Maybe custom text-prefixes (e.g., “@” with IRC), or having a rank-based name-color…? There are a couple changes not shown in the screenshot, like displaying a user’s status. When a chatroom member is marked “available,” “away,” or “offline,” the color of their name in the user-list changes accordingly, from normal text color to an increasingly lighter/darker tint. Overall, I think some good progress has been made, and I’m on track to get started on the libpurple add-on. Caya is a good base to work with, and Gloox has been surprisingly pleasant to work with. Next up on the agenda, though, are changes that’ll give add-ons some much-needed flexibility, as well as minor tweaks: Allowing protocols to define custom commands/menu items for the room and user right-click menus, room creation with custom slots dictated by protocol, room invitations, roster management, etc. You can find the sources on Github, and my introductory post here. Cheers! [Less]
Posted almost 3 years ago by ritz
Hey everyone! I am Hrithik (ritz), You can find about my project in my introductory blog. Here’s what I have done so far. I started by reading Concourse CI documentation in order to get myself familiarise with ci pipeline and various schema involved ... [More] in it. I also looked at other resources provided by my mentors i.e. Suhel Mehta @suhel_mehta and Alexander von Gluck @kallisti5 . Below are some links if anyone wants to check out. CI Documentation CI Examples Concourse tutorial by Stark & Wayne Blog on task inputs and outputs After setting up Concourse CI and Gerrit instance locally, I started off by trying to implement a basic pipeline integrating both. So I created a test repo in gerrit and wrote a pipeline.yaml file for concourse having a simple job and tried to trigger it manually. Unfortunately I struggled to get the concourse clone the local gerrit repo and faced with errors. So I asked the same to concourse discord help channel and got to know that since concourse runs the job in a container it has a different meaning of localhost in the url. So I changed the gerrit url in the gerrit.config file by replacing localhost with my machine-name and it started working! My next target was to trigger the job automatically whenever a commit happens, so I added trigger:true property in the get step. I ran the whole thing only to later realise that it gets triggered everytime a merge happens in the master branch but not when a patchset towards master is created. I then looked more into how Gerrit works and got to know that commits get stored in refs/changes/ namespace which is created by Gerrit itself so the master never changes unless the commit gets merged hence it doesn’t get triggered whenever a patchset is created. Below is my pipeline.yml resources: - name: test type: git icon: github source: uri: "http://@hrithik:8090/test" branch: master jobs: - name: job public: true plan: - get: test trigger: true - get: commit trigger: true - task: hello config: inputs: - name: test platform: linux image_resource: type: registry-image source: repository: busybox run: path: cat args: ["./test/help.txt"] - task: bye config: platform: linux image_resource: type: registry-image source: repository: busybox run: path: echo args: ["bye"] I found this docker image on docker hub named gerrit-resource so I gave it a try and added it as my resource but it didn’t work either. resource_types: - name: gerrit image: type: docker-image source: repository: malston/gerrit-resource resources: - name: test type: git icon: github source: uri: "http://@hrithik:8090/test" branch: master resources: - name: commit type: gerrit source: uri: "http://@hrithik:8090/test" branch: master jobs: - name: job public: true plan: - get: test trigger: true - get: commit trigger: true - task: hello config: inputs: - name: test - name: commit platform: linux image_resource: type: registry-image source: repository: busybox run: path: cat args: ["./test/help.txt"] - task: bye config: platform: linux image_resource: type: registry-image source: repository: busybox run: path: echo args: ["bye"] Right now I am looking into this resource It is starting to look like I might have to create a custom resource type myself if this doesn’t work out either. Suggestions and ideas are always welcome :) [Less]
Posted almost 3 years ago by pulkomandy
Hello, it’s time for the May activity report! Before starting the report, we would like to thank our donors for their donations. Your donations help us cover our expenses and help us reach our goal to hire people to work on Haiku full-time. We would ... [More] also like to thank all the community for their countless hours of effort of implementing new features, triaging bugs, translating, supporting other users, and spreading the Haiku word all around. This report covers revisions hrev55070-hrev55129. Source code cleanup mt is still hard at work fixing bugs found by various static analysis tools. This month he fixed various format strings in userlandfs BeOS filesystem driver support, as well as a misaligned structure in cpu.h, and multiple definition of functions in various places. kallisti5 added some debug traces to the NFS4 filesystem driver to help investigate bug reports related to it. Build system extrowerk made some fixes to the configure script. PulkoMandy updated the repository of packages used to build Haiku images. This is a mirror of some packages from the Haikuports repository, at fixed versions to avoid build breakages caused by too frequent haikuports updates. AlwaysLivid updated some of our example dockerfiles which show how to set up an environment for building Haiku or for cross-compiling applications from Linux. User interface nephele added a new method to BControlLook to get the scrollbar width. This will be used for example in HaikuWebKit, which draws its own scrollbars, to keep the size synchronized with native applications. Until now, this required having a real BScrollBar to compute the correct width. The scrollbar width is adjusted according to the font size (as it already was), but now, different control look implementations can decide to have different rules for how wide a scrollbar should be. John Scipione is still working on improving our BTextView implementation, and made some changes to StyledEdit to fix some issues with the text area management there. nephele added a large font for the KDL console, which is enabled automatically on high resolution displays (more than 1080p) where the default font is likely to be too small. The new font is Spleen, an open source monospace bitmap font designed by Frederic Cambus. System libraries and security korli implemented stack protection support in Haiku (currently disabled by default, configurable at compile time). The idea of stack protection is to insert some markers in the stack, whenever a function is called. When the function exits, there is a check to make sure the marker was not overwritten. This can catch some buffer overflow bugs (although it would be more helpful for this on architectures where the stack grows towards higher addresses), but is mostly used for detecting malicious code trying to inject itself into the system by exploiting bugs in a clever way. korli also fixed a case where we accidentally allow kernel to access userland memory, defeating the SMAP protection. Preferences PulkoMandy fixed a regression in Input preferences related to changes in the API for live detection of added and removed input devices. Fredrik Modéen updated the Bluetooth preferences to store the settings in a BMessage instead of writing the raw data of a structure directly to disk. This makes it a lot easier to change the settings format later on. C and POSIX compatibility extrowerk fixed our features.h header to support C11 correctly. This header is used to hide some parts of our system libraries to provide strict conformance to C or POSIX APIs (providing none of the BSD or GNU extensions if strict mode is enabled). It also now handles enabling or disabling some functions that are specific to a given version of the C language. korli and PulkoMandy reworked the ioctl implementation to avoid undefined behavior related to the use of variadic arguments. The ioctl function is from POSIX and allows to configure file descriptors and communicate with drivers. The POSIX version gained extra arguments over time: initially it allowed to pass just an int, but then it was extended with some extra arguments. In other POSIX systems, it’s possible to know the number of arguments from the first integer argument. But in BeOS and in Haiku, a lot more freedom is left to driver as to how they use ioctls, and each driver is free to allocate values as it wants. As a result, we were always trying to get all possible arguments, even when they didn’t exist. This works on x86 CPUs due to the way they pass arguments, but could be a problem in other systems. The new implementation of ioctl uses C++ or some tricks in C with structs and macros to implement the function without variadic arguments. As a result, the value of the unused parameters is forced to 0 now. Networking kallisti5 added more details about 10Gbps ethernet interfaces in ifconfig output. Now you can know which type of link you are using (there is a bit more choice there than for slower speed at the moment, hopefully things will become more standardized when 10GBps links become more popular). korli started updating Wifi drivers to FreeBSD 13. He also finished the work (started by A-star-ayush dusing a previous Google Summer of Code project) to implement TCP selective ACK. This should improve the performance of TCP, especially on lossy connections such as Wifi. korli also disabled the wavelanwifi driver (it only supports very old Wi-Fi cards, mostly PCMCIA ones which never worked in Haiku anyway), as well as the Firewire support (which has been incomplete for a very long time and is now unlikely to exist on modern hardware). Package system AGMS and PulkoMandy moved some work done on first boot of Haiku to compile time. This will make the first run of Haiku boot a little bit faster. Other platforms ports X512 has made major progress on RISC-V support, with Haiku fully running in TinyEMU (no actual RISC-V hardware is supported yet). This work is currently being submitted and reviewed on Gerrit, some of the first patches have already been merged. This work resulted in cleanups in various places all around the system: removal of unneeded includes, conversion of code from C to C++, progress on virtio drivers which are heavily used by the emulator, etc. The work from X512 also includes several other not obviously related fixes, such as simplifying the code in OpenTerminal, fixing of scripting in BTextView, and many other small fixes. PulkoMandy added the RISC-V logo to Pulse so it can properly show the results of this porting effort. Han Pengfei fixed some issues with device tree initialization in the EFI bootloader, which will help with the ARM port and possibly the RISC-V port as well if it is used on UEFI platforms later. tqh is also helping on the ARM work and fixed some compiler warnings. Drivers An experimental driver for i2c input devices (mainly touchpads) was added but disabled by default. Unfortunately it doesn’t work reliably yet. This led to some refactoring of the existing USB HID input driver to separate the HID part. HID is a standard originally developed as part of USB for all sorts of input devices (keyboards, mouses, joysticks, tablets, …) but it is now also used by I2C devices (embedded in laptops) as well as Bluetooth. So it made sense to have this code shared between the drivers. kallisti5 fixed some bugs in the XHCI driver to improve error handling and recovery. Rudolfc is currently reworking the intel_extreme driver to finally support devices newer than Sandy Bridge. A small part of his work was already merged, but he is currently running a testing campaign with help of our forum users to validate some larger changes. Wrap-up Last but not least, Máximo Castañeda (madmax) got commit access and officially joined the Haiku Developers Team. Welcome Máximo! This is it for May, folks. See you at the next report for June. To support Haiku, please consider donating through our Submit A Donation page, or check out our Liberapay page to make a recurring donation. [Less]
Posted almost 3 years ago by humdinger
We recently moved our IRC channels from Freenode to OFTC. I almost forgot to register my IRC nickname at the new service, and having just done that, I take the opportunity to describe how that’s done for my fellow - maybe newbie - IRC user. Configure ... [More] Vision First, you’ll have to configure Vision (or another IRC client) to connect to the OFTC network. Enter the Network setup and add a new network with the popup menu at the top. Fill in your personal details, including the desired nickname. You can add commands that are automatically executed when connecting to the network, like joining the #haiku channel and identifying/authenticating yourself, see further down. Now click on the “Change servers…” button, add a new server, and enter the following settings: Registering your nickname After connecting to the OFTC network, you’ll see if your nickname is already in use in the server’s welcome message. If so, you’ll have to find another nickname… Otherwise, it’s time to register your nickname. That isn’t mandatory, but if you don’t, anyone can log on under that name and sully your reputation. :) “Nickserv” is the IRC bot you have to address with all account related things. /msg Nickserv register SuperSecretPassword YourEmailAddress From now on it’s simply following the instructions in the Nickserv output: Go to https://services.oftc.net/ and log in with your nickname and password. Go to your Account page and Verify your account by doing the captcha there. Back in Vision, do a /msg Nickserv indentify SuperSecretPassword to authenticate yourself and follow it with /msg Nickserv checkverify to make sure all went OK. Identify yourself on every connect To automatically identify yourself every time you connect to the OFTC network, put a /msg Nickserv indentify SuperSecretPassword into the Automatically execute text box under Network setup. Best before joining your regular IRC channels (see first screenshot in this post). [Less]
Posted almost 3 years ago by ritz
Introduction Hey everyone! I am Hrithik Kumar, a sophomore at National Institute of Technology Agartala, India majoring in Computer Science and Engineering (CSE). I am happy to say that I will be working on creating a Coding style checker bot for ... [More] Gerrit as part of the GSoC 2021 project. My mentors are Alexander von Gluck and Suhel Mehta. IRC nick: ritz Matrix: ritz (@ritzkr:matrix.org) Project Haiku has its own coding guidelines which describe how the code should be formatted. There is a tool (haiku-format tool) for reformatting or checking if code follows these guidelines, but it has to be compiled on the developer machine and then run manually. Now this is extra work but what if it could be automated! That’s what I’ll be working on this summer i.e. creating a Gerrit bot that would use haiku-format tool for checking whether the patch submitted follows the community guidelines of Haiku and post the report in the comments. A high level architecture of this project will include the following steps: For every event (change, patch etc.), trigger the Concourse CI pipeline. Implement pipeline in concourse CI for fetching the Git repo and running the haiku-format tool on the relevant files and create appropriate report out of the tool. Implement REST API call to post the result back to Gerrit reviews as a robot comment. The problem with haiku-format tool is that it is a work under progress and cannot be trusted completely so it requires human intervention to make sure that the code follows the coding guidelines. Luckily another GSoCer this year is working on improving the haiku-format tool itself so if all goes well then hopefully the entire thing will get automated. Although I was already planning on working on improving the haiku-review tool after GSoC itself. At last a big thank you to everyone and I’m looking forward to working with this amazing community. :) [Less]