Forwarded from Linuxor ?
لطفاً در را قفل نکنید - دزدی از FBI با یک یادداشت ساده!
در سال 1971، چند دزد با یک حقه ساده وارد یکی از دفاتر پلیس فدرال آمریکا (FBI) شدند. یکی از آنها چند ساعت قبل از دزدی، روی کاغذی نوشت: «لطفاً امشب این در را قفل نکنید» و آن را به در ورودی چسباند. همین نوشته باعث شد یک نفر در را قفل نکند و دزدها شب راحت وارد بشوند!
این ترفند یک نمونه از «مهندسی اجتماعی» است؛ یعنی فریب دادن آدمها با حرف یا ظاهر ساده، آن هم بدون نیاز به زور یا تکنولوژی!
@Linuxor ~ Nooshdaroo_web
در سال 1971، چند دزد با یک حقه ساده وارد یکی از دفاتر پلیس فدرال آمریکا (FBI) شدند. یکی از آنها چند ساعت قبل از دزدی، روی کاغذی نوشت: «لطفاً امشب این در را قفل نکنید» و آن را به در ورودی چسباند. همین نوشته باعث شد یک نفر در را قفل نکند و دزدها شب راحت وارد بشوند!
این ترفند یک نمونه از «مهندسی اجتماعی» است؛ یعنی فریب دادن آدمها با حرف یا ظاهر ساده، آن هم بدون نیاز به زور یا تکنولوژی!
@Linuxor ~ Nooshdaroo_web
Forwarded from Linuxor ?
لطفاً در را قفل نکنید - دزدی از FBI با یک یادداشت ساده!
در سال 1971، چند دزد با یک حقه ساده وارد یکی از دفاتر پلیس فدرال آمریکا (FBI) شدند. یکی از آنها چند ساعت قبل از دزدی، روی کاغذی نوشت: «لطفاً امشب این در را قفل نکنید» و آن را به در ورودی چسباند. همین نوشته باعث شد یک نفر در را قفل نکند و دزدها شب راحت وارد بشوند!
این ترفند یک نمونه از «مهندسی اجتماعی» است؛ یعنی فریب دادن آدمها با حرف یا ظاهر ساده، آن هم بدون نیاز به زور یا تکنولوژی!
@Linuxor ~ Nooshdaroo_web
در سال 1971، چند دزد با یک حقه ساده وارد یکی از دفاتر پلیس فدرال آمریکا (FBI) شدند. یکی از آنها چند ساعت قبل از دزدی، روی کاغذی نوشت: «لطفاً امشب این در را قفل نکنید» و آن را به در ورودی چسباند. همین نوشته باعث شد یک نفر در را قفل نکند و دزدها شب راحت وارد بشوند!
این ترفند یک نمونه از «مهندسی اجتماعی» است؛ یعنی فریب دادن آدمها با حرف یا ظاهر ساده، آن هم بدون نیاز به زور یا تکنولوژی!
@Linuxor ~ Nooshdaroo_web
Forwarded from Linuxor ?
خیلیا براشون سواله این فایروال ایران آیا اینترنت رو کند میکنه؟
به طور مستقیم خیر؛ چون فایروال اینطوری نیست که بیاد جلوی پکت هارو بگیره و بگه تو خوبی رد شو تو بدی رد نشو اصلا این کار توی حجم بالا شدنی نیست؛ فایروالشون اینطوریه یه سیستم جداگونس که از پکت ها کپی میگیره و اون پشت جمع میکنه و بعد مثلا ساعت 3 نصفه شب که ترافیک کمتره با توجه به اونا تصمیم میگیره و وقتی تصمیم گرفت دیگه اجازه نمیده هیچ پکتی حتی پکت های غیر VPN هم رد بشه؛ حالا تا همینجا رو بزارید گوشه ذهنتون بجای اینکه بیاد یه آیپی رو بلاک کنه با یه احتمالی میگه این VPN هست یا نه و ممکنه اگه یه احتمالی وجود داشته باشه عمدا یه بخشی از پکت هاتون رو دراپ کنه و این باعث کندی میشه نه اون نظارته :)
البته یه بخشی از نظارته که زیاد زمان بر نیست هم به صورت لحظه ای انجام میشه ولی تصمیمات اساسی پشت صحنه گرفته میشه.
@Linuxor
به طور مستقیم خیر؛ چون فایروال اینطوری نیست که بیاد جلوی پکت هارو بگیره و بگه تو خوبی رد شو تو بدی رد نشو اصلا این کار توی حجم بالا شدنی نیست؛ فایروالشون اینطوریه یه سیستم جداگونس که از پکت ها کپی میگیره و اون پشت جمع میکنه و بعد مثلا ساعت 3 نصفه شب که ترافیک کمتره با توجه به اونا تصمیم میگیره و وقتی تصمیم گرفت دیگه اجازه نمیده هیچ پکتی حتی پکت های غیر VPN هم رد بشه؛ حالا تا همینجا رو بزارید گوشه ذهنتون بجای اینکه بیاد یه آیپی رو بلاک کنه با یه احتمالی میگه این VPN هست یا نه و ممکنه اگه یه احتمالی وجود داشته باشه عمدا یه بخشی از پکت هاتون رو دراپ کنه و این باعث کندی میشه نه اون نظارته :)
البته یه بخشی از نظارته که زیاد زمان بر نیست هم به صورت لحظه ای انجام میشه ولی تصمیمات اساسی پشت صحنه گرفته میشه.
@Linuxor
Forwarded from Gopher Academy
🔴قابلیت
در Go 1.25**، رابط جدیدی در بسته `hash` معرفی شده با نام
---
🧠این
رابط ساده زیر را دارد:
این متد وضعیت داخلی هش فعلی را کپی کرده و یک نمونهی مستقل جدید از همان نوع (
---
🔧 چرا مفید است؟
* صرفهجویی در زمان و CPU: کپی وضعیت داخلی، نیاز به محاسبه مجدد هش را حذف میکند.
* سازگاری با الگوریتمهای ترکیبی: وقتی میخواهید چند هش متفاوت را روی یک دنباله شروع کرده و بعداً ادامه دهید.
* کاربرد در HMAC، Merkle‑Tree، بررسی تکرارشونده بودن دادهها.
---
✅ مثال کاربردی
فرض کنید میخواهیم هش SHA256 بسازیم تا دادهها را در چند مرحله هش کنیم، ولی بخشی آغازین مشترک دارند:
📌 *پویا بودن نوع Cloner*: در runtime هش شونده است و نیاز به
---
⚖️ نکات
* نوع برگشتی دقیقاً همان نوع هش است؛ بدون downcast اضافی.
* هیچ اثر جانبی روی هش اصلی ندارد.
* متد روند هش را متوقف میکند و وضعیت فعلی را مکان جداگانه ذخیره مینماید.
---
🧭 جمعبندی
*این `hash.Cloner` در Go 1.25 به
* با
* برای ساخت هشهای موازی، HMAC یا الگوریتمهایی با بخش مشترک واقعاً کاربردی است.
Cloner ویژگی های جدید گولنگ نسخه 1.25در Go 1.25**، رابط جدیدی در بسته `hash` معرفی شده با نام
Cloner که به انواع `hash.Hash` اجازه میدهد **وضعیت داخلی (state) خود را کپی کند. این برای مواقعی بسیار مفید است که بخواهید از یک هش، مقدار میانی را ذخیره کرده و ادامه دهید، بدون آنکه کل روند هش را دوباره اجرا کنید.---
🧠این
hash.Cloner چیست؟رابط ساده زیر را دارد:
type Cloner interface {
Clone() Hash
}این متد وضعیت داخلی هش فعلی را کپی کرده و یک نمونهی مستقل جدید از همان نوع (
Hash) بازمیگرداند. تمام پیادهسازیهای استاندارد Go مثل hash/maphash این رابط را پیادهسازی کردهاند. ([tip.golang.org][1])---
🔧 چرا مفید است؟
* صرفهجویی در زمان و CPU: کپی وضعیت داخلی، نیاز به محاسبه مجدد هش را حذف میکند.
* سازگاری با الگوریتمهای ترکیبی: وقتی میخواهید چند هش متفاوت را روی یک دنباله شروع کرده و بعداً ادامه دهید.
* کاربرد در HMAC، Merkle‑Tree، بررسی تکرارشونده بودن دادهها.
---
✅ مثال کاربردی
فرض کنید میخواهیم هش SHA256 بسازیم تا دادهها را در چند مرحله هش کنیم، ولی بخشی آغازین مشترک دارند:
package main
import (
"crypto/sha256"
"fmt"
"hash"
)
func main() {
base := []byte("header")
h1 := sha256.New()
h1.Write(base) // وضعیت میانی
// کپی وضعیت هش
h2 := h1.(interface{ Clone() hash.Hash }).Clone()
// ادامه روی نسخه اول
h1.Write([]byte(" payload1"))
sum1 := h1.Sum(nil)
// ادامه روی نسخه دوم
h2.Write([]byte(" payload2"))
sum2 := h2.Sum(nil)
fmt.Printf("sum1: %x\n", sum1)
fmt.Printf("sum2: %x\n", sum2)
}
📌 *پویا بودن نوع Cloner*: در runtime هش شونده است و نیاز به
import "hash" است.---
⚖️ نکات
* نوع برگشتی دقیقاً همان نوع هش است؛ بدون downcast اضافی.
* هیچ اثر جانبی روی هش اصلی ندارد.
* متد روند هش را متوقف میکند و وضعیت فعلی را مکان جداگانه ذخیره مینماید.
---
🧭 جمعبندی
*این `hash.Cloner` در Go 1.25 به
hash.Hash امکان میدهد وضعیت داخلی خودش را کپی کند.* با
Clone() میتوانید چند ریزهکاری هش را از همان نقطه شروع ادامه دهید—بدون محاسبه دوباره.* برای ساخت هشهای موازی، HMAC یا الگوریتمهایی با بخش مشترک واقعاً کاربردی است.
Forwarded from UN_Career
📌 سفارت ایتالیا از علاقمندان به موقعیتکاری در زمینه " دستیار ادمین " دعوت به همکاری میکند
_ تا ۲۱ تیر امکان اپلای برای این موقعیت وجود دارد، همچنین شرایط و پیشنیازهای این موقعیت در کانال un career درج شده است.
_ تا ۲۱ تیر امکان اپلای برای این موقعیت وجود دارد، همچنین شرایط و پیشنیازهای این موقعیت در کانال un career درج شده است.
Forwarded from Md Daily (Mahan)
از اونجایی که یکی از بچه ها پیشنهاد ansible رو داد و یکی دیگه هم گفت با go یه چیز فان پیاده کنیم.
گفتم خب بیایم این دوتا رو باهم ترکیب کنیم :)
میتونیم یه پروژه جاست فور فان نوشتنش شروع کنیم و ایده ی اولیم اینکه یه ابزار با گو باشه که وصله به یه ربات تلگرامی.
میشه از طریق ربات تنظمیش کرد که هر چند وقت یک بار و تو یه چه موضوعاتی بره وصل بشه به یه ای پی یه ai ای مطالبش رو تولید (تصویر و متن) کنه. بعد بیایم توی canva یه تمپلیت درست کنیم که مطالب تولید شده بره بشینه روش و در نهایت پست بشه به اینستاگرام. حتی امار پیچ اینستاگرام هم میتونیم از رباتمون بگیریم. در نهایت هم برای اماده سازیه سرور از ansible استفاده کنیم.
نظرتون چیه؟ یا اگه ایده ای دارید خوشحال میشم بشنوم.
به نظرتون به صورت پست تلگرامی منتشر کنم یا به صورت پست وبلاگ؟
- پست تلگرامی ری اکشن 🤝
- پست وبلاگ ری اکشن ✍
گفتم خب بیایم این دوتا رو باهم ترکیب کنیم :)
میتونیم یه پروژه جاست فور فان نوشتنش شروع کنیم و ایده ی اولیم اینکه یه ابزار با گو باشه که وصله به یه ربات تلگرامی.
میشه از طریق ربات تنظمیش کرد که هر چند وقت یک بار و تو یه چه موضوعاتی بره وصل بشه به یه ای پی یه ai ای مطالبش رو تولید (تصویر و متن) کنه. بعد بیایم توی canva یه تمپلیت درست کنیم که مطالب تولید شده بره بشینه روش و در نهایت پست بشه به اینستاگرام. حتی امار پیچ اینستاگرام هم میتونیم از رباتمون بگیریم. در نهایت هم برای اماده سازیه سرور از ansible استفاده کنیم.
نظرتون چیه؟ یا اگه ایده ای دارید خوشحال میشم بشنوم.
به نظرتون به صورت پست تلگرامی منتشر کنم یا به صورت پست وبلاگ؟
- پست تلگرامی ری اکشن 🤝
- پست وبلاگ ری اکشن ✍
Forwarded from نوشتههای ترمینالی
در کامندهای گیت که کمتر میشناسیم، worktree هم هست که از وقتی باهاش دوست شدم و درست استفاده کردم به سری جاها زندگیم رو راحت کرد.
این آموزش هم نیازمندیای که رفع میکنه هم طرز استفاده ازش رو به خوبی توضیح میده.
https://youtu.be/8vsRb2mTBA8
این آموزش هم نیازمندیای که رفع میکنه هم طرز استفاده ازش رو به خوبی توضیح میده.
https://youtu.be/8vsRb2mTBA8
YouTube
learn git worktrees in under 5 minutes
Git worktrees are a great way to boost your productivity and wrangle your chaotic coding habits. Git worktrees let you check out multiple branches from one repo into separate directories. Benefits include parallel work, no stashing for context switching,…
Forwarded from Linuxor ?
آزمایشگاه رایگان برای یادگیری Cloud و DevOps چیزای خوبی داره مثل Docker و Git و Jenkins و ... بهتون دسترسی سرور میده تست کنید
studio.kodekloud.com/labs
@Linuxor
studio.kodekloud.com/labs
@Linuxor
Forwarded from Linuxor ?
یه roadmap خفن برای LLM آماده کردم از صفر تا پرو! پایهها، ترنسفورمر، توکنایزیشن تا پروداکشن و LLMOps. با دقت طبقه بندی شده و همراه با پروژه های عملی ...!
mshojaei77.github.io/roadmap.html
@Linuxor ~ realshojaei
mshojaei77.github.io/roadmap.html
@Linuxor ~ realshojaei
Forwarded from Linuxor ?
اکثر شرکتا حتی شرکت های بزرگ حوصله درگیر شدن با سرتیفیکیت SSL رو ندارن و یهویی سایتشون از کار میفته بدون اینکه خودشون بفهمن (یکی بهشون زنگ میزنه میگه این سایتتون چرا بالا نمیاد ؟ بعد تازه دوزاریشون میفته که برن درستش کنن)
این ابزار یکی از بهترین داشبورد های مدیریت سرتیفیکیت SSL هست حتی Webhook هم داره و میتونید ست کنید که موقع خطا یا هر اتفاقی بهتون گزارش بده
github.com/fabriziosalmi/certmate
@Linuxor
این ابزار یکی از بهترین داشبورد های مدیریت سرتیفیکیت SSL هست حتی Webhook هم داره و میتونید ست کنید که موقع خطا یا هر اتفاقی بهتون گزارش بده
github.com/fabriziosalmi/certmate
@Linuxor
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 برای اولینبار در تاریخ بازار سهام، ارزش یک شرکت انویدیا از مرز چهار تریلیون دلار عبور کرد.
#خبر
@TheRaymondDev
#خبر
@TheRaymondDev
Business Insider
Nvidia just became the first-ever company to hit a $4 trillion market cap
The jump on Wednesday marks a milestone for the stocks, which embarked on a stunning rally in the years since ChatPGT debuted in 2022.
Forwarded from Gopher Academy
🔴قابلیت reflect.TypeAssert ویژگی های جدید گولنگ نسخه 1.25
در Go نسخه 1.25 یک تابع جدید در پکیج `reflect` به نام `reflect.TypeAssert` معرفی شده که به شکل زیر تعریف میشود:
این تابع اجازه میدهد مستقیماً از یک
---
🧠 چرا `TypeAssert` مهمه؟
وقتی از روش قدیمی استفاده میکنیم:
```go
val := v.Interface().(MyType)
```
ابتدا آدرس حافظه برای `interface{}` ساخته میشود، سپس assertion انجام میشود—که ممکن است تخصیص حافظه ناخواسته انجام بدهد.
با `reflect.TypeAssert` داریم:
* **مستقیماً از
* بدون ساختن
* سریعتر و کمهزینهتر.
---
## ✅ مثال عملی
### خروجی:
---
✅ جمعبندی
*این
* بدون overhead ای که تبدیل به
* مناسب برای مواردی که در reflection با performance حساس کار میکنید.
در Go نسخه 1.25 یک تابع جدید در پکیج `reflect` به نام `reflect.TypeAssert` معرفی شده که به شکل زیر تعریف میشود:
func TypeAssert[T interface{}](v reflect.Value) (T, bool)این تابع اجازه میدهد مستقیماً از یک
reflect.Value به نوع مشخص T تبدیل شویم، به همان روشی که با type assertion در interface ها انجام میدهیم، اما با کارایی بهتر**—بدون تخصیص حافظه اضافیٔ `interface{}` و تبدیل مجدد به یک مقدار Go معمولی ([tip.golang.org][1]).---
🧠 چرا `TypeAssert` مهمه؟
وقتی از روش قدیمی استفاده میکنیم:
```go
val := v.Interface().(MyType)
```
ابتدا آدرس حافظه برای `interface{}` ساخته میشود، سپس assertion انجام میشود—که ممکن است تخصیص حافظه ناخواسته انجام بدهد.
با `reflect.TypeAssert` داریم:
* **مستقیماً از
reflect.Value به MyType.* بدون ساختن
interface{} موقتی.* سریعتر و کمهزینهتر.
---
## ✅ مثال عملی
package main
import (
"fmt"
"reflect"
)
type Person struct {
Name string
Age int
}
func main() {
p := Person{"Alice", 30}
v := reflect.ValueOf(p)
// تبدیل مستقیم با TypeAssert
if val, ok := reflect.TypeAssert[Person](v); ok {
fmt.Printf("شد! نام: %s، سن: %d\n", val.Name, val.Age)
} else {
fmt.Println("نوع مطابقت ندارد")
}
// مثالی برای نوع اشتباه
if val, ok := reflect.TypeAssert[*Person](v); ok {
fmt.Println("این کار نمیشه:", val)
} else {
fmt.Println("اشتباه: v اصلاً *Person نیست")
}
}
### خروجی:
شد! نام: Alice، سن: 30
اشتباه: v اصلاً *Person نیست
---
✅ جمعبندی
*این
reflect.TypeAssert[T] راهی کارا و تیپ-محور برای بازیابی مقدار Go از reflect.Value است.* بدون overhead ای که تبدیل به
interface{} ایجاد میکند.* مناسب برای مواردی که در reflection با performance حساس کار میکنید.
Forwarded from Linuxor ?
ورژن جدید گراک برای مدت کوتاهی هیلتر رباتیک MechaHitler شده بود و به یهودی ها حمله میکرد! بعد مدت کوتاهی توییتر همه توییت هاشو پاک کرد
احتمالا مشکل توی System Promptش بوده این پرامپت در واقع یه سری توضیحات و باید و نباید هاست که به مدل داده میشه و یه شخصیت به مدل میده برای مثال به گراک گفتن همیشه شوخی کن و کلی چیز دیگه... ممکنه یکی از این پرامپت ها باعث شده باشه که این شخصیت رو به خودش گرفته باشه
@Linuxor
احتمالا مشکل توی System Promptش بوده این پرامپت در واقع یه سری توضیحات و باید و نباید هاست که به مدل داده میشه و یه شخصیت به مدل میده برای مثال به گراک گفتن همیشه شوخی کن و کلی چیز دیگه... ممکنه یکی از این پرامپت ها باعث شده باشه که این شخصیت رو به خودش گرفته باشه
@Linuxor
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰دوستان این خبر را بخاطر داشته باشید و به سایر دوستان هم اطلاع بدید🔰
🔹چند پست درباره x11 نوشته بودم و باز هم در ادامه خبر حذف مدیرنمایش x11 از میزهای لینوکسی و توزیع های لینوکسی رو میگذارم.
این مدیرنمایش به زودی پیشتیبانی دیگر نخواهد شد و منسوخ میشود، به منظور کاهش هزینه و انرژی و زمان توسعه و نگهداری آن.
🔸 نسخه GNOME 49 به صورت پیشفرض دارای پشتیبانی X11 نخواهد بود. همانند میزپلاسما که x11 رو پشتیبانی نخواهد کرد به زودی. میزGNOMEنسخه آلفای GNOME 49 با نام "49.alpha" ب در شهریور منتشرمیشود.
🔸اوبونتو از نسخه21 ویلند جایگزین کرد و از نسخه 25 به بعد نیز پشتیبانی از این مدیرنمایش حذف کرد.
🔸فدورا از نسخه 35 ویلند رو جاگزین کرد و قرار از نسخه 43 به بعد نیز پشتیبانی از این مدیرنمایش حذف کند.
🔸به صورت غیر رسمی دیدم که توزیع سوزه SLE 16 که مخفف SUSE Linux Enterprise 16 هست هم پشتیبانی Xorg server رو حذف میکند.البته بهصورت پیش فرض ویلند هست.
🔸با حذف پشتیبانی x11 همه اجزای میز LXQt با Wayland کار نمیکنند.
🔸همزمان با کنفرانس FOSDEM 2025، تیم توسعهدهنده GTK اعلام کرد پشتیبانی از X11 را حذف کرد! و همچنین پشتیبانی از Broadway، زمینهساز یک بکاند جدید برای اندروید. این تغییرات در راستای آمادهسازی برای GTK 5 انجام شدهاند. بکاند X11 بهطور رسمی منسوخ شده تا پیام واضحی درباره حذف کامل آن در GTK 5 ارسال شود.
🔸 توزیع Alpine Linux (Sway) از Sway (مدیر پنجرهٔ Wayland) بهعنوان گزینهٔ اصلی استفاده میکند و X11 را بهطور کامل حذف کرده است
🔸توزیع Solus محیط Budgie در حال انتقال به Wayland است و ممکن است در آینده X11 را حذف کند
🔰با حذف x11 مشکلات از قبیل موارد زیر خواهید داشت:
🔹سختافزار شما باید توسط درایور هسته Wayland - KMS و اغلب Mesa پشتیبانی شود، بدون Mesa+KMS حتی نمیتوانید صفحه ورود را ببینید .
🔹درایورهای قدیمیتر NVIDIA (که فقط از شتابدهنده GLX - X11 OpenGL پشتیبانی میکنند) دیگر کار نخواهند کرد. باید از nouveauدرایور KMS استفاده کنید.
🔹برای سخت افزاری قدیمی بدون x11 ابزارهای مدیریت ورود/محافظ صفحه/قفلکنندهها دیگر کار نخواهند کرد.
🔹محیطهای دسکتاپ وابسته به X11 کار نخواهند کرد - شبیهساز XWayland از برنامهها پشتیبانی میکند اما از مدیران پنجره پشتیبانی نمیکند.برای مثال، "xeyes" به دلیل محدودیتهای Wayland قادر به ردیابی ماوس در خارج از پنجره خود نیست).
نویسنده: حسین سیلانی
اخبار و آموزش های بیشتر در کانال:
https://t.iss.one/linuxtnt
🔹چند پست درباره x11 نوشته بودم و باز هم در ادامه خبر حذف مدیرنمایش x11 از میزهای لینوکسی و توزیع های لینوکسی رو میگذارم.
این مدیرنمایش به زودی پیشتیبانی دیگر نخواهد شد و منسوخ میشود، به منظور کاهش هزینه و انرژی و زمان توسعه و نگهداری آن.
🔸 نسخه GNOME 49 به صورت پیشفرض دارای پشتیبانی X11 نخواهد بود. همانند میزپلاسما که x11 رو پشتیبانی نخواهد کرد به زودی. میزGNOMEنسخه آلفای GNOME 49 با نام "49.alpha" ب در شهریور منتشرمیشود.
🔸اوبونتو از نسخه21 ویلند جایگزین کرد و از نسخه 25 به بعد نیز پشتیبانی از این مدیرنمایش حذف کرد.
🔸فدورا از نسخه 35 ویلند رو جاگزین کرد و قرار از نسخه 43 به بعد نیز پشتیبانی از این مدیرنمایش حذف کند.
🔸به صورت غیر رسمی دیدم که توزیع سوزه SLE 16 که مخفف SUSE Linux Enterprise 16 هست هم پشتیبانی Xorg server رو حذف میکند.البته بهصورت پیش فرض ویلند هست.
🔸با حذف پشتیبانی x11 همه اجزای میز LXQt با Wayland کار نمیکنند.
🔸همزمان با کنفرانس FOSDEM 2025، تیم توسعهدهنده GTK اعلام کرد پشتیبانی از X11 را حذف کرد! و همچنین پشتیبانی از Broadway، زمینهساز یک بکاند جدید برای اندروید. این تغییرات در راستای آمادهسازی برای GTK 5 انجام شدهاند. بکاند X11 بهطور رسمی منسوخ شده تا پیام واضحی درباره حذف کامل آن در GTK 5 ارسال شود.
🔸 توزیع Alpine Linux (Sway) از Sway (مدیر پنجرهٔ Wayland) بهعنوان گزینهٔ اصلی استفاده میکند و X11 را بهطور کامل حذف کرده است
🔸توزیع Solus محیط Budgie در حال انتقال به Wayland است و ممکن است در آینده X11 را حذف کند
🔰با حذف x11 مشکلات از قبیل موارد زیر خواهید داشت:
🔹سختافزار شما باید توسط درایور هسته Wayland - KMS و اغلب Mesa پشتیبانی شود، بدون Mesa+KMS حتی نمیتوانید صفحه ورود را ببینید .
🔹درایورهای قدیمیتر NVIDIA (که فقط از شتابدهنده GLX - X11 OpenGL پشتیبانی میکنند) دیگر کار نخواهند کرد. باید از nouveauدرایور KMS استفاده کنید.
🔹برای سخت افزاری قدیمی بدون x11 ابزارهای مدیریت ورود/محافظ صفحه/قفلکنندهها دیگر کار نخواهند کرد.
🔹محیطهای دسکتاپ وابسته به X11 کار نخواهند کرد - شبیهساز XWayland از برنامهها پشتیبانی میکند اما از مدیران پنجره پشتیبانی نمیکند.برای مثال، "xeyes" به دلیل محدودیتهای Wayland قادر به ردیابی ماوس در خارج از پنجره خود نیست).
نویسنده: حسین سیلانی
اخبار و آموزش های بیشتر در کانال:
https://t.iss.one/linuxtnt
Telegram
linuxtnt(linux tips and tricks)
https://t.iss.one/+AL7RKhKS6b4zNzY8
آموزش لینوکس- گروه مکمل برای پرسش و پاسخ
linux tips and tricks
ارتباط با من
@seilany
seilany.ir
آموزش لینوکس- گروه مکمل برای پرسش و پاسخ
linux tips and tricks
ارتباط با من
@seilany
seilany.ir
Forwarded from Golden Code (@lix)
تفاوت get() و lazy() در لاراول ؟
اول get():
تمام رکوردها رو یکباره از دیتابیس میخونه و در حافظه (RAM) لود میکنه. این روش برای حجم دیتای کم مناسبتره.
اما lazy() :
رکوردها رو بهصورت مرحلهای و پشتسرهم (streaming) میخونه. این یعنی حافظه خیلی کمتری مصرف میشه، چون هر بار فقط یک رکورد در حافظه هست. برای دیتاستهای بزرگ (مثلاً هزاران یا میلیونها ردیف) انتخاب بهتریه.
📌 در واقع، lazy() از متود cursor() استفاده میکنه که یک streaming cursor میسازه و رکوردها رو بصورت on-demand از دیتابیس میخونه.
اگه قراره دادههای زیادی از دیتابیس بخونید و پردازش کنین (مثلاً ۱۰۰هزار رکورد)، حتماً از lazy() استفاده کنید تا مصرف حافظه کنترل بشه و سرور دچار مشکل نشه.
#Laravel
@GoldenCodeir
(به منبع و مثالش دقت کنید👇🏾)
https://x.com/laravelbackpack/status/1940734778506121448?s=35
اول get():
تمام رکوردها رو یکباره از دیتابیس میخونه و در حافظه (RAM) لود میکنه. این روش برای حجم دیتای کم مناسبتره.
اما lazy() :
رکوردها رو بهصورت مرحلهای و پشتسرهم (streaming) میخونه. این یعنی حافظه خیلی کمتری مصرف میشه، چون هر بار فقط یک رکورد در حافظه هست. برای دیتاستهای بزرگ (مثلاً هزاران یا میلیونها ردیف) انتخاب بهتریه.
📌 در واقع، lazy() از متود cursor() استفاده میکنه که یک streaming cursor میسازه و رکوردها رو بصورت on-demand از دیتابیس میخونه.
اگه قراره دادههای زیادی از دیتابیس بخونید و پردازش کنین (مثلاً ۱۰۰هزار رکورد)، حتماً از lazy() استفاده کنید تا مصرف حافظه کنترل بشه و سرور دچار مشکل نشه.
User::lazy()->each(function($user) {
// پردازش کاربرا
});#Laravel
@GoldenCodeir
(به منبع و مثالش دقت کنید👇🏾)
https://x.com/laravelbackpack/status/1940734778506121448?s=35
X (formerly Twitter)
Backpack for Laravel (@laravelbackpack) on X
#Laravel lazy() vs get()
Did you know.... You can stream large datasets from the DB using lazy() — way more memory-efficient than get().
Did you know.... You can stream large datasets from the DB using lazy() — way more memory-efficient than get().
🔥1
Forwarded from Linuxor ?
برادرااا خواهررااا کم پیام های کانالو به کانال های یه نفرتون فوروارد کنید 😁
Forwarded from Linuxor ?
Forwarded from Linuxor ?
Forwarded from Linuxor ?
اگه پلن اینه که بعدا ببینید که این کار باعث نمیشه که بعدا ببینید اتفاقا خیالتون تخت میشه داریدش و دیگه سراغش نمیرید؛ فوروارد نکنید تا زمانی که بهش عمل نکردید اینطوری مغزتون بیشتر احساس خطر میکنه که اون چیزو از دست بده و شانس بیشتری دارید که پست رو عملی کنید ... یا اینکه توی یه گروهی پی وی دوستتون فوروارد کنید که میدونید اون شخص انجامش میده اینطوری هم به اون یه چیزی رسوندید و هم اون انجامش داد به شما نتیجه رو میگه و یه تحرکی برای شما شده که انجامش بدید
@Linuxor
Forwarded from Linuxor ?
Forwarded from Linuxor ?
Forwarded from Linuxor ?
اگه پلن اینه که بعدا ببینید که این کار باعث نمیشه که بعدا ببینید اتفاقا خیالتون تخت میشه داریدش و دیگه سراغش نمیرید؛ فوروارد نکنید تا زمانی که بهش عمل نکردید اینطوری مغزتون بیشتر احساس خطر میکنه که اون چیزو از دست بده و شانس بیشتری دارید که پست رو عملی کنید ... یا اینکه توی یه گروهی پی وی دوستتون فوروارد کنید که میدونید اون شخص انجامش میده اینطوری هم به اون یه چیزی رسوندید و هم اون انجامش داد به شما نتیجه رو میگه و یه تحرکی برای شما شده که انجامش بدید
@Linuxor
Forwarded from ASafaeirad
jsii allows code in any language to naturally interact with JavaScript classes.
https://github.com/aws/jsii
#js #tools
https://github.com/aws/jsii
#js #tools
GitHub
GitHub - aws/jsii: jsii allows code in any language to naturally interact with JavaScript classes. It is the technology that enables…
jsii allows code in any language to naturally interact with JavaScript classes. It is the technology that enables the AWS Cloud Development Kit to deliver polyglot libraries from a single codebase!...