էսօր խօսում էինք, յիշատակեցի oncd ու nsa ռիփորթները, ահա էստեղ յղումները թողնեմ, որ լինեն, միւս անգամ հեշտ գտնեմ՝
երկրորդ թուղթը յիշատակում ա #պասկալ ֊ը։ այդ պատճառով embarcadero֊ն հրապարակեց այս յօդուածը՝ արդե՞օք պասկալը ապահով լեզու ա։
#ծրագրաւորման_լեզու #ծրագրաւորման_լեզուներ #ծրագրաւորում #տէք #ապահովութիւն #տէքնոլոգիա #տէքնոլոգիաներ #տեխնոլոգիաներ #լեզու #անվտանգութիւն
https://www.youtube.com/watch?v=uhx1sdX2bow
շատ հետաքրքիր հարցազրոյց։
#մարդիկ #ապագայ #արհեստական_բանականութիւն #տէք #ազատութիւն #
գուցէ գիտէք, որ borland֊ը որ ստեղծել էր delphi֊ն, փորձեց object pascal֊ում եղած ֆիչըրները բերել c++։ ու բորլանդի c++֊ը տարբերւում ա սովորական c++֊ից նրանով, որ ունի այսպէս կոչուած closure֊ներ, կամ անոնիմ մեթոդներ։
իրականում, եթէ գալիս ես օբերոնից՝ ոչ մի տարօրինակ բան չկայ, շատ նորմալ ֆունկցիոնալ ա։
ահա օրինակ՝
type
TNotifyEvent = procedure(Sender: TObject) of object;
TButton = class
private
FOnClick: TNotifyEvent;
public
procedure Click;
property OnClick: TNotifyEvent read FOnClick write FOnClick;
end;
procedure TButton.Click;
begin
if Assigned(FOnClick) then
FOnClick(Self);
end;
procedure MyButtonClick(Sender: TObject);
begin
WriteLn('Button clicked!');
end;
procedure SomeEntryPoint;
var
Button: TButton;
begin
Button := TButton.Create;
Button.OnClick := @MyButtonClick;
Button.Click; // Outputs: Button clicked!
Button.Free;
end;
TNotifyEvent֊ը ֆունկցիայի, պրոցեդուրայի տիպ ա։ յետոյ այդ տիպի պրոցեդուրա ա կարելի ստեղծել։
Sender: Tobject ֊ը մեզ պէտք ա, որ իմանանք ով ա այդ event֊ը ուղարկել։ ինչի՞ ա ինքը TObject տիպի՝ որովհետեւ դա կլասսերի ծառի արմատն ա՝ ամէնը դրանից են ժառանգած, այսինքն՝ ամէնը կարելի ա դրան վերագրել։
օրինակ, կարելի ա էսպէս իմանալ թէ ով ա՝
if Sender is TButton then // Check if the sender is a button
begin
if TButton(Sender).Name = 'Button1' then
ShowMessage('Button 1 was clicked!')
else if TButton(Sender).Name = 'Button2' then
ShowMessage('Button 2 was clicked!');
end
else
begin
ShowMessage('Something else triggered this event!');
end;
տեսէք լրիւ օբերոնի runtime check անող IS ֊ն ա։
Button(Sender).Name ֊ը թոյլ ա տալիս կարդալ էդ կոնկրէտ կոճակի անունը։ օրինակ, կարող ես կոճակի անունը դնել Button1, իսկ կարող ես օրինակ՝ processButton։
Button֊ը իրականում ցուցիչ ա յիշողութեան մի տեղի, որ դատարկ ա։
TButton.Create֊ը լցնում ա էդ տեղը, ստեղծում ա յիշողութեան մէջ դաշտերը, կլասը, ու վերադարձնում ա էդ պատրաստուած յիշողութեանը ցուցիչ։
Button.OnClick֊ին կարողանում ենք վերագրել MyButtonClick ֆունկցիայի հասցէն։
այդ OnClick֊ը pascal֊ի property ա, որը կայ իմ իմանալով միայն այլ անդրեաս հայլսբերգի լեզուի՝ c#֊ի մէջ։
դրանից յետոյ Button.Click֊ը դա ա կանչելու։
շատ օբերոնական ա, չէ՞։ (:
ո՞նց ա դա արւում borland֊ի c++ դիալեկտով՝
#include <vcl.h>
#pragma hdrstop
class TButton
{
private:
typedef void __fastcall (__closure *TNotifyEvent)(TObject *Sender);
TNotifyEvent FOnClick;
public:
void __fastcall Click()
{
if (FOnClick)
FOnClick(this);
}
void __fastcall setOnClick(TNotifyEvent value)
{
FOnClick = value;
}
TNotifyEvent __fastcall getOnClick()
{
return FOnClick;
}
__property TNotifyEvent OnClick = {read=getOnClick, write=setOnClick};
};
void __fastcall MyButtonClick(TObject *Sender)
{
ShowMessage("Button clicked!");
}
int main()
{
TButton *Button = new TButton;
Button->OnClick = MyButtonClick;
Button->Click(); // Outputs: Button clicked!
delete Button;
return 0;
}
նախ, ահագին ոչ ընթերնելի ա, ինձ թւում ա։
յետոյ, դէ մասնաւորապէս որովհետեւ fastcall֊ը նշանակում ա որ պասկալի ֆունկցիա ա կանչելու, զի ամբողջ գրադարանը (vcl֊ը կամ fmx֊ը) պասկալով ա գրուած։
closure֊ը borland֊ի լուծումն ա որ մեթոդ փոյնթերն իմանայ this֊ի մասին։ ոնց pascal֊ում ա հնարաւոր։
property֊ով են փորձում դէ property իրականացնել։
հետաքրքիր ա, որ qt֊ն էլ ստանդարտ c++ չի՝ իրենք փաստացի նոր լեզու են ստեղծել, ու իրենց մօտ կայ moc (meta object compiler) որը յետոյ բերում ա qt֊ի կոդը ստանդարտ c++֊ի։ ու իրենք ունեն ինչ֊որ slot֊եր ու signal֊ներ որ էլի էմուլացնում են նոյն բանը՝ property֊ներ ու event֊ներ։
gtk֊ում ստանդարտ c ա, ու դա աւելի ա դուրս գալիս։
ի դէպ՝
https://norayr.am/weblog/2021/04/18/2492083/ — այն մասին ա որ embarcadero֊ն այլեւս չի կարողանում իր c++ քոմփայլերը շարունակել, զի c++ ստանդարտն էնքան արագ ա շարժւում, որ չեն ձգում։ ու հիմա փաստացի մէյնթէյն են անում llvm֊ի փաթչեր։ llvm֊ի արտօնագիրն էլ թոյլ ա տալիս որ դա անեն։ աւաղ։ (:
https://norayr.am/weblog/2021/04/19/2530704/
#ծրագրաւորում #ծրագրաւորման_լեզուներ #տէք #պասկալ #օբերոն #pascal #oberon
https://www.youtube.com/watch?v=0yXwnk8Cr0c
պարզւում ա, նիւ եօրքի մետրօյի կառավարումը կատարւում էր պասկալով գրուած ծրագրով։ մինչեւ չփոխեցին ադայի։
իսկ գիտէ՞ք քանի տող կոդ օրը պիտի գրի ապահով ծրագրի հեղինակը։ կիմանաք էս տեսանիւթից։
#պասկալ #ադա #ծրագրաւորում #տէք #ծրագրաւորման_լեզուներ #պատմութիւն
ահա, arm֊ն էլ ա օգտագործել branch prediction ու էդպէս էլ պիտի լինէր՝
https://www.youtube.com/watch?v=CjpEZ2LAazM ✓
սա շատ հետաքրքիր թութղ ա՝
https://arxiv.org/pdf/2406.08719
speculative execution֊ը բարդ լուծում ա, իսկ բարդութիւնից կարող են բխել խնդիրները։ պարտադիր չի որ բխեն, բայց մենք մարդ ենք, ու մեզ բարդ ա գործ անել բարդ համակարգերի հետ։
#մարդ_ես
ես հասկանում եմ որ մրցակցութիւնն ա ստիպում բոլոր տէք նախագծողներին բարդացնել դիզայնը, գտնել բարդ լուծումներ։ չնայած կարող ա եւ տակից դուրս չգան։
ու մրցակցութիւնը ոնց որ ստիպի իրանց լինել անպատասխանատու։ իրենք կարողանում են բարձր գնահատականներ հաւաքել տարբեր չափումներում ու թեստերում, բայց ահա հիմա ունեն բագ։ օկէյ, կը ֆիքսեն ու ուրախ կը վաճառեն մեզ նոր պրոցեսորներ։
իսկ եղած պրոցեսորի համար ֆիքսը եթէ լինի՝ ապա ծրագրային, ու կը դանդաղեցնի աշխատանքը։ ու էն ինչ շահել ենք speculative execution֊ի պատճառով, կը կոմպենսացուի ծրագրային ուղղումով։ լաւ ա եթէ աւելի դանդաղ չի աշխատի, քան առանց դրա կաշխատէր։
ու մի կողմից հա, նախագծողներն են, որ ուզում են գլխից վերեւ թռնել, ֆիզիկայի օրէնքներն անցնեն, ժամանակից առաջ ընկնեն։ իսկ նրանք որ չեն կարողացել՝ դուրս են մնում շուկայից, բիզնէսից։
միւս կողմից էդ մենք ենք, շուկան, որ չի ջոկում ինչ ա կատարւում, մանաւանդ էդ նոր ոլորտում, ու ուրախ գնում ենք էդպիսի պրոցեսորներ։
պահանջ չենք դնում որ լինեն աւելի դանդաղ, բայց աւելի պարզ դիզայնի ու յուսալի։
միւս կողմից՝ աշխարհն ա հիմա բարդացել։ ու գուցէ միայն ոլորտից չի՝ մենք առհասարակ չենք ջոկում ինչ ա կատարւում ու չենք կողմնորոշւում ինչ ա շուկան առաջարկում այս բարդ աշխարհում։
ինչն ա նաեւ սարսափելի՝ ջաւա սկրիպտ էքսփլոյթ կայ, ինչպէս եւ ինթելի նմանատիպ խնդիրների ժամանակ կար։ այսինքն՝ դիտարկչի մէջ կարող ա վնասակար կոդ աշխատել, իսկ դու չես էլ իմանայ։
ու ես տեսնում եմ որ արհեստական բանականութիւն ա օգտագործուելու որպէս quality assurance, որպէս թեստեր։ ու արդէն օգտագործւում ա։ ինչը մտահոգիչ ա, որովհետեւ ինքը կարող ա սխալուել, իսկ մենք կարող ա դա չջոկենք։
ու կարելի ա աւելի խորը գնալ ու նշել որ պետութեան կողմից ստանդարտիզացուած կրթութեան եւ թեստաւորման համակարգն ա բերում նրան որ բոլորը սովորում են մի ձեւով։ ու հիմա կը գայ արհեստական բանականութիւնը որը կը համարուի, որ աւելի լաւ ա իրան դրսեւորում, քան մարդիկ էդ նոյն ստանդարտիզացուած թեստերում։
#աբ #ապագայ #տէք #արհեստական_բանականութիւն #աբօ #մարդ #մարդիկ #երկաթ #պրոցեսոր #վրիպում #անվտանգութիւն #թեստաւորում #նախագծում #ծրագրաւորում #կրթութիւն #մրցակցութիւն #կապիտալիզմ #ազատութիւն #
sailfish֊ը վերջերս ռեինսթալ էի արել, ու առհասարակ, մի օգտագործէք սէյլֆիշ, չար համակարգ ա, բայց ամէն դէպքում՝ ssh եմ լինում՝ ծածկագիր ա ուզում։ նայում եմ՝ ես բանալիները գցել եմ օգտուողի մօտ։ մտածում եմ՝ կարո՞ղ ա ssh֊ի կոնֆիգում չի թոյլ տալիս հանրային բանալիով նոյնականացում՝ տեսնեմ հա, քոմենտած ա էդ տողը։ բացում եմ, ռեսթարրտում եմ։ էլի չի կպնում։
մտածեցի՝ փերմիշններն ա պանակի կամ ֆայլերի։ նայում եմ՝ ամէնը նորմալ ա, եւ ֆայլերը, եւ ~/.ssh պանակը։
նայեցի նաեւ օգտուողի պանակի փերմիշնները։ դէ գիտէի, նոր բան չէր ինձ համար։ յաջորդը դա պիտի նայէի։
ու տեսնեմ՝
[root@XperiaXA2-DualSIM ~]# ls -ld /home/defaultuser
drwxrwxr-x 21 defaultu defaultu 4096 Jul 19 02:41 /home/defaultuser
ինչի՞ ա խմբին տուել կարդալ։
էսպէս բերեցի նրան ինչ պէտք ա՝
[root@XperiaXA2-DualSIM ~]# chmod g-w /home/defaultuser
[root@XperiaXA2-DualSIM ~]# ls -ld /home/defaultuser
drwxr-xr-x 21 defaultu defaultu 4096 Jul 19 02:41 /home/defaultuser
[root@XperiaXA2-DualSIM ~]#
դէ առանց ռութ էլ ա լինում chmod անել, պարզապէս ռութով էի որ sshd֊ն խմբագրեմ։ այ chown չի լինի անել առանց ռութի, ով կասի ինչի՝ իրան յարգանք ու խալի ու հեռուստացոյց։ (:
ու իհարկէ արդէն աշխատեց բանալիով ssh֊ը։
հիմա մտածում եմ՝ ի՞նչն ա հիմա կոտրուելու։ ինչի՞ են էդպէս արել։ առաջ է՞լ էր էդպէս։ կարո՞ղ ա հիմա անդրոիդի էմուլացիան պայթի։ տեսնենք։ (:
#անկապ #տէք #սէյլֆիշ #չգիտեմ #լինուքս
իւանովի յաջորդ դասախօսութիւնն եմ դիտում, ու մտածեցի, որ էն մարդիկ, որ չեն սիրում systemd, pulse, wayland, dbus, redhat֊ի ստանդարտիզացիան, զգում են կայսերականը, աւտորիտարը, պարտադրածը տէքում։
ու հակառակը՝ gemini֊ն՝ հին քաղաքին, մարդու մասշտաբի հին ինտերնետին, միջավայրին ձգտումն ա, գուցէ մի քիչ overreact ա, գուցէ տրամաբանական զարգացում ա gopher֊ի մշակոյթի մարդկանց համար։
մենք սիրում ենք մեր փոքր xmpp սերուերներն ու ծուռումուռ կլիենտները, եւ մեզ օտար ա այօսի յղկուած ու «անթերի» յաւելուածների կոկիկ վեհութիւնը։
ոմանք ձգտում պարզ պատուհանային կառավարիչների՝ օրինակ dwm֊ի որովհետեւ gnome֊ը ոնց որ երեւանի հանրապետութեան հրապարակը լինի՝ ֆենսի, մեծ, ու կապ չունեցող։
windowmaker֊ն էլ NeXT Step չի բնաւ՝ աւելի նման ա նրան ոնց գիւմրուայ վարպետները ջանացել են սարքել իրանց իմացած եւրոպական շէնքերի նման, բայց ստացուեց ուրոյն եւ մարդկային։ երբ սիրում ենք ոչ թէ կորպորատիւ java֊ն կամ c#֊ը, այլ ֆլորիան կլաեմպֆլի եւ ընկերների freepascal֊ը, մոռացուած cm3֊ը՝ modula-3֊ի կոմպիլեատորը, երբ ձգտում ենք մարդու մասշտաբի oberon֊ի կամ lisp֊ի։
երբ forth ու uxn եմ յիշում, կամ 6502 ծրագրաւորում՝ դրա մէջ տեսնում եմ երաժշտական գործիքի հետ աշխատելու, կատարելագործուելու մշակոյթ։ այդ ցածր մակարդակի գործիքները շօշափելի են՝ ոնց կիթառի լարերը։
ու լինուքս դիստրիբուտիւը ապրող քաղաքի պէս ա՝ տարբեր մայլաներ կան ուր տարբեր լեզուներով են խօսում, որոշ ֆայլեր էնքան խորն են թաքնուած որ կոնդի փողոցիկներում մոլորուելու պէս ա ֆայլային համակարգով շրջելը։
#ճարտարապետութիւն #ճարտարագիտութիւն #իւանով #զեկոյց #քաղաք #տէք #կայսերականութիւն #ազատութիւն #վերնակուլար
ես կարծում եմ, netsurf֊ը էն ուեբ դիտարկիչն ա, որով կարելի ա գնահատել ուեբ կայքերը։ եթէ netsurf֊ը ցոյց չի տալիս՝ ուրեմն վատ կայք ա։ ուրեմն պէտք չի դրանով օգտուել։
նաեւ netsurf֊ը աշխատում ա համարեա գրեթէ ամէնի վրայ, օրինակ՝ amiga֊ի վրայ։
netsurf֊ն ունի իր լռելեայն փնտրելու համակարգերի ցանկը՝
բադիկն արդէն էդքան վատ չի, բայց եկէք աւելացնենք ինչ֊որ այլ փնտրելու համակարգ։
openbsd webzine֊ի անցեալ տարուայ՝ հելոուինին նուիրուած համարում ներկայացուել ա koekel SearXNG համակարգի փնտրելու հանգոյցը՝
եկէք փորձենք աւելացնել այն netsurf֊ի մէջ։
գտանք փնտրելու համակարգեր նկարագրող ֆայլը։
doas vim /usr/share/netsurf/SearchEngines
աւելացնենք էնտեղ՝
SearxNG|s.cybernuk.es|https://s.cybernuk.es/search?q=%s|https://s.cybernuk.es/favicon.ico|
պարզւում ա, շատ կարեւոր ա որ դրանից յետոյ չլինի դատարկ տող, այլապէս netsurf֊ը չի գտնում ոչ մի փնտրելու համակարգ։
ու ահա, ստացուեց՝
#netsurf #searxng #դիտարկիչ #փնտրում #փնտրելու_համակարգ #իւնիքս #ուեբ #մինիմալիզմ #ազատութիւն #կարգաւորում #տէք #այլընտրանք #հանդէս
մտածում եմ, ուեբը սխալ ուղղութեամբ ա գնացել։
այն փաստաթղթերի, նիշքերի ներբեռման համար ա նախագծուած։
ու էն որ պարզ էր օգտագործման մէջ՝ դիտարկիչը բացիր ու կտացրու՝ այն դարձրեց հանրայայտ, հանրամատչելի։
բայց, կարծում եմ, համացանցի ամենագլխաւոր կիրառութիւնը հեռուստատեսութեան պէս չի՝ հաղորդակցութիւն ա, շփում ա, տուեալների փոխանակում ա։ ոչ միայն ներբեռնում ա։
ու էդ պատճառով ուեբ երկու զրօ֊ն եկաւ, ու յայտնուեցին բեքենդներ, եւ զանազան բեքենդային տէք, որը շատ տգեղ ա, կարծում եմ, ինտեգրուել ուեբի հետ, զի ուեբն ի սկզբանէ դրա համար չէր։
իսկ ի՞նչն էր ի սկզբանէ դրա համար։ հաղորդակցութեան համար չաթն էր։ ու հետեւաբար մեզ պէտք չի ուեբ, մեզ պէտք ա xmpp։
ու մեզ պէտք ա xmpp֊ի վրայից կառուցել ուեբ։ դէ, այն ինչ ես կանեմ, եթէ անեմ, ակտուալ չի, որովհետեւ արդէն բոլորը սովոր են նոյն խնդիրները լուծել ուեբով, թէկուզ եւ ոչ էդքան լաւ։
բայց իրականում ի սկզբանէ այլ ուղղութեամբ ենք գնացել։ պէտք էր հաղորդակցութեան հաղորդակարգ։
ու եթէ դու հաղորդակցւում ես, քեզ կարելի ա համ էլ փուշ անել փոփոխութիւններ, թարմացնել ծրագիրդ առանց քո միջամտութեան։
ու ես էսպէս եմ տեսնում՝ դիտարկիչը իրականում url չունի ոնց որ http://եսիմինչ, այլ այնտեղ գրում ես jid — էսինչ@էնտեղ.հայ
ու կպնում ես իրա ծրագրին։ որը բեքենդ ա։ այն ուղարկում ա քեզ xmpp֊ով թէ ինչ ինտերֆէյս պէտք ա նկարես։ դու էլ նկարում ես։ երբ կոճակ ես սեղմում՝ հաղորդագրութիւն ա գնում էն ծրագրակազմին, որ սէնց բան սեղմեցին։ այն էլ հենդլ ա անում, ու եթէ պէտք ա, էլի ա բան ուղարկում քեզ։
նաեւ, սա նշանակում ա՝ պէտք չի սերուեր ունենալ, որ ուեբում… դէ սա արդէն ուեբ չի, որ ցանցում էջ կամ ծրագիր ունենաս։ քո ջաբեր կլիենտը, որ ֆիկտիւ այփի֊ով ինչ֊որ սերուերի կպած ա՝ բաւական ա։
ու տէնց։
#անկապ #տէք #չգիտեմ
կարելի ա երկու բառով նկարագրել ամէն այթի ընկերութիւնը՝
կարում են՝ անում են։
մարդ ա իրա «կարեցած» չափով։
«կարում ենք անում ենք սպը» են։
#տէք #տտ #բիզնես #էթիկա #ազատութիւն
մի քանի օր առաջ թարմացրի postmarketos֊ը, ու սէնց եղաւ՝
ERROR: unsupported "filesystem()
https://postmarketos.org/troubleshooting
յղումով իրականում ոչ մի հետաքրքիր բան չկար։ կար նման դէպք բայց դա այլ դէպք ա։
իրենք բութ լոադերն են ֆիքսում։
իսկ ինձ մօտ այն նորմալ էր, միջուկը բեռնուած էր, չէր կարողանում ապակրիպտաւորել կամ մաունթել ապակրիպտաւորումից յետոյ root բաժինը։
իրենց խորհուրդն էր՝ քաշել postmarketos֊ի դիտրիբուտիւ, տեղակայել sd քարտի վրայ, բեռնել համակարգ դրանից, յետոյ աշխատեցնել բութը ֆիքսող հրաման՝
update-u-boot -d /dev/mmcblk2
նախ ես ուզեցի էլ չտեղակայել sdcard֊ի վրայ postmarketos՝ ես արդէն ունեմ դրա վրայ մաեմօ։
բութ եղայ, նայեցի բաժիններն ինչ անուններ ունեն՝
root@devuan-pinephone:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 28.9G 0 disk
├─mmcblk0p1 179:1 0 128M 0 part /boot
└─mmcblk0p2 179:2 0 28.8G 0 part /
zram0 254:0 0 256M 0 disk [SWAP]
mmcblk2 179:256 0 29G 0 disk
├─mmcblk2p1 179:257 0 243M 0 part
└─mmcblk2p2 179:258 0 28.7G 0 part
mmcblk2boot0 179:512 0 4M 1 disk
mmcblk2boot1 179:768 0 4M 1 disk
օկէյ, բա ո՞րն ա ընթացիկ արմատը՝
root@devuan-pinephone:~# cat /etc/fstab
# fstab for arm system
none /sys/kernel/debug debugfs defaults 0 0
/dev/mmcblk0p1 /boot ext2 defaults 0 1
mmcblk0
֊ն ա իսկականը՝ այսինքն sd
քարտինը։ հետեւաբար mmcblk2
֊ը ներքին emmc
֊ն ա։
ապակրիպտաւորենք բաժինը՝
root@devuan-pinephone:~# cryptsetup luksOpen /dev/mmcblk2p2 pmosroot
Enter passphrase for /dev/mmcblk2p2:
հիանալի, հիմա ստեղծուել ա /dev/mapper/pmosroot
֊ը։ այն կարելի ա մաունթ անել։
root@devuan-pinephone:~# mount /dev/mapper/pmosroot /mnt/
մինչ chroot
լինելը լաւ կը լինէր որ էդ համակարգը որի մէջ մտնում ենք, ունենար /proc
, /sys
եւ այլն պանակները, կպցնենք դրանք մեր օհ֊ից։՝
root@devuan-pinephone:~# mount --bind /proc /mnt/proc; mount --bind /sys /mnt/sys; mount --bind /dev /mnt/dev; mount --bind /dev/pts /mnt/dev/pts
սէնց բաներ ջենթու տեղակայելով եմ սովորել։
մինչեւ chroot
֊ը նաեւ պէտք ա իսկական /boot
֊ը կպցնել, թէ չէ /
֊ի մէջ դատարկ պանակ ա /boot
֊ը բնականաբար՝
root@devuan-pinephone:~# mount /dev/mmcblk2p1 /mnt/boot
հիմա ժամանակն ա chroot
լինելու՝
root@devuan-pinephone:~# chroot /mnt
ու երեւի թէ initrd
֊ն ա վնասուած։ այն կը ստեղծուի նորից եթէ միջուկը կրկին տեղակայեմ՝
root@devuan-pinephone:~# apk fix --reinstall linux-postmarketos-allwinner
այլապէս կարելի ա թարմացնել՝ apk update && apk upgrade
ու յուսալ որ նոր միջուկի թարմացում կայ։
ահա, կրկին տեղակայելը էսպէս կատարուեց՝
(1/1) Reinstalling linux-postmarketos-allwinner (6.8.4_git20240405-r1)
Executing busybox-1.36.1-r25.trigger
Executing postmarketos-mkinitfs-2.4.0-r0.trigger
01:45:36.396990 Generating for kernel version: 6.8.4
01:45:36.397217 Output directory: /boot
01:45:36.397234 Unknown or no compression format set, using gzip
01:45:36.397294 == Generating initramfs ==
01:45:36.397316 - Using compression format gzip with level "default"
01:45:36.397420 - Searching for directories specified in /usr/share/mkinitfs/dirs
01:45:36.397615 -- Creating directories from: /usr/share/mkinitfs/dirs/00-initramfs-base.dirs
01:45:36.397924 - Searching for directories specified in /etc/mkinitfs/dirs
01:45:36.398130 - Searching for file lists from /usr/share/mkinitfs/files
01:45:36.398307 -- Including files from: /usr/share/mkinitfs/files/00-device-pine64-pinephone-modules.files
01:45:36.398537 -- Including files from: /usr/share/mkinitfs/files/00-initramfs-base.files
01:45:36.407352 -- Including files from: /usr/share/mkinitfs/files/30-postmarketos-bootsplash.files
01:45:36.408846 -- Including files from: /usr/share/mkinitfs/files/postmarketos-base.files
01:45:36.409185 - Searching for file lists from /etc/mkinitfs/files
01:45:36.409447 - Searching for hook scripts from /usr/share/mkinitfs/hooks
01:45:36.409600 - Searching for hook scripts from /etc/mkinitfs/hooks
01:45:36.410176 - Searching for kernel modules from /usr/share/mkinitfs/modules
01:45:36.410315 -- Including modules from: /usr/share/mkinitfs/modules/00-default.modules
01:45:36.448780 -- Including modules from: /usr/share/mkinitfs/modules/00-device-pine64-pinephone.modules
01:45:36.462556 - Searching for kernel modules from /etc/mkinitfs/modules
01:45:41.398502 initramfs completed in: 5.00s
01:45:41.398630 Unknown or no compression format set, using gzip
01:45:41.398655 == Generating initramfs-extra ==
01:45:41.398682 - Using compression format gzip with level "default"
01:45:41.398758 - Searching for file lists from /usr/share/mkinitfs/files-extra
01:45:41.399119 -- Including files from: /usr/share/mkinitfs/files-extra/00-initramfs-extra-base.files
01:45:41.441111 -- Including files from: /usr/share/mkinitfs/files-extra/30-unl0kr.files
01:45:41.535469 - Searching for file lists from /etc/mkinitfs/files-extra
01:45:41.535922 - Searching for hook scripts from /usr/share/mkinitfs/hooks-extra
01:45:41.536130 - Searching for hook scripts from /etc/mkinitfs/hooks-extra
01:45:41.541355 - Searching for kernel modules from /usr/share/mkinitfs/modules-extra
01:45:41.542575 - Searching for kernel modules from /etc/mkinitfs/modules-extra
01:45:54.584109 initramfs-extra completed in: 13.19s
01:45:54.584249 == Using boot-deploy to finalize/install files ==
==> Running hooks
==> kernel: device-tree blob operations
==> Checking free space at /boot
... OK!
==> Installing: /boot/initramfs
==> Installing: /boot/initramfs-extra
==> Installing: /boot/sun50i-a64-pinephone-1.1.dtb
==> Installing: /boot/sun50i-a64-pinephone-1.2.dtb
01:45:57.856197 boot-deploy completed in: 3.27s
01:45:57.881770 mkinitfs completed in: 21.49s
OK: 4880 MiB in 1281 packages
devuan-pinephone:/#
հիմա մնաց անջատել պանակները՝
root@devuan-pinephone:~# umount /mnt/sys
root@devuan-pinephone:~# umount /mnt/proc
root@devuan-pinephone:~# umount /mnt/dev/pts
root@devuan-pinephone:~# umount /mnt/dev
ու վերամեկնարկել համակարգը։ անջատեցի, հանեցի մաեմօ֊ի քարտը, որ ներքինից բեռնուի։ ու եղաւ։ (:
#տէք #մաեմօ #պոստմարկետօս #փայնֆոն #վերականգնում #օպերացիոն_համակարգեր #լինուքս #միջուկ #վերակենդանացում
սովէտ սիրողներին էս տուէք էլի՝
https://www.youtube.com/watch?v=4hFoMkQCuqw
ու դուք տեսէք որ զգաք։ ես զգացել եմ, ուզում եմ զգաք։
ինչ֊որ պատճառով ռուսական կայսրութիւններն, իրենց բոլոր ռեինկարնացիաներով, էսպիսին են, ինչպէս էս տպիչը։
#պատմութիւն #տպիչ #խսհմ #սովետ #սովէտ #սոցիալիզմ #տնտեսութիւն #տէք
սա եմ կարդում՝ ադայի չաթում եմ գտել՝ https://gautiersblog.blogspot.com/2024/03/benchmarking-generic-image-decoder-gid.html?m=1
փայթընի կոդը արտագրել են ադայով՝ 500 անգամ արագացել ա։ սա իհարկէ էդքան ադայի արագագործութեան մասին չի, ինչքան փայթընի դանդաղ լինելու։
բայց մտքովս ի՞նչ անցաւ։ դէ ես կարող ա լինէի էն մարդը որ շատ ա սիրում փայթըն ու ամէնն դրանով ա անում։
ու երեւի իմ սերունդը կապ ունի՝ ինձնից չի էդքան, մեր ժամանակ պասկալն էր մոդա, իսկ երբ պասկալով իսկապէս գրում ես, ոչ թէ պոլիտէքի առաջադրանքները, այլ իսկապէս մի կիրառելի բան քեզ համար, իր մոդուլներն ու ուժեղ տիպաւորմանը նէնց ես կպնում որ յետոյ երկար չես հասկանում ոնց ա որ սի֊ում օրինակ մինչ էսօր տէնց չի։
ու էսօր համալսարաններում երբ սիից ու սի փլասից են սկսում, դրանից յետոյ փայթընը շատ լաւն ա թւում ու ուզում ես ամէնն իրանով անել։
ու դա լաւ ընտրութիւն չի՝ մարդիկ կան կպնում են սիին՝ ասում են էֆեկտիւ ա իրանով, մարդիկ էլ կան, զգում են դրա խնդիրները ու կպնում են փայթընին։
բայց էդ լաւ ընտրութիւն չի՝ սիի ու փայթընի մէջ։
#փայթըն #պիտոն #սի #ծրագրաւորում #կրթութիւն #տեք #տէք #ադա
ասում ա՝ ուզում էինք պարալելլիզացնել, արդիւնքում՝ պարալիզացրինք։
#ծրագրաւորում #տէք #զուգահեռութիւն
վերջերս խաղ եմ անում nokia n900֊ի fcamera֊ի հետ։
ու ահա ձեզ այսպիսի համեմատութիւն՝
վերեւի ձախ նկարը՝ ինչպէս էր geeqie֊ն նախադիտում fcamera֊ի սարքած dng նիշքը։ վերեւի աջ նկարը՝ ինչպէս ա fcamera֊ն ինքն իր dng֊ից սարքել jpg։ ներքեւի ձախ նկարը՝ ինչպէս իմ սկրիպտը որ օգտագործում ա ufraw-batch սարքեց jpg՝ fcamera֊ի dng նիշքից։ ներքեւի աջ նկարը՝ վերեւի աջ նկարի վրայից քաշած kodachrome64 lut ֊ով տեսքն ա։
#համեմատութիւն #լուսանկարչութիւն #տէք #ֆոտո #ֆոտօ #n900 #fcamera #էսթետիկա #էկրանահան #նկար
էսօր մտածում էի՝ կարո՞ղ ա պէտք ա ընդունել էս ամբողջ սի կոդը որպէս «հին քաղաք», որպէս քաղաքի պատմական մաս հին շէնքերով։ դրանք պէտք ա ամրացնել եւ նորոգել՝ մեր դէպքում՝ կարկատել (փաթչել) որ աւելի ապահով ու անվտանգ լինի։ դա իհարկէ հնարաւոր ա ու openbsd նախագիծը հրաշալի գործ ա անում ապահով ու վստահելի սի կոդ ստանալով։
ինչպէս եւ հին շէնքերը, շատ բարդ ա ամբողջ եղած սի կոդն արտագրելը՝ թանկ ա, շատ ռեսուրս ա պահանջում։
գուցէ անցեալում արուած գործի ապամոնտաժումը վշտալի ա նոյնիսկ եթէ դա սի կոդ ա։
#անկապ #քաղաք #պոստմոդերնիզմ #պատմութիւն #ժառանգութիւն #տէք #մշակոյթ
անդրոիդի նոտօ տառատեսակների հայերէնը աչքերս տանջում են։
ես սիրում եմ թարումեանի գրքի տառատեսակը։
մտածեցի, սէյլֆիշումս root ունեմ, փոխեմ դէ։
գնացի, գտայ որ /opt/alien/rootfs֊ում ա system/fonts֊ը։ էնտեղ էլ կան՝ NotoSansArmenian-Bold.otf, NotoSansArmenian-Medium.otf ու NotoSansArmenian-Regular.otf.
բացեցի թարումեանի ֆոնտը, կոնուերտեցի fontforge֊ով .otf֊ի։ դրա համար պէտք ա անել generate ու ընտրել open type (cff) ձեւը։ բայց էդպէս ասաց, որ em size֊դ 2048 ա, իսկ պէտք ա լինի 1000։ ու fontforge֊ը առաջարկեց որտեղ փոխել՝ element մենիւ֊ում։
էսպէս, պահեցի։ հիմա փորձում եմ փոխել, բայց պարզւում ա /opt/alien/rootfs֊ը միայն ընթերնելու համար մաունթ եղած squashfs ա, /opt/alien/system.img ֊ից։
sailfish֊ի մէջ աւելացրի squashfs-tools որ անփաք անեմ system.img֊ն։
[root@XperiaXA2-DualSIM ~]# unsquashfs /opt/alien/system.img
-bash: unsquashfs: not found
[root@XperiaXA2-DualSIM ~]# pkcon search squashfs
Searching by details
Starting
Refreshing software list
Querying
Finished
Available squashfs-tools-4.3.0+git1-1.5.3.jolla.armv7hl (jolla) Utility for the creation of squashfs filesystems
Available squashfs-tools-debuginfo-4.3.0+git1-1.5.3.jolla.armv7hl (jolla)Debug information for package squashfs-tools
Available squashfs-tools-debugsource-4.3.0+git1-1.5.3.jolla.armv7hl (jolla) Debug sources for package squashfs-tools
[root@XperiaXA2-DualSIM ~]# pkcon install squashfs-tools
Resolving
Querying
Testing changes
Finished [ ] (0%)
The following packages have to be installed:
squashfs-tools-4.3.0+git1-1.5.3.jolla.armv7hl Utility for the creation of squashfs filesystems
Proceed with changes? [N/y] y
Installing
Starting
Refreshing software list
Querying
Resolving dependencies
Installing packages
Downloading packages
Installing packages
Finished
փորձում եմ՝ ասում ա՝
[root@XperiaXA2-DualSIM ~]# unsquashfs /opt/alien/system.img
Filesystem uses lz4 compression, this is unsupported by this version
Decompressors available:
gzip
lzma
lzo
xz
իրանք դա կանխատեսել էին, երբ հաւաքում էին իրենց squashfs-tools֊ը, պարզւում ա՝ այն ունէր տարբեր սեղման ձեւեր, բայց ոչ lz4, որով իրանց system.img֊ն սեղմուած ա։
ապա scp արեցի էդ system.img֊ն իմ լափթոփի մէջ։ emerge արեցի squashfs-tools֊ը lz4 դրօշով։ unsquashfs
արեցի, փոխեցի ֆայլերը իմ գեներացրած ֆայլով, հին անունները փոխելով։ հաւաքեցի կրկին lz4 ձեւով system.img՝
mksquashfs squashfs-root system-new.img -comp lz4
տարայ sailfish, փոխեցի ֆայլը։ ու ահա, վերջապէս, պրծայ էն տառատեսակից՝
ու տէնց։
#առօրեայ #տէք #սէյլֆիշ #տառատեսակ #գրքի #անկապ #էկրանահան #հայերէն
կարդում ես քեզ համար, ու մէկ էլ՝
#էկրանահան #լուա #տէք #պայթում #պայթիւն
ընկերներիցս մէկը շատ ոգեւորւում ա հէնց մասնաւորապէս յաւելուածների (այսինքն՝ ոչ կարգիչների համար ծրագրակազմի) ստեղծմամբ էն պատճառով, որ լրիւ տեսանելի ա, շօշափելի ա, որ մի հոգի կարող ա ստեղծել կիրառելի ծրագիր, եւ կունենայ մեծ շուկայ՝ մարդիկ աւելի շատ են օգտւում հեռախօսներից էսօր, քան կարգիչներից։
ինձ իր մտածողութեան մէջ հարազատ ա մենակ ունակ լինելու մասը։ էդ պատճառով ես ձգտում եմ կարողանալ շինել համակարգս, աւելի շատ օգտագործել էն ինչ ես կարող եմ ստեղծել, ու աւելի քիչ՝ էն ինչ չեմ կարող(պայմանական ջեմինի ընդդէմ պայմանական ֆայրֆոքսի)։
բայց ամենակարեւորը՝ ես զգում եմ էսօր, որ ծրագիր գրելու ունակութիւնը՝ ազատագրող արտօնութիւն ա։
նախ իհարկէ պէտք ա լինի զգացողութիւն, որ ազատ չես։ որ նորմա չի, որ օկէյ չի, երբ ծրագրակազմն ա (դրա հետեւում եղած մարդիկ) թելադրում կամ պարտադրում։
իսկ յետոյ՝ ազատագրող ունակութիւնը այդ ծրագրակազմը փոխարինելու։
օրինակ՝ էսօր իմ ձեռքի մէջ ընկել ա wifi sd card ադապտեր։ այն ստեղծում ա հոտսփոթ, որին կարող ես կպնել եւ… եւ պարզւում ա ոչ մի բան չես կարող անել առանց արտադրողի յաւելուածի։ այսինքն՝ կիրառելի չի կարգչից, կիրառելի չի սարքից որը մէյնսթրիմ մոբայլ օհ չունի։ բայց դա դեռ քիչ ա։ ծրագրակազմը բագոտ ա եւ յաճախ մեռնում ա, ֆայլերը յաճախ սխալներով են փոխանցւում, եւ այլն՝ եւ այդ ծրագրակազմը՝ մենաշնորհ ա։
ես, եթէ դեռ ուզեմ դրանով զբաղուել, երբ աւելի ազատ լինեմ մօտակայ ժամանակ, եւ եթէ կարողանամ (բայց ինչի՞ պիտի չկարողանամ) կը փորձեմ ռեւերս ճարտարագիտութիւն անել իրանց հաղորդակարգը, եւ բաց, ազատագրող մոդուլ որը իմպլեմենտ կանի հաղորդակարգը, եւ ծրագիր, որն այն օգտագործում ա։
եւ ինձ ամենաշատը յուզում ա ծրագրաւորելու հմտութիւն ունենալու մէջ այն որ դա թոյլ ա տալիս աւելի ազատ լինել։
եւ էս մտքերով երբ ընկայ, մտածեցի՝ դէ էսպէս ա ստեղծուել ամբողջ ծրագրակազմի շարանն, ինչ օգտագործում եմ՝ պայմանական «լինուքսը», եւ դրա հետ եկող ամէն բանը։ մարդիկ լուծում էին իրենց՝ աւելի ազատ լինելու խնդիրը։
ու իհարկէ տխուր ա, որ դա շատերը չեն հասկանում, եւ չեն գնահատում, եւ չեն ուզում օգտուել, զի կամ սովորութիւնները չեն ուզում փոխել, կամ «պրակտիկ» են, եւ համեմատում են ազատագրող ծրագրակազմը «ֆիչըրներով» սեփականատիրականի հետ։
#ազատութիւն #ազատ_ծա #ազատ_ծրագրակազմ #ծրագրակազմ #տէք #տեք #յաւելուած #առօրեայ #ծրագրաւորում
ուրեմն, ընկերներիցս մէկը տեսաւ ոնց ա gentoo֊ն բաներ շինում, ասաց՝ շատ հաւէս կը լինէր եթէ սէթի ժամանակ սա պրոյեկտուէր կամ սթրիմ լինէր։
մտածեցի՝ իսկապէս, պէտք ա փորձել։
տեղակայեցի obs։ ու obs֊ով կարողացայ դա անել։
բայց մի խնդիր կար՝ ես ունեմ գլոբալ USE ֆլագ՝ “-pulseaudio”։ ու pipewire էլ չունեմ։
նէնց չի որ նորութիւն ա։ նախկինում gnome֊ի esd֊ն ու kde֊ի arts֊ն էլ չէի օգտագործում։
միշտ միայն alsa էր։ աւելի ճիշտ՝ նախ դէ միշտ չէ, առաջ oss էր, նաեւ երբ արդէն alsa էր, եղել ա որ իմ սաունդ քարտը չի ճանաչել, ու ես oss էի շինել, որ աշխատի։ ու բնաւ չէի նեղւում oss֊ով։
հիմա էլ մտածում եմ՝ պէտք ա փորձել, գուցէ ինչ֊որ բան աւելի լա՞ւ աշխատի։
ինչեւէ, pulse բնականաբար չունեմ։
ու սթրիմն էսպէս ա աշխատում՝ butt ծրագիրը վերցնում ա ալսա֊ի նշուած մուտքից ու ուղարկում ա anonradio։
բայց հիմա աւելացել ա obs֊ը, ինքն էլ ա ուզում վերցնել։
ու պարզուեց՝ առաջինն ով վերցնում ա, սարքը իրան ա վերցնում նէնց որ ուրիշին չտայ։
ու եթէ butt֊ն եմ առաջինը միացնում՝ obs֊ը էլ ձայնը չի տեսնում, եթէ obs֊ն եմ առաջինը միացնում՝ butt֊ը էլ չի տեսնում։
սա լուծեցի էսպէս՝ ես ունեմ միշտ միացուած jack ֆլագ, ամէնը jack֊ի աջակցութեամբ եմ հաւաքում։
jack֊ը միացրի, իսկ ինքը սէնց հաւէս վահանակ ունի ուր մի ծրագրի ելքը կարող ես այլ ծրագրի մուտքին միացնել։ տէնց միացրի՝ եւ obs֊ին եւ butt֊ին, իսկ իրանց ասացի որ մուտքը jack֊ից վերցնեն՝ ու եղաւ։
բայց յետոյ միւս ընկերս ինձ գրեց՝ որ հա շատ հաւէս ա, բայց գիտես, դուրս չի գալիս որ էդ պատուհանը ուր վիդեօն ա, ինքը մի տեսակ ինտեգրուած չի քո դեսքթոփի հետ՝ առանձին վրայից դրուած ա։
ու ես մտածեցի՝ իսկապէս։
ապա նաեւ մտածեցի՝ չեմ ուզում է էս obs֊ը, կուզէի պարզապէս քոմանդլայն անել։
նախ փորձեցի ոնց կարդամ mplayer֊ով վիդեօ մուտքը։
դէ սկսեմ նրանից որ վիդեօ մուտքն ինձ մօտ նոութի վեբկամից չի, այլ canon խցիկից։
v4l2loopback մոդուլը պէտք ա քոմփայլ եղած լինի, ու միացուած՝
sudo modprobe v4l2loopback exclusive_caps=1 max_buffers=2
յետոյ քենոն խցիկը կը ստեղծի վիդեօ սարք gphoto2֊ի օգնութեամբ՝
sudo gphoto2 --stdout --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -s 1368x912 -threads 2 -f v4l2 /dev/video0
օկ, հիմա կպնենք mplayer֊ով՝
mplayer -tv device=/dev/video0:driver=v4l2 tv://
հաւէս, ցոյց տալիս ա։ բայց երբ սթրիմ արեցի, տեսայ որ mplayer֊ի պատուհանը կապոյտ ա։
կարդացի, նրանից ա լինում որ mplayer֊ն օգտագործում ա x11֊ի overlay կոչուող հնարաւորութիւնը՝ էդպէս անմիջապէս վիդեօ քարտին հասանելիութիւն ունի ու աւելի արագ ա ցոյց տալիս։
բայց էս ձեւով չի լինում որ ffmpeg֊ը իր x11grab միջոցով տեսնի պատուհանի պարունակութիւնը։
ու այն տեսնում ա այսպէս կոչուած placeholder գոյնը՝ որը կապոյտ ա։
ապա փորձեցի էսպէս, ու եղաւ։
mplayer -vo gl -tv device=/dev/video0:driver=v4l2 tv://
հա, բա ինչպէ՞ս եմ ffmpeg֊ով սթրիմ անում էկրանս։ ասացի որ վերեւի ձախ 1920x1080 չափով անի, որ ստանդարտ որոշութիւն լինի։
ffmpeg
-f x11grab -r 30 -s 1920x1080 -i :0.0+0,0
-f jack -i ffmpeg
-c:v libx264 -preset ultrafast -c:a aac
-f flv “rtmp://toobnix.org:1935/live/${KEY}” | grep -v rtmp
KEY֊ը նախապէս սահմանում եմ վերեւում ու ֆիլտրում եմ որ յանկարծ չերեւայ հոսքի մէջ։
առաջին անգամ երեւաց, դրա համար ջնջեցի կարգաւորումները, նոր բանալի ստեղծեցի ու հիմա ֆիլտրում եմ։
ընդհանուր առմամբ էսպէս։
ուրեմն յաջորդականութիւնը։
միացնում եմ խցիկը gphoto2֊ով ու mplayer֊ով։ յետոյ միացնում եմ qjackctl
յետոյ միացնում եմ butt֊ը, համոզւում եմ որ կարողանում ա jack֊ից վերցնել աւդիօն։ յետոյ միացնում եմ ffmpeg֊ը ու qjackctl֊ի վահանակով միացնում ձայնը նաեւ ffmpeg֊ին։
ու տէնց։
#աւդիօ #վիդեօ #սթրիմինգ #սթրիմ #հեռարձակում #էկրանահան #սէթ #երաժշտութիւն #լինուքս #տէք #տեքնոլոգիաներ #տէքնոլոգիաներ #կոնսոլ #աւտոմատացում #պարզութիւն
վաղուց ուզում էի պատմել «սանդիսկի» 256գբ էսէսդի «իւէսբի ֆլէշկայի» մասին։
ահա տուեալները՝
vendorid=0x0951, productid=0x177f
էսպիսի տեսք ունի՝
քիչ անց կը բացատրեմ ինչի ա հաբով կպած։
ուրեմն, սա ձեռք բերեցի երեւանում, ու բաւական էժան էր։ ինտերնետում էլ աւելի էժան ա լինում առնել։
լցնում էի դրա վրայ երաժշտութիւն, որ նուագեմ, ու զգում եմ՝ չնայած չկայ իրա վրայ i/o մէկ ա լուսադիոդը թարթում ա, իբր կայ։
umount եմ անում՝ մէկ ա թարթում ա։ կպած չի, բայց թարթում ա։
էդպէս թարթելու ընթացքում անջատեցի՝ էլ չմիացաւ։ նոյնիսկ օհ֊ը դադարեց ճանաչել այն։
երկու օր էր աշխատել մօտս։
մտածեցի՝ լաւ, կոնկրէտ էս սարքը խնդիր ունէր։ բայց ինչն էր հետաքրքիր, երբ վերցնում էի՝ ինձ երաշխիք տուեցին դրա վրայ։ ես էլ զարմացել էի՝ չէի տեսել որ «ֆլէշկային» երաշխիք տան։ կարծես խանութում էլ ասացի՝ ի՞նչ երաշխիք, ինձ մօտ դեռ ոչ մի «ֆլէշկա» չի փչացել դեռ, եթէ չեմ օգտագործել՝ էն պատճառով ա որ արդէն փոքր ա ու մեծն ունեմ։
ըստ որում էսէսդիները «օրէնքով» պիտի աւելի յուսալի լինեն։
ինչեւէ, տարայ՝ ասացին՝ վաղը կը կապուենք, բայց ուղիղ մի շաբաթ անց կապուեցին, փոխեցին։
փորձեցի՝ նոյն վարքագիծն ա։ հասկացայ որ վախենում եմ անջատել այն այլեւս։ զի իրա վրայ i/o ա լինում, կամ ինքն ա կարծում որ լինում ա, ու թարթում ա, նոյնիսկ երբ i/o չկայ։
սկսեցի կարդալ ինտերնետում՝ տեսնեմ ահագին խնդրայարոյց սարք ա։ լիքը մարդու մօտ փչացել ա։ «սանդիսկն» էլ էն «սանդիսկը» չի էլ, «wd»֊ին ա պատկանում։ «wd»֊ն հաստատել ա որ խնդիր կայ, ֆիրմուեր թարմացում ա արել։ բայց դա չի օգնում։ ու դրանք շատ են փչանում։
ես էլ վմ֊ում փորձեցի, քաշեցի իրանց ֆիրմուեր թարմացնելու ծրագիրը՝ ասում ա չկայ աւելի թարմը։
ինձ թւում ա ես ջոկել եմ ինչի են փչանում։ նրանից, որ i/o ա լինում դրանց վրայ ու դրանք հանում են։ կամ իրանց «windows»֊ն ասում ա՝ կարող ես հանել, բայց չեն նայում որ դեռ թարթում ա, կամ նման մի բան։ ու երբ i/o անելիս հանում ես՝ կարող ա եւ լաւ փչանայ, այո։
բայց ես մի բան եմ ջոկել՝ դա չի կատարւում երբ այն աշխատում ա usb 2.0 ռեժիմով։
դրա համար միացնում եմ էս հաբով։ ու էս հաբով եթէ միացնում եմ՝ նորմալ աշխատում ա։
ըստ երեւոյթին usb 3.0֊ի իմպլեմենտացիայի հետ խնդիր ունի իրանց ֆիրմուերը, ու շատ ահաւոր ա որ տէնց «եքայ» կազմակերպութիւն չի կարողանում էդ խնդիրը լուծել։
եւս մի ասք սեփականատիրական ծրագրակազմի մասին։ չնայած մեզ համար այն սարք ա, իհարկէ։ բայց դէ ունի ծրագրակազմ։
ու տէնց։
#տէք #կրիչ #ֆլէշկա #անկապ #չգիտեմ
https://toobnix.org/w/pcebT3Eub9mpHJYmKb1sGX
չեմ հասկանում՝ չլինի՞ նոր make֊ը հիմա ընթացիկ մասը նկարագրում ա տակի տողում։
#էկրանահան #տեսանիւթ #make #շինում #շինարարութիւն #կոնսոլ #տէք #լինուքս
ազատ ծրագրակազմի խնդիրներից մէկը շատ մարդկանց համար ոչ կայուն աշխատանքն ա, դա էլ իր հերթին՝ նոր ու նոր «ֆիչըրներ» ուզելուց ա։
օրինակ, կար gtk2՝ համարել են հնացած, չեն նայում դրան այլեւս։ ամբողջ ջանքը գնաց gtk3֊ի իսկ յետոյ gtk4֊ի մէջ։
բայց gtk2֊ը հազիւ կայունացել էր, նորմալ աշխատում էր, իրան հետեւելը, պարզապէս որ շինուի ու շարունակի աշխատել, ոնց կար՝ էդքան էլ ծանր չի։
կար gtk2֊ով գրուած gnome2։ էլի հազիւ կայունացել էր, նորմալ աշխատում էր։
գրեցին gnome3, որ ամենասկզբից, իհարկէ շատ խնդիրներ ունէր։ նոյնը kde֊ների մասին ա կարելի ասել։
ու մարդիկ հա գտնում էին իրանց էդ օղակի մէջ, սպասում սպասում են, որ կայունանայ վիճակը, սխալներն ուղղեն, հազիւ ուղղւում են՝ նոր վարկած ա դուրս գալիս, ու կրկին սխալներն են ուղղում։
իհարկէ, կարող են gnome/kde/gtk/qt չօգտագործել։ բայց դժուար չօգտագործեն, մանաւանդ սկսնակները։
իմ օգտագործած windowmaker֊ը քսան տարուց աւել ա ինչ կայուն ա։ շատ կոդ էլ չկայ։ չի էլ փոխւում։
#իւնիք #ազատութիւն #ազատ_ծրագրակազմ #ծրագրակազմ #լինուքս #տէք
էական չի, ունե՞ս նկար խմբագրելու յաւելուած թէ՞ չէ։ միշտ կարող ես կոնսոլից պտտել։
#էկրանահան #տէք #կոնսոլ
#դրոիդ4 #լինուքս #էկրանահան #դինօ #դայնօ #ջաբեր #անկապ #տէք
ուրեմն, էս պահին gentoo֊ում թէ gtk3 ես տեղակայում՝ պիտի բերի իր հետ librsvg֊ն։ իսկ դա rust֊ով ա գրուած։ իսկ rust֊ը բարդ ա շինել։
ճիշտ ա, կարելի ա rust-bin օգտագործել։ բայց պէտք չի։ ես չեմ սիրում։
ամէն դէպքում, լաւ ա որ շարժ կայ առ այն որ լինի առանց librsvg֊ի շինել gtk։
ու տէնց։
#ջենթու #ռասթ #տէք #անկապ
եւս մի պատճառ ջենթու օգտագործելու (բազմաթիւ այլ պատճառներ ունեմ) ինձ համար այն ա, որ եթէ ինչ֊որ բան չեմ կարողանում հաւաքել, կամ բարդ ա հաւաքել՝ չեմ օգտագործում։
օրինակ, էս պահին փայնբուքս տառապում ա որ ֆայրֆոքսն ու դրա կախուածութիւնները հաւաքի։
դեռ կարողանում ա։
օկէյ, դեռ կօգտագործեմ։ բայց միւս անգամ ես արդէն կը մտածեմ, արդե՞օք ինձ դա պէտք ա։ եթէ ինքն էդքան տառապում ա՝ երեւի ինձ դա պէտք չի։
netsurf֊ը հաւաքւո՞ւմ ա՝ ուրեմն էդ ա։
չի՞ ցոյց տալիս էջեր՝ ուրեմն էլ աւելի կը լծուեմ պարզ էջեր ստեղծելուն կամ ջեմինի անցնելուն։ որի ուղղուց ես չեմ շեղուելու, պարզապէս բարդ ա անց կացնելը իմ ուեբ ներկայութիւնը, զի շատ լեգասի ունես, բայց կանցնեմ մի օր։
ըստ որում՝ երբ ես ասում եմ մարդկանց՝ մի դուրս եկէք ֆէյսբուքից, բայց մեզ հետ էլ շփուէք դաշնեզերքում, նման բան ես ասում եմ հիմա ինձ՝
դեռ օգտագործի լինուքս, բայց զարգացրու օբերոն համակարգը։
դեռ օգտագործի վեբ, բայց հնարաւորինս շատ գնա դէպի ջեմինի։
ու տէնց։
#անկապ #համացանց #ազատութիւն #տէք #ջեմինի #ուեբ #վեբ #դիտարկիչ #ջենթու #պերմակարգչութիւն #պարզութիւն #մարդավարի #մարդկային #մարդիկ
մոռացայ նշել։
xterm֊ի գոյներն ինձ համար շատ պայծառ են։ բայց դրանք էլ կարելի ա փոխել։
ես էսպէս եմ փոխել, աւելացնելով հետեւեալը .bashrc
֊ի մէջ՝
#xterm colors
#black
echo -en "\e]4;0;#2e3440\e\\"
#echo -en "\e]4;0;#4c566a\e\\"
#red
echo -en "\e]4;1;#b26a7d\e\\"
#green
echo -en "\e]4;2;#97ba97\e\\"
#yellow
echo -en "\e]4;3;#c2c270\e\\"
#blue
echo -en "\e]4;4;#81a1c1\e\\"
#magenta
echo -en "\e]4;5;#b48ead\e\\"
#cyan
echo -en "\e]4;6;#87c0d0\e\\"
#white
echo -en "\e]4;7;#dbe0ea\e\\"
#color8 gray30
#color9 red
echo -en "\e]4;9;#b26a7d\e\\"
#color10 green
echo -en "\e]4;10;#97ba97\e\\"
#color11 yellow
echo -en "\e]4;11;#c2c270\e\\"
#color12 blue
echo -en "\e]4;12;#81a1c1\e\\"
#color13 magenta
echo -en "\e]4;13;#b48ead\e\\"
#color14 cyan
echo -en "\e]4;14;#87c0d0\e\\"
#color15 white
echo -en "\e]4;15;#dbe0ea\e\\"
#xterm #տերմինալ #կոնսոլ #կարգաւորում #տէք #լինուքս #իւնիքս #xorg #թափանցիկութիւն
իմ xterm֊ի հետ կապուած կարգաւորումները՝
նախ սթարտ պիտի լինի X֊ի հետ միասին xcompmgr֊ն, իսկ transset ծրագիրը պէտք ա տեղակայուած լինի։
~/.bashrc֊ի մէջ գրուած ա՝
[ -n "$XTERM_VERSION" ] && transset --id "$WINDOWID" >/dev/null
ապա xterm֊ը սթարտ ա լինում թափանցիկ։
բայց ո՞նց ա սթարտ լինում։
windowmaker֊ի մենիւ֊ում սէնց տող ունեմ՝
(run..., SHORTCUT, "Control+Mod1+r", EXEC, "%A(Run, Type command:)"),
(xterm, SHORTCUT, "Control+Mod1+n", EXEC, "xterm -sb -fa 'Mono' -fs 16"),
(mrxvt, SHORTCUT, "Control+Mod+/", EXEC, mrxvt),
(firefox, EXEC, "/usr/bin/firefox"),
("firefox-private", EXEC, "/usr/bin/firefox -private-window"),
(chromium, EXEC, "chromium-bin --incognito"),
(netsurf, EXEC, "netsurf-gtk3"),
run֊ի տակ հէնց ինքն ա։ ու ctrl+alt+n֊ով սթարտ ա լինում։
հիմա նայենք իմ ~/.Xresources֊ին՝
նախ կրկնւում են բաներ, զի միշտ չի որ համ xterm֊ի, համ uxterm֊ի համար աշխատում ա նորմալ։
որ ֆոնը սեւ լինի, տառատեսակն էլ՝ մոխրագոյն՝
xterm*background: black
uxterm*background: black
xterm*foreground: lightgray
uxterm*foreground: lightgray
լռելեայն տառատեսակը՝
xterm*faceName: Monospace
uxterm*faceName: Monospace
xterm*faceSize: 14
uxterm*faceSize: 14
որ ctrl+ կամ ctrl- ֊ով մեծանայ կամ փոքրանայ չափսը (ու էլ կարիք չլինի ctrl աջ կտոց ու ընտրել ասենք huge կամ enormous)՝
xterm*allowWindowOps: true
uxterm*allowWindowOps: true
XTerm.vt100.translations: #override \n\
Ctrl <Key> minus: smaller-vt-font() \n\
Ctrl <Key> plus: larger-vt-font()
UXTerm.vt100.translations: #override \n\
Ctrl <Key> minus: smaller-vt-font() \n\
Ctrl <Key> plus: larger-vt-font()
ու ինչքան տող պահի բուֆերում՝
XTerm.vt100.saveLines: 65535
UXTerm.vt100.saveLines: 65535
մէկ էլ որ էն ինչ select ա եղել, գնայ էն բուֆերի մէջ, որը այլ տեղում ctrl+v ֊ով կը լինի փակցնել՝
XTerm.vt100.selectToClipboard: true
UXTerm.vt100.selectToClipboard: true
սա միշտ չի որ յարմար ա։ զի ուզում ես յաճախ մկնիկի միջին կտոցով անել։ իսկ դա կորում ա, զի այլ քոփի բուֆերի մէջ ա գնում։
#xterm #տերմինալ #կոնսոլ #կարգաւորում #տէք #լինուքս #իւնիքս #xorg #թափանցիկութիւն
ջաւա սկրի՞պտը պիտի հաշիւս ապահով պահի։
յ․ գ․ մէկ էլ երբ թօրով ես կպնում, գրում ա իբր ստուգում ա կապիդ գաղտնի լինելը։ երբ իրականում ստուգում ա արդեօք ես բոտ չեմ։
#էկրանահան #տէք #փարիսեցիութիւն
ահաւոր ա, քանի ամիս ա ֆայրֆոքսը նոյնիսկ քնեցրած տաբերով պրոցեսորի ռեսուրս ա ուտում։ ու ֆանը պտտում։
չեմ սիրում երբ ֆանը պտտւում ա։ առաւել եւս երբ կարգչից չեմ էլ օգտւում։
հիմա ստիպուած եմ անել՝
sudo kill -STOP `pgrep firefox`
որ հանգստանայ։
#մոզիլա #ֆայրֆոքս #ակնարկ #իւնիքս #տէք #անկապ
սկսել եմ սահմանել արագագործութիւնը մեքենայի։
դէ նախ ես չեմ սիրում որ ֆանը պտտուի, կամ որ տաքանայ մեքենան։
գիտէք՝ բիլդ եմ անում ամէնը, բայց նոյնիսկ երբ շինում եմ՝ դանդաղ եմ շինում, որ չտանջուի մեքենան։ շտապելու տեղ չունեմ։
անխուսափելի ա դիտարկչի ջս֊ների լոադը բայց դա զսպում եմ էջանշերը քնած պահելով միշտ։
հիմա էլ ստիպուած եմ վմ օգտագործել՝ վմ֊ն ա տաքացնում։
ես իրան քնեցնում եմ երբեմն, հէնց kill -STOP
֊ով, յետոյ արթնացնում kill -CONT
֊ով, բայց դրա միջի օհ֊ը դրանից յաճախ գժւում ա։
ու հիմա զսպում եմ էսպէս՝
r cpupower frequency-set -g powersave
r cpupower set -b 15
r cpupower frequency-set -u 1000Mhz
r֊ն իմ ռութով աշխատեցնելու ալիասն ա, -b 15
֊ը հիմա զգում եմ որ մոռացայ ինչ ա, առաջին տողով խնայող ռեժիմ եմ գցում, երրորդ տողով սահմանում եմ բոլոր պրոցեսորների արագութիւնը հազարով։
շատ աւելի հանգիստ ա իրան պահում, ու նէնց չի որ զգում եմ որ դանդաղել ա։
դա գուցէ նաեւ նրանից ա որ հոմս հեռու գտնուող կարգչի վրայ ա ու առանց էդ էլ լիքը բան դանդաղ ա։ պարզապէս i/o֊ն խեղդում ա մեքենան, կամ չի կարողանում խեղդել անիմաստ։ գուցէ դա էլ ա ազդում որ չեմ զգում։
զի երբ մեքենան կողքս ա՝ ահաւոր արագ ա ամէնը լինում։ տեսնեմ, էս երկու ամիսը լինի տեղափոխուել, սերուերս բերել իմ նկուղ, ու տէնց։ բայց կրկին, ինձ թւում ա զսպած կը պահեմ յաճախականութիւնը, ինձ լրիւ, իսկապէս, հերիքում ա փայնբուքի հզօրութիւնը։ #տեք #տէք #լինուքս #արագագործութիւն
ուրեմն, սէնց նախագիծ կայ՝ python4delphi, կարողանում ես, օրինակ, պասկալով փայթընի մոդուլներ գրել, տեսականօրէն պիտի աշխատէր freepascal֊ի հետ, բայց իրենք ըստ երեւոյթին չեն ստուգել վաղուց, ու չէր շինւում։
ահա, փոփոխութիւններ արի, pull request արի, ու ինձ մօտ աշխատեց՝
յէյ։
#էկրանահան #պասկալ #դելֆի #լազարուս #տէք #տեք #ծրագրաւորում